Il lavoro in team che ogni cliente merita
a cura di Giuseppe Cosmai - Caricamento...
Il mese scorso vi avevo parlato dell'importanza del lavoro in team per lo sviluppo di applicazioni complesse. Oggi vorrei ritornare su questo argomento per parlare di due concetti di sviluppo rivoluzionari che stiamo applicando all'ambizioso progetto Data Share Web, di cui presto vi sveleremo i dovuti particolari.
Si tratta di Extreme Programming e di MVC (Model, View, Controller): il primo riguarda lo sviluppo agile del software, mentre il secondo, di cui vi parlerò più avanti, si focalizza sullo sviluppo di interfacce grafiche semplici e usabili.
I principi dell'Extreme Programming sono stati formulati da Kent Beck nel suo libro Extreme Programming Explained: Embrace Change, che spiega come lo sviluppo di un software complesso vada affrontato secondo la logica della suddivisione di un grosso problema in problemi più piccoli su cui lavorare a più mani (ovvero lavorare anche in due allo stesso computer) rivedendo costantemente il codice e coinvolgendo frequentemente il committente nelle diverse scelte a cui ci si affaccia durante la lavorazione, aderendo ai principi della metodologia agile per lo sviluppo del software.

In questi giorni, assieme a Stefano e Devis, sto imparando a mettere in pratica questi principi tanto amati da Fabiano: lavoriamo in coppia sulle "carte" (le funzionalità del progetto organizzate come attività su Basecamp) fermandoci di volta in volta a rivedere i nostri micro-obiettivi e riprogrammando le fasi successive di lavoro, con il fine di completare singole release (organizzate come milestone, sempre su Basecamp) anziché il lavoro completo.
Beck infatti ipotizza la consegna del software tramite frequenti rilasci intermedi, in cui il committente abbia la possibilità di contribuire ai test e di toccare con mano la qualità del lavoro realizzato. In questo modo oltretutto il carattere del progetto rimane incredibilmente semplice nelle fasi più critiche e ciò consente agli sviluppatori di lavorare con una certa serenità. Niente male eh?
Ovviamente man mano che le versioni vengono rilasciate nel susseguirsi di finestre temporali di lavorazione, senza quasi accorgercene, il progetto sta assumendo una complessità via via più importante, adeguatamente alle specifiche capacità di gestione maturate dal team.

Beh, devo dire che grazie a questo approccio mi sto divertendo un sacco perché il progettone Top Secret
cresce senza intoppi e il committente è molto contento di come si sta evolvendo. Toccare con mano un'idea permette all'intero team di dar vita giorno per giorno a nuove idee mantenendoci comunque concentrati su ciò che è utile e prioritario.
Fra poco pubblicheremo la prima release ufficiale. Restate aggrappati al nostro oBlòg!
Extreme Programming Explained - Embrace Change di Kent Beck
ISBN: 9780321278654 - In vendita su Hoepli





