Metodoligie di Sviluppo Agile

Bhè che dire sono il primo a scrivere un articolo sul blog aziendale, che figata
La cosa più bella della giornata è che ho prenotato per capoverde oggi stesso, non vedo l’ora, Isola di Sal, villaggio 5 stelle All inclusive, manca solo la ragazza che mi sventaglia con la palma e poi sono la persona più felice del mondo

p.s devo ancora dirlo al capo.. hehehe

Passiamo alle cose un pochino più serie.
Vi voglio parlare di una nuova metodologia che stiamo cominciando ad applicare nel settore Tecnologia e Sviluppo di ET e nella quale credo molto per aumentare la produttività del nostro reparto.

Faccio una piccola premessa dove spiego come normalmente viene sviluppato un software.

Nella maggior parte dei casi il software viene prodotto con la metodologia a cascata , questo tipo di metodologia prevede 6 fasi di vita del software

- analisi dei requisiti,
- progetto,
- sviluppo,
- collaudo,
- integrazione,
- manutenzione.

Benchè detta in questi termini potrebbe anche risultare un’ottima soluzione per affrontare lo sviluppo di un software, con progetti di grandi dimensioni questo genere di approcio risulta molto lento e molto macchinoso.

Pensate anche solo all’analisi di un progetto molto grosso, richiede tantissimo tempo ed energie, poi comincia lo sviluppo e magari dopo 6-8-12 mesi c’è la consegna….secondo voi quante cose ci si è dimenticati per strada? E soprattutto in 6-8-12 mesi quanto sono cambiate le esigenze?

Da queste deduzioni abbiamo cominciato da 6 mesi a studiare un nuovo approccio per lo sviluppo agile, cioè lo studio iniziale del progetto poi basano su iterazioni di 15 gg.
Le iterazioni sono degli incontri dove si consegnano i lavori eseguiti da una lista di priorità data dai clieni (in questo caso la sede).Ad ogni iterazione si aggiungono i nuovi lavori che sono emersi in quelle due settimane e se ne decide la priorità rispetto al resto.

Questo permette di avere sempre una lista di lavori aggiornata e di uno sviluppo software agile, cioè con feedback molto veloci sulle funzionalità implementate, ecco perchè dopo 6-8-12 mesi i risultati sono esattamente quelli voluti e non c’è il rischio di portarsi avanti un errore, sia valutativo che software.

Un’ulteriore vantaggio è che tutti i reparti dell’azienda sono a conoscenza dei lavori svolti, di quelli in lavorazione e di quelli futuri, questo perchè ad ogni iterazione si aggiorna la lista e si va a discutere sulla priorità, sui tempi di lavoro, e quindi si è sempre aggiornati sullo sviluppo che sta avvenendo.

Qui qualche link per capire meglio

http://it.wikipedia.org/wiki/Scrum

http://it.wikipedia.org/wiki/Metodologia_agile

Per oggi direi che mi sono spinto anche troppo sulle cose tecniche  -) un saluto e alla prossima iterazione

Massimo Romanello
Web Engineer
Resp. Tecnologia e Sviluppo