Перечисление диаграммы классов UML
я моделирую диаграмму классов. Атрибут класса-это перечисление. Как мне это моделировать? Обычно вы делаете что-то вроде этого:
- name : string
но как это сделать с перечислением?
3 ответа:
они просто показываются так:
_______________________ | <<enumeration>> | | DaysOfTheWeek | |_____________________| | Sunday | | Monday | | Tuesday | | ... | |_____________________|
а потом просто есть связь между этим и вашим классом.
Если ваш инструмент моделирования UML поддерживает указание перечисления, вы должны использовать его. Это, вероятно, будет легче сделать, и это даст вашей модели более сильную семантику. Визуально результат будет очень похож на класс с
<<enumeration>>
стереотип, но в метамодели UML перечисление фактически является отдельным (мета)типом.+---------------------+ | <<enumeration>> | | DayOfTheWeek | |_____________________| | Sunday | | Monday | | Tuesday | | ... | +---------------------+
после того, как он определен, вы можете использовать его в качестве типа атрибута так же, как вы бы тип данных или имя один из ваших собственных Занятия.
+---------------------+ | Event | |_____________________| | day : DayOfTheWeek | | ... | +---------------------+
Если вы используете ArgoEclipse или ArgoUML, на панели инструментов есть выпадающее меню, которое выбирает тип данных, перечисление, сигнал и т. д., что позволит вам создавать свои собственные перечисления. Отсек, который обычно содержит атрибуты, может быть заполнен EnumerationLiterals для значений вашего перечисления.
вот изображение немного другого примера в ArgoUML: