I libri agili sotto l’albero: consigli per le letture per le prossime vacanze

Qualche tempo fa pubblicammo su questo blog un post intitolato La biblioteca dell'Agilità una raccolta ragionata di libri utili per approfondire il tema dell'agilità dai vari punti di vista: introduzione ai framework e alle tecnologie, coaching di team, retrospettiva di progetto.

Visto che le vacanze natalizie si avvicinano, periodo spesso dedicato allo studio e alla lettura, proponiamo questo aggiornamento con alcuni nuovi interessanti riferimenti che devono essere presenti nella biblioteca di ogni agilista che si rispetti.

Bibliografia per Extreme Programmers

Per cominciare, partiamo da un argomento che fu tralasciato nel post precedente, ovvero XP. In questo ambito, il libro che ha dato inizio a tutto è Extreme Programming Explained di Kent Beck, libro che spiega i ragionamenti che stanno dietro a XP e perché funziona.
L’edizione del 1999  descrive la prima versione di XP, mentre quella  del 2005, non una semplice revisione ma in realtà una completa riscrittura, parla delle nuove tendenze dell’extreme programming. Entrambe le edizioni sono utili, consigliamo di leggerle tutt’e due.
Sempre in tema XP la collezione dei libri colorati  di XP, edita da Addison-Wesley e curata da Kent Beck, contiene svariate gemme; J.B. Rainsberger li chiama “the grand old XP books”.  Fra questi consigliamo Extreme Programming Installed di Ron Jeffries, Ann Anderson e Chet Hendrikson, pubblicato nel 2000.  Questo libro dà delle indicazioni pratiche su come avviare un team XP.

La letteratura su XP si è esaurita intorno al 2007.  L’ultimo libro notevole pubblicato si intitola The Art of Agile, di James Shore e Shane Warden.  Già il titolo fa capire il mutamento in atto: non si parla più di Extreme Programming ma di Agile.  All’epoca, Scrum stava prendendo piede molto più velocemente di XP.  Ciononostante, il libro di Shore e Warden è a tutti gli effetti un manuale di Extreme Programming.  È un vero e proprio manuale, nel senso che copre con sufficiente profondità e dettaglio tutti gli aspetti importanti di XP.  Se si desidera  leggere un libro solo su XP,  consigliamo senza dubbio di acquistare questo.

TDD

XP si distingue fra i metodi agili per il fatto di raccomandare specifiche pratiche sulla scrittura del software.  Di queste, la più famosa probabilmente è il Test-Driven Development.  Sull’argomento c’è quasi solo un libro che valga la pena di essere letto, e va letto più di una volta: Test-Driven Development: By Example di Kent Beck (2002).

Design e programmazione a oggetti

Una delle pratiche più famose e più fraintese di XP è l’insistenza su Simple Design.  Kent Beck e gli altri autori davano per scontata una profonda conoscenza della programmazione a oggetti, conoscenza che oggi è lontanissima dalla cultura media dei programmatori.  La maggior parte dei programmatori di oggi crede di fare programmazione a oggetti, mentre in realtà fa programmazione procedurale e orientata ai dati.  Per recuperare lo spirito originale degli oggetti, raccomandiamo Object Thinking di David West (2004), ma anche il  video The Computer Revolution Hasn’t Happened Yet, presentazione di Alan Kay a OOPSLA 1997.
Per avere informazioni concrete su come fare object-oriented programming, consigliamo l’ottimo Robert Martin, Agile Software Development, Principles, Patterns, and Practices (2002) oppure Craig Larman, Applying UML and Patterns, del 2004.
 Ci sono poi alcune risorse online.  Il wiki originale di Ward Cunningham fu la culla del movimento dei pattern e fu anche un quaderno collaborativo su cui XP venne animatamente discussa.  E’ tuttora molto interessante come documento storico, ma è molto disorganizzato e disomogeneo.  Una descrizione di XP che, al contrario di c2.com è accurata e aggiornata, si trova su extremeprogramming.org, il sito di Don Wells.  Infine da non dimenticare l’ottimo  Extreme Programming: A Reflection  di Robert Martin, che mette XP in una prospettiva storica e ne fornisce una chiave di lettura contemporanea.

Scrum

Nel post precedente avevamo già aggiunto una serie di riferimenti dedicati all’argomento Scrum. Aggiungiamo questa volta due riferimenti molto importanti relativamente alla realizzazione delle storie utente: il primo  Fifty Quick Ideas To Improve Your User Stories,  un libro uscito di recente e che contiene una serie di consigli pratici molto utili per imparare a scrivere  User Stories migliori. Raggruppati per tema (dalla pianificazione delle storie alla discussione, dalle tecniche di raffinamento alla gestione iterativa del rilascio) il libro contiene una raccolta di suggerimenti e indicazioni utili per sia per i Product Owner e Scrum Master che per il team di sviluppo. Fra le molte tecniche e suggerimenti nel libro si fa riferimento allo User Story Mapping, tecnica che è raccontata  in modo esaustivo nel libro User Story Mapping: Discover the Whole Story, Build the Right Product e che di fatto è un’altra indispensabile lettura per chi vuole imparare come eseguire la prima raccolte di storie in fase di lift off di progetto

Coaching

Concludiamo questa rassegna di riferimenti agili con un paio di titoli legati al tema della leadership. Il primo è un libro di cui si parla molto in rete in questo periodo. Il testo in questione è Turn the Ship Around!: A True Story of Turning Followers into LeadersIl libro racconta la storia di un capitano della marina statunitense che trasformò il peggior equipaggio di sommergibile in uno dei migliori, se non il migliore, di tutta la marina: il protagonista racconta la sua esperienza e di come riuscì a portare un nuovo modo di intendere il concetto di leadership. Il testo contiene diversi concetti di cui si parla spesso in agile (dalla messa in discussione del modello classico di leadership alla hosting leadership, dal meccanismo di command and control ai team auto organizzati). Una storia molto avvincente scritto in forma romanzata e per questo ancora più appassionante.

Rimanendo in tema di leadership, non possiamo non consigliare qualcosa sulla hosting leadership, tema molto attuale di cui il nostro Coach Pierluigi Pugliese ha parlato nei suoi recenti interventi in alcune conferenze (da BetterSoftware a XPDays). La host leadership è una nuova visione del tema della leadership in cui si prova a dare una visione differente del leader: da eroe condottiero a elemento parte integrante di un gruppo. Uno dei testi forse più interessanti in tal senso è Host, che quindi suggeriamo come ultima consglio per gli acquisti natalizi di questo fine anno 2015.