Daily Scrum: l’appuntamento quotidiano con il tuo team
La metodologia agile Scrum consente di seguire lo sviluppo di un prodotto in maniera dettagliata attraverso il ricorso a diverse fasi ed eventi. Questi consentono al team di mantenersi aggiornato sullo status dello Sprint corrente e di non perdere di vista la missione aziendale.
Tra le componenti organizzative di Scrum compare il Daily Stand-up, strumento utile all’aggiornamento sui progressi o recessi del team. Ma cos’è nel dettaglio? E come si organizza un Daily Scrum efficiente?
Che cos’è?
Il Daily Scrum è uno strumento di comunicazione peer-to-peer all’interno del team Scrum. In particolare, si tratta di uno degli eventi che compongono la metodologia agile Scrum. Anche noto come Daily Stand-up, è fondamentalmente un meeting che ha luogo giornalmente (“daily”, in inglese, si riferisce proprio al carattere quotidiano dell’evento).
In particolare, è un momento in cui il team Scrum si riunisce per confrontarsi su alcuni punti. Solitamente questi sono:
- Cosa ho fatto ieri?
- Cosa farò oggi?
- Ho riscontrato dei problemi? Se sì, quali sono? Ho delle domande pertinenti da rivolgere al team?
Queste domande devono essere rielaborate da ognuno dei membri del team che, a turno, prenderà la parola ed esporrà al resto della crew le task che ha svolto o su cui sta lavorando.
Ruolo nello Scrum
Come accennato nei paragrafi precedenti, il Daily Scrum è uno degli eventi che costituiscono lo Scrum. Quest’ultimo, infatti, è un framework iterativo che consente lo sviluppo agile di prodotti, applicazioni o servizi.
In particolare, lo Scrum si compone di quattro eventi, che hanno luogo prima, dopo e durante gli Sprint (periodi di tempo prestabiliti in cui avviene lo sviluppo di prodotto). Questi eventi sono:
1. Lo Sprint Planning: pianificazione di cosa fare durante lo Sprint.
2. Il Daily Scrum: update giornaliero dello status del lavoro nello Sprint.
3. La Sprint Review: incontro conclusivo dello Sprint in presenza degli Stakeholders.
4. La Sprint Retrospective: meeting con valore valutativo nei confronti dello Sprint appena concluso ed in funzione del prossimo.
Come si svolge?
Il Daily Scrum può essere condotto in diverse modalità, a seconda delle preferenze del team Scrum. Non esiste, infatti, una struttura prestabilita. Solitamente, tuttavia, il Daily Scrum è guidato dalla figura dello Scrum Master, ovvero da un membro del team incaricato di guidare l’incontro.
Una possibile modalità di svolgimento del Daily Scrum prevede l’utilizzo della pratica “Backlog walkthrough”. Questo procedimento consiste nel passare in rassegna ogni Backlog Item dello Sprint Backlog.
In generale, il Daily Scrum si sviluppa sulla base delle tre domande centrali anticipate nel paragrafo precedente. Quando si risponde alle domande, è bene che i membri del team si concentrino sulla rilevanza di queste per lo Sprint Goal. Una struttura di frase che evidenzi la focalizzazione della risposta sull’obiettivo potrebbe essere, ad esempio:
“Per quanto riguarda lo Sprint Goal, ieri ho fatto … e oggi farò ...”
Vediamo ora nel dettaglio i passaggi fondamentali di un buon Daily Scrum.
Segreti per pianificare un Daily Scrum efficiente
Per poter realizzare un Daily Scrum efficace, è necessario seguire delle semplici indicazioni di base. Vediamole insieme:
→ Come suggerisce il nome stesso, il Daily Scrum deve avere luogo ogni giorno. Tuttavia, in base alle condizioni specifiche del team e alla sua branca di applicazione, esso può veder variata la sua frequenza. Infatti, a volte, il Daily Scrum può avere luogo ogni due giorni, al fine di consentire un migliore sforzo produttivo del team.
→ Il Daily Scrum va fissato ad un orario che sia congeniale e comodo per tutti i partecipanti. È bene che questo orario rimanga fisso e non sia soggetto a mutamenti troppo frequenti: i membri del team potrebbero più facilmente dimenticarsene.
→ Al meeting devono essere presenti tutti i membri del team. È importante, per una questione di continuità e consistenza, che vi partecipino sempre le stesse persone.
→ Al momento del Daily Scrum, il team si riunisce. La disposizione consigliata per favorire una comunicazione ottimale è quella a cerchio o semicerchio.
→ Il Daily Scrum si svolge solitamente stando in piedi: è un processo rapido, composto da constatazioni veloci e domande concise, non un sito dove fare conversazione.
→ Molto importante durante il Daily Scrum è la visualizzazione del Taskboard o dello Story Board. Infatti, durante questo momento comunicativo è utile operare il meeting di fronte ad un supporto che permetta di visualizzare lo Sprint Product Backlog o il Burn down Chart.
→ È ottimale mantenere le tempistiche di svolgimento del Daily Scrum entro i 15 minuti. Naturalmente, l’orario necessario per completare l’operazione sarà vincolata al numero dei partecipanti. Grossi gruppi, infatti, potrebbero metterci più tempo, mentre gruppi di piccole dimensioni potrebbero impiegarne molto meno.
→ L’incontro è moderato dallo Scrum Master, che funge da token, ovvero da mediatore. L’intercessione di questa figura, infatti, evita che ci siano delle sovrapposizioni, oppure delle indecisioni riguardo a chi debba prendere la parola.
A cosa serve?
Il Daily Scrum Meeting è un momento in cui il team si riunisce e in cui ogni membro mette al corrente i collaboratori del proprio operato. Il meeting è breve e serve a fornire energia e motivazione ai membri del gruppo di lavoro.
L’incontro è un momento in cui si crea coesione nella squadra: se fosse un incontro prolungato, si potrebbero creare dibattiti che potrebbero far perdere sia tempo che dedizione. Infatti, tutti gli argomenti che richiedono un particolare approfondimento vanno lasciati ad un altro momento: il Daily Scrum non è il luogo dove creare polemiche o imbastire discussioni.
Il Daily Stand-up ha, dunque, lo scopo di monitorare la direzione del lavoro di ogni membro del team, per assicurarsi che nessuno stia procedendo nella direzione sbagliata rispetto allo Sprint Goal. In questo senso, il meeting risulta un efficace mezzo per un ottimale team development: esso promuove la responsabilizzazione e la motivazione dei partecipanti.
Risulta particolarmente importante che il Daily Scrum abbia luogo giornalmente. Infatti, un eventuale ritardo di 24 ore nella tabella di marcia, in caso di errore da parte di un collaboratore, potrebbe costare molto alla squadra in termini di produttività.
Il Daily Scrum garantisce, quindi, la coordinazione dell’operato dei membri del team ed evita che qualcuno perda di vista l’obiettivo finale. Infatti, attraverso la presentazione dei compiti e dei progressi quotidiani di ciascun membro del team, è più facile tenere a mente ciò che ancora deve essere fatto per raggiungere lo Sprint Goal finale.
Possibili impedimenti alla sua realizzazione
Sebbene la pratica del Daily Scrum possa sembrare estremamente semplice e diretta, possono presentarsi parecchi ostacoli durante il suo svolgimento. Questi possono emergere nel corso della rielaborazione della terza domanda e possono essere di varia natura.
In generale, gli ostacoli che possono emergere sono degli impedimenti che intralciano lo svolgimento dei compiti del team. Di conseguenza, questi ostacoli possono minare il raggiungimento dell’obiettivo finale.
Di seguito sono riportati alcuni dei moltissimi esempi di impedimenti che possono costituire delle problematiche nella realizzazione del Daily Scrum:
- Problemi tecnici causati dal mancato funzionamento del pc;
- Problemi di utilizzo di un software;
- Problemi legati a componenti ambientali che minano la concentrazione durante lo svolgimento del lavoro;
- Problemi personali legati alla vita privata di un dipendente che incidono sul suo operato lavorativo;
- Problemi di salute;
… e così via.
Di fronte ad ogni tipo di problematica, il team e, in particolare, lo Scrum Master, è tenuto a cercare delle soluzioni efficaci. Nel caso in cui lo Scrum Master non sia in grado di trovare una soluzione adeguata, bisognerà far intervenire un’altra persona di riferimento. Quest’ultima, sulla base della maggior esperienza sul campo, potrà prendere delle decisioni volte alla risoluzione intelligente dei problemi in questione.
Come accennato, se la gestione delle problematiche dovesse richiedere molto tempo, è bene spostare la discussione in un secondo momento e in un altro contesto.
Cosa fare in caso di ritardi?
Innanzitutto, è necessario individuare la causa del ritardo. Lo Scrum Master è incaricato di impegnarsi in questo senso, ma il resto del team è ugualmente tenuto a cercare di identificare i motivi alla base delle problematiche emerse. La collaborazione, come in ogni contesto lavorativo, è alla base del processo di problem solving.
In caso di problemi tecnici o imprevisti di carattere generale, sarà necessario arrivare a risolverli e aggiornare lo Sprint in base alla situazione attuale. Idealmente, infatti, bisognerà riportare sulla tabella di marcia la presenza del ritardo e del motivo che l’ha generato.
In alcuni casi sono, eventualmente, previste delle penalizzazioni per la persona che ha maturato il ritardo. Ovviamente queste dipendono strettamente dalla causa che ha generato la dilazione temporale.
Daily Scrum: perché è importante?
Anche se può sembrare un evento con funzione puramente formale, il Daily Scrum è, in realtà, un momento molto importante per il team. Infatti, tramite la panoramica dei compiti svolti il giorno antecedente e le task da compiere durante la giornata attuale, è possibile fornire una visione d’insieme della progressione dello Sprint.
Non solo, il Daily Scrum, grazie al continuo status update dello Sprint, consente una sincronizzazione del lavoro dei team members, la loro responsabilizzazione e motivazione al raggiungimento dello Sprint Goal.
In più, l’incontro consente di individuare eventuali impedimenti allo svolgimento del lavoro e di risolverli.
Infatti, tramite questo meeting quotidiano, sarà possibile visualizzare più chiaramente quanto manca al raggiungimento dell’obiettivo, ovvero lo scopo prefissato al momento della pianificazione di un progetto.