Articoli

gradualita agile

Gradualità – Il 7° dei fondamenti della Fabbrica Agile

La gradualità è un fondamento centrale dello sviluppo dei prodotti fisici in modalità agile, e  che procede per piccoli passi (iterazioni o sprint). 

Gradualità significa procedere per tentativi ed errori sviluppando i passi successivi sulla base di quanto emerge

All’interno di ciascun passo il prodotto viene sviluppato aggiungendo nuovi elementi, chiamati incrementi di prodotto, e/o modificando quanto fatto chiamando questo iterazioni o modifiche di prodotto.

iterazione gradualita agile

A prima vista solo la parte incrementale sembra virtuosa ma, in realtà, l’incremento di prodotto sviluppato ad un passo può essere modificato qualche passo dopo.

Il significato di iterazione

Occorre fare attenzione perché il termine iterazione ha un duplice significato:

  1.  
    1. Iterazione corrisponde al passo o sprint di sviluppo del prodotto, che precede la verifica con il rappresentante del cliente e/o con il cliente stesso. Questa verifica fa emergere nuovi elementi e permette di pianificare i prossimi passi.
    1. Iterazione corrisponde anche a modificare quanto realizzato, come fa un pittore quando ripassa il pennello sopra un’area precedentemente dipinta.

Per evitare fraintendimenti d’ora in poi impiegherò il termine passo per descrivere il primo significato e modifica per descrivere il secondo.

iterazione gradualita modifica

La gradualità e lo sviluppo dei prodotti fisici o hardware

Nel caso dei prodotti fisici la modifica di quanto sviluppato può essere molto onerosa e, per questa ragione, è importante minimizzare l’impatto dell’errore stesso.

Procedendo per piccoli passi, attraverso la virtualizzazione del prodotto con i gemelli digitali e le simulazioni numeriche, o attraverso la costruzione di antesignani del prodotto, si possono validare le soluzioni sviluppate senza dover costruire l’intero prototipo.

Solamente lo sviluppo graduale del prodotto realizzato attraverso piccole modifiche (iterazioni) ed nuovi elementi (incrementi) rende sostenibile lo sviluppo di un prodotto fisico o hardware.

Gradualità vuol dire anche gradualità della definizione dei requisiti.

Nel caso di progetti complessi di sviluppo di un prodotto i requisiti sono spesso e necessariamente vaghi

L’approccio graduale consente di convergere, durante i primi passi dello sviluppo, verso dei requisiti sostenibili e raggiungibili.

Procedere per piccoli passi vuol dire anche massimizzare il lavoro non a valore e che viene risparmiato o non svolto

Ad ogni passo è opportuno sviluppare solamente “quanto basta” al team di sviluppo, ai rappresentanti del cliente e/o al cliente stesso, per valutare ciò che emerge e per decidere in che direzione procedere nei passi successivi.

Se portassimo avanti troppo a lungo lo sviluppo di una soluzione che venisse poi scartata, questo consumerebbe inutilmente risorse, tanto da rendere insostenibile l’esplorazione di soluzioni alternative.

Per queste ragioni procedere per piccoli passi fa aumentare la velocità di sviluppo e porta più valore al cliente e all’azienda.

 

Lo sviluppo graduale e il suo impatto sulle persone

Piccoli passi significano fallimenti contenuti che sono più facili da elaborare e da accettare, sia da parte del team che da parte dell’azienda.

Questo favorisce il sostegno da parte del management all’autonomia sempre maggiore dei team.

Questo passa anche attraverso la crescita graduale della cooperazione all’interno del team, innescando una spirale virtuosa che porta a livelli di prestazione più elevate, accompagnate da un maggiore benessere personale.

Questo è particolarmente necessario nei prodotti fisici perché il team si scioglie dopo la realizzazione del prodotto stesso. 

Quando è possibile conviene continuare con lo stesso team anche per lo sviluppo di un’altro prodotto.

Quando invece il prodotto da sviluppare richiede conoscenze e competenze di dominio diverse è necessario sostituire più elementi del team stesso.

Se il prodotto è l’output del processo di sviluppo, l’outcome interno all’azienda di questo processo è l’impatto che questo ha sul team di sviluppo

L’impatto di un approccio Agile su un team cross funzionale è nella crescita graduale delle competenze tecniche e delle competenze relazionali, che si costruiscono mentre si realizza il prodotto.

La consapevolezza di tutto questo si costruisce attraverso un percorso graduale e  non lineare.

Altri approfondimenti sullo sviluppo prodotto Agile che ti potrebbero interessare