Stamane ho avuto una rivelazione. Ero in riunione con un cliente, a proposito di un progetto piuttosto importante, quando quest'ultimo ha fatto un'affermazione che a prima vista potrebbe sembrare banale, ma che ragionandoci sopra mi ha dato una sottile soddisfazione.

L'affermazione è la seguente: "All'inizio abbiamo scritto un documento, poi il modulo è stato realizzato, e ora stiamo riscrivendo il documento per adeguarlo al risultato". Questa frase, buttata li come una battuta, mi è rimasta in testa per tutta la giornata, e rimuginandoci sopra sono arrivato alla conclusione di poter essere contento di quanto è avvenuto.

Infatti, lo sviluppo di questo modulo applicativo, si è svolto proprio come sintetizzato dalla frase. Il documento iniziale era nulla di più che una semplice traccia sulla quale lavorare. Nello scrivere il codice perciò ho scelto di implementare il minimo possibile delle funzionalità e poi di rilasciare una prima versione che a quel punto è diventata il canovaccio sul quale il cliente ha cominciato a provare e a richiedere modifiche.

Così alla fine, il risultato rispetta solo in minima parte ciò che è stato definito nel documento iniziale, ma il feedback del cliente mi fa capire che egli è indubbiamente molto soddisfatto del risultato ottenuto che va molto aldilà delle sue aspettative.

Occorre però segnalare una caso. Il procedere in questo modo ha indubbiamente dilatato i tempi di sviluppo. Questa però è stata una scelta del cliente, che volendo avere l'applicazione il più possibile soddisfacente e completa ha scelto di non considerare il tempo una variabile importante e di posporre così la consegna del modulo.

Meglio non poteva andare: il cliente è contento, l'azienda anche e io ne ho ottenuto una buona dose di soddisfazione. Se questo si può chiamare Agile, allora non c'è dubbio che questa volta si è dimostrato vincente.

powered by IMHO


Commenti (4) -

# | Luca Minudel | 30.01.2005 - 01.00

Questi casi di successo fanno bene alle metodologie agili e all'informatica moderna.

  

A sentirne parlare va a finire che anche qualche dinosauro dell'informatica si convince che... un'altra informatica è possibile e _fuziona_



P.S. Invalid Human Proof 5° volta...

# | Marco Abis | 31.01.2005 - 19.46

Riguardo a:



"Occorre però segnalare una caso. Il procedere in questo modo ha indubbiamente dilatato i tempi di sviluppo"



ti chiedo: davvero uno sviluppo classico (intenso come: raccolta specifiche dettagliate, sviluppo, modifiche non previste, aggiornamento specifiche, sviluppo, modifiche, aggiornamento specifiche, ...) avrebbe richiesto meno tempo totale?



Nella mia esperienza no. Sarebbe cosi solo se le specifiche iniziali (MOLTO dettagliate) non cambiassero mai, in quel caso ben venga un waterfall o un approccio a spirale. Purtroppo non è (quasi?) mai cosi IMHE (I My Humble Experience)

# | Andrea Boschin | 31.01.2005 - 21.35

Sì Marco, hai ragione, il fatto è che rispetto alle specifiche che mi sono state date all'inizio, il risultato finale si discosta molto (e la cosa si vede proprio). Se io avessi realizzato il modulo come era descritto avrei sicuramente impiegato meno tempo ad arrivare alla conclusione salvo che poi il cliente avrebbe richiesto un numero imprecisato di modifiche e alla fine suppongo il tempo totale sarebbe stato molto maggiore. Volevo solo evidenziare che così il cliente si è reso conto del tempo necessario a sviluppare il prodotto così come lovoleva lui, mentre probabilmente nel primo caso avrebbe attribuito a mia imperizia la necessità di una fase di rettifica successiva alla consegna.

# | Marco Abis | 31.01.2005 - 22.06

esattamente

Aggiungi Commento