CONTRARIAMENTE A QUANTO ACCADE SOLITAMENTE NELLE PAGINE DI QUESTA RUBRICA, IL volume che ci appropinquiamo a recensire non è un manuale facilmente fruibile dal grande pubblico che per diletto vuole imparare un linguaggio di programmazione. Piuttosto un manuale indirizzato a professionisti, product manager e programmatori con un minimo di esperienza, che li guidi attraverso le fasi iniziali della progettazione di un software. Attività molto più complessa di quanto possa sembrare a un occhio inesperto, al punto che, per garantire delle specifiche inequivocabili e fra loro coerenti, la comunità informatica ha dato alla luce l'Unified Modeling Language. Di cui UML, per l'appunto, è l'acronimo.
Un linguaggio sui generis costituito da diagrammi, formule logiche e tabelle. Proprio per la sua specificità, e la preparazione non comune di chi al momento ne fa uso, poco conosciuto non solo alla gran maggiaranza degli utenti finali, ma perfino a chi, pur non programmatore, e, alle volte, neppure un informatico, deve supervisionare il progetto.
Soprattutto a causa di una palese assenza di documentazione in merito. Fondamenti di UML, per i tipi di McGraw Hill, va a colmare questa lacuna con un testo che, seppur non del tutto accessibile al neofita, per il quale infatti non è pensato, è di facile comprensione e affronta tutti i principali aspetti dell'UML.
Soprattutto senza tralasciare quei dettagli all'apparenza più semplici, financo ovvi, trascurando i quali, per chi non dispone di conoscenze pregresse, si renderebbe però molto più arduo l'apprendimento. Il valore didattico del testo è difatti uno dei suoi principali pregi. Chiaro in ogni sua parte, senza lesinare, quando necesserio, le opportune illustrazioni, affiancato da un CD ROM completo delle soluzioni agli esercizi proposti ed arrichito da alcuni applicativi.
Lo schema del volume parte da un'introduzione in cui vengono discusse le caratteristiche fondamentali dell'UML, facendo capire chiaramente al lettore lo scopo per cui il linguaggio è nato. Si procede con un capitolo dedicato ai diagrammi di caso d'uso, uno alla progettazione ad oggetti, proseguendo poi con i diagrammi di attività, sequenza, classe e collaborazione, quelli che regolano i collegamenti fra le parti dello schema, e così via coprendo tutti i vari tipi di diagrammi utilizzati dal linguaggio.
Fino a un capitolo conclusivo sull'OCL, l'Object Costraint Language, un metodo per definire le limitazioni interne al sistema progettato. Un optional che può diventare spunto per ulteriori approfondimenti.
Fondamenti di UML, di Jason T. Roff, McGraw-Hill editore, Milano 2004, pagine 295, euro 23,50
Matteo F. M. Sommaruga 20-10-2004