Utilizzo di Kanban per lo sviluppo di WordPress
Pubblicato: 2019-05-12Sei una persona "pulita dalla lavagna"? Quante volte hai detto che ricomincerai lunedì, o il primo del mese, o a Capodanno? Ecco un segreto: non funziona mai.
Non puoi mai davvero pulire la lavagna, né dovresti volerlo. Sei arrivato fin qui grazie al lavoro che hai svolto in passato. Sì, probabilmente c'è un modo più efficiente là fuori, ma non lo scoprirai annullando tutti i progressi che hai fatto.
Questo è il motivo per cui amo il sistema kanban. Ho iniziato a usarlo all'inizio del 2019 per rivedere il mio flusso di lavoro e ne sono entusiasta. È perfetto per il tipo di team che ha bisogno di rimanere organizzato e al passo con il lavoro, ma che sa anche che le cose cambieranno - molto.
In questo articolo, mi concentrerò sul kanban per i team di sviluppo di WordPress, ma un paio di esempi che utilizzo provengono dalle mie schede kanban, create attorno ai miei flussi di lavoro di scrittura.
Cos'è Kanban?
Per capire lo sviluppo kanban, dovresti prima capire il pensiero snello.
Il pensiero snello non è una metodologia. È invece una mentalità basata su valori che inquadrano il contesto di un progetto. I sette valori di magra sono:
- Elimina gli sprechi eliminando tutto ciò che non aggiunge valore al progetto.
- Amplifica l'apprendimento raccogliendo regolarmente feedback per migliorare i processi
- Decidere il più tardi possibile, cioè dopo aver raccolto tutte le informazioni per prendere decisioni informate.
- Consegna il più velocemente possibile senza sacrificare il morale del team o la qualità del prodotto; si tratta di efficienza e sostenibilità, non solo di velocità.
- Responsabilizzare i team, garantire la salute e l'energia degli sviluppatori e promuovere in base all'esperienza e alla leadership.
- Crea esperienze intuitive e di valore.
- Guarda l'intera immagine valutando l'intero progetto, non solo le sue caratteristiche individuali.
I team che utilizzano il pensiero snello spesso utilizzano il metodo kanban per la gestione del flusso di lavoro. Puoi impostare una scheda kanban con schede cartacee oppure puoi creare una scheda kanban digitale con uno strumento come Asana o Trello. Crea un flusso di lavoro impostando diverse colonne, quindi sposta la scheda nel flusso di lavoro da sinistra a destra man mano che le attività vengono completate.

Fonte: Asana
La scheda kanban più elementare ha tre colonne:
- Da fare
- Facendo
- Fatto
Con le schede kanban avanzate, puoi avere colonne aggiuntive e ogni scheda può avere il proprio set di attività secondarie da completare. Ecco un esempio di alcune delle attività secondarie su una scheda nel mio Asana:

Poiché kanban tende a tenere traccia di elementi di lavoro più grandi anziché di piccole attività, è normale che siano necessarie diverse attività secondarie e indicazioni su una scheda, insieme a date di inizio e fine, assegnatari e documenti di supporto.
Principi Kanban
Lo sviluppo Kanban è un modo per impostare processi in evoluzione; non richiede cambiamenti immediati svolgendo compiti specifici sul momento. Inoltre, non inizia con una tabula rasa. Invece, si basa e adatta i processi attuali e la struttura del team.
Ci sono quattro principi kanban di base:
- Inizia con i tuoi processi attuali. Includi i passaggi, le politiche e le regole che segui attualmente. Questo potrebbe cambiare andando avanti, ma questo è il punto dello sviluppo kanban: evolversi.
- Il team deve impegnarsi in cambiamenti incrementali ed evolutivi.
- Rispetta e mantieni titoli di lavoro, ruoli e responsabilità, almeno per ora. La struttura del team può cambiare man mano che si modificano i processi.
- Incoraggia i membri del team a tutti i livelli a guidare quando appropriato.
Pratiche Kanban
Ci sono sei pratiche kanban fondamentali:
- Visualizza i tuoi progetti creando colonne che corrispondono a ogni fase del tuo processo attuale.
- Imposta un limite per limitare il numero di elementi di lavoro attivi presenti in ciascuna colonna. Ciò aiuta a creare un ritmo realistico e consente ai membri del team di concentrarsi sugli elementi di lavoro più importanti senza sentirsi distratti o sopraffatti.
- Misura la velocità con cui le carte si muovono su tutta la linea e valuta se ci sono colli di bottiglia o sprechi.
- Definire i passaggi, le politiche e le regole del processo in modo che tutti i membri del team siano informati.
- Implementa i cicli di feedback e apporta le necessarie modifiche ai processi.
- Migliora in modo collaborativo ed evolvi rapidamente. Questa pratica combina i quattro principi in modo che il team possa prendere decisioni nel suo insieme.
Kanban per lo sviluppo di WordPress
Creare una tavola
Per utilizzare kanban per lo sviluppo di WordPress, dovrai suddividere il processo in fasi di sviluppo specifiche. Il modo più semplice per farlo è esaminare una funzionalità che hai già fornito ed elencare ogni fase generale dello sviluppo. Ecco un esempio dell'ingegnere informatico Harrison Ferrone:

Ogni passaggio viene quindi utilizzato per creare una colonna nella tua bacheca kanban. Ecco un esempio di kanban board di Asana che viene utilizzato per il tracciamento dei bug:


Ecco altre idee per le colonne per la tua scheda kanban di sviluppo WordPress:
- Backlog: idee che possono o non possono essere implementate
- Richiesto: Idee da sviluppare
- Ready for Design: Idee che si chiariscono e che hanno il via libera per il passo successivo
- In corso: puoi avere colonne "In corso" separate per le fasi di progettazione, codifica e produzione
- Pronto per la revisione: puoi avere colonne "Pronto per la revisione" separate per ogni fase
- In revisione: puoi avere colonne "In revisione" separate per ogni fase
- Modifiche necessarie: articoli restituiti che richiedono più lavoro
- Fatto
Puoi anche classificare le carte in base alla priorità. Strumenti come Asana e Trello hanno una codifica a colori per questo scopo. Puoi dare la priorità a categorie come bug, funzionalità del cliente e problemi del cliente, tuttavia funziona meglio per il tuo team.
Impostazione dei limiti dei lavori in corso
L'impostazione della kanban board è solo l'inizio dell'organizzazione del flusso di lavoro. L'intero team di sviluppo deve capire come utilizzare la scheda kanban e cosa ci si aspetta da loro in ogni fase. Ciò è particolarmente importante se si notano colli di bottiglia o colonne che si accumulano con il lavoro a una velocità maggiore rispetto ad altre colonne. È probabile che dovrai impostare un limite di lavori in corso (WIP) per impedire che ciò accada, supponendo che tu abbia fiducia che i membri del tuo team stiano lavorando in modo sufficientemente efficiente.
Ad esempio, il passaggio "Test e convalida" può essere un collo di bottiglia se questa parte del processo richiede più tempo rispetto alle altre parti. La soluzione è impostare un limite WIP per quella colonna, la colonna precedente o l'intera scheda kanban. Puoi limitare le colonne "Funzione di creazione" e "Test e convalida" a cinque ciascuna. In questo modo, non vengono mai create più di cinque funzionalità alla volta e non più di cinque funzionalità che richiedono test e convalida alla volta. Una volta terminati i test e la convalida per una funzione, è possibile spostare un altro elemento di lavoro dalla colonna "Crea". Ciò mantiene il flusso di lavoro in movimento senza rimanere intrappolati in nessun posto.
Secondo Kanbanize, una buona regola empirica per l'impostazione dei limiti WIP è quella di moltiplicare i tuoi sviluppatori per due. Se hai dieci sviluppatori, imposterai un massimo di 20 progetti per un dato momento. Limiti più bassi sono migliori per l'efficienza, ma non impostarli così bassi che il tuo team finisce per non avere nulla da fare mentre aspetta che altri sviluppatori completino gli elementi di lavoro.
Best practice per lo sviluppo Kanban
Includere le specifiche e la logica alla base dei limiti WIP. Puoi scriverlo direttamente sulla lavagna in modo che i membri del team possano farvi riferimento quando necessario. Ad esempio, uno dei miei clienti ha indicazioni in una scheda nella parte superiore di una colonna per spiegare quanti articoli possono essere richiesti al giorno e i giorni e le ore in cui gli articoli vengono aggiunti alla lavagna durante la settimana.
Chiarire quando una carta deve passare da una tavola all'altra. Ho questo integrato nelle attività secondarie su alcune delle mie carte e so di spostare la carta solo una volta completate le attività secondarie precedenti:

Puoi anche impostare parametri più specifici. Ad esempio, posso spostare una carta nella colonna "Completato" solo se ho aggiunto il link pubblicato dell'articolo al mio portfolio e se l'articolo è stato pagato.
Espandi il flusso di lavoro per tenere conto degli elementi di lavoro che si spostano avanti e indietro tra le colonne. Supponiamo che tu abbia un elemento nella colonna "Revisione del codice". Se fallisce la revisione del codice, dovrà tornare alla colonna precedente, che è probabilmente qualcosa come "Funzione di compilazione". Se questo accade spesso, hai un nuovo tipo di collo di bottiglia, ma se imposti un limite WIP basso, non otterrai abbastanza lavoro.
La soluzione è creare nuove colonne, come "Revisione del codice non riuscita" e "Seconda revisione del codice". Quindi diresti al tuo team che se una funzionalità supera la revisione del codice iniziale, può andare direttamente al passaggio naturale successivo e saltare le due colonne aggiuntive che hai appena aggiunto. In alternativa, potresti inserire una nuova colonna all'inizio del flusso di lavoro per raccogliere le recensioni non riuscite e inviarle nuovamente attraverso il processo, oppure puoi aggiungere una colonna "Correggi" all'interno del processo per affrontare questi problemi. La soluzione migliore è quella che funziona con il tuo processo personalizzato.
Avvolgendo
Non esiste un tipo di scheda kanban, nemmeno per due team di sviluppo che fanno esattamente la stessa cosa. Questa è la cosa fantastica: puoi adattarlo completamente alle tue esigenze e poi adattarlo man mano che le tue esigenze crescono e cambiano. Nel complesso, lo sviluppo kanban è eccellente per i team che hanno bisogno di creare ciò che gli utenti desiderano; fornire quelle funzionalità in tempo; e creare un ritmo del flusso di lavoro sostenibile.
Ora che il tuo flusso di lavoro di sviluppo è fluido, scopri come configurare il tuo spazio di lavoro digitale per una maggiore produttività.
