Il Timeboxing consiste in un breve periodo di tempo prefissato nel quale si stabiliscono degli obiettivi di consegna. E’ una delle 5 tecniche chiave di DSDM®. DSDM® prevede una Timebox a formato libero oppure una ben definita. Al suo interno si svolge lo sviluppo incrementale ed iterativo. Si utilizza insieme alla tecnica MoSCoW permette di rispettare il principio “Deliver on time“.
Come sembra dalla striscia, rilasciare un progetto “in tempo” sembra essere un obiettivo quasi impossibile. I framework agili permettono questo utilizzando appunto la tecnica del Timeboxing, considerando inoltre di rimuovere dall’ambito (de-scope) alcuni elementi in caso di problematiche.
Timeboxing in un progetto DSDM®
In DSDM® è nel Delivery Plan dove scriviamo le informazioni sulle timebox come il numero, la durata e gli obiettivi – ad esempio quali saranno i prodotti da rilasciare. Il Delivery Plan è il cronogramma del progetto. In DSDM® molti eventi utilizzano delle timebox pertanto è utile nominarli in maniera differente.
- Project Timebox: è la Timebox del progetto, contiene una o più Increment Timebox
- Increment Timebox: un singolo incremento contiene una o più Development Timebox
- Development Timebox: si struttura in tre Iteration e due sessioni
Gli obiettivi delle varie Timebox, devono essere definiti secondo le priorità di business, il rischio, dipendenze esterne, il ROI, disponibilità delle risorse ed eventuali quick-win.
Come si struttura una Development Timebox
In DSDM® la Timebox può avere un formato libero, oppure è possibile usare una struttura specifica:
- Kick-off (1-3 ore): una breve sesssione (solitamente un workshop facilitato) per chiarire l’obiettivo della timebox, la priorità dei requisiti specifici per la Timebox e altri dettagli sul lavoro da svolgere.
- Investigation (10-20% del tempo totale): un ciclo di Sviluppo Iterativo nel quale si analizzano i requisiti e i prodotti da rilasciare nella Timebox. E’ in questo momento che si definiscono gli Acceptance Criteria (Criteri di Accettazione) – quello che in Scrum chiameremo Definition of Done (Definizione di Fatto).
- Refinement (60-80% del tempo totale): un ciclo di Sviluppo Iterativo in cui sono eseguiti sviluppo, test ed eventuale documentazione in linea con le priorità.
- Consolidation (10-20% del tempo totale): una Iteration (iterazione) per assicurarsi che i prodotti rispettino gli Acceptance Criteria (criteri di accettazione).
- Close-out (1-3 ore): una breve sessione per l’accettazione formale di quanto realizzato nella Timebox, e una retrospettiva per caprie cosa è andato bene e cosa no. Quindi il lavoro di ripianificazione di eventuali elementi che non sono stati rilasciati.
Nel Blog è disponibile la struttura dello Sviluppo Iterativo in DSDM®.
Quanto dura una Development Timebox?
La durata dipende dai tempi del progetto. In linea di principio, dovrebbe durare tra i 10 e i 30 giorni e quindi tra le 2 e le 6 settimane. Potrebbe anche essere più breve, ad esempio per progetti che durano un mese.
Quando deve cominciare o finire una Timebox?
Craig Larman, nel suo libro “Agile and Iterative Development: A Manager’s Guide”, consiglia di concludere una Timebox di Mercoledì o Giovedi al massimo, piuttosto che Venerdì. Così da poter utilizzare i giorni nella settimana per gestire problemi imprevisti e utilizzare Giovedi e Venerdi per la pianificazione della Tiemebox successiva o per eseguire la retrospettiva.
Risorse e riferimenti
- Il manuale “Atern® Handbook” edito dal DSDM® Consortium
- Il libro “Agile and Iterative Development: A Manager’s Guide ” di Craig Larman edito da Addison-Wesley Professional
Copyright
PRINCE2®, ITIL®, M_o_R® sono marchi registrati della AXELOS Limited.
DSDM®, Atern® e Agile Project Management™ sono marchi registrati da Dynamic Systems Development Method Limited
BABOK®, Business Analysis Body of Knowledge®, IIBA® e International Institute of Business Analysis® e sono marchi registrati registrati dall’International Institute of Business Analysis®
ISACA® è un marchio registrato dell’Information Systems Audit and Control Association
COBIT® è un marchio registrato dell’Information Systems Audit and Control Association e dell’IT. Governance Institute.
ScrumAlliance® è un marchio registrato dalla Scrum Alliance.