Si sente spesso dire che per utilizzare una metodologia come eXtreme Programming, e molte delle sue pratiche (su tutte il TDD), è necessaria una disciplina maggiore che con altre metodologie. Penso che ci sia un fondamento di verità in questa affermazione. Tuttavia il De Mauro definisce la disciplina come (il grassetto è mio):
L’insieme delle norme che regolano il comportamento di un individuo, un gruppo, un ente; rispetto, obbedienza di tali norme: imporre, violare, mantenere la d., è incapace di d., non sanno osservare la d. | estens., dominio dei propri istinti, desideri e sim. suggerito da principi etici o religiosi: si impone una ferrea d. .
Il termine disciplina richiama quindi fortemente un altro termine: rigidità. Come è quindi possibile che un paradigma che si pone come obiettivo dichiarato quello della flessibilità anche del metodo stesso, richieda a chi applica tale paradigma, disciplina e rigidità? Per comprendere questo apparente paradosso, vorrei parlarvi molto brevemente del Toyota Production System.
In questo sistema di produzione ogni attività, ogni connesione tra le persone, e lo stesso flusso produttivo è rigidamente prestabilito. Sappiamo tuttavia che il TPS è famoso e deve la sua grande efficienza alla dinamicità e flessibilità del sistema che non ha eguali: un sistema mai fermo, ma sempre volto al miglioramento ed al cambiamento di se stesso. Il modello che spiega tutto questo è vedere il TPS come “una continua serie di piccoli esperimenti controllati“. Infatti ogni volta che viene definita una specifica, si sta definendo un’ipotesi che verrà testata con l’azione. Questo approccio altro non è se non l’anima del metodo scientifico. Gli esperimenti controllati sono implementati sottoforma di built-in tests che segnalano i problemi immediatamente. A fronte dell’emergere del problema il lavoratore che lo ha identificato è responsabile di indagarne le cause (root-cause analysis) e trovare una soluzione al fine di migliorare il processo.
Diventa chiaro quindi come solo attraverso un grande rigore nell’esprimere tali specifiche, e la precisione nel verificarle con l’azione, si può arrivare ad avere gli stessi risultati che garantisce il metodo scientifico:un crescente miglioramento (della comprensione) del sistema per mezzo di soluzioni confutabili a problemi prima irrisolti.In Toyota infatti le specifiche (l’analisi) del problema sono prese in maniera maledettamente seria, al punto che anche se il cliente è soddisfatto, e la qualità del sistema è nei livelli prestabiliti, ma non sono state seguite le specifiche, viene considerato un problema da risolvere e quindi ne vengono indagate le cause. Come sarebbe infatti possibile migliorare la soluzione se non si ha chiaro a quale problema forniva una spiegazione aka quale obiettivo si poneva?
Tornando al Test Driven Development, un test è proprio una specifica eseguibile e quindi non ambigua, che esprime l’obiettivo/il problema da risolvere, e per garantire l’efficacia di questo procedimento è necessario seguirlo scrupolosamente proprio come un fisico è estremamente preciso e rigoroso nell’ideare un esperimento. Ideare continuamente ed opportunamente una serie di esperimenti controllati e molto mirati, permette di ottenere una flessibilità in-itinere “per costruzione” e come proprietà emergente in modo sistematico dal metodo stesso. In questo modo disciplina e flessibilità non solo possono coesistere, ma oserei dire che devono coesistere.
Manca un aspetto fondamentale per chiudere il cerchio: tornando a Toyota affinché il metodo sia sostenibile in un gruppo di persone e massimizzi il risultato in quanto a qualità e adattabilità, tale metodo non viene imposto ai lavoratori, ma è radicato in essi [approfondirò il tema in un altro post]. In questo modo la disciplina ed il rigore invece che limitare la libertà e la creatività, permettono di esprimere in maniera efficace, pragmatica e continua nel tempo le grandi capacità di problem solving di cui ogni lavoratore in Toyota è dotato. E questo continuo risolvere problemi significa oltre che stimolare le capacità di problem solving, accrescere la soddisfazione di chi applica tale metodo. Disciplina e rigore al servizio dell’uomo: sono gli individui con i loro bisogni ed i loro sogni che fanno funzionare i sistemi.



Per la Toyota, parli del TQM?
Davide “Design” Muzzarelli
http://www.dav-muz.net
Commento di Davide "Deisgn" Muzzarelli — 6 Ottobre, 2006 @ 1:33 pm
Parlo del TQM?
Sì dire di sì…anche se in realtà non pensavo specificamente al Total Quality Management ma al Toyota Production System, che sicuramente implementa il TQM.
Commento di Enri — 6 Ottobre, 2006 @ 2:15 pm
dici bene,
preciserei solo che flessibilità e rigidità sono a due livelli ben distinti.
ovvero una pratica può cambiare (e cambierà) molto spesso [flessibilità]
però fino al prossimo cambiamento va eseguita esattamente come definita [rigidità]
altrimenti – come ben scrivi – non si può misurare nulla nè capire se funzionava o se andava ricercata qualche migliorìa
l’alternativa famosa è:
le pratiche sono sempre le stesse [rigidità] però nessuno le segue come si dovrebbe perchè non sono efficaci [flessibilità]
Commento di simone — 6 Ottobre, 2006 @ 2:19 pm
Esatto, Simone, hai colto nel segno.
Commento di Enri — 6 Ottobre, 2006 @ 2:28 pm
Salve in azienda stiamo trattando proprio questo sistema di produttivita che sembra ai fatti completamente innovativo e produttivo e surclassa tutti gli altri..
Vorrei pero’ sapere se esiste un sistema “occidentale” diverso da quello nipponico cheporti agli stessi risultati finali..
Grazie..
Commento di cristian — 24 Marzo, 2007 @ 8:09 pm