L’argomento di questo articolo è la sperimentazione che è l’11º fondamento della fabbrica agile.
L’approccio agile di sviluppo graduale dei prodotti per piccoli passi, costituiti da incrementi e da modifiche del prodotto, è accompagnato ad ogni passo da verifiche.
La verifica è in molti casi la valutazione da parte degli stakeholder interessati e/o del cliente di quanto sviluppato, secondo le prospettive del design for x o di eventuali soluzioni alternative.
In molti altri casi si tratta invece di valutare il risultato di esperimenti condotti su quanto sviluppato.
Nel caso di prodotti fisici quando è possibile si conducono esperimenti con modelli digitali, altrimenti si conducono su elementi del prodotto o loro antesignani come i pretotipi.
Questa continua sperimentazione consente di dare vita, anche per i prodotti hardware, ad uno sviluppo guidato dai test o test driven development.
Per sperimentazione si intende non solo la continua verifica di ogni soluzione progettuale ma anche la verifica di prodotti non ancora sviluppati.
Quando si sviluppano prodotti molto innovativi è opportuno infatti fare prima un progetto di esplorazione.
Questo tipo di progetto ha lo scopo di verificare la possibile risposta del mercato di fronte al prodotto che si sta pensando di sviluppare, senza sviluppare il prodotto stesso.
Per non costruire il prodotto si sviluppano suoi antesignani digitali o fisici.
Se c’è un tratto che trovo ripetuto continuamente nello sviluppo dei prodotti in modalità Agile è la sperimentazione.
Si tratta di un approccio scientifico quando la sperimentazione è a conferma di teorie formalizzate, in similitudine con l’approccio dei ricercatori..
Nel contempo si tratta di di un approccio empirico, quando sono disponibili solo stime o intuizioni, sulla base dei dati raccolti e degli incontri con i clienti di riferimento.
La sperimentazione e i fallimenti
Nella mia vita professionale ho avuto la fortuna di fare lo sperimentatore per alcuni anni, progettando le singole prove unitamente alle macchine di prova, per validare in laboratorio e/o sul campo i prodotti creati dai progettisti.
E’ stata per me un’esperienza molto ricca perché, come ingegnere di calcolo prima e progettista poi, la sperimentazione è stata un grande bagno di pratica.
Mi ha insegnato in particolare che i modelli digitali richiedono una continua validazione conducendo quando possibile esperimenti di verifica dei loro risultati.
Ho imparato che la prospettiva dello sperimentatore è diversa da quella del progettista, che è in cerca di conferme, mentre chi sperimenta è necessario non abbia pregiudizi.
Per queste ragioni è meglio che lo sperimentatore sia una persona diversa da chi sviluppa.
In particolare non è solo importante verificare le prestazioni e le funzionalità attese del prodotto, ma occorre sperimentare fino a trovare i limiti di quanto sviluppato.
Questo va oltre i modelli di calcolo e mi ha messo più volte di fronte a risultati inaspettati, con prestazioni del prodotto non giustificabili dal calcolo.
La sperimentazione, la complessità e l’apprendimento
La sperimentazione ci fa incontrare la complessità dello sviluppo di un prodotto, nel senso che mettiamo alla prova i nostri convincimenti ed è il terreno dove avvengono più comunemente i fallimenti.
I team di sviluppo, durante lo sprint planning pianificano solo argomenti o storie che sono chiare e per questo ready.
Per la mia esperienza, nella maggioranza dei casi, il passo successivo di sviluppo o sprint, ha un risultato prevedibile.
La verifica successiva, durante lo sprint review, è una forma di esperimento ed un elemento di complessità, perché dall’esito imprevedibile.
Quanto sviluppato può non piacere agli stakeholder e/o al cliente.
Quando nei passi successivi si procede con la verifica sperimentale di quanto progettato le sorprese possono essere molto maggiori e, più frequentemente di prima, sono negative.
Il fallimento di un esperimento, chè è la mancanza di conferme di quanto ipotizzato, è una delle maggiori forme di apprendimento.
La sperimentazione nel processo agile è l’attività che riserva maggiori sorprese ed è indicativa della complessità dello sviluppo dei prodotti.