Definition of Done (DoD)

DoD - Definition of DoneUno sviluppo Agile è basato su una serie di convenzioni e di accordi all’interno del team su come il lavoro deve essere svolto.

La “definizione di Fatto” (Definition of Done – DoD)) chiarisce quando un determinato lavoro deve intendersi completato.

Quando una funzionalità viene descritta come “Fatta”, tutti devono capire cosa si intende.

Sebbene ciò possa variare in modo significativo tra i membri del team di sviluppo, essi devono avere una comprensione condivisa di ciò che si intende per lavoro completato al fine di garantire la trasparenza.

Conoscere la DoD aiuta il team a capire anche quanti elementi presenti nel Product Backlog possono essere selezionati per pianificare lo Sprint.

Lo scopo di ogni Sprint è fornire incrementi di funzionalità potenzialmente rilasciabili che aderiscono all’attuale definizione di “Fatto” (Definition of Done).

I team di sviluppo realizzano un incremento della funzionalità del prodotto che il Product Owner può anche decidere di rilasciare immediatamente.

Se la definizione di “Fatto” (DoD) per un incremento di prodotto fa parte degli standard o delle linee guida di un’organizzazione, tutti i team di sviluppo devono come minimo rispettarla.

Per preparare una Definition of Done lo Scrum Master può, ad esempio, organizzare un brainstorming con il team in modo che le persone possano esprimere la propria opinione.

La professionalità dei team di sviluppo cresce col tempo e in seguito è quindi prevedibile che la DoD venga ulteriormente articolata e dettagliata includendo criteri più rigorosi per una qualità superiore.

Durante la pianificazione di uno Sprint la DoD può essere pertanto aggiornata in modo da tener conto dell’esperienza maturata dal team.

Esempio di Definition of Done (DoD)

Nello sviluppo software, un esempio di DoD per una user story o funzionalità può corrispondere ad una sorta di checklist:

Test superato (corredato dalle specifiche)
Codice rivisto
Criteri di accettazione soddisfatti (segue dettaglio)
Test Funzionale superato
Requisiti non-funzionali soddisfatti (segue dettaglio)
Test di regressione OK
Accettazione del Product Owner

Evidenziare le violazioni

Il team deve sempre essere consapevole se le regole sono state violate.

E’ compito dello Scrum Master rendere trasparente le situazioni di violazione rispetto allo standard di DoD concordato. Questo aiuta il team a crescere, a perfezionarsi ed a standardizzare le prassi e i comportamenti.

Il fine della evidenziazione non è sanzionatorio ma è la crescita delle capacità del team.

Infatti la DoD è fondamentale principalmente per motivi di:

  • Tracciabilità di ciò che è stato fatto e di ciò che ancora deve essere completato.
  • Chiarezza e Trasparenza in modo che tutti i componenti del team comprendano i criteri adottati.
  • Credibilità nei confronti di tutti gli stakeholder.

agile project management