Основные элементы языка UML. Нотация и ее элементы. Пакеты



С самой общей точки зрения описание языка UML состоит из двух взаимодействующих частей, таких как:

§ Семантика языка UML. Представляет собой некоторую метамодель, которая определяет абстрактный синтаксис и семантику понятий объектного моделирования на языке UML.

§ Нотация языка UML. Представляет собой графическую нотацию для визуального представления семантики языка UML.

В описании UML используются три языковых уровня:

§ мета-метамодель – описание языка, на котором описана метамодель;

§ метамодель – описание языка, на котором описываются модели. Все основные понятия языка UML – это понятия уровня метамодели. Примеры таких понятий – класс, атрибут, операция, компонент, ассоциация и многие другие

§ модель – описание самой моделируемой предметной области.

Чтобы подчеркнуть, что UML язык графический, авторы называют правила записи моделей не синтаксисом, а нотацией.

Выделяют следующие элементы нотации:

§ фигура. Фигуры могут изменять свои размеры и форму, сохраняя при этом свои отличительные признаки. Внутри фигур могут помещаться другие элементы нотации;

§ линии. Линии всегда присоединяются своими концами к фигурам или значкам, они не могут быть нарисованы сами по себе. Форма, толщина линий произвольна, а вот стиль линии имеет значение;

§ значки. Не имеют внутри других элементов;

§ тексты – последовательность символов некоторого алфавита. Гарнитура, размер и цвет шрифта не имеют значения. Начертание шрифта имеет значение: различают прямые, курсивные и подчеркнутые тексты;

§ рамки. Появились в UML2. Пустые рамки не применяются. Рамка имеет прямоугольную форму и, как правило, ярлычок в левом верхнем углу, в котором указывается тип и имя рамки.

Основной способ организации элементов модели в языке UML – пакет.

Пакет – общецелевой механизм для организации различных элементов модели в множество, реализующий системный принцип декомпозиции модели сложной системы и допускающий вложенность пакетов друг в друга.

Каждый пакет владеет всеми своими элементами, т. е. теми элементами, которые включены в него. Про соответствующие элементы пакета говорят, что они принадлежат пакету или входят в него. При этом каждый элемент может принадлежать только одному пакету.

В свою очередь, одни пакеты могут быть вложены в другие пакеты. В этом случае первые называются подпакетами, поскольку все элементы подпакета будут принадлежать более общему пакету. Тем самым для элементов модели задается отношение вложенности пакетов, которое представляет собой иерархию.

Для графического изображения пакетов на диаграммах применяется специальный графический символ – большой прямоугольник с небольшим прямоугольником, присоединенным к левой части верхней стороны первого.

Внутри большого прямоугольника может записываться информация, относящаяся к данному пакету. Если такой информации нет, то внутри большого прямоугольника записывается имя пакета, которое должно быть уникальным в пределах рассматриваемой модели. Если же такая информация имеется, то имя пакета записывается в верхнем маленьком прямоугольнике.

Общая структура языка UML. Сущности. Отношения. Диаграммы

Структуру языка UML можно представить следующим образом.

Верхний иерархический уровень языка UML составляют сущности, отношения между сущностями и наглядные диаграммы.

Сущности. Язык UML имеет четыре вида сущностей: структурные, поведенческие, группирующие и аннотационные сущности.

Структурные сущности предназначены для описания структуры. К ним относят следующие:

§ объект – сущность обладающая уникальностью и инкапсулирующая в себя состояние и поведение;

§ класс – описание множества объектов с общими атрибутами, определяющими состояние, и операциями, определяющими поведение.

Класс изображается прямоугольником, разделенным на три поля. В первом поле помещается имя класса, однозначно определяющее данный класс среди множества других классов. Во втором поле помещаются атрибуты (общие свойства) класса. В третьем поле располагаются типовые операции, выполняемые объектами, принадлежащими данному классу.

Таким образом, класс - это совокупность (множество) объектов с общими атрибутами и операциями, а также с общими отношениями и семантикой. Объектами, объединенными в класс, могут быть, например, люди, окна системы Windows, экранные кадры и другие реальные или абстрактные объекты.

 

Левая пиктограмма показывает класс с именем "окно" и основные свойства (характеристики) присущие объектам этого класса.

Правая пиктограмма показывает класс "кадр (frame)"с его основными характеристиками и подробными характеристиками, детализирующими основные характеристики.

Детальная нотация класса дает возможность программистам и аналитикам визуализировать, специфицировать, конструировать и документировать класс на любом желаемом уровне детализации свойств класса, достаточном для поддержки прямого и обратного проектирования моделей и кода;

§ интерфейс – именованное множество операций, определяющее набор услуг, которые могут быть запрошены потребителем и представлены поставщиком услуг;

§ кооперация – совокупность объектов, которые взаимодействуют для достижения некоторой цели;

§ действующее лицо - сущность, находящаяся вне моделируемой системы и непосредственно взаимодействующая с ней;

§ компонент – модульная часть системы с четко определенным набором требуемых и предоставляемых интерфейсов;

§ артефакт – элемент информации, который используется или порождается в процессе разработки программного обеспечения;

§ узел – вычислительный ресурс, на котором размещаются и при необходимости выполняются артефакты.

Поведенческие сущности предназначены для описания поведения. Основными являются:

§ состояние – период в жизненном цикле объекта, находясь в котором объект удовлетворяет некоторому условию и осуществляет собственную деятельность или ожидает наступления некоторого события;

§ деятельность – частный случай состояния, который характеризуется продолжительными (по времени) не атомарными вычислениями;

§ действие – примитивное атомарное вычисление.

Несколько особняком стоит сущность вариант использования, которой присущи как структурные, так и поведенческие аспекты.

 

Группирующие сущности. Представлены пакетом – группа элементов модели.

Аннотационные сущностикомментарий. Содержание комментария UML не ограничивает.

Отношения. Это семантическая связь между отдельными элементами модели. В UML используются четыре типа отношений:

§ зависимость;

§ ассоциация;

§ обобщение;

§ реализация.

Зависимость – семантическое отношение между двумя предметами, в котором изменение в одном предмете (независимом) может влиять на семантику другого предмета (зависимого).

Отношение зависимости указывает на то, что изменение независимой сущности каким-то образом влияет на зависимую сущность.

Графически отношение зависимости изображается в виде пунктирной линии со стрелкой (1), направленной от зависимой сущности (2) к независимой (3).

Семантика конкретной зависимости уточняется в модели с помощью дополнительной информации. Например, может использоваться зависимость со стереотипом use.

Ассоциация – структурное отношение, которое описывает набор связей, являющихся соединением между объектами.

Отношение ассоциации имеет место, если одна сущность непосредственно связана с другой.

Графически ассоциация изображается в виде сплошной линии (1) с различными дополнениями, соединяющей связанные сущности.

Обобщение – отношение специализации/обобщения, в котором объекты специализированного элемента (потомка) могут заменять объекты обобщенного элемента (предка).

Обобщение – это отношение между двумя сущностями, одна из которых является частным случаем другой.

Графически обобщение изображается в виде линии с треугольной незакрашенной стрелкой на конце (1), направленной от частного (2) (подкласса) к общему (3) (суперклассу).

Реализация – семантическое отношение между классификаторами, где один классификатор определяет контракт, который другой классификатор обязуется выполнять.

Отношение реализации указывает, что одна сущность является реализацией другой.

Графически реализация изображается в виде пунктирной линии с треугольной незакрашенной стрелкой на конце (1), направленной от реализующей сущности (2) к реализуемой (3).

 

 

 

Диаграммы

 

Визуализация представления проектируемой системы с различных точек зрения в UML реализована посредством диаграмм — проекций системы. Диаграмма (Diagram) — это графическое представление множества элементов, которое изображается в виде связного графа с вершинами (сущностями) и ребрами (отношениями).


Дата добавления: 2018-02-15; просмотров: 3152; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!