Condividi tramite


Pianificazione di un'iterazione (CMMI)

Lo sviluppo di software in iterazioni prevede la suddivisione del lavoro in fasi incrementali in modo da ottenere software con sempre più funzionalità implementate alla fine di ogni iterazione. Idealmente, è possibile mostrare qualcosa al cliente già al termine della prima iterazione. Le iterazioni consentono di ricevere feedback sin dall'inizio per poter apportare correzioni già nelle prime fasi.

La pianificazione delle iterazioni riguarda molte operazioni, dalla definizione della durata desiderata delle iterazioni, alla scelta del lavoro che può essere eseguito dal team in tale periodo di tempo, fino alla pianificazione delle attività da includere in ogni iterazione.

Il modello MSF for CMMI Process Improvement fornisce un campo Percorso iterazione in ogni elemento di lavoro per semplificare la gestione del lavoro per ogni iterazione. È possibile personalizzare questo percorso perché rifletta le iterazioni che si prevede di eseguire. Per ulteriori informazioni su CMMI, vedere Background to CMMI.

In questo argomento

  • Stimare il carico di lavoro appropriato per un'iterazione

  • Pianificare una dimostrazione dell'iterazione e un handoff

  • Avviare un'iterazione

  • Gestire un'iterazione

Creare attività per implementare e testare ogni requisito

Il piano di iterazione è rappresentato dall'elenco di attività pianificate per l'iterazione. Ogni attività è collegata al requisito del prodotto che implementa.

L'elenco di attività è visibile nella query Suddivisione lavoro e nel dashboard di stato. Per ulteriori informazioni, vedere Dashboard di stato (CMMI).

All'inizio dell'iterazione, il team rivede i requisiti pianificati per l'iterazione e crea elementi di lavoro attività. Gli elementi di lavoro attività descrivono il lavoro, ad esempio di progettazione, sviluppo e test, necessario per completare il requisito.

Il modo più facile per creare le attività e collegarle ai requisiti del prodotto consiste nell'utilizzo di Office Excel. Per ulteriori informazioni, vedere Esecuzione della pianificazione con un approccio dall'alto verso il basso utilizzando un elenco con struttura ad albero di elementi di lavoro (in Excel).

Durante l'iterazione, i membri del team aggiornano lo stato di completamento ed elaborano i campi rimanenti delle attività. Se il team mantiene queste informazioni aggiornate, il dashboard di stato e altri rapporti indicano il lavoro rimanente, mentre la curva del grafico di burn-down indica la probabilità che il lavoro venga completato in tempo.

Stimare il carico di lavoro appropriato per un'iterazione

È molto probabile che, durante la pianificazione del progetto, sia stato concordato di sviluppare gli incrementi del prodotto in una serie di iterazioni associate alla durata. Queste iterazioni variano in genere da una settimana a quattro settimane.

Il modello fornisce i rapporti seguenti, utili per stimare il carico di lavoro da pianificare per un'iterazione.

  • Stato di tutte le iterazioni: questo rapporto consente di gestire le prestazioni del team nelle iterazioni successive. Utilizzare questo rapporto per determinare il numero di requisiti completati e le ore necessarie per il completamento in un'iterazione.

  • Panoramica requisiti: in questo rapporto sono elencati tutti i requisiti, filtrati in base all'area e all'iterazione e ordinati in base all'importanza. Questo rapporto può indicare la quantità di lavoro completata dal team in un'iterazione.

  • Burn-down e velocità: il burn-down indica la tendenza del lavoro completato e rimanente in un periodo di tempo specificato. La velocità indica la parte di lavoro completata e necessaria in base alla durata dell'iterazione.

Pianificare una dimostrazione dell'iterazione e un handoff

È necessario pianificare il tempo necessario per dimostrare la funzionalità incrementale alle parti interessate, riunire il team per un'analisi retrospettiva e assegnare il lavoro completato per i test di convalida.

È in genere necessario allocare una certa quantità di tempo nell'ultimo giorno dell'iterazione per dimostrare alle parti interessate la funzionalità implementata.

Registrare il feedback e salvarlo nel portale del progetto. Se la dimostrazione evidenzia nuove attività o requisiti, creare gli elementi di lavoro necessari. Questi elementi di lavoro devono essere inseriti nei piani di iterazione futuri.

Avviare un'iterazione

Avviare l'iterazione con una versione minima del lancio del progetto. Riunire il team. Delineare gli obiettivi e l'ambito dell'iterazione. Discutere e presentare il piano e tutti i destinatari. Assicurarsi che tutti i membri del team dispongano di contesto sufficiente per proseguire il lavoro organizzandosi in modo indipendente. Prevedere il tempo e lo spazio per le domande dei membri del team e registrare tutti i problemi o i rischi individuati durante la riunione. Archiviare queste informazioni come relazioni nel portale del progetto. Come responsabile del progetto, creare elementi di lavoro rischio e problema supplementari, in base alle esigenze.

Gestire un'iterazione

Durante l'iterazione è necessario monitorarne giornalmente lo stato utilizzando i rapporti forniti con il modello. Sarà necessario porre particolare attenzione ai rapporti Lavoro rimanente, Lavoro non pianificato e Panoramica requisiti per verificare la gestione dell'iterazione rispetto alle previsioni. Per ulteriori informazioni, vedere Rapporto Lavoro rimanente, Lavoro non pianificato e Rapporto Panoramica requisiti (CMMI).

Risorse aggiuntive

Per ulteriori informazioni, vedere le risorse Web seguenti:

Retrospettive dei progetti: manuale per le revisioni a cura del team, Norman Kerth; Dorset House, 2001.

Retrospettive Agile: migliorare la produttività dei team, Esther Derby e Diana Larsen; Pragmatic Bookshelf, 2006.