Agile Project sono progetti software che adottano metodologie iterative di sviluppo del software. Il software viene realizzato per incrementi ed ogni incremento è il prodotto di una procedura di sviluppo (iterazione) di breve durata (2-3 settimane) e rielabora eventuali risultati derivanti dall’iterazione precedente. Il software è quindi il prodotto di una sequenza di versioni incrementali.

Principio di base: sviluppare un’applicazione software ad incrementi consentendo allo sviluppatore di riutilizzare le informazioni apprese durante lo sviluppo della versione incrementale precedente. Lo sviluppo inizia con una semplice implementazione di un subset dei requisiti del software e migliora la sequenza evolutiva delle versioni fino all’implementazione finale del sistema. Ogni iterazione offre l’oppurtintà di modificare il progetto o aggiungere nuove funzionalità.

Perché lo usiamo

Il progetto software in questo modo evolve in modo più controllato, eventuali errori si possono correggere in tempi brevi, nuovi requisiti o modifiche di quelli iniziali possono esser immediatamente integrati nel processo di sviluppo. Ove possibile è preferibile usare il metodo agile invece che la metodologia classica di sviluppo, la cosiddetta waterfall, proprio per la sua flessibilità. Leggi l’articolo Agile vs waterfall.

Vantaggi per il cliente:

  1. coinvolgimento attivo del cliente nel processo di sviluppo
  2. aggiornamenti regolari e frequenti sullo stato dell’applicazione
  3. i requisiti vengono validati dopo ogni iterazione
  4. consegna rapida delle funzionalità di base e riduzione del time-to-market
  5. pianificazione fissa dei tempi di consegna per funzionalità
  6. maggiori test, software migliore

Tutto questo riduce sostanzialmente i tempi e i costi di sviluppo!

Coinvolgimento del cliente

Affinché questo approccio funzioni è importante che al team di progetto partecipino anche i clienti finali sia per la raccolta dei requisiti ma soprattutto per la validazione dei risultati.

Tecniche Agili

Le tecniche Agili possono essere implementate in diversi modi e con strumenti diversi.
Una delle tecniche di maggior successo è Scrum.

Riferimenti

 

 

Tagged with →  
Share →