Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Francesco Poggi
(dal materiale di Angelo Di Iorio, Gian Piero Favini e Sara Zuppiroli)
A.A. 2015-2016
Permette di:
I modellare un dominio
I scrivere i requisiti di un sistema software
I descrivere l’architettura del sistema
I descrivere struttura e comportamento di un sistema
I documentare un’applicazione
I generare automaticamente un’implementazione
Gli stessi modelli UML sono quindi artefatti usati per
sviluppare il sistema e comunicare con il cliente (ma anche
con progettisti/sviluppatori/etc.)
Chiedi prestito
Cliente Banca
«instanceOf» «instanceOf»
model *
Person Car
car
M1 eFigure
M2 a7.6confronto
- An example of metamodeling; note that not all instance-of relationshi
(usando un diagramma UML).
«instanceOf» «instanceOf»
Person
-age : int
TaskRunner Visualizza ordine
+getAge() : int
Transaction
<<interface>>
Thermometer
buyer seller
+readTemperature() : double
Person Person
1: saluta
: Person : Person
2: rispondi
Person
-age : int
+getAge() : int
Questa!è!una!classe,!un!insieme!di!oggetti.!Le!classi
sono!classificatori.!In!UML,!la!maggior!parte!dei
classificatori!possono!essere!rappresentati!tramite
rettangoli!(deriva!da!OMT).
utility.conversion utility.conversion
CelsiusFahrenheit
OS
Java VM CelsiusFahrenheit
1 *
Mammal Vertebrate
graphics
Renderer
Questa!dipendenza!tra!Vector!e!Math!ha!lo!stereotipo
«call»;!significa!che!operazioni!di!Vector!invocano
operazioni!di!Math.
Vector <<utility>>
Math
<<call>>
Lo!stereotipo!«utility»!indica!che!questa!è!una!classe
utility,!cioè!una!collezione!di!variabili!globali!e
operazioni!statiche!usate!da!altre!parti!del!sistema.
Person
-age : int
+birthdayHappens()
post: age=age@pre+1
ArgoUML: http://argouml.tigris.org/
Papyrus: http://eclipse.org/papyrus
Umbrello: http://uml.sourceforge.net/
Eclipse: www.eclipse.org/uml2/
...