Возьмем следующую диаграмму классов: об ограничениях на диаграмме классов
Я хочу моделировать следующее ограничение: Член не должен участвовать в нескольких диссертационных защит, запрограммированных на ту же дату.
Возьмем следующую диаграмму классов: об ограничениях на диаграмме классов
Я хочу моделировать следующее ограничение: Член не должен участвовать в нескольких диссертационных защит, запрограммированных на ту же дату.
Я бы использовал квалификатор, чтобы выразить, что с учетом даты будет нулевая или одна защита диссертации. Это выглядит как дополнительный прямоугольник на конце члена ассоциации, содержащий строку «дата защиты: DateTime» и множество [0..1] на другом конце. См. Пример Qualified Association | Applying UML and Patterns: UML Class Diagrams | InformIT.
Если вы добавили {bag}
к краткости, он сообщает читателю, что набор уникален.
От надстроек 2.1.1:
Различных другие обозначения могут быть размещены ближе к концу линии следующим образом:
- Множественность Строки
- Свойства, заключенной в фигурных скобках. К концу ассоциации могут применяться следующие строки свойств:
- {subsets
<property-name>
}, чтобы показать, что конец является подмножеством свойства, называемого<property-name>
.- {redefines
<end-name>
}, чтобы показать, что конец переопределяет имя по имени<end-name>
.- {union}, чтобы показать, что конец получается из объединения его подмножеств.
- {упорядочено}, чтобы показать, что конец представляет собой упорядоченный набор.
- {bag}, чтобы показать, что конец представляет коллекцию, которая позволяет одному и тому же элементу появляться более одного раза. • {sequence} или {seq} до показывают, что конец представляет последовательность (упорядоченный пакет).
- Если конец является судоходным, любые строки свойств, которые применяются к атрибуту.
Чтобы добавить дополнительные ограничения, как на дату, чтобы быть уникальным, вы должны прикрепить это ограничение к разъему, а не объекта.
@ Jim L. это означает, что защита диссертации имеет 0..1 члена в день защиты ?. если это так, диаграмма My class станет неправильной! – Kachna
Я не вижу, как. Пожалуйста, дополните. –
@ Jim L. см. Обновление. – Kachna