analisi-disegno.com
UML può essere usato per:
Naturalmente, ci sono differenze. Se uso UML per ragionare, faccio solo i diagrammi che mi servono al momento, al livello di dettaglio e di precisione che mi interessa, senza pormi problemi di comunicazione. Se invece lo uso per comunicare e documentare, è necessario che chiarisca prima di tutto con chi voglio comunicare, che cosa esattamente voglio comunicare, e a quale livello di dettaglio e di precisione.
Può capitare, per vari motivi, di usare UML in modo scorretto.
UML è complesso, perché deve poter rappresentare ogni tipo di sistema software, ad ogni livello di astrazione. Ed è rigoroso, in quanto i concetti che costituiscono il linguaggio sono il frutto di decenni di ingegneria del software, ed hanno significati precisi.
Può mancare una formazione adeguata. A volte si creano molti più diagrammi rispetto a quelli che sarebbero necessari; altre volte ne mancano di essenziali. Bisogna ricordare che ogni progetto ha le sue caratteristiche specifiche: è importante (tempi, costi, efficacia) che UML venga utilizzato nel modo migliore nello specifico contesto.
Gli strumenti di modellazione UML potrebbero aiutare, guidando l'utilizzatore a rappresentare le caratteristiche importanti dei sistemi. Accade raramente.
Molti strumenti disponibili sul mercato consentono troppi errori, per assenza di controlli, e permettono utilizzi sbagliati sotto il profilo semantico e sintattico. All'opposto, non supportano lo standard in modo completo, e non prevedono ad esempio elementi e costrutti sintattici ammessi dal linguaggio, limitando così le potenzialità espressive e costringendo a ricorrere a soluzioni insoddisfacenti per rappresentare aspetti anche molto semplici.
UML serve a pensare... ma utilizzare i concetti base in modo improprio può invece complicare la vita dei gruppi di progetto, che perdono tempo ponendosi domande a cui non trovano risposta, o intraprendendo percorsi scorretti.
UML serve a comunicare... ma modelli scorretti ostacolano la comunicazione, anziché agevolarla.
analisi-disegno.com , servizi e materiali per lo sviluppo dei sistemi software, a cura di Adriano Comai.