ISBN: 9781934356586
Autori: Jonathan Rasmusson
Editore: The Pragmatic Programmers
Lingua: Inglese
Anno: 2011
Pagine: 262
Allegati: Nessuno
Sulle
metodologie agili sono stati scritti diversi testi, alcuni dei quali sono considerati delle vere pietre miliari, la cui lettura è quasi un dovere per chi vuole comprendere a fondo questa filosofia di gestione di un progetto software. Cosa differenzia allora "
The Agile Samurai" dai testi classici e perché leggere questo testo e non limitarsi ai classici dell'argomento?
Già il titolo probabilmente incuriosisce il potenziale lettore. Sfogliando il libro, poi, la prima cosa che salta all'occhio è sicuramente l'
aspetto grafico, i numerosi disegni, i fumetti e la ricorrente figura di Master Sensei, il maestro samurai guida dell'aspirante guerriero-lettore. Insomma, il libro si presenta graficamente quasi come le slide di una presentazione. Anche lo stile narrativo è
molto colloquiale, vivo e colorito, con diversi aneddoti e scenari, che coinvolgono il lettore rendendolo partecipe nell'avventura della
gestione di un progetto software.
Per quanto riguarda i
contenuti, poi, essi sono il risultato di dieci anni di esperienza sul campo di
Jonathan Rasmusson, l'autore del testo, in qualità di
agile coach.
Il testo è una
introduzione pratica alle modalità di gestione di un progetto software secondo la filosofia agile, indipendentemente dalla specifica metodologia. Anzi, più volte l'autore sottolinea che non è necessario seguire alla lettera questa o quella metodologia, ma bisogna attenersi a quello che per ciascun team funziona per mettere in pratica i principi agili.
I
quindici capitoli del libro si articolano in cinque parti. La
prima parte introduce i principi agili e sottolinea le differenze tra un team agile e un team tradizionale. La
seconda parte illustra le modalità di acquisizione di una visione generale e condivisa del progetto. Si passa poi, nella
terza parte, alla raccolta delle
user story e alla pianificazione, evidenziando che il rapporto con la realtà non deve essere dimenticato. La
quarta parte si occupa dell'esecuzione del progetto, soffermandosi sui concetti di iterazione e sulle varie tecniche, che consentono di mettere in pratica i principi agili di valore, comunicazione e trasparenza. La
quinta parte tratta le tecniche più specifiche di realizzazione del software, come lo unit testing, il refactoring, il
TDD (Test Driven Development) e la
continuous integration.
Come accennato prima, la
metafora seguita nel corso del libro è quella dell'aspirante guerriero, che vuole imparare dal maestro tutto quello che c'è da sapere sulle varie fasi della gestione di un progetto software. E infatti, alla fine di ciascun capitolo è presente un colloquio tra maestro e studente, in cui vengono fugati i dubbi che man mano emergono.
Numerosi sono i
consigli pratici dettati dall'esperienza dell'autore per gestire alcune situazioni, come ad esempio le sopravvenute difficoltà nel rispettare le date pianificate, la gestione delle richieste in corso d'opera, la preparazione di una demo a sorpresa, il venir meno di un componente del team.
Per rispondere dunque alla domanda che ci siamo posti all'inizio di questa recensione, possiamo dire che tra i principali motivi per leggere questo libro, oltre ai
contenuti ben organizzati, ci sono sicuramente lo
stile coinvolgente e la ricchezza di
informazioni pratiche.

Il testo si caratterizza per i contenuti chiari e comunicati con uno stile coinvolgente, coadiuvato da un uso intelligente delle informazioni visuali, oltre che da una ricchezza di esempi e suggerimenti pratici.

Gli argomenti della quinta parte potevano essere maggiormente approfonditi, ma questo è in realtà
by design, dal momento che lo stesso autore afferma che per ciascuno di essi può essere scritto un libro a parte.