Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпора теория [3240 вопросов].doc
Скачиваний:
60
Добавлен:
15.06.2014
Размер:
3.2 Mб
Скачать

9. Языка uml. Назн. И эл-ты диаграммы вариантов использования.

Цели: определить общие границы и контекст моделируемой предметной области на начальных этапах проектирования; определить общие требования к функциональному поведению проектируемой системы; разработать исходную концептуальную модель системы для ее последующей детализации в форме логических и физических моделей; подготовить исходную документацию для взаимодействия разработчиков системы с ее заказчиком и пользователями.

Виды отношений:

  1. UML. Назначение и элементы диаграммы последовательности.

Sequence diagram – диаграмма показывающая взаимодействие объектов, упорядоченные по времени их появления.

Диаграмма последовательности – одна из диаграмм кооперации. Смотри начало следующего вопроса

  1. Языка UML. Назначение и элементы диаграммы кооперации.

Диаграмма взаимодействий (Interaction diagram) описывает взаимодействия, состоящие из множества объектов и отношений между ними, включая сообщения, которыми они обмениваются. Диаграммой последовательностей (Sequence diagram) называется диаграмма взаимодействий, акцентирующая внимание на временной упорядоченности сообщений. Графически такая диаграмма представляет собой таблицу, объекты в которой располагаются вдоль оси X, а сообщения в порядке возрастания времени - вдоль оси Y. Диаграммой кооперации (Collaboration diagram) называется диаграмма взаимодействий, основное внимание в которой уделяется структурной организации объектов, принимающих и отправляющих сообщения. Графически такая диаграмма представляет собой граф из вершин и ребер.

Диаграмма кооперации акцентирует внимание на организации объектов, принимающие участие во взаимодействии. Как показано на рисунке, для создания диаграммы кооперации нужно расположить участвующие во взаимодействии объекта в виде вершин графа. Затем связи, соединяющие эти объекты, изображаются в вид дуг этого графа. Наконец, связи дополняются сообщениями, которые объекты принимают и посылают. Это дает пользователю ясное визуальное представление о потоке управления в контексте структурной организации кооперирующихся объектов.

У диаграмм кооперации есть два свойства, которые отличают их от диаграмм последовательностей.

Первое - это путь. Для описания связи одного объекта с другим к дальней концевой точке этой связи можно присоединить стереотип пути (например, local показывающий, что помеченный объект является локальным по отношению к от правителю сообщения). Имеет смысл явным образом изображать путь связи только в отношении путей типа local, parameter, global и self (но не associations).

Второе свойство - это порядковый номер сообщения. Для обозначения временной последовательности перед сообщением можно поставить номер (нумерация начинается с единицы), который должен постепенно возрастать для каждого нового сообщения (2, 3 и т.д.). Для обозначения вложенности используется десятичная нотация Дьюи (1 - первое сообщение; 1.1 - первое сообщение, вложенное в сообщение 1; 1.2- второе сообщение, вложенное в сообщение 1 и т.д.). Уровень вложенности не ограничен. Для каждой связи можно показать несколько сообщений (вероятно, посылаемых разными отправителями), и каждое из них должно иметь уникальный порядковый номер.

  1. Языка UML. Назначение и элементы диаграммы состояний.

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

Пример:

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

  1. Языка UML. Назначение и элементы диаграммы деятельности.

Диаграмма деятельности (Activity diagram) показывает поток переходов от одной деятельности к другой. Деятельность (Activity) - это продолжающийся во времени неатомарный шаг вычислений в автомате. Деятельности в конечном счете приводят к выполнению некоего действия (Action, см. главу 15), составленного из выполняемых атомарных вычислений, каждое из которых либо изменяет состояние системы, либо возвращает какое-то значение. Действие может заключаться в вызове другой операции, посылке сигнала, создании или уничтожении объекта либо в простом вычислении - скажем, значения выражения. Графически диаграмма деятельности представляется в виде графа, имеющего вершины и ребра.

Представление деятельности является вариантом конечного автома­та, в котором показаны длительные вычислительные деятельности.

Деятельность представляет собой поток работ или выполнение опе­раций. Представление деятельности отображает как последователь­ные, так и параллельные виды деятельности. Изображаются такие модели на диаграммах деятельности.

На рисунке изображена диаграмма деятельности для нашей театральной кассы. На ней показан весь спектр различных видов театральной деятельности по подготовке конкретного представления (если у вас есть опыт работы в театре, не принимайте наш пример слишком буквально!). Стрелками на диаграмме показаны последовательные зависимости. Например, конкретную постановку можно выбрать из ряда других еще до того, как станет известно, когда она состоится. Жирной чертой отмечены места разделения или соединения потоков управления. Уже после того, как составлено расписание постановок, театр может начать рекламировать какую-либо одну из них, покупать для нее сценарии и музыку, нанимать актеров, работать над освеще­нием, костюмами, причем делать все это можно одновременно. Впро­чем, до начала репетиций театр должен будет выбрать сценарий и нанять актеров. Диаграмма деятельности отражает реальные потоки работ в челове­ческой организации. Такое бизнес-моделирование и есть основное ее назначение. С таким же успехом ее можно использовать и при моде­лировании работы программного приложения.

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

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

Диаграмма деятельности, как и любая другая диаграмма, может содержать примечания и ограничения.

  1. .

  2. 12

  3. 1212

  4. 1212

  5. 12

  6. Языка UML. Назначение и элементы диаграммы компонентов

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

Существует два физических представления: представление реализа­ции и представление развертывания.

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

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

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

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

Маленький именованный кружок на диаграмме изображает интер­фейс, то есть некий набор связанных друг с другом услуг. Непре­рывная линия, идущая от компонента к кружку-интерфейсу, указы­вает на то, что данный компонент обеспечивает работу интерфейса (иными словами, компонент реализует интерфейс, далее он обозна­чается как Клиент). Если же от компонента к интерфейсу идет пунк­тирная стрелка, это означает, что компонент требует для своей работы наличия доступа к данному интерфейсу. Например, компонент про­дажи билетов обеспечивает как продажи абонементов, так и группо­вые продажи билетов. Однако абонемент можно купить как в Киоске, так и у Кассира в театре, тогда как групповыми продажами занимает­ся только Кассир.

  1. 15