Question

Je modélise un diagramme de classes. Un attribut d'une classe est une énumération. Comment puis-je modéliser cela? Normalement, vous faites quelque chose comme ça:

- name : string

Mais comment fait-on cela avec une énumération?

Était-ce utile?

La solution

Ils sont simplement affichés comme ceci:

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

Et ensuite, créez une association entre cela et votre classe.

Autres conseils

Si votre outil de modélisation UML prend en charge la spécification d’une énumération, vous devez l’utiliser. Ce sera probablement plus facile à faire et cela donnera à votre modèle une sémantique plus forte. Visuellement, le résultat sera très similaire à une classe avec un <<enumeration>> stéréotype, mais dans le métamodèle UML, une énumération est en réalité un type (méta) séparé.

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

Une fois celui-ci défini, vous pouvez l'utiliser comme type d'attribut, comme vous le feriez avec un type de données ou le nom de l'une de vos propres classes.

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

Si vous utilisez ArgoEclipse ou ArgoUML, il existe un menu déroulant dans la barre d’outils qui sélectionne le type de données, l’énumération, le signal, etc. qui vous permettra de créer vos propres énumérations. Le compartiment qui contient normalement des attributs peut ensuite être rempli avec EnumerationLiterals pour les valeurs de votre énumération.

Voici une photo d'un exemple légèrement différent dans ArgoUML: entrer la description de l'image ici

En règle générale, vous modélisez l'énumération en tant que classe avec le enum stéréotype

.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top