: Home :: Competenze :: Applicazioni :: Articoli :: Recensioni :: Wallpapers :: Links :: AJAX Chat :: LabGL (NEW) :: admin@damix.it :

Recensione: UML Distilled 3a Edizione

CopertinaCopertina di UML Distilled 3a Edizione
AutoreMartin Fowler
CategoriaIngegneria del software
TitoloUML Distilled 3a Edizione
Titolo originaleUML Distilled 3rd Edition
EditorePearson/Addison Wesley
Editore originalePearson/Addison Wesley
Anno di pubblicazione2004
Anno di pubblicazione originale2004
Pagine192
Prezzo25,00 Euro

Introduzione

Sono dell'idea che un qualsiasi prodotto vada valutato in base a quello che esso stesso dichiara di essere. Mi spiego meglio; se un documentario si intitola "Tutto sul blues" non potete criticarlo perchè "si focalizza troppo sul blues". Capito? Allo stesso modo, se un libro di programmazione dichiara di non essere "un riferimento completo e definitivo", bisogna valutarlo sotto questa ottica, ammesso che abbia altre buone qualità.

Il libro

"UML Distilled", di Martin Fowler, è il libro in questione. Giunto alla terza edizione, questo libro fa quasi esattamente quello che si prefigge di fare; fornire un'introduzione a UML 2, tralasciando i dettagli meno importanti, a chi ha intenzione di usare UML per scopi illustrativi più che di descrizione dettagliata del problema o della soluzione.
Il libro è suddiviso in 17 capitoli, e tutti i principali diagrammi di UML 2 hanno il loro spazio. Martin trova addirittura lo spazio per infilare altre notazioni e schemi non standard ma, secondo la sua esperienza, utili, come le carte CRC che non appartengono allo standard UML. Lo stile di scrittura è veramente molto chiaro e scorrevole.
Il maggior pregio del libro è l'essenzialità; in pochi giorni sarete in grado di disegnare semplici diagrammi UML per descrivere il vostro software. Fowler non usa UML 2 con "rigore"; in effetti sembra più che lo consideri un modo razionale di "scarabocchiare" gli schemi. Secondo l'autore infatti è questo il modo più proficuo di utilizzare UML; perdere giorni e giorni a disegnare schemi UML dettagliatissimi per poi consegnarli ai programmatori non è un ciclo di sviluppo che Martin si sente di suggerire. Al contrario, ritiene che UML sia utile soprattutto per condividere idee e soluzioni, ad esempio durante una riunione. In effetti è un libro in cui l'opinione personale dell'autore è MOLTO forte.
Se vi interessa solo imparare UML con tutti i dettagli questo libro non vi servirà. Invece, sarà utile principalmente a due categorie di persone:
  • Coloro che non conoscono UML e vogliono avere una rapida introduzione
  • Coloro che già conoscono UML ma che si rendono conto di non saperlo usare proficuamente
Molto interessanti sono anche le "perle" di ingegneria del software che Martin lascia cadere qua e la e l'utile reference stampato sulle pagine di copertina.
I difetti sono veramente pochi; probabilmente è possibile che la parte sulla generalizzazione sia veramente un po' troppo concisa, ma questa mia opinione potrebbe anche derivare dal fatto che ancora non ho studiato approfonditamente le tematiche dell'ingegneria del software, e quindi mi manca qualche conoscenza pregressa.
L'ultima pagina di copertina afferma che questo libro è dedicato a coloro che "conoscono la specifica"... beh, non solo, come avrete letto nella mia recensione. Non capisco perchè la Pearson cerca di tagliare fuori una parte di potenziali acquirenti in questo modo.
Infine, il libro è piccolo, ma non nel prezzo, come afferma Martin stesso nelle pagine di prefazione. A parte questo è un libro che dovrebbe trovarsi sullo scaffale dell'ingegnere del software. Inoltre sappiate che le pagine di UML sono circa 150, il resto è indice analitico, bibliografia e TANTA prefazione, in pieno stile americano.

In conclusione

Un libro che non dovrebbe mancare nella vostra collezione; potreste avere difficoltà ad entrare nell'ottica del tutto personale di Fowler, ma alla fine sarete soddisfatti. Alcune piccolissime carenze di dettagli e di esempi in alcuni paragrafi gli impediscono di raggiungere il 90%.

Voto

Voto 88% 88%
Valid XHTML 1.0 Strict Valid CSS!