Использование диаграммы классов для описания требований
Бизнес-правило — это требование, не связанное с определенным вариантом использования, которое необходимо соблюдать во всех частях системы.
Многие бизнес-правила представляют собой ограничения отношений между концептуальными классами.
Эти статические бизнес-правила можно записать в виде комментариев, связанных с соответствующими классами на концептуальной схеме классов.
Например :
Динамические бизнес-правила ограничивают допустимые последовательности событий. Например, схему последовательностей или схему деятельности можно использовать, чтобы показать, что прежде чем совершать другие операции в системе, пользователь должен выполнить вход.
Однако многие динамические правила можно сформулировать более эффективно и в более общем виде, заменив их статическими правилами. Например, в класс в концептуальной модели классов можно добавить логический атрибут "Вход выполнен".
Тогда атрибут "Вход выполнен" будет добавляться в качестве постусловия варианта использования "вход в систему" и предусловия большинства других вариантов использования. Благодаря этому подходу можно не определять все возможные комбинации последовательностей событий. Кроме того, этот подход является более гибким при необходимости добавить в модель новые варианты использования.
Обратите внимание, что в данном случае речь идет о выборе способа определения требований, который не зависит от способа реализации требований в программном коде.
Отношение к другим схемам
UML-схема классов, как правило, создается одновременно с другими схемами моделирования, чтобы предоставить описания используемых типов. В каждом случае физическое представление типов не подразумевается ни одной из схем.
Если создана | используйте UML-схему классов, чтобы описать следующее. |
схема активности | тип данных, передаваемых через узел объекта. типы закреплений ввода и вывода и узлы параметров действий. См. раздел UML-схемы деятельности: рекомендации. |
Схема последовательностей | типы параметров и возвращаемые значения сообщений. типы линий жизни. Класс линии жизни должен включать операции для всех сообщений, которые он может получить. См. раздел UML-схемы последовательностей: правила работы. |
схема компонентов | интерфейсы компонента с перечислением их операций. См. раздел UML-схемы компонентов: правила работы. |
Схема вариантов использования | типы, упомянутые в описаниях целей и шагов варианта использования. См. раздел UML-схемы вариантов использования: правила работы. |
Основные этапы создания схем классов
- Чтобы создать тип, выберите инструмент Класс, Интерфейс или Перечисление на панели элементов, затем щелкните пустую область схемы. (Если панель элементов не отображается, нажмите клавиши CTRL+ALT+X.)
- Чтобы добавить атрибуты или операции в типы, а литералы — в перечисление, щелкните заголовок Атрибуты, Операции или Литералы в типе и нажмите клавишу ВВОД.
Можно создать сигнатуру, например f(x:Boolean):Integer.Дополнительные сведения см. разделе Атрибуты и операции.
Чтобы быстро добавить несколько элементов, дважды нажмите ВВОД в конце каждого элемента. Чтобы переместиться вверх или вниз по списку элементов, можно воспользоваться клавишами со стрелками.
- Чтобы развернуть или свернуть тип, щелкните значок шеврона в левой верхней части типа. Также можно развернуть и свернуть разделы Атрибуты и Операции в классе или интерфейсе.
- Чтобы создать связи ассоциаций, наследования или зависимостей между типами, щелкните соответствующий инструмент, выберите тип источника и укажите тип целевого объекта.
- Чтобы создать типы в пакете, создайте пакет с использованием инструмента Пакет, затем создайте новые типы и пакеты внутри этого пакета. Чтобы скопировать типы и вставить их в пакет также можно использовать команду копирования.
- Каждая схема — это представление на модели, которое совместно используется другими схемами того же проекта. Чтобы открыть всю модель в представлении дерева, последовательно щелкните Вид, Другие окна и Обозреватель моделей UML.
Использование классов, интерфейсов и перечислений
Существует три стандартных вида классификаторов, которые доступны на панели элементов. В этом документе их называют типы.
- В большинстве случаев для представления данных или типов объекта можно использовать Классы (1).
- Используйте Интерфейсы (2) в контексте, где необходимо различать чистые интерфейсы и конкретные классы, имеющие внутренние реализации. Различать эти сущности полезно при работе со схемами, целью которых является описание реализации программы. При моделировании пассивных данных или определении концептов для описания пользовательских требований это менее эффективно.
- Используйте Перечисление (3), чтобы представить тип, имеющий ограниченное число значений литералов, например, Stop и Go.
- Добавление значений литералов в перечисление. Дайте каждому отдельное имя.
- При желании каждому значению литерала также можно присвоить численное значение. Откройте контекстное меню литерала в перечислении, щелкните Свойства и введите число в поле Значение в окне Свойства.
Дайте каждому типу уникальное имя.