Вопрос 31. Диаграмма взаимодействия



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

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

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

Обозначения, применяемые на диаграмме взаимодействия:

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

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

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

Эта диаграмма, скорее всего, описывает процесс управления учебными курсами (очевидно, путем создания их из готовых модулей) для некоего учебного центра.

Пример, который должен вызвать легкое "дежавю" у внимательного студента.

 

 

Диаграмма последовательностей - мобильный телефон!

Как видим, это просто другая форма представления, к тому же, как кажется, менее удобная.

Вопрос 32. Диаграмма состояний

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

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

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

Понятие жизненного цикла применимо как раз к реактивным объектам, настоящее состояние и поведение которых обусловлено их прошлым состоянием. Диаграммы состояний могут использоваться для конструирования исполняемых систем путем прямого и обратного проектирования. И они действительно с успехом так применяются, напр., в существующих вариантах "исполняемого UML"(UNIMOD, FLORA и др.)

Обозначения на диаграммах состояний

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

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

Рисунок – Простейшая диаграмма состояний. А вот более сложный пример:

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

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

 


Рисунок – Диаграмма состояний, таймер.


Дата добавления: 2018-02-15; просмотров: 831; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!