Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Все лекции по системам реального времени.pdf
Скачиваний:
252
Добавлен:
02.05.2014
Размер:
8.11 Mб
Скачать

СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ

99

6.Обзор нотации UML

Вметоде COMET используется нотация из унифицированного языка моделирования UML, которая объединила нотации, предло- женные Бучем [16], Джекобсоном [21], Рамбо [16] и Харелом [20]. Представим краткий обзор нотации UML.

Co временем нотация UML расширялась, и теперь в ней поддер- живается много различных диаграмм.

6.1.Диаграммы UML

Внотации UML поддерживаются девять видов диаграмм:

§диаграммы прецедентов;

§диаграммы классов;

§диаграммы объектов, являющиеся вариантом диаграмм клас- сов в применении к экземплярам. В методе COMET вместо них работают консолидированные диаграммы кооперации;

§диаграммы кооперации;

§диаграммы последовательности;

§диаграммы состояний;

§диаграммы деятельности (в COMET не используются);

§диаграммы компонентов (в COMET не используются).

§диаграммы развертывания.

6.2.Диаграммы прецедентов

Актер (actor) инициирует прецедент. Прецедент (use case) опи- сывает последовательность взаимодействий между актером и систе- мой. Актер изображается на диаграмме прецедентов в виде фигуры человечка, система в виде прямоугольника, прецедент в виде эл- липса внутри этого прямоугольника. Коммуникационные ассоциации связывают актеров с теми прецедентами, в которых они участвуют. Между прецедентами могут быть отношения include (включает) и extend (расширяет). Пример диаграммы прецедентов представлен на рис.6.1.

www.pdffactory.com

СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ

100

6.3. Нотация UML для классов и объектов

Классы и объекты изображаются в UML прямоугольниками, как показано на рис.6.2.

Рис. 6.1. Диаграммы прецедентов в нотации UML

В прямоугольнике класса всегда вписано имя класса. Дополни- тельно могут быть указаны атрибуты и операции класса. Когда при- сутствуют все три элемента, то в верхней секции прямоугольника на- ходится имя класса, в средней атрибуты, а в нижней операции.

Для того чтобы отличить класс (тип) от объекта (экземпляра типа), имя объекта подчеркивается. Объект может обозначаться как anObject,anotherObject:Class или :Class. Классы и объекты встреча-

ются в разных диаграммах UML.

www.pdffactory.com

СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ

101

Рис. 6.2. Объекты и классы в нотации UML

6.4. Диаграммы классов

На такой диаграмме классы изображаются в виде прямоуголь- ников, а статические (постоянные) отношения между ними в форме дуг. Поддерживаются три основных типа отношений между классами

(рис. 6.3):

ассоциации. Ассоциация между двумя классами (бинарная ас- социация) изображается в виде линии, соединяющей прямоугольники классов. У нее есть имя и, возможно, стрелка, поясняющая, в каком направлении следует это имя читать. На каждом конце ассоциации проставляется кратность число, свидетельствующее, сколько экзем- пляров одного класса связано с одним экземпляром другого класса.

Дополнительно на каждом конце ассоциации может присутствовать стрелка, указывающая направление навигации вдоль данной ассоциа- ции.

Допустимы следующие кратности ассоциации: ровно один (1), присутствие экземпляра класса необязательно (0..1), нуль или более (*), один или более (1..*) и точное задание числа экземпляров классов

(m..n), где m и n - числа;

иерархии агрегирования и композиции. Это отношения вида целое/часть. Отношение композиции (изображается закрашенным ромбом) накладывает более сильные ограничения на экземпляры классов, чем отношение агрегирования (показывается незакрашен- ным ромбом). Ромб одной вершиной примыкает к прямоугольнику класса, являющегося частью в отношении вида «часть/целое»;

www.pdffactory.com

СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ

102

иерархия обобщения/специализации. Это отношение вида «яв-

ляется». Обобщение изображается в виде стрелки, ведущей от под- класса (потомка) к суперклассу (родителю), причем стрелка упирает- ся в прямоугольник суперкласса.

Видимость определяет, доступен ли элемент класса вне самого класса (рис. 6.4). Показывать видимость на диаграмме необязательно. Открытая видимость, изображаемая символом + (плюс), означает, что элемент виден извне класса.

Закрытая видимость, отмеченная знаком – (минус), свидетельст- вует о том, что элемент виден только внутри класса, в котором он оп- ределен, а от других классов скрыт. Защищенная видимость, показы- ваемая знаком #, говорит о том, что элемент виден внутри класса, в котором определен, а также во всех подклассах этого класса.

Рис. 6.3. Нотация UML для связей на диаграмме классов

Рис. 6.4. Нотация UML для обозначения видимости на

диаграмме классов

www.pdffactory.com