UML Диаграммы состояний и активностей
Диаграмма состояний Состояние (state) - ситуация в жизненном цикле объекта, во время которой он удовлетворяет некоторому условию, выполняет определенную деятельность или ожидает какого-то события. Состояние объекта определяется значениями некоторых его атрибутов и присутствием или отсутствием связей с другими объектами. Диаграмма состояний показывает, как объект переходит из одного состояния в другое.
Диаграмма состояний Состояния могут содержать параллельные состояния.
Диаграмма состояний
Упражнение 1. Для получения водительских прав в России При нехватке времени и избытке денег и связей в ГАИ их можно купить. В противном случае нужно оплатить пошлину сдать теорию, которая делится на сдачу экзамена в школе и сдачу теории в ГАИ после сдачи теории - сдать практику вождения. Построить диаграмму состояния для получения водительских прав в России.
Диаграммы активности Диаграмма активности (деятельности) – частный случай диаграммы состояний. Тут представлены переходы потока управления от одной деятельности к другой внутри системы. Удобно применять для визуализации алгоритмов, по которым работают операции классов.
Диаграммы активности Алгоритм - последовательность определенных действий или элементарных операций, выполнение которых приводит к получению желаемого результата. Деятельность (activity) - протяженное во времени составное (неатомарное) вычисление (действие, action) Переход – передачи контроля.
Диаграммы активности
Диаграммы активности Распараллеливание, а затем опять слияние воедино (синхронизация) потоков управления.
Диаграммы активности
Диаграммы активности Дорожка - часть области диаграммы деятельности, на которой отображаются только те деятельности, за которые отвечает конкретный объект.
Упражнение 2. Нарисовать диаграмму активности для следующей ситуации: Клиент приходите в какой-нибудь фастфуд и заказывает на завтрак гамбургер с колой. Официант принимает заказ, отдает его на кухню и подает колу. Повар готовит гамбургер. Если клиент хочет пить, то он неторопливо попивает колу, иначе просто гамбургер. Затем официант подает завтрак и клиент его съедает.
Диаграммы активности Траектория объекта, или поток объекта (object flow) – на диаграмме деятельности можно изобразить и объекты, относящиеся к деятельности.
Упражнение 3. Дополнить диаграмму из упражнения 2 траекторией объекта «Гамбургер».
Примеры использования Для моделирования процессов В этом случае внимание фокусируется на деятельности с точки зрения экторов, которые работают с системой. Диаграммы деятельности применимы для описания бизнес-процессов. В случае такого использования диаграмм деятельности активно используются траектории объектов. Для моделирования операций В этом случае диаграммы деятельности играют роль "продвинутых" блок-схем и применяются для подробного моделирования вычислений. На первое место при таком использовании выходят конструкции принятия решения, а также разделения и слияния потоков управления (синхронизации).
Советы по составлению диаграмм активностей Процесс построения диаграммы активностей можно описать в виде последовательности таких действий: Составление перечня деятельностей в системе Принятие решения о необходимости построения диаграммы деятельностей Определение зависимостей между деятельностями Выделение параллельных потоков деятельностей Определение условий переходов Уточните сложные деятельности