КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Диаграммы взаимодействия
Диаграммы классов Обзор нотации UML. Диаграммы UML. Диаграммы прецедентов. Нотация UML для классов и объектов Системы и приложения реального времени Метод и нотация Метод проектирования и нотация проектирования – это разные вещи. Нотация проектирования ПО предназначена для описания самого проекта. Хотя она и предполагает наличие определенного подхода к проектированию, сам подход остается за ее рамками. Метод проектирования ПО представляет собой систематическое описание этапов создания проекта. Нотация проектирования ПО описывает.проект программы в графическом или текстовом виде. В частности, диаграммы классов – это графическая нотация, а псевдокод – текстовая. Концепция проектирования ПО – это фундаментальная идея, применимая к проектированию всей системы, например сокрытие информации. Стратегия проектирования ПО – общий план и методика выполнения проекта. Одной из стратегий является объектно-ориентированная декомпозиция. Критерии структурирования ПО – это эвристические или формальные правила, помогающие проектировщику разбить систему на отдельные компоненты. Так, критерии разбиения на объекты - это правила декомпозиции системы на объекты. Метод проектирования ПО описывает последовательность шагов, выполняемых при работе над проектом при условии, что требования к системе уже сформулированы. Он помогает выявить, какие решения предстоит принять, в каком порядке это следует делать и на основе каких критериев. Метод проектирования базируется на наборе соответствующих концепций, использует одну или несколько стратегий, а также ту или иную нотацию для документирования результатов. При выполнении определенных шагов метод может подсказать разработчику, какие критерии наиболее удобны для декомпозиции системы.
Системы реального времени (рис. 5.1) – это параллельные системы с временными ограничениями. Они широко распространены в промышленных, коммерческих и военных приложениях. Термин «система реального времени» обычно относится к системе в целом, включающей приложение реального времени, операционную систему реального времени и подсистему ввода/вывода реального времени. В состав такой системы входят также драйверы специальных устройств, управляющие работой различных датчиков и приводов. Поскольку здесь речь идет в основном о проектировании приложений, мы будем пользоваться термином «приложение реального времени», а не «система реального времени». Однако в этом разделе приложения реального времени рассматриваются в более широком контексте систем реального времени.
Рис. 5.1. Система реального времени В методе COMET используется нотация из унифицированного языка моделирования UML, которая объединила нотации, предложенные Бучем, Джекобсоном, Рамбо и Харелом. Co временем нотация UML расширялась, и теперь в ней поддерживается много различных диаграмм. В нотации UML поддерживаются девять видов диаграмм: – диаграммы прецедентов; – диаграммы классов; – диаграммы объектов, являющиеся вариантом диаграмм классов в применении к экземплярам. В методе COMET вместо них работают консолидированные диаграммы кооперации; – диаграммы кооперации; – диаграммы последовательности; – диаграммы состояний; – диаграммы деятельности (в COMET не используются); – диаграммы компонентов (в COMET не используются)– диаграммы развертывания. Актер (actor) инициирует прецедент. Прецедент (use case) описывает последовательность взаимодействий между актером и системой. Актер изображается на диаграмме прецедентов в виде фигуры человечка, система – в виде прямоугольника, прецедент – в виде эллипса внутри этого прямоугольника. Коммуникационные ассоциации связывают актеров с теми прецедентами, в которых они участвуют. Между прецедентами могут быть отношения include (включает) и extend (расширяет).
Для того чтобы отличить класс (тип) от объекта (экземпляра типа), имя объекта подчеркивается. Объект может обозначаться как anObject,anotherObject:Class или :Class. Классы и объекты встречаются в разных диаграммах UML. На такой диаграмме классы изображаются в виде прямоугольников, а статические (постоянные) отношения между ними – в форме дуг. Поддерживаются три основных типа отношений между классами: – ассоциации. Ассоциация между двумя классами (бинарная ассоциация) изображается в виде линии, соединяющей прямоугольники классов. У нее есть имя и, возможно, стрелка, поясняющая, в каком направлении следует это имя читать. На каждом конце ассоциации проставляется кратность – число, свидетельствующее, сколько экземпляров одного класса связано с одним экземпляром другого класса. Дополнительно на каждом конце ассоциации может присутствовать стрелка, указывающая направление навигации вдоль данной ассоциации. – иерархии агрегирования и композиции. Это отношения вида целое/часть. Отношение композиции (изображается закрашенным ромбом) накладывает более сильные ограничения на экземпляры классов, чем отношение агрегирования (показывается незакрашенным ромбом). Ромб одной вершиной примыкает к прямоугольнику класса, являющегося частью в отношении вида «часть/целое»; – иерархия обобщения/специализации. Это отношение вида «является». Обобщение изображается в виде стрелки, ведущей от подкласса (потомка) к суперклассу (родителю), причем стрелка упирается в прямоугольник суперкласса. Видимость определяет, доступен ли элемент класса вне самого класса. Показывать видимость на диаграмме необязательно. Открытая видимость, изображаемая символом + (плюс), означает, что элемент виден извне класса. Закрытая видимость, отмеченная знаком – (минус), свидетельствует о том, что элемент виден только внутри класса, в котором он определен, а от других классов скрыт. Защищенная видимость, показываемая знаком #, говорит о том, что элемент виден внутри класса, в котором определен, а также во всех подклассах этого класса.
В UML есть два вида диаграмм взаимодействия: диаграммы кооперации (collaboration diagram) и диаграммы последовательности (sequence diagram). Семантически они эквивалентны. Диаграммы кооперации. На диаграмме кооперации показывается, как объекты динамически общаются между собой, посылая и получая сообщения. Эта диаграмма представляет структурную организацию взаимодействующих объектов, изображаемых в виде прямоугольников и соединяющих их дуг. Помеченные стрелки рядом с дугами обозначают имя сообщения и направление его передачи между объектами. Отдельные сообщения в последовательности сообщений, отправляемых от одного объекта к другому, нумеруются. Диаграмма кооперации в нотации UML
Диаграммы последовательности. Другой способ показать взаимодействие объектов – воспользоваться диаграммой последовательности. Диаграмма последовательности двумерна: участвующие объекты изображаются вдоль горизонтальной оси, а время откладывается вдоль вертикальной. От прямоугольника каждого объекта идет вниз вертикальная пунктирная линия, называемая линией жизни. Период, в течение которого объект выполняет операцию, именуется активизацией. На протяжении этого периода линия жизни изображается двойной сплошной линией. Актер обычно изображается в левом верхнем углу диаграммы. Помеченные горизонтальные линии представляют пересылку сообщений. Существенны только отправитель и получатель сообщения. Сообщение посылается объектом-отправителем объекту-получателю. Время возрастает в направлении сверху вниз. Расстояние по вертикали между сообщениями не имеет значения.
Дата добавления: 2014-01-07; Просмотров: 443; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |