
- •1. Особенности и проблемы проектирования сложных ис. Характеристики современных крупных проектов по разработке по ис.
- •2. Сущность и основные принципы системного подхода при проектировании сложных ис.
- •3 Структура ис. Состав и назначение функциональных и обеспечивающих подсистем.
- •8. Основные элементы диаграмм idef0. Назначение контекстной диаграммы и иерархия диаграмм idef0. Понятие декомопозиции
- •Диаграммы uml
- •32 Диаграммы последовательности и кооперации в uml-модели: их назначение, основные элементы и возможности при моделировании взаимодействия между объектами ис.
- •Достоинства
Диаграммы uml
Диаграммы UML предназначены для визуального отображения моделей и их компонентов.
UML 2.0 содержит 13 типов диаграмм. В том числе:
Структурные диаграммы:
Диаграмма классов – показывает классы, их атрибуты и связи между классами.
Диаграмма компонентов – показывает компоненты и связи между ними.
Структурная диаграмма – показывает внутреннюю структуру классов и связи с внешним миром.
Диаграмма развертывания - показывает, как ПО размещается на аппаратуре (серверах, рабочих станциях...).
Диаграмма объектов – показывает структуру системы в конкретный момент времени, объекты, их атрибуты...
Диаграмма пакетов – показывает, как система раскладывается на крупные составные части и связи между этими частями
Диаграммы поведения:
Диаграмма действия – показывает потоки информации в системе.
Диаграмма состояния – представляет собой конечный автомат, показывающий функционирование системы.
Диаграмма вариантов использования – показывает работу системы с точки зрения пользователей.
Диаграммы взаимодействия
Диаграмма кооперации – показывает структурную организацию участвующих во взаимодействии объектов.
Диаграмма взаимодействия (новация UML 2.0).
Диаграмма последовательности – показывает временную упорядоченность событий.
Временная диаграмма – диаграмма связана с временными рамками проекта.
27 Диаграмма вариантов использования как концептуальное представление системы. Основные элементы диаграмм вариантов использования. Отношения включения, расширения и обобщения.
Диаграмма вариантов использования (use case diagram) — диаграмма, на которой изображаются отношения между актерами и вариантами использования.
Диаграмма вариантов использования - это исходное концептуальное представление или концептуальная модель системы в процессе ее проектирования и разработки.
Назначение данной диаграммы состоит в следующем: проектируемая программная система представляется в форме так называемых вариантов использования, с которыми взаимодействуют внешние сущности или актеры. При этом актером или действующим лицом называется любой объект, субъект или система, взаимодействующая с моделируемой бизнес-системой извне.
Содержание варианта использования может быть представлено в форме дополнительного пояснительного текста, который раскрывает смысл или семантику действий при выполнении данного варианта использования. Такой пояснительный текст получил название текста-сценария или просто сценария. Далее в этой главе рассматривается один из шаблонов, который может быть рекомендован для написания сценариев вариантов использования.
Актер (actor) — согласованное множество ролей, которые играют внешние сущности по отношению к вариантам использования при взаимодействии с ними.
Актер представляет собой любую внешнюю по отношению к моделируемой системе сущность, которая взаимодействует с системой и использует ее функциональные возможности для достижения определенных целей или решения частных задач.
Отношение (relationship) — семантическая связь между отдельными элементами модели.
Между элементами диаграммы вариантов использования могут существовать различные отношения, которые описывают взаимодействие экземпляров одних актеров ивариантов использования с экземплярами других актеров и вариантов. Один актер может взаимодействовать с несколькими вариантами использования.
В языке UML имеется несколько стандартных видов отношений между актерами и вариантами использования:
Отношение ассоциации – одно из фундаментальных понятий в языке UML и в той или иной степени используется при построении всех графических моделей систем в форме канонических диаграмм. Применительно к диаграммам вариантов использования ассоциация служит для обозначения специфической роли актера при его взаимодействии с отдельным вариантом использования.
Включение (include) в языке UML — это разновидность отношения зависимости между базовым вариантом использования и его специальным случаем. При этом отношением зависимости (dependency) является такое отношение между двумя элементами модели, при котором изменение одного элемента (независимого) приводит к изменению другого элемента (зависимого).
Отношение расширения (extend) определяет взаимосвязь базового варианта использования с другим вариантом использования, функциональное поведение которого задействуется базовым не всегда, а только при выполнении дополнительных условий.
В языке UML отношение расширения является зависимостью, направленной к базовому варианту использования и соединенной с ним в так называемой точке расширения.
28. Понятие класса и объекта в объектно-ориентированной модели. Описание класса в модели UML. Определение атрибутов и операций класса.
Диаграмма классов (class diagram) является основным логическим представлением модели и содержит детальную информацию о внутреннем устройстве объектно-ориентированной программной системы или об архитектуре программной системы. Диаграммы классов используются для моделирования статического вида системы с точки зрения проектирования. Диаграмма классов - диаграмма, на которой показано множество классов, интерфейсов, коопераций и отношений между ними. Используется в следующих целях: для моделирования словаря системы; для моделирования простых коопераций. Кооперация - это сообщество классов, интерфейсов и других элементов, работающих совместно для обеспечения некоторого кооперативного поведения; для моделирования логической схемы базы данных.
Классом называется именованное описание совокупности объектов с общими атрибутами, операциями, связями и семантикой. Пример изображения класса на диаграмме классов показан на рисунке 1.
Атрибутом класса называется именованное свойство класса, описывающее множество значений, которые могут принимать экземпляры этого свойства. Класс может иметь любое число атрибутов (в частности, не иметь ни одного атрибута).
Операция класса - это именованная услуга, которую можно запросить у любого объекта этого класса. Операция – это абстракция того, что можно делать с объектом.
После определения классов на диаграмме следует показать отношения между классами. Существуют отношения следующих типов: отношение зависимости показывает, что изменение одного класса влечет изменение другого класса. Чаще всего применяется, когда один класс использует другой в качестве аргумента;отношение ассоциации – структурная связь, показывающая, что объекты одного класса некоторым образом связаны с объектами другого или того же самого класса. Кратностью роли ассоциации называется характеристика, указывающая, сколько объектов класса с данной ролью может или должно участвовать в каждом экземпляре ассоциации;отношение агрегации – специальная форма ассоциации, которая служит для представления отношения типа "часть-целое" между агрегатом (целое) и его составной частью;отношение композиции – разновидность отношения агрегации, при которой составные части целого имеют такое же время жизни, что и само целое. Эти части уничтожаются вместе с уничтожением целого.
Для создания нового класса нужно щелкнуть по кнопке Class на панели инструментов и затем по свободному месту окна диаграммы, после чего можно ввести название класса. После создания класса нужно определить его свойства. Для этого нужно дважды по нему щелкнуть или же вызвать для него контекстное меню и выбрать пункт Open Specification.., после чего откроется окно спецификации класса, содержащее ряд вкладок.
29 Стереотипы классов в UML для построения моделей ПО и бизнес-систем.
Стереотипы классов
Стереотипы – это механизм, позволяющий разделять классы на категории. Приняты следующие стандартные стереотипы классов:
класс-сущность (entity class) — пассивный класс, информация о котором должна храниться постоянно и не уничтожаться с выключением системы. Обычно каждый класс-сущность в системе представлен таблицей базы данных;
граничный класс (boundary class) — класс, который располагается на границе системы с внешней средой и непосредственно взаимодействует с актерами, но является составной частью системы. К таким классам относятся все формы, отчеты, интерфейсы. Для каждого актера должен существовать как минимум один граничный класс;
управляющий класс (control class) — класс, отвечающий за координацию действий других классов. Обычно у каждого варианта использования имеется один управляющий класс, контролирующий последовательность событий этого варианта использования.
30 Отношения между классами и их отображение на диаграмме классов в UML-модели
Отношения между классами
После определения классов на диаграмме следует показать отношения между классами. Существуют отношения следующих типов:
отношение зависимости показывает, что изменение одного класса влечет изменение другого класса. Чаще всего применяется, когда один класс использует другой в качестве аргумента;
отношение ассоциации – структурная связь, показывающая, что объекты одного класса некоторым образом связаны с объектами другого или того же самого класса. Кратностью роли ассоциации называется характеристика, указывающая, сколько объектов класса с данной ролью может или должно участвовать в каждом экземпляре ассоциации;
отношение агрегации – специальная форма ассоциации, которая служит для представления отношения типа "часть-целое" между агрегатом (целое) и его составной частью;
отношение композиции – разновидность отношения агрегации, при которой составные части целого имеют такое же время жизни, что и само целое. Эти части уничтожаются вместе с уничтожением целого.
Примеры изображения отношений на диаграммах показаны на рисунке 2.
31 Этапы построения диаграммы классов: концептуальная модель классов и модель классов этапа анализа.
Существуют три различные точки зрения на построение диаграмм классов или любой другой модели:
концептуальная точка зрения: диаграммы классов служат для представления понятий изучаемой предметной области. Эти понятия будут соответствовать реализующим их классам, но прямое соответствие может отсутствовать. Концептуальная модель может иметь слабое отношение или вообще не иметь никакого отношения к реализующему ее программному обеспечению, поэтому ее можно рассматривать без привязки к какому-то языку программирования;
точка зрения спецификации: рассматривается программная система, при этом существенны только ее интерфейсы, но не их реализация;
точка зрения реализации: классы диаграммы соответствуют реальным классам программной системы.
Запустить IBM Rational Rose 2003. Открыть учебную модель, созданную в лабораторной работе.
Создать в логическом представлении браузера новую диаграмму классов Add New Order.
Создать классы-сущности
Определение отношений между классами
Добавление на диаграмму граничных и управляющих классов