Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

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



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

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

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

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

Можно считать, что состояние дей­ствия – это частный вид состояния деятельности, а конкретнее – такое состояние, которое не может быть подвергнуто дальнейшей декомпозиции.

Состояния деятельности и действия изображаются прямоугольниками с закругленными краями (рис. 6.28). Внутри такого значка можно записывать произвольное выражение. При этом у состояния деятельности могут быть до­полнительные части, такие как действия входа и выхода (то есть выполняемые со­ответственно при входе в состояние и выходе из него) и подсостояния.

Рис. 6.28. Состояния и переходы Рис. 6.29. Ветвление

Когда действие или деятельность в некотором состоянии завершается, поток управления сразу переходит в следующее состояние действия или деятельности. Для описания этого потока используются переходы, по­казывающие путь из одного состояния действия или деятельности в другое. Переход изображается простой линией со стрелкой, как показано на рис. 6.28. Такие переходы являются нетриггерными (переходами по завершении), поскольку управление по завершении ра­боты в исходном состоянии немедленно передается дальше.

После того как действие в данном исходном состоянии закончилось, вы­полняется определенное для него действие выхода (exit). Далее, безо всякой задержки, поток управления по переходу попадает в очередное состояние действия или деятель­ности. При этом выполняется определенное для нового состояния действие входа (entry), затем – действие или де­ятельность самого состояния и следующий переход. Поток управление должен где-то начинаться и заканчиваться. Как пока­зано на рис. 6.28, можно задать как начальное состояние, так и конечное.

Если последовательных переходов недостаточно для моделирования потока управления, можно включить в модель ветвление, которое описывает различные пути вы­полнения в зависимости от значения некоторого булевского выражения. Как вид­но из рис. 6.29, точка ветвления представляется ромбом. В точку ветвления может входить ровно один переход, а выходить – два или более. Для каждого исходяще­го перехода задается булевское выражение, которое вычисляется только один раз при входе в точку ветвления. Ни для каких двух исходящих переходов эти сторо­жевые условия не должны одновременно принимать значение "истина", иначе поток управления окажется неоднозначным. Но эти условия должны покрывать все возможные варианты, иначе поток остановится. Для удобства разрешается использовать ключевое слово else для пометки того из исходящих переходов, который должен быть выбран в случае, если усло­вия, заданные для всех остальных переходов, не выполнены.

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

Пример. На рис 6.31 изображена диаграмма деятельности, моделирующая структуру работ по возведению здания.

Рис. 6.30. Итерационный процесс

Рис. 6.31. Диаграмма деятельности для работ по возведению здания

ЛИТЕРАТУРА

1. Бадд Т. Объектно-ориентированное программирование в действии. – СПб.: "Питер", 1997.

2. Боггс У., Боггс М. UML и Rational rose. – М.: Лори, 2000.

3. Буч Г. Объектно-ориентированное проектирование с примерами применения. – М.: Конкорд, 1992.

4. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++. – М.: "Издательство Бином", СПб.: "Невский диалект", 1998.

5. Буч Г., Рамбо Д., Джекобсон А. Язык UML. Руководство пользователя. – М.: ДМК, 2000.

6. Пол А. Объектно-ориентированное программирование на С++. – СПб.; М.: "Невский диалект" – "Издательство Бином", 1999.

7. Романовский К.Ю., Кузнецов С.В., Кознов Д.В. Объектно-ориентированный подход и диаграммы классов в UML // Объектно-ориентированное визуальное моделирование. – CПб: Изд-во С.-Петербургского ун-та, 1999.

8. Страуструп Б. Язык программирования С++. – СПб.; М.: "Невский диалект" – "Издательство Бином", 1999.

9. Фаулер М., Скотт К. UML в кратком изложении. Применение стандартного языка объектного моделирования. – М.: Мир, 1999.

10. Фридман А.Л. Основы объектно-ориентированной разработки программных систем. – М.: Финансы и статистика, 2000.


ОГЛАВЛЕНИЕ

Стр.

ВВЕДЕНИЕ.................................................................................................... 3

1. СЛОЖНОСТЬ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ........................... 4

2. ОБЪЕКТНАЯ МОДЕЛЬ........................................................................... 8

2.1. Абстрагирование........................................................................... 8

2.2. Инкапсуляция............................................................................... 13

2.3. Модульность................................................................................ 15

2.4. Иерархичность............................................................................. 18

2.5. Типизация..................................................................................... 21

2.6. Параллелизм................................................................................ 23

2.7. Сохраняемость............................................................................. 23

3. ОБЪЕКТЫ............................................................................................... 24

3.1. Состояние..................................................................................... 24

3.2. Поведение..................................................................................... 25

3.3. Идентичность............................................................................... 28

3.4. Отношения между объектами..................................................... 32

4. КЛАССЫ.................................................................................................. 34

4.1. Ассоциация................................................................................... 34

4.2. Агрегация..................................................................................... 35

4.3. Обобщение................................................................................... 36

4.3.1. Наследственная иерархия................................................ 36

4.3.2. Наследование и типизация.............................................. 40

4.3.3. Множественное наследование......................................... 43

4.4. Зависимость.................................................................................. 45

4.5. Инстанцирование......................................................................... 46

4.6. Переменные и операции класса................................................... 48

4.7. Интерфейсы.................................................................................. 49

4.8. Группирование классов............................................................... 50

5. ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ АНАЛИЗ................................. 52

6. ОСНОВНЫЕ КОНСТРУКЦИИ ЯЗЫКА UML.................................... 55

6.1. Диаграмма классов...................................................................... 56

6.2. Диаграмма объектов.................................................................... 60

6.3. Диаграммы взаимодействий....................................................... 61

6.2. Диаграмма состояний.................................................................. 64

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

ЛИТЕРАТУРА............................................................................................. 71





Дата публикования: 2015-04-06; Прочитано: 380 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...