Riepilogo: gli artefatti Agile Scrum sono informazioni che i team Scrum e gli stakeholder utilizzano per descrivere nei dettagli il prodotto in fase di sviluppo, le azioni da eseguire per produrlo e quelle eseguite durante il progetto. I principali artefatti Agile Scrum sono il backlog di prodotto, il backlog dello sprint e gli incrementi.
Il termine "artefatto" è spesso associato alle rovine archeologiche e alle reliquie antiche. Tuttavia, nello sviluppo del software, il termine "artefatto" si riferisce alle informazioni chiave necessarie durante lo sviluppo di un prodotto.
Agile ha dei determinati sottoprodotti che emergono dall'esperienza Scrum di pianificazione, sviluppo, monitoraggio e iterazione dei task per la compilazione di software.
Cosa sono gli artefatti Agile Scrum?
Gli artefatti Agile Scrum sono informazioni che i team Scrum e gli stakeholder utilizzano per descrivere nei dettagli il prodotto in fase di sviluppo, le azioni da eseguire per produrlo e quelle eseguite durante il progetto. Questi artefatti forniscono punti di metadati che offrono informazioni approfondite sulle prestazioni di uno sprint. Sono strumenti essenziali per ogni team Scrum poiché abilitano gli attributi fondamentali di Scrum di trasparenza, ispezione e adattamento.
Gli artefatti vengono creati durante le attività principali di uno sprint Scrum:
- Pianificazione del lavoro e degli obiettivi futuri
- Creazione di task per il raggiungimento di questi obiettivi
- Organizzazione dei task in sprint in base alla dipendenza e alla priorità
- Esecuzione dei task
- Revisione e analisi dei risultati per confrontarli con gli obiettivi
- Ripetizione di questi passaggi
I principali artefatti Agile Scrum
I principali artefatti Agile Scrum sono il backlog di prodotto, il backlog dello sprint e gli incrementi.
Backlog di prodotto
Il backlog di prodotto è un elenco di nuove funzioni, miglioramenti, correzioni di bug, task o requisiti di lavoro necessari per creare un prodotto. È compilato a partire da fonti come l'assistenza clienti, l'analisi della concorrenza, le richieste di mercato e l'analisi aziendale generale.
Il backlog di prodotto è un artefatto live, in quanto viene aggiornato su richiesta non appena sono disponibili nuove informazioni. È un backlog che include più team e che viene gestito e curato dall'owner di prodotto tra un ciclo di sprint e l'altro e ogni volta che emergono nuove idee. Contiene task che in precedenza si trovavano in uno sprint attivo, ma la cui priorità è stata ridotta e che sono stati quindi spostati nel backlog.
Backlog dello sprint
Il backlog dello sprint è un insieme di task del backlog di prodotto che sono stati promossi per lo sviluppo durante il successivo incremento di prodotto. I backlog dello sprint vengono creati dai team di sviluppo per pianificare i deliverable degli incrementi futuri e descrivere nei dettagli il lavoro necessario per creare l'incremento.
I backlog dello sprint vengono creati selezionando un task dal backlog di prodotto e suddividendo tale task in elementi di sprint più piccoli e realizzabili. Pensiamo a un task di esempio, come "creare una pagina del carrello", che richiede molti sottotask di progettazione e sviluppo. Il backlog di prodotto contiene il task principale mentre i task di supporto, come "creare un mockup di progettazione visiva del carrello" o "programmare le sessioni del carrello", si trovano nel backlog dello sprint.
Il backlog dello sprint viene aggiornato durante la fase di pianificazione dello sprint di Scrum. I task più piccoli dello sprint vengono assegnati ai team pertinenti, ad esempio al team di progettazione e al team di sviluppo. Se un team non ha la capacità per portare a termine tutti i task dello sprint, quelli rimanenti resteranno in standby nel backlog dello sprint per uno sprint futuro.
Incremento di prodotto
Un incremento di prodotto è costituito dai deliverable dei clienti creati completando i task del backlog di prodotto durante uno sprint. Include anche gli incrementi di tutti gli sprint precedenti. C'è sempre un incremento per ogni sprint e tale incremento viene deciso durante la fase di pianificazione Scrum. Un incremento si verifica se il team decide di effettuare un rilascio per i clienti. Gli incrementi di prodotto sono incredibilmente utili e complementari a CI/CD nel monitoraggio delle versioni e, se necessario, nel rollback delle versioni.
I team traggono vantaggio dal mantenere tutto il lavoro allineato agli elementi del backlog. Pensiamo ad esempio alla creazione di un branch e di una build per ogni elemento del backlog. I team che integrano gli strumenti per il controllo delle versioni con quelli di CI/CD nel software di monitoraggio Scrum possono utilizzare le informazioni fornite da questi strumenti per comprendere meglio lo stato di avanzamento del lavoro. Possono anche ragionare su quali elementi di backlog distribuire e rilasciare ai clienti. Ciò consente loro inoltre di esaminare in modo inverso i commit e quindi ricollegarli a un incremento Scrum per vedere la cronologia e la pianificazione di quel determinato codice.
Artefatti estesi
Oltre agli artefatti Scrum ufficiali precedentemente descritti, esistono alcuni artefatti estesi o meta artefatti. Sebbene non siano ufficiali secondo le linee guida di Scrum, questi artefatti estesi aggiungono valore e ulteriori informazioni ai cicli Scrum.
Grafico burn-down
Un grafico burn-down (o burn-up) dello sprint non è un artefatto Scrum ufficiale, ma molti team lo usano per comunicare e monitorare l'avanzamento verso l'obiettivo dello sprint durante lo sprint. I grafici burn-down sono grafici che mostrano i task completati durante lo sprint e sono molto utili per misurare la velocity di esecuzione attiva di un team per sapere se quest'ultimo riuscirà a completare il lavoro pianificato o se è necessario riassegnare le priorità ai task dello sprint.
Durante la pianificazione dello sprint, i team possono esaminare i grafici burn-down precedenti per avere un'idea di quanti task possono realisticamente completare in uno sprint imminente. I team possono esaminare i grafici burn-down in corso per assicurarsi di stare avanzando verso l'obiettivo per completare con successo lo sprint. Durante la revisione dello sprint, i team possono rivedere il grafico burn-down per vedere dove hanno raggiunto o meno le aspettative. Nel tempo, i grafici burn-down aiutano i team a perfezionare ulteriormente le stime durante le fasi di pianificazione di Scrum.
La definizione di "completato"
È importante che i team abbiano una chiara definizione di "completato". Questa definizione può essere un altro tipo di artefatto, che dovrebbe essere documentato e condiviso. Un esempio di definizione di "completato" per un team di sviluppo è quando il codice viene sottoposto a test automatizzati in base a una specifica e viene distribuito in un ambiente di produzione. Un team senza una chiara definizione di "completato", durante la revisione dello sprint, si troverà spesso a domandarsi se il lavoro è stato portato a termine mentre esamina i task Scrum aperti.
La definizione di "completato" aiuta a definire i confini di un incremento. Gli incrementi devono essere consegnati in pacchetti utilizzabili completi che si aggiungono agli incrementi precedenti. Il concetto di "completato" si applica anche ai task completati e che è possibile chiudere per il monitoraggio burn-down.
Trasparenza degli artefatti
Gli artefatti Scrum sono potenti ausili che aiutano i team a operare in modo più efficiente. Pertanto, è importante che tutti i team abbiano accesso e visibilità sugli artefatti. Gli owner di prodotto e gli Scrum Master devono fare in modo che la revisione e la discussione sugli artefatti diventi una pratica regolare dei team di sviluppo. Ciò aiuterà i team a rimanere consapevoli delle inefficienze operative e a pensare a modi creativi per migliorare la velocity.
Iniziare a utilizzare gli artefatti Agile Scrum
Gli artefatti Agile Scrum sono dipendenze estremamente preziose ma non rigide dei flussi di lavoro Agile Scrum. Un team può utilizzare Agile senza sforzi aggiuntivi per gestire questi sottoprodotti, ma non ne trarrà alcun vantaggio. Il modo migliore per iniziare a utilizzare gli artefatti Scrum è impiegare uno strumento di gestione dei task Agile con artefatti Agile Scrum integrati. Un valido strumento di gestione del monitoraggio dei task Agile come Jira dispone di funzioni di artefatto integrate per la creazione semplificata di grafici burn-down, backlog e incrementi. Grazie al modello Scrum gratuito di Jira, iniziare è facile.