- •Оглавление.
- •Глава 1. Определение языка uml, история создания. 4
- •Глава 2. Структура унифицированного языка моделирования uml. 6
- •Глава 3. Общие диаграммы унифицированного языка моделирования uml. 16
- •Глава 2. Структура унифицированного языка моделирования uml.
- •2.1. Сущности модели uml.
- •2.2. Отношения модели uml.
- •2.3. Диаграммы модели uml.
- •Глава 3. Общие диаграммы унифицированного языка моделирования uml.
- •Список литературы.
Глава 2. Структура унифицированного языка моделирования uml.
Язык UML имеет сложную иерархическую структуру (рис. 1).
Рис. 1. Структура языка UML.
Первый иерархический уровень языка UML составляют сущности, отношения между сущностями и наглядные диаграммы.
Строительные блоки UML нельзя произвольно объединять друг с другом. Как и любой другой язык, UML характеризуется набором правил, определяющих, как должна выглядеть хорошо оформленная модель, то есть семантически самосогласованная и находящаяся в гармонии со всеми моделями, которые с нею связаны.
В языке UML имеются семантические правила, позволяющие корректно и однозначно определять:
имена, которые можно давать сущностям, отношениям и диаграммам;
область действия (контекст, в котором имя имеет некоторое значение);
видимость (когда имена видимы и могут использоваться другими элементами);
целостность (как элементы должны правильно и согласованно соотноситься друг с другом);
выполнение (что значит выполнить или имитировать некоторую динамическую модель).
Модели, создаваемые
в процессе разработки программных
систем, эволюционируют со временем и
могут неоднозначно рассматриваться
р
2
содержат скрытые элементы (ряд элементов не показывают, чтобы упростить восприятие);
неполные (отдельные элементы пропущены);
несогласованные (целостность модели не гарантируется).
2.1. Сущности модели uml.
Для удобства обзора сущности в UML можно подразделить на четыре группы:
структурные;
поведенческие;
группирующие;
аннотационные.
Рис. 2. Пиктограммы некоторых сущностей.
Структурные сущности предназначены для описания структуры. Обычно к структурным сущностям относят следующие:
Объект (object) — сущность, обладающая уникальностью и инкапсулирующая в себе состояние и поведение;
Класс (class) — описание множества объектов с общими атрибутами, определяющими состояние, и операциями, определяющими поведение (рис. 2);
Интерфейс (interface) — именованное множество операций, определяющее набор услуг, которые могут быть запрошены потребителем и предоставлены поставщиком услуг;
Кооперация (collaboration) — совокупность объектов, которые взаимодействуют для достижения некоторой цели;
Действующее лицо (actor) — сущность, находящаяся вне моделируемой системы и непосредственно взаимодействующая с ней (рис. 2);
Компонент (component) — модульная часть системы с четко определенным набором требуемых и предоставляемых интерфейсов;
Артефакт (artifact) — элемент информации, который используется или порождается в процессе разработки программного обеспечения. Другими словами, артефакт — это физическая единица реализации, получаемая из элемента модели (например, класса или компонента);
Узел (node) — вычислительный ресурс, на котором размещаются и при необходимости выполняются артефакты.
Поведенческие сущности предназначены для описания поведения. Основных поведенческих сущностей всего две: состояние и действие.
Состояние (state) — период в жизненном цикле объекта, находясь в котором объект удовлетворяет некоторому условию и осуществляет собственную деятельность или ожидает наступления некоторого события.
Деятельность (activity) можно считать частным случаем состояния, который характеризуется продолжительными (по времени) не атомарными вычислениями.
Действие (action) — примитивное атомарное вычисление.
Несколько особняком стоит сущность — вариант использования, которой присущи как структурные, так и поведенческие аспекты.
Вариант использования (use case) — множество сценариев, объединенных по некоторому критерию и описывающих последовательности производимых системой действий, доставляющих значимый для некоторого действующего лица результат (рис. 2).
Группирующая сущность в UML одна — пакет. Пакет (package) — группа элементов модели (в том числе пакетов) (рис. 2).
Аннотационная сущность тоже одна — примечание (comment). В нее можно поместить все что угодно, так как содержание примечания UML не ограничивает (рис. 2).
