[Python] Python vs UML

Marco Bonifazi marcobonifazi a gmail.com
Mar 5 Feb 2008 14:51:11 CET


> http://www.amazon.com/Applying-UML-Patterns-Craig-Larman/dp/0137488807

Intervengo per dire che di tale libro ne esiste anche una versione italiana.
http://addison.it/site/show.php?curr_sec=catalogo&sub_sec=cat_sk_libro&ISBN=8871922700

Volevo dare un mio parere, da non esperto, ma studente appena laureato
e lavoratore da un po'.

C'ho studiato su 'sto libro, e l'impressione che ho di UML non e' di
un qualcosa di ingessato, bensi' come qualcosa di opzionale, utile per
dare una visualizzazione standardizzata a concezioni astratte e comuni
di un progettista software.

Mi pare utile avere, ad esempio, esemplificazione grafica dei design pattern.
Che poi in Python le cose si semplifichino in maniera drastica (e
spesso neanche si vengano a proporre) e' vero, ma la struttura di
parti critiche del software, nel mio caso, si semplifica e si comunica
abbastanza bene se riesco a tradurla su carta con strumenti
standardizzati.

Nel libro sopra, si parla di usare UML in sessioni temporali
assolutamente limitate nel tempo di sviluppo del progetto, si parla di
fotografare diagrammi tracciati collettivamente su una lavagna, si
parla insomma di attivita' che sono di supporto, ma non il fulcro
della progettazione, si parla di creare e aggiornare gli Use Cases in
poche mattinane, Modelli di Dominio e di classe nelle parti
arzigogolate, di usare Collaboration Diagram e Sequence Diagram, etc.
nelle interazioni tipo, nelle parti piu' critiche (secondo gli assiomi
abbracciare il cambiamento e affrontare il rischio subito), nei passi
iniziali delle diverse iterazioni della progettazione.

Mi trovo d'accordo con queste modalita'.

Non riesco a capire quindi perche' tutta quest'attenzione su UML,
quasi uno dovesse passare la vita a "programmare in UML" (e non in
Python :-)), e quindi neanche la demonizzazione.

Lo trovo un utile strumento di progettazione in team, specie se visto
come strumento di applicazione di concetti mentali e non come "fine".

Un paragone che mi viene in mente e' il Latino al liceo: una lingua
morta, una cosa apparentemente inutile. Pero' poi mi sono accorto che
certe costruzioni di frase le avevo trasportate da Latino a Italiano
senza accorgermente e che la struttura linguistica che il Latino
applicava in forma di frase m'era rimasta in mente.

-- 
Marco Bonifazi
http://www.bonifazi.eu


More information about the Python mailing list