Agile: Sviluppo Iterativo e Sviluppo Incrementale in DSDM e Agile Project Management

Lo sviluppo iterativo è una tecnica di sviluppo, utilizzata in una timebox nella quale viene sviluppato un prodotto. Ogni iterazione è auto-consistente e comprende le attività di analisi, progettazione, implementazione e test. Ogni iterazione può aggiungere parti al prodotto (Sviluppo Iterativo) oppure raffina il prodotto (Sviluppo Incrementale). E’ quindi chiamato sviluppo iterativo, incrementale e/o evolutivo. Si basa sul feedback ottenuto nell’iterazione precedente per migliorare le iterazioni successive.

L’Iterative Development (sviluppo iterativo) è una delle 5 tecniche chiave di DSDM®. E’ utilizzato all’interno delle Development Timebox per sviluppare la soluzione che, non a caso, prende il nome di Evolving Solution (Soluzione in evoluzione).

Sviluppo Iterativo e Sviluppo Incrementale

sviluppo_iterativo_sviluppo_icrementaleSpesso si utilizzano i termini “Sviluppo Iterativo” e “Sviluppo Incrementale” come sinonimi. Per quanto simili, sono due concetti ben diversi. Ogni approccio ha i suoi pro e i suoi contro. Configurare correttamente il ciclo di sviluppo è utile per ottimizzare i rilasci. Non a caso DSDM® prevede due princìpi differenti: “Build incrementally from firm foundations” (Incrementale – Verticale) e “Develop Iteratively” (Iterativo – Orizzontale) e fa notare che spesso un approccio combinato ha più vantaggi.

Sviluppo Iterativo in DSDM®

DSDM® definisce un ciclo ben preciso per l’Iterative Development (sviluppo iterativo) che garantisce che sia ottenuto e utilizzato il feedback e che la soluzione evolva in modo controllato:

  • Identify (Identificare): si concorda l’obiettivo dell’iterazione.dsdm-agile-project-management-iterative-development-sviluppo-iterativo
  • Plan (Pianificare): si pianifica il lavoro e si verifica che ci sia tutto il necessario per ottenere l’obiettivo.
  • Evolve (Evolvere): si eseguono le attività pianificate.
  • Review (Revisionare): si verificano i risultati e l’ottenimento dell’obiettivo.
    • Se l’obiettivo è stato raggiunto si procede con l’accettazione della nuova baseline del prodotto, si esegue un’altro ciclo  si conclude lo sviluppo.
    • Se l’obiettivo non è stato raggiunto è possibile:
      • Scartare le modifiche appena fatte, trovare un nuovo approccio ed eseguirlo in un nuovo ciclo.
      • Identificare del lavoro aggiuntivo, ed eseguirlo in un altro ciclo.

Lo sviluppo iterativo è una delle componenti principali delle Development Timebox. Quando è utilizzato in questo contesto sono presenti tre iterazioni di breve durata – giorni o addirittura ore – per Investigation, RefinementConsolidation.

Sviluppo iterativo per i Project Product o Prodotti di Gestione

Lo sviluppo iterativo è una tecnica molto potente può essere utilizzata anche per lo sviluppo dei Project Product in DSDM® o dei Prodotti di Gestione in PRINCE2®. In questi casi la durata della timebox è variabile.

Risorse e riferimenti

  • Il manuale “Atern® Handbook” edito dal DSDM® Consortium
  • Il libro “Applicare UML e i Pattern: Analisi e progettazione orientata agli oggetti” di  Craig Larman edito da Pearson Education Italia

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

1 thought on “Agile: Sviluppo Iterativo e Sviluppo Incrementale in DSDM e Agile Project Management”

  1. Pingback: #Timeboxing: come funziona in #DSDM e #Agile Project Management - Il Blog del Project Management

Comments are closed.

Scroll to Top