Pianificazione di release Agile
La pianificazione di release Agile differisce da quella tradizionale dei progetti, in quanto si basa su una selezione di funzionalità sviluppate durante un determinato periodo di tempo (lo sprint). Lo scopo finale della pianificazione delle release Agile è di raggiungere la visione del prodotto, ossia il suo obiettivo generale e il modo in cui si allinea a una strategia aziendale.
Il piano di release di un progetto Agile è il calendario completo incentrato sulla pianificazione di più iterazioni nel tentativo di determinare quando ogni release verrà consegnata. Per realizzare la visione del prodotto, ci sono diversi dettagli da considerare prima di costruire un piano di release, tra cui:
- Disponibilità del product owner
- Backlog con priorità esaminata dal product owner
- Membri del team e stakeholder identificati
- Ubicazione e disponibilità dei membri del team
Ogni iterazione o sprint avrà un proprio piano.
Agile Project Management E-book
How can Agile PM help you do more with less?
Agile project management empowers teams to adapt to change with increased speed and flexibility. Learn how to implement Agile PM and get the most out of the methodology.
Pianificazione di sprint/iterazioni
Nella gestione dei progetti Agile, il prodotto stesso viene sviluppato in sprint. L'obiettivo della pianificazione degli sprint è determinare le caratteristiche e le funzionalità che saranno incluse nell'iterazione successiva. Prima dell'inizio di ogni sprint, si svolge una riunione di pianificazione tra il product owner e i membri del team di sviluppo. Le user story e il backlog vengono esaminati per determinare le attività che possono essere completate durante lo sprint. Questi piani forniscono un livello di dettaglio più preciso (rispetto al piano di release generale), comprese le attività da eseguire per i membri del team e la durata di ciascuna attività.
Le attività che si svolgono durante il processo di pianificazione Agile includono:
Pianificazione delle attività: i membri del team Agile suddividono le funzionalità in attività che verranno svolte dai membri del team. Come best practice, esamina le stime del tempo e cerca di suddividere qualsiasi attività che potrebbe richiedere più di un giorno in attività più piccole. Ciò aiuterà a ridurre l'incertezza e favorirà il completamento delle attività. Favorisce anche il lavoro di stima, in quanto risulta molto più facile stimare il tempo necessario per completare un'attività più piccola.
Stima Agile: è vero, stimare il tempo di completamento può sembrare una questione di magia più che di scienza, ma alcuni principi possono aiutare a concretizzare il processo. Come best practice, affidati al successo passato per stimare un impegno specifico. Ad esempio, affidati alle velocità di consegna delle funzionalità passate per pianificare le velocità future. Se il team è stato in grado di fornire X funzionalità nell'iterazione precedente, pianifica di fornirne altrettante nel ciclo corrente. In Agile Release Planning By Example, Brian Stallings e Valerie Morris forniscono le seguenti pratiche utili per stimare i tempi di completamento:
- Dati storici di riferimento - Specifici del team
- Sii realistico, non ottimista
- Stima in base alle unità di lavoro più piccole piuttosto che a quelle più grandi. Quindi, le stime basate sulle attività anziché sulle caratteristiche saranno più accurate
Sviluppo delle user story: in The Declaration of Project Principles si afferma: “Raggiungiamo risultati affidabili coinvolgendo i clienti in frequenti interazioni e nella responsabilità condivisa." Comunicando con il cliente, è possibile determinare l'obiettivo generale per il progetto e, a sua volta, un obiettivo generale per lo sprint/iterazione. Affidati a tale obiettivo per sviluppare le priorità della tua funzionalità/user story e quindi consenti alle tue priorità di guidare la selezione di quali funzionalità/user story sviluppare durante l'iterazione.
Gestione backlog: esistono due tipi di backlog da considerare:
- Il backlog dei prodotti è l'elenco principale delle cose da integrare nel prodotto.
- Il backlog dell'iterazione è l'elenco delle voci di priorità da creare durante l'iterazione corrente.
La chiave per la gestione dei backlog è la gestione delle priorità. Lavora con i tuoi clienti per garantire che vengano consegnate le funzioni più importanti. Di nuovo, come dice la Declaration, "Raggiungiamo risultati affidabili coinvolgendo i clienti in frequenti interazioni e nella responsabilità condivisa." Il cliente può dirti quali articoli ed elementi di backlog hanno la priorità più alta in un determinato momento. Le priorità possono cambiare, quindi assicurati di rimanere in contatto con i clienti per garantire che l'iterazione successiva sia ancora in fase di pianificazione appropriata.
Pianificazione Agile: la pianificazione Agile è forse l'attività di project management più "propria". Di seguito sono riportate alcune linee guida utili per la gestione della pianificazione:
- Programma in dettaglio solo per l'iterazione immediata: gli sprint/iterazioni sono utili per gestire l'incertezza, ma è l'adattabilità a guidarli. Una pianificazione con troppo anticipo ti impedisce di essere agile e di rispondere alle priorità mutevoli.
- Coinvolgi l'intero team: la pianificazione è un'attività di team guidata dalle stime, quindi il team deve essere coinvolto nell'intero processo, non solo per una pianificazione accurata, ma anche per favorire il consenso.
- Anche la progettazione e il testing fanno parte dello sviluppo: tieni a mente il tempo necessario per queste attività durante gli sprint/iterazioni mentre crei stime e pianificazioni.
- Includi tempo per una riunione demo: la demo è una parte importante della release e deve essere parte del programma.
Secondo la Declaration of Project Principles, "Prevediamo l'incertezza e la gestiamo tramite iterazioni, anticipazione e adattamento." Un componente principale dell'incertezza sono le dipendenze. Per evitare questa insidia, l'approccio Agile cerca di limitare le dipendenze attraverso la pianificazione di sprint/iterazioni perché le attività non sono sviluppate pensando a un progetto generale, ma in una forma più granulare in cui una serie di funzionalità può essere sviluppata in parallelo e consegnata pronta durante il periodo da una a quattro settimane che definisce solitamente uno sprint/iterazione. Come best practice, pianifica gli sprint/iterazioni per evitare dipendenze.
Metriche Agile
Come afferma la Declaration of Project Principles, "Promuoviamo le prestazioni tramite la responsabilità di gruppo per i risultati e la responsabilità condivisa per l'efficienza del team." Le metriche sono il mezzo con cui vengono misurati i risultati e l'efficacia.
Alcune metriche preziose per misurare le prestazioni del team includono:
Tasso di burn: il tasso di spesa del budget di un progetto. Il costo del progetto è qualcosa che verrà richiesto e deve essere misurato in base al ritorno previsto. Si tratta semplicemente di un problema di valore aziendale.
Funzionalità consegnate: lo scopo di un team Agile è quello di fornire funzionalità alla conclusione di ogni sprint/iterazione. Tre modi per misurare questa metrica sono i seguenti:
Velocità: il numero di funzionalità/user story su cui si lavora durante uno sprint/iterazione.
Difetti: l'efficacia dello sviluppo si basa sul numero di difetti o bug scoperti.
Diagramma di burndown: la quantità di lavoro che deve essere completata prima della fine del progetto.
Una gestione efficace dei progetti consiste nell'aiutare il team a raggiungere gli obiettivi identificando ed eliminando gli ostacoli. A tal proposito, tieni presente quanto segue:
L'approccio Agile riguarda gli individui e le interazioni: le metriche sono ottime per fornire un quadro complessivo, ma non forniscono tutti i dettagli. Quindi, quando una metrica indica un problema, parla con i membri del team per scoprire cosa sta succedendo.
Guarda le tendenze: se i difetti sono elevati ma in declino nel tempo, significa che il team sta risolvendo i problemi. Se i difetti rimangono costanti, è possibile che il team non li stia gestendo affatto. Ciò richiederà ulteriori indagini.
La pianificazione Agile riguarda il lavoro di squadra e la collaborazione
I progetti Agile sono gestiti dall'intero team, principalmente a livello di iterazione. Il team deve lavorare insieme per selezionare le funzionalità dal backlog che saranno integrate nell'iterazione corrente, stimare i tempi, pianificare il lavoro e guidare il progetto in modo da raggiungere la visione del prodotto. Il project manager mantiene il piano, ma è in realtà il team che lo possiede ed è responsabile del raggiungimento dei requisiti e del rispetto delle scadenze.
Agile riguarda gli individui e le interazioni, ma anche il lavoro di squadra e la proprietà del team. Nella gestione tradizionale dei progetti, si può pensare che il project manager si trovi in una posizione solitaria, raccogliendo dati per mettere insieme un piano che viene poi consegnato ai proprietari delle attività. Nell'approccio Agile il project manager è uno di tanti proprietari di attività e tutti contribuiscono.
Migliora la visibilità delle attività con la Visualizzazione bacheca in Smartsheet
È facile che le attività si perdano nel delirio del lavoro quotidiano. Ciò di cui hai bisogno è un modo migliore e più visivo per monitorare e gestire le attività.
Offri al tuo team la visualizzazione bacheca in Smartsheet, una soluzione intuitiva per il monitoraggio delle attività che assicura una priorizzazione delle attività senza problemi, una migliore visibilità del progetto e una collaborazione agile senza sforzo.
Che si tratti di gestire progetti, ottimizzare i carichi di lavoro o tenere traccia delle cose da fare, la visualizzazione bacheca aiuta a eliminare i meeting sullo stato non necessari, consentendo ai membri del team di monitorare l’avanzamento del progetto, le attività completate e il lavoro imminente con cartellini delle attività.
Scopri i cartellini a trascinamento intuitivi, la collaborazione in tempo reale e il nesting organizzativo dei cartellini che spingono la tua organizzazione ad adattarsi e a lavorare in modo più efficace.
Scopri di più sulla visualizzazione bacheca in Smartsheet.