Pregunta

Estoy modelando un diagrama de clase. Un atributo de una clase es una enumeración. ¿Cómo modelo esto? Normalmente haces algo como esto:

- name : string

¿Pero cómo se hace esto con una enumeración?

¿Fue útil?

Solución

Simplemente se muestran así:

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

Y luego solo tiene una asociación entre eso y su clase.

Otros consejos

Si su herramienta de modelado UML tiene soporte para especificar una enumeración, debe usarla. Es probable que sea más fácil de hacer y le dará a su modelo una semántica más sólida. Visualmente, el resultado será muy similar a una clase con un <<enumeration>> estereotipo, pero en el metamodelo UML, una enumeración es en realidad un tipo (meta) separado.

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

Una vez que se define, puede usarlo como el tipo de Atributo tal como lo haría con un Tipo de datos o el nombre de una de sus propias Clases.

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

Si está utilizando ArgoEclipse o ArgoUML, hay un menú desplegable en la barra de herramientas que selecciona entre Tipo de datos, Enumeración, Señal, etc. que le permitirá crear sus propias Enumeraciones. El compartimento que normalmente contiene Atributos se puede completar con EnumerationLiterals para los valores de su enumeración.

Aquí hay una imagen de un ejemplo ligeramente diferente en ArgoUML: ingrese la descripción de la imagen aquí

Normalmente, modela la enumeración en sí como una clase con el enum estereotipo

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top