SlideShare a Scribd company logo
1 of 47
Модуль 16:  Диаграммы состояний Курс  SE 201   Введение в программную инженерию Проект ВИРТУОЗ, ННГУ, Н.Новгород, 2004 г. Бабич А.В., Полтава, Украина, ПГПУ,  [email_address] _________________ _____ ____________________________________
Диаграммы состояний или как визуализировать поведение  отдельного объекта Унифицированный язык моделирования ©  Бабич А.В. 2004
О чем мы узнаем… ,[object Object],[object Object],[object Object]
[object Object]
Автомат   (state machine) : ,[object Object],[object Object]
Автомат   (state machine) : ,[object Object],[object Object],[object Object],[object Object]
Автомат   (state machine) : ,[object Object]
Пример автомата ,[object Object]
Автомат (продолжение) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Пример моделирования автомата
Состояние, событие, деятельность (Буч) ,[object Object],[object Object],[object Object],[object Object],[object Object]
Состояние ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],имя состояния сост1 сост2 сост1 сост1
Имя состояния ,[object Object],[object Object],[object Object],[object Object]
Действия ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Начальное и конечное состояния ,[object Object],[object Object],[object Object]
Переход ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],событие условие
Переход (продолжение) ,[object Object],[object Object],[object Object]
Переход (продолжение  II ) ,[object Object],[object Object],[object Object],[object Object]
Переход (пример) ,[object Object]
[object Object]
Диаграмма состояний ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Упражнение ,[object Object]
Возможные решения
Еще пример ,[object Object]
Более сложная диаграмма
Диаграмма с параллельными подсостояниями ,[object Object],[object Object],[object Object]
Диаграмма с параллельными подсостояниями – конкретная постановка задачи ,[object Object],[object Object]
Пример диаграммы с параллельными состояниями
Развернутый пример ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Развернутый пример  – 1- е приближение включение компьютера выключение Инициализация Работа Завершение работы do/ загрузка
Развернутый пример - продолжение ,[object Object],[object Object]
Развернутый пример  –  2 - е приближение включение компьютера выключение Инициализация Работа Завершение работы do/ загрузка Отображение заставки [ время истекло ] Нажатие клавиши или  перемещение  указателя «мыши»
Развернутый пример - продолжение ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Развернутый пример  –  3 - е приближение Ожидание  ввода пользователя Регистрация  ввода пользователя Визуализация  ввода пользователя Ввод Работа
Развернутый пример - продолжение ,[object Object],[object Object],[object Object],[object Object],[object Object]
Развернутый пример  –  4 - е приближение Ожидание  ввода пользователя Регистрация  ввода пользователя Визуализация  ввода пользователя Ввод Работа Отслеживание системного времени Обновление изображения [ период завершился ]
Развернутый пример - продолжение ,[object Object]
Примечания ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Хорошо структурированная диаграмма состояний: ,[object Object],[object Object],[object Object]
[object Object]
Моделирование поведения объектов (Г. Буч) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Общие рекомендации по построению: ,[object Object],[object Object],[object Object]
Итоги ,[object Object],[object Object],[object Object],[object Object],[object Object]
Вопросы  ? ,[object Object]
Вопросы и упражнения ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],*   Задание более высокого уровня сложности
Использованные материалы ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
О проекте ВИРТУОЗ ,[object Object],[object Object],Проект "Виртуоз" выполнялся в Нижегородском государственном университете им. Н.И. Лобачевского по инициативе компании Intel при поддержке Microsoft, IBM, Borland, Лаборатория Касперского и др.

More Related Content

Similar to UML: Statechart Diagram

Statechart diagram
Statechart diagramStatechart diagram
Statechart diagramaepetelin
 
Activity diagram
Activity diagramActivity diagram
Activity diagramaepetelin
 
Уменьшение влияния человеческого фактора при разработке бизнес приложений
Уменьшение влияния человеческого фактора при разработке бизнес приложенийУменьшение влияния человеческого фактора при разработке бизнес приложений
Уменьшение влияния человеческого фактора при разработке бизнес приложенийngrebnev
 
Cтатический анализ кода (на примере DDD-фреймворка)
Cтатический анализ кода (на примере DDD-фреймворка)Cтатический анализ кода (на примере DDD-фреймворка)
Cтатический анализ кода (на примере DDD-фреймворка)ngrebnev
 
C# Web. Занятие 02.
C# Web. Занятие 02.C# Web. Занятие 02.
C# Web. Занятие 02.Igor Shkulipa
 
ВНЕСЕНИЕ ИЗМЕНЕНИЙ В АВТОМАТНЫЕ ПРОГРАММЫ
ВНЕСЕНИЕ ИЗМЕНЕНИЙ В АВТОМАТНЫЕ ПРОГРАММЫВНЕСЕНИЕ ИЗМЕНЕНИЙ В АВТОМАТНЫЕ ПРОГРАММЫ
ВНЕСЕНИЕ ИЗМЕНЕНИЙ В АВТОМАТНЫЕ ПРОГРАММЫITMO University
 
РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.
РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.
РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.Pavel Tsukanov
 
МАПО Лекция 14 UML Use Case
МАПО Лекция 14 UML Use CaseМАПО Лекция 14 UML Use Case
МАПО Лекция 14 UML Use CaseОлег Гудаев
 
ПРОГРАММНО-АППАРАТНЫЙ КОМПЛЕКС ДЛЯ ИССЛЕДОВАНИЯ АВТОМАТНОГО УПРАВЛЕНИЯ МОБИЛЬ...
ПРОГРАММНО-АППАРАТНЫЙ КОМПЛЕКС ДЛЯ ИССЛЕДОВАНИЯ АВТОМАТНОГО УПРАВЛЕНИЯ МОБИЛЬ...ПРОГРАММНО-АППАРАТНЫЙ КОМПЛЕКС ДЛЯ ИССЛЕДОВАНИЯ АВТОМАТНОГО УПРАВЛЕНИЯ МОБИЛЬ...
ПРОГРАММНО-АППАРАТНЫЙ КОМПЛЕКС ДЛЯ ИССЛЕДОВАНИЯ АВТОМАТНОГО УПРАВЛЕНИЯ МОБИЛЬ...ITMO University
 
Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 2
Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 2Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 2
Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 27bits
 
диаграмма деятельности
диаграмма деятельностидиаграмма деятельности
диаграмма деятельностиViktoria Alhimenko
 
Sequence diagram
Sequence diagramSequence diagram
Sequence diagramaepetelin
 
Use-case diagram
Use-case diagramUse-case diagram
Use-case diagramaepetelin
 
Классы и объекты в Java
Классы и объекты в JavaКлассы и объекты в Java
Классы и объекты в Javametaform
 
Классы и объекты в Java
Классы и объекты в JavaКлассы и объекты в Java
Классы и объекты в Javametaform
 

Similar to UML: Statechart Diagram (20)

Statechart diagram
Statechart diagramStatechart diagram
Statechart diagram
 
Activity diagram
Activity diagramActivity diagram
Activity diagram
 
Уменьшение влияния человеческого фактора при разработке бизнес приложений
Уменьшение влияния человеческого фактора при разработке бизнес приложенийУменьшение влияния человеческого фактора при разработке бизнес приложений
Уменьшение влияния человеческого фактора при разработке бизнес приложений
 
Cтатический анализ кода (на примере DDD-фреймворка)
Cтатический анализ кода (на примере DDD-фреймворка)Cтатический анализ кода (на примере DDD-фреймворка)
Cтатический анализ кода (на примере DDD-фреймворка)
 
п2 06 07
п2 06 07п2 06 07
п2 06 07
 
C# Web. Занятие 02.
C# Web. Занятие 02.C# Web. Занятие 02.
C# Web. Занятие 02.
 
ВНЕСЕНИЕ ИЗМЕНЕНИЙ В АВТОМАТНЫЕ ПРОГРАММЫ
ВНЕСЕНИЕ ИЗМЕНЕНИЙ В АВТОМАТНЫЕ ПРОГРАММЫВНЕСЕНИЕ ИЗМЕНЕНИЙ В АВТОМАТНЫЕ ПРОГРАММЫ
ВНЕСЕНИЕ ИЗМЕНЕНИЙ В АВТОМАТНЫЕ ПРОГРАММЫ
 
РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.
РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.
РАЗРАБОТКА ПО С ИСПОЛЬЗОВАНИЕМ FINITE STATE MACHINE.
 
Prez
PrezPrez
Prez
 
Конечные автоматы - Владимир Кожаев
Конечные автоматы - Владимир КожаевКонечные автоматы - Владимир Кожаев
Конечные автоматы - Владимир Кожаев
 
МАПО Лекция 14 UML Use Case
МАПО Лекция 14 UML Use CaseМАПО Лекция 14 UML Use Case
МАПО Лекция 14 UML Use Case
 
ПРОГРАММНО-АППАРАТНЫЙ КОМПЛЕКС ДЛЯ ИССЛЕДОВАНИЯ АВТОМАТНОГО УПРАВЛЕНИЯ МОБИЛЬ...
ПРОГРАММНО-АППАРАТНЫЙ КОМПЛЕКС ДЛЯ ИССЛЕДОВАНИЯ АВТОМАТНОГО УПРАВЛЕНИЯ МОБИЛЬ...ПРОГРАММНО-АППАРАТНЫЙ КОМПЛЕКС ДЛЯ ИССЛЕДОВАНИЯ АВТОМАТНОГО УПРАВЛЕНИЯ МОБИЛЬ...
ПРОГРАММНО-АППАРАТНЫЙ КОМПЛЕКС ДЛЯ ИССЛЕДОВАНИЯ АВТОМАТНОГО УПРАВЛЕНИЯ МОБИЛЬ...
 
Bpm. неделя 2
Bpm. неделя 2Bpm. неделя 2
Bpm. неделя 2
 
Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 2
Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 2Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 2
Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 2
 
диаграмма деятельности
диаграмма деятельностидиаграмма деятельности
диаграмма деятельности
 
Sequence diagram
Sequence diagramSequence diagram
Sequence diagram
 
Use-case diagram
Use-case diagramUse-case diagram
Use-case diagram
 
Классы и объекты в Java
Классы и объекты в JavaКлассы и объекты в Java
Классы и объекты в Java
 
лек11 4
лек11 4лек11 4
лек11 4
 
Классы и объекты в Java
Классы и объекты в JavaКлассы и объекты в Java
Классы и объекты в Java
 

More from Alexander Babich

Актуальні курси з мого арсеналу (Бабич О.В.)
Актуальні курси з мого арсеналу (Бабич О.В.)Актуальні курси з мого арсеналу (Бабич О.В.)
Актуальні курси з мого арсеналу (Бабич О.В.)Alexander Babich
 
M365: Word, Excel, PowerPoint...
M365: Word, Excel, PowerPoint...M365: Word, Excel, PowerPoint...
M365: Word, Excel, PowerPoint...Alexander Babich
 
M365: Інші сервіси та застосунки
M365: Інші сервіси та застосункиM365: Інші сервіси та застосунки
M365: Інші сервіси та застосункиAlexander Babich
 
M365: Завершення
M365: ЗавершенняM365: Завершення
M365: ЗавершенняAlexander Babich
 
M365: рекомендації
M365: рекомендаціїM365: рекомендації
M365: рекомендаціїAlexander Babich
 
M365: Огляд платформи Microsoft365
M365: Огляд платформи Microsoft365M365: Огляд платформи Microsoft365
M365: Огляд платформи Microsoft365Alexander Babich
 
M365: Роздаткові матеріали
M365: Роздаткові матеріалиM365: Роздаткові матеріали
M365: Роздаткові матеріалиAlexander Babich
 
Meet&Code - VR, метавсесвіт та криптовалюти (1).pptx
Meet&Code - VR, метавсесвіт та криптовалюти (1).pptxMeet&Code - VR, метавсесвіт та криптовалюти (1).pptx
Meet&Code - VR, метавсесвіт та криптовалюти (1).pptxAlexander Babich
 
Ви обрали професію програміста
Ви обрали професію програмістаВи обрали професію програміста
Ви обрали професію програмістаAlexander Babich
 
Змішане навчання в ППФК
Змішане навчання в ППФКЗмішане навчання в ППФК
Змішане навчання в ППФКAlexander Babich
 
Формування професійних інтересів студентів
Формування професійних інтересів студентівФормування професійних інтересів студентів
Формування професійних інтересів студентівAlexander Babich
 
День відкритих дверей' 2021
День відкритих дверей' 2021День відкритих дверей' 2021
День відкритих дверей' 2021Alexander Babich
 
06. Обучение и сертификация по Azure
06. Обучение и сертификация по Azure06. Обучение и сертификация по Azure
06. Обучение и сертификация по AzureAlexander Babich
 
05.Внедрение Azure
05.Внедрение Azure05.Внедрение Azure
05.Внедрение AzureAlexander Babich
 
04.Службы Azure - подробнее
04.Службы Azure - подробнее04.Службы Azure - подробнее
04.Службы Azure - подробнееAlexander Babich
 
03.Сколько стоит облако
03.Сколько стоит облако03.Сколько стоит облако
03.Сколько стоит облакоAlexander Babich
 

More from Alexander Babich (20)

Актуальні курси з мого арсеналу (Бабич О.В.)
Актуальні курси з мого арсеналу (Бабич О.В.)Актуальні курси з мого арсеналу (Бабич О.В.)
Актуальні курси з мого арсеналу (Бабич О.В.)
 
M365: Word, Excel, PowerPoint...
M365: Word, Excel, PowerPoint...M365: Word, Excel, PowerPoint...
M365: Word, Excel, PowerPoint...
 
M365: Інші сервіси та застосунки
M365: Інші сервіси та застосункиM365: Інші сервіси та застосунки
M365: Інші сервіси та застосунки
 
M365: OneDrive
M365: OneDriveM365: OneDrive
M365: OneDrive
 
M365: Завершення
M365: ЗавершенняM365: Завершення
M365: Завершення
 
M365: SharePoint
M365: SharePointM365: SharePoint
M365: SharePoint
 
M365: рекомендації
M365: рекомендаціїM365: рекомендації
M365: рекомендації
 
M365: Огляд платформи Microsoft365
M365: Огляд платформи Microsoft365M365: Огляд платформи Microsoft365
M365: Огляд платформи Microsoft365
 
M365: Вступ
M365: ВступM365: Вступ
M365: Вступ
 
M365: Роздаткові матеріали
M365: Роздаткові матеріалиM365: Роздаткові матеріали
M365: Роздаткові матеріали
 
Meet&Code - VR, метавсесвіт та криптовалюти (1).pptx
Meet&Code - VR, метавсесвіт та криптовалюти (1).pptxMeet&Code - VR, метавсесвіт та криптовалюти (1).pptx
Meet&Code - VR, метавсесвіт та криптовалюти (1).pptx
 
Ви обрали професію програміста
Ви обрали професію програмістаВи обрали професію програміста
Ви обрали професію програміста
 
Змішане навчання в ППФК
Змішане навчання в ППФКЗмішане навчання в ППФК
Змішане навчання в ППФК
 
Формування професійних інтересів студентів
Формування професійних інтересів студентівФормування професійних інтересів студентів
Формування професійних інтересів студентів
 
День відкритих дверей' 2021
День відкритих дверей' 2021День відкритих дверей' 2021
День відкритих дверей' 2021
 
Спробуйте Python
Спробуйте PythonСпробуйте Python
Спробуйте Python
 
06. Обучение и сертификация по Azure
06. Обучение и сертификация по Azure06. Обучение и сертификация по Azure
06. Обучение и сертификация по Azure
 
05.Внедрение Azure
05.Внедрение Azure05.Внедрение Azure
05.Внедрение Azure
 
04.Службы Azure - подробнее
04.Службы Azure - подробнее04.Службы Azure - подробнее
04.Службы Azure - подробнее
 
03.Сколько стоит облако
03.Сколько стоит облако03.Сколько стоит облако
03.Сколько стоит облако
 

UML: Statechart Diagram

  • 1. Модуль 16: Диаграммы состояний Курс SE 201 Введение в программную инженерию Проект ВИРТУОЗ, ННГУ, Н.Новгород, 2004 г. Бабич А.В., Полтава, Украина, ПГПУ, [email_address] _________________ _____ ____________________________________
  • 2. Диаграммы состояний или как визуализировать поведение отдельного объекта Унифицированный язык моделирования © Бабич А.В. 2004
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 24.
  • 26.
  • 27.
  • 28. Пример диаграммы с параллельными состояниями
  • 29.
  • 30. Развернутый пример – 1- е приближение включение компьютера выключение Инициализация Работа Завершение работы do/ загрузка
  • 31.
  • 32. Развернутый пример – 2 - е приближение включение компьютера выключение Инициализация Работа Завершение работы do/ загрузка Отображение заставки [ время истекло ] Нажатие клавиши или перемещение указателя «мыши»
  • 33.
  • 34. Развернутый пример – 3 - е приближение Ожидание ввода пользователя Регистрация ввода пользователя Визуализация ввода пользователя Ввод Работа
  • 35.
  • 36. Развернутый пример – 4 - е приближение Ожидание ввода пользователя Регистрация ввода пользователя Визуализация ввода пользователя Ввод Работа Отслеживание системного времени Обновление изображения [ период завершился ]
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.