Dedicato in particolar modo ai project manager, questo libro è una
preziosa collezione di best practices per lo sviluppo software, scritto
naturalmente con la solita maestria di McConnell che rende la lettura
piacevole e divertente.
Autore:Steve McConnell (Construx)
Editore: Microsoft Press
ISBN: 1-55615-900-5
Pagine: 680
Lingua: Inglese
Anno: 1996
Categoria: Best Practices, progettazione software
Online: Amazon
Steve McConnell
è autore di libri di grande successo ed ha scritto negli anni opere che
sono ora considerate dei classici imperdibili del genere, trattando in
particolare gli aspetti della progettazione e della gestione del ciclo
di vita del software.
Rapid Developement è nelle intenzioni dell’autore un insieme di
validi consigli per riuscire a sviluppare in modo efficace, impiegando
il tempo a disposizione nella maniera più produttiva possibile. L’unica
pecca è che il testo, essendo pubblicato nel 1996, non tratta nessuno
dei moderni cicli di vita agili di sviluppo, come l’extreme
programming o lo scrum, ma molti dei consigli che vengono dati possono
comunque essere applicati anche negli ambienti agili senza
problemi. Questo libro non include al suo interno pratiche
rivoluzionarie o tecniche sofisticate e soprattutto non promette
miracoli, ma vuole solamente racchiudere una serie di concetti basilari
che ogni progettista software dovrebbe possedere. Il risultato è che
secondo McConnell lo sviluppo rapido si ottiene solamente
quando si è in grado di monitorare il ciclo di vita di un progetto,
dalla gestione dei requisiti alle fasi di test, seguendo
contemporaneamente alcune pratiche regole fondamentali che permettono
di mantenere il ciclo di vita sotto controllo.
Il libro è suddiviso in tre parti principali, nella prima si
esaminano i fondamenti della progettazione e della realizzazione di un
software. Particolarmente interessante è la sezione dei Classic Mistakes, che mostra i più comuni errori che portano a ritardi nei tempi di consegna, e la sezione Risk Management
in cui si fa una breve panoramica sulla gestione dei rischi, pratica
indispensabile per evitare che problemi imprevisti facciano slittare i
tempi di sviluppo e mancare le date di consegna.
La seconda parte è dedicata ad una trattazione dettagliata degli
aspetti più importanti dello sviluppo software, in questa parte riveste
una particolare importanza il capitolo sette, in cui l’autore da una
panoramica sui principali cicli di vita di un progetto, spiegando in
maniera coincisa ma chiara i vari waterfall, spiral, Evolutionary prototyping,
etc. Al termine del capitolo è anche riportata una tabella riassuntiva
dei punti di forza e debolezza di ogni ciclo di vita, questi dati sono
particolarmente utili ai Project Manager che potranno così valutare in
base al proprio ambiente il ciclo di vita più adatto. Si ricordi che
come detto precedentemente il libro non tratta metodologie agili e la
loro applicablità deve essere quindi considerata separatamente. Un
altro capitolo di grande importanza è quello destinato alla stima del
progetto, in cui viene spiegato come effettuare considerazioni efficaci
per determinare stime realistiche che possono quindi essere mantenute
senza troppe difficoltà. Il concetto chiave che l’autore da in questo
capitolo è che un errore di stima provoca danni ingenti ai propri
progetti. Se ad esempio un progetto richiede dieci mesi per essere
completato, effettuare una stima di sei è disastroso e porta spesso a
consegnare il prodotto in un tempo anche superiore ai dieci mesi che
sarebbero stati necessari con una stima corretta. Per chi fosse
interessato ad approfondimenti su questo argomento è disponibile un ulteriore testo di McConnel dedicato interamente alle pratiche di stima dei progetti.
L’ultima parte del libro contiene infine una lista di Best Practices
da seguire per raggiungere l’obiettivo del Rapid Developement. Ogni
pratica inizia con una scheda in cui l’autore riporta: una breve
descrizione, gli effetti sui propri progetti, i rischi e le interazioni
con le altre pratiche. Ogni scheda è comunque seguita da una
descrizione dettagliata che tratta in maniera più approfondita la
pratica descritta.
Il libro è ben scritto e la lettura scorre velocemente, soprattutto
grazie a piccole storie di esempio tratte da situazioni reali. Nel
corso del libro si leggeranno le avventure di Jill, Bill ed i loro
colleghi alle prese con i vari prodotti: Square Calc, Giga Quote, etc.
Sicuramente molte delle letture vi faranno tornare alla mente
situazioni vissute in prima persona, storie di ritardi di consegna
causati dall’inserimento di features nelle fasi di test, difficoltà di
integrazione dovuta alla mancanza di daily build sono problemi che
sicuramente molti di noi hanno vissuto. Il ritrovare in queste storie
le proprie esperienze è una dimostrazione che il testo tratta di
problematiche concrete e non è sicuramente un testo accademico di pura
teoria.
Come per tutti i libri di McConnel, anche in Rapid Developement la
bibliografia di riferimento è vastissima, al termine di ogni capitolo
l’autore inserisce infatti molti titoli di opere di approfondimento, in
questo modo è possibile utilizzare il libro anche come catalogo, se ad
esempio si vuole acquistare un testo di progettazione si può andare
nell’apposito capitolo e leggerne semplicemente la bibliografia.
La lettura di questo testo è consigliata particolarmente a chi svolge il ruolo di Project Manager,
ma anche gli sviluppatori troveranno informazioni utilissime, in
particolar modo nella terza parte dedicata alle best practices.
Rapid Developement è un libro che non dovrebbe quindi mancare nella vostra libreria.