Metodologia Agile: cos’è
La metodologia Agile è interazione continua, e continuo controllo ed evoluzione del processo. E' lo scomporre il progetto in fasi, è il dare ad ognuno un compito, e la suddivisione del lavoro in modalità ben precise.
E' una compagnia di musicisti che si muove all'unisono per creare una sinfonia perfetta.
Metodologie Agile: le origini
Innanzitutto, un breve cenno alla storia. La metodologia agile nasce dalle menti brillanti di 17 persone, che si sono incontrate nello Utah per una conferenza. Era l'anno 2001, Internet a quei tempi era visto come uno strumento che aveva le potenzialità per cambiare il mondo, ma ancora non si aveva coscienza di quello che sarebbe potuto realmente diventare.
Ma torniamo nello Utah. Tutto era ancora agli albori, la storia di cui parliamo non è storia antica. Ma queste persone avevano già forse capito che per progredire si sarebbe dovuto inventare un nuovo modo di lavorare, apposito per questo campo, veloce, appassionante, uniforme: la metodologia Agile.
Negli anni '70 e per diversi decenni, i programmatori di tutto il mondo utilizzavano la tecnica Waterfall, derivante dalla ancora precedente Scientific Management. La tecnica Waterfall consisteva nell'analizzare il progetto all'inizio, poi progettare una soluzione per tale problema e infine implementare la soluzione. Attenta analisi, creazione di un piano dettagliato ed esecuzione di tale piano fino al completamento. Facile no? Cosa poteva andare storto?
In realtà tutto. Al tempo, programmare era scrivere a mano il codice, che veniva poi punzonato su apposite schede che venivano a loro volta caricate e eseguite dagli operatori. Il processo era lungo, macchinoso, e se l'errore era iniziale venivano buttate giornate di lavoro.
Ma, al nello stesso tempo, era inconcepibile lavorare in maniera differente.
Poi improvvisamente le cose cambiarono.
Gli albori della comunità Agile risalgono alla fine degli anni 80. Nel 1995 poi, cinque programmatori scrissero un famoso articolo su Scrum, altro concetto fortemente legato alla metodologia Agile. Fu l'inizio della rivoluzione, di qualcosa di talmente grande da essere quasi inafferrabile. Venne introdotto anche un altro concetto che avrebbe poi aperto la strada alla metodologia, ovvero l'Extreme Programming.
Non racconterò anche di XP, ma ebbe un'immensa importanza in quanto due dei "genitori" dell'Agile si conobbero proprio grazie a questo. Stiamo parlando di Robert C. Martin e Kent Beck.
Martin rimase talmente affascinato da XP da proporre a Beck prima una partnership per dei corsi (che tra l'altro ebbero molto successo), e successivamente addirittura un convegno per raggruppare tutti i sostenitori e scrivere un manifesto unitario.
Questo è il punto di svolta. Torniamo nello Utah, a Snowbird, nel 2001. Il convegno si chiama "The Light Weight Process Summit" e incontra l'adesione di tutte le diciassette persone invitate.
Ogni minuto di quel convegno ha portato a termine una missione, ovvero la creazione di un manifesto che descriveva e raggruppava i principi cardine di tutti i "processi leggeri" rappresentati da questi 17 uomini presenti a fare la storia della Metodologia Agile.
Furono due giorni febbrili, Martin stesso ammette di non ricordare quasi nulla. Ma ad un certo punto la magia scattò: vennero trovati i 4 principi cardine, raggruppati per affinità e trascritti su di una lavagna. Nessun disaccordo, nessuna lite. Solo degli uomini che cercano il modo migliore per scrivere software.
Il resto è storia, lo potete leggere sul sito ufficiale, potete cercare su Google. Potete entrare in una stanza di un'azienda che magari non fa strettamente software ma trovarci comunque tracce della metodologia Agile. Questo perché la portata di queste idee, di questi uomini, ha assunto un carattere universale. E, come dice Martin, è dedicata a tutti gli sviluppatori "che hanno combattuto contro i mulini a vento".