Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОТВЕТЫ НА ГОСы (все ответы).doc
Скачиваний:
20
Добавлен:
14.08.2019
Размер:
1.93 Mб
Скачать

3. Универсальный язык моделирования uml, его назначение. Диаграммы деятельности. Диаграммы состояний. Применение этих диаграмм. (тп)

Диаграммы деятельностей.

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

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

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

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

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

Показ объектов и их состояний помогает понять, когда и как происходит смена состояний объекта.

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

Переход ( ) показывает, как поток управления переходит от одной деятельности к другой.

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

Диаграмма деятельности предпочтительней использовать в следующих ситуациях:

Анализ потока событий в конкретном варианте использования. Здесь нас не интересует связь между действиями и объектами, а нужно просто посмотреть какие действия должны иметь место и каковы зависимости в поведении системы.

Анализ потока событий в различных вариантах использования. Когда варианты использования взаимодействуют друг с другом, на диаграмме деятельности удобно представить и проанализировать их потоки событий.

Применение ДД

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

-Анализ ВИ; На этой стадии нас не интересует связь между дей. И объектами, важно только понять какие действия должны иметь место и какие зав-ти в поведении системы. Связать методы и объекты можно позднее и показать эти связи с помощью ДД

-Анализ потоков работ в различных ВИ. ДД используется в случае их взаимодействия друг с другом.

ДД не рекоменд использовать в след сит-ях:

-уяснение взаимодействия объектов ( исполь Д. Взаимод)

-изучение поведения объекта в течение его ЖЦ ( исполь-ют д. Состояний )

Диаграммы состояниий

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

(1) - Снятие денег [отрицательный баланс] (2) - Вклад денег [положительный баланс] (3) - Клиент требует закрыть/сохранить дату закрытия (3) и (4) - Проверка баланса [отрицательный баланс в течение более 30 дней]

В примере можно наблюдать процесс перехода счета из одного состояния в другое. Требование клиента называется "событием". Именно такие события и вызывают переход из одного состояния в другое. Если клиент снимает деньги со счета, он может перейти в состояние превышение кредита. Это происходит только в том случае, если банк по счету меньше нуля, что отражено условием "отрицательный баланс". Заключенное в квадратные скобки условие определяет, когда может произойти переход из одного состояния в другое.

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

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

Процессы, происходящие в этот момент, когда объект находится в определенном состоянии, называется "действием" (action). С состоянием можно связывать следующие данные: деятельность, входное действие, выходное действие и событие.

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

Применение диаграммы состояний.

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

ЭКЗАМЕНАЦИОННЫЙ БИЛЕТ № 12