Antonio Esposito's


Prodotti tipici .NETtiani

UML Class Diagram

Ciao a tutti

l'UML (Unified Modeling Language) è un linguaggio di modellazione diffusamente utilizzato in tutto il processo di sviluppo, dalla formalizzazione dei requisiti, dei test, così' come del diagramma delle classi e delle dipendenze tra classi.

In questo esempio parlerò del Class Diagram, appunto il diagramma delle classi, quello cioè che ci permette di disegnare una rappresenzazione semplice ma chiara della struttura delle nostre classi. Ricordiamo che UML si focalizza sulla struttura e non sul comportamento della classe.

Nella figura, possiamo notare gli elementi principali del class diagram: la classe appunto è composta da un rettangolo diviso in 3 sezioni: in quella in alto c'è il nome della classe, al centro troviamo i campi o le property senza logica, mentre in basso troviamo i metodi ({query} rappresenta un metodo che espone semplicemente un dato senza alcuna logica (come una property read-only).

In generale troviamo alcuni aspetti facilmente comprensibili: i + e - anteposti a campi e metodi rappresentano la visibilità, public e private rispettivamente.
Il tipo si aggiunge dopo il nome del campo/metodo. es: "Nome: string", nel caso dei metodi, anche i parametri vengono tipizzati allo stesso modo.
Un associazione è rappresentata dalla linea con la freccia aperta. Vuol dire che le classi hanno uno, più campi, o un array del tipo associato. Nella figura, avremo che Class1 avrà certamente un array di tipo Class2 visto che l'associazione è 1-* , cioè per ogni Class1 c'è un insieme di Class2. Un altra notazione, non nell'esempio, è 0..1, che significa 0 o 1, in altre parole, puo esserci o no.
La generalizzazione è rappresentata da una linea continua con una freccia chiusa, in genere bianca (solo bordo in pratica), anche se nell'esempio è piena.
Differentemente l'implementazione di una interfaccia, ha una linea tratteggiata con la freccia chiusa.
Le annotazioni sono racchiuse in rettangoli con un angolo tagliato collegate da una linea tratteggiata semplice.
I constraint (cioè le regole da seguire) sono racchiuse tra parentesi graffe, e posso essere dopo un campo, un associazione o collegate tramite un annotazione.

Facciamo un secondo esempio:

Questo secondo esempio, abbastanza semplice, aggiunge dei constraint tra graffe come ad esempio {not-null}, così come introduce un esempio di associazione 1-0..1, questa significa che la classe Cliente puo avere una property con all'interno un DatiBanca o anche null.

Le parentesi quadre sono utilizzate per specificare la precisione di alcuni tipi di dati come lunghezza delle stringhe....
Ricordo che i constraint sono in genere specificati con un linguaggio naturale o comunque comprensibile, non si usano parole predefinite, se non quelle del glossario di progetto definiti in azienda sul progetto cui si lavora.

 

Farò un altro post più avanti più avanzato

Bye

Categoria: UML
giovedì, 04 feb 2010 Ore. 11.23

Messaggi collegati


Statistiche
  • Views Home Page: 11.615
  • Views Posts: 60.605
  • Views Gallerie: 0
  • n° Posts: 44
  • n° Commenti: 16
Copyright © 2002-2007 - Blogs 2.0
dotNetHell.it | Home Page Blogs
ASP.NET 2.0 Windows 2003