
- •Методичні вказівки
- •Частина 3
- •Лабораторна робота №4 Діаграми станів
- •4.2.2 Стани, діаграма станів
- •4.2.3 Переходи та умови
- •4.2.4 Діяльність на діаграмі станів
- •4.2.5 Вкладеність станів
- •4.2.6 Паралелізм
- •4.2.6.1 Паралелізм в агрегації
- •4.2.6.2 Паралелізм в об’єкті
- •4.2.7 Створення діаграми станів
- •4.2.7.1 Панель інструментів
- •4.2.7.2 Контекстне меню стану
- •4.2.7.3 Специфікації стану
- •4.3.7.4 Специфікації переходу
- •4.2.8 Приклад виконання
- •4.3 Завдання на лабораторну роботу
- •4.5 Контрольні питання
- •Лабораторна робота №5 Діаграми діяльності
- •5.1 Мета роботи
- •5.2 Основні теоретичні відомості
- •Діаграма діяльності
- •Розгалуження та умови
- •Паралелізм
- •Плавальні доріжки
- •Створення діаграми діяльності
- •5.2.6.1 Панель інструментів
- •Vertical Synchronization (вертикальний символ синхронізанції)
- •5.2.6.2 Контекстне меню діяльності
- •5.2.6.3 Конекстне меню символу синхронізації
- •5.2.6.4 Специфікації елементів діаграми діяльності
- •Приклад виконання
- •5.3 Завдання на лабораторну роботу
- •Лабораторна робота №6 Діаграми компонентів
- •Діаграма компонентів
- •Компоненти
- •Атрибути компонента
- •Створення діаграми компонентів
- •6.2.4.1 Панель інструметів
- •6.2.4.2 Контекстне меню компонента
- •6.2.4.3 Специфікації компонента
- •Приклад виконання
- •Лабораторна робота №7 Діаграми розміщень
- •Діаграма розміщень
- •Процессори
- •Прилади
- •З'єднання
- •Створення діаграми розміщень
- •7.2.5.1 Панель інструментів
- •7.2.5.2 Контекстне меню процесора
- •7.2.5.3 Контекстне меню пристрою
- •7.2.5.4 Специфікації процесора
- •7.2.5.5 Специфікації приладу
- •Приклад виконання
- •Завдання на лабораторну роботу
- •Завдання на лабораторну роботу.
- •Контрольні питання
- •Рекомендована література
4.2.5 Вкладеність станів
В разі, якщо діаграма станів визначає поведінку деякого об’єкта, кількість станів та переходів якого досить велика, така діаграма може бути вельми громіздкою та складною для побудови і розуміння. Одним зі способів розв’язання подібних ситуацій є виділення діаграми більш високого рівня, окремі стани якої деталізуються на піддіаграмах.
На рис. 4.4 зображено загальну діаграму станів об’єкта АвтоматДляПродажуКави. На рис. 4.5 стан ПриготуванняКави розкрито більш детально.
Зауваження. На діаграмах показано, що стани необов’язково мають бути іменованими. Крім того, можлива наявність переходів, не викликаних подіями (позначення події не вказано біля переходу); такі переходи називаються переходами за замовчанням та активуються по завершенні виконання поточної діяльності (лише при виконанні сторожової умови).
Рисунок 4.4 – Загальна діаграма станів автомату для продажу кави
Рисунок 4.5 – Деталізуюча піддіаграма стану ПриготуванняКави
Рис. 4.5 крім того представляє нове умовні позначення, які можуть використовуватися не тільки на деталізуючих піддіаграмах, а і на звичайних діаграмах станів, якщо зміна станів певного об’єкта не є циклічною і можуть бути виділені відповідно:
– початковий
стан (точка входу у стан);
– цільовий
стан (точка виходу).
4.2.6 Паралелізм
Модель станів неявним чином підтримує паралелізм: в загальному випадку об’єкти систему можуть бути автономними та ніяким чином не залежати одне від одного. На практиці ж повна незалежність навряд чи може бути досягнута, можливо накласти деякі обмеження, внаслідок яких виявиться деяка корреляція між переходами між станів незалежних об’єктів.
4.2.6.1 Паралелізм в агрегації
Діаграма стану агрегата є сукупністю діаграм стану його складових частин, поєднаних відношенням ТА (стан агрегата визначається станом об’єкту1 ТА станом об’єкту2 ТА … ТА станом об’єктаN). Причому, перехід між станами певного об’єкту агрегації може бути викликаний зміною стану зовсім в іншому об’єкті агрегації, або, в більш загальному випадку, зміна стану певного об’єкта може залежати від поточного стану деякого іншого об’єкту, що входить до складу тої ж агрегації.
4.2.6.2 Паралелізм в об’єкті
В деяких випадках всередині об’єкта можна виділити підмножини атрибутів та зв’язків, кожна з яких буде характеризуватися власною діаграмою станів. В таких випадках поточний стан об’єкта буде включати в себе по одному (поточному) стану на кожну з таких підмножин. Діаграми станів підмножин для подібних об’єктів можуть бути незалежними, або залежними – певна подія може викликати переходи на декількох діаграмах одночасно.
4.2.7 Створення діаграми станів
Для створення нової діаграми станів в середовищі Rational Rose необхідно в браузері моделі клацнути правою кнопкою миші на гілці Logic View та пройти пунктами меню New > Statechart Diagram (рис 4.6).
Рисунок 4.6 – Створення нової діаграми станів
До Logic View поточної моделі буде додано (якщо до цього не було створено жодної діаграми стану чи діяльності) гілку з іменем «State/Activity Model», яка буде вміщувати усі діаграми станів, діяльності, а також їхні елементи. В цій гілці буде створено нову діаграму під іменем NewDiagram (з можливим числовим індексом, якщо діаграма з таким іменем вже існує в моделі), яку і пропонується далі редагувати. Рекомендується одразу ж змінити назву діаграми на більш змістовну.