it-swarm.com.de

Enumeration von UML-Klassendiagrammen

Ich modelliere ein Klassendiagramm. Ein Attribut einer Klasse ist eine Aufzählung. Wie modelliere ich das? Normalerweise machst du so etwas:

- name : string

Aber wie macht man das mit einer Aufzählung?

135
Martijn

Sie werden einfach so gezeigt:

_______________________
|   <<enumeration>>   |
|    DaysOfTheWeek    |
|_____________________|
| Sunday              |
| Monday              |
| Tuesday             |
| ...                 |
|_____________________|

Und dann haben Sie einfach eine Verbindung zwischen dem und Ihrer Klasse.

176
James B

Wenn Ihr UML-Modellierungstool die Angabe einer Aufzählung unterstützt, sollten Sie diese verwenden. Dies ist wahrscheinlich einfacher und verleiht Ihrem Modell eine stärkere Semantik. Optisch ist das Ergebnis einer Klasse mit einem <<enumeration>> - Stereotyp sehr ähnlich, aber im UML-Metamodell ist eine Aufzählung tatsächlich ein separater (Meta-) Typ.

+---------------------+
|   <<enumeration>>   |
|    DayOfTheWeek     |
|_____________________|
| Sunday              |
| Monday              |
| Tuesday             |
| ...                 |
+---------------------+

Sobald es definiert ist, können Sie es als Typ eines Attributs verwenden, genau wie einen Datentyp oder den Namen einer Ihrer eigenen Klassen.

+---------------------+
|        Event        |
|_____________________|
| day : DayOfTheWeek  |
| ...                 |
+---------------------+

Wenn Sie ArgoEclipse oder ArgoUML verwenden, gibt es ein Pulldown-Menü in der Symbolleiste, in dem Sie zwischen Datentyp, Aufzählung, Signal usw. auswählen können, mit denen Sie Ihre eigenen Aufzählungen erstellen können. Das Fach, das normalerweise Attribute enthält, kann dann mit EnumerationLiterals für die Werte Ihrer Enumeration gefüllt werden.

Hier ist ein Bild eines etwas anderen Beispiels in ArgoUML: enter image description here

61
Tom Morris

Normalerweise modellieren Sie die Aufzählung selbst als Klasse mit dem Stereotyp enum

1
annakata