Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Создание диаграммы состояний для классов




Диаграмма состояний (Statechart) предназначена для отображения состояний объектов системы, имеющих сложную модель поведения. Это одна из двух диаграмм State Machine, доступ к которой осуществляется из одного пункта меню. Этот тип диаграмм позволяет проектировать алгоритмы поведения объектов любой сложности, в том числе может использоваться для составления блок-схем.

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

Многие требования к классу InputInformation значительно изменяются при изменении состояния его экземпляра.

На рисунке 14 приведена диаграмма состояния для класса InputInformation. Этапы создания диаграммы состояний:

1. Найти в браузере класс InputInformation.

2. Щелкнуть на классе правой кнопкой мыши и в открывшемся меню указать пункт Open State Diagram (Открыть диаграмму состояний).

Добавление начального и конечного состояний:

1. Нажать кнопку Start State (Начальное состояние) панели инструментов.

2. Поместить это состояние на диаграмму.

3. Нажать кнопку End State (Конечное состояние) панели инструментов.

4. Поместить это состояние на диаграмму.

Добавление состояний:

1. На панели инструментов нажать кнопку State (Состояние).

2. Поместить состояние на диаграмму.

3. Назвать состояние – Отменен.

4. На панели инструментов нажать кнопку State (Состояние).

5. Поместить состояние на диаграмму.

6. Назвать состояние – Выполнен..

7. На панели инструментов нажать кнопку State (Состояние).

8. Поместить состояние на диаграмму внутрь суперсостояния.

9. Назвать состояние - Инициализация.

10. На панели инструментов нажать кнопку State (Состояние).

11. Назвать состояние - Приостановлен.

 

Рисунок 14 – Диаграмма состояния для класса InputIformation

 

Описание состояний:

1. Дважды щелкнуть мышью на состоянии Инициализация.

2. Перейти на вкладку Detail (Подробно).

3. Щелкнуть правой кнопкой мыши в окне Actions (Действия).

4. В открывшемся меню выберать пункт Insert (Вставить).

5. Дважды щелкнуть мышью на новом действии.

6. Назвать его StoreDate.

7. Убедиться, что в окне When (Когда) указан пункт On Entry (На входе).

8. Повторив шаги 3 — 7, добавить следующие действия:

- Collect Student Info, в окне When указать Entry until Exit (Выполнять до завершения);

- Add Information Items, указав Entry until Exit (Выполнять до завершения);

9. Нажать два раза на ОК, чтобы закрыть спецификацию.

10. Дважды щелкнуть мышью на состоянии Отменен.

11. Повторив шаги 2 — 7, добавить действие Store cancellation data, указав On Exit (На выходе)

12. Нажать два раза на ОК, чтобы закрыть спецификацию.

13. Дважды щелкнуть мышью на состоянии Выполнен.

14. Повторив шаги со второго по седьмой, добавить действие Create Otchet, указав Entry until Exit

15. Нажать два раза на ОК, чтобы закрыть спецификацию.

Добавление переходов:

1. Нажать кнопку Transition (Переход) панели инструментов.

2. Щелкнуть мышью на начальном состоянии.

3. Провести линию перехода к состоянию Инициализация.

4. Повторив шаги с первого по третий, создать следующие переходы:

- от состояния Инициализация к состоянию Приостановлен;

- от Приостановлен к состоянию Выполнен;

- от состояния Инициализация к состоянию Отменен;

- от состояния Отменен к конечному состоянию;

- от состояния Выполнен к конечному состоянию;

5. На панели инструментов нажать кнопку Transition to Self (Переход к себе).

6. Щелкнуть мышью на состоянии Приостановлен.

Описание переходов:

1. Дважды щелкнув мышью на переходе от состояния Инициализация к состоянию Приостановлен, открыть окно спецификации перехода.

2. В поле Event (Событие) ввести фразу «Add to record new information».

3. Щелкнув на кнопке ОК, закрыть окно спецификации.

4. Повторив шаги с первого по третий, добавить событие Отменить заполение к переходу между стоянием Инициализация и состоянием Отменен.

5. Дважды щелкнув мышью на переходе от состояния Приостановлен к состоянию Выполнен, открыть окно его спецификации.

6. В поле Event (Событие) ввести фразу «Add to record new information».

7. Перейти на вкладку Detail (Подробно).

8. В поле Condition (Условие) введите «Не остались незаполненные поля».

9. Щелкнув на кнопке ОК, закрыть окно спецификации.

10. Дважды щелкнуть мышью на рефлексивном переходе (Transition to Self) состояния Приостановлен.

11. В поле Event (Событие) ввести фразу «Add to record new information».

12. Перейти на вкладку Detail (Подробно).

13. В поле Condition (Условие) ввести «Остаются незаполненные поля».

14. Щелкнув на кнопке ОК, закрыть окно спецификации.

Оставшиеся 2 диаграммы состояния для классов TimetableInfo и SearchInfo представлены на рисунках 15 и 16 соответственно.

 

Рисунок 15 – Диаграмма состояния для класса TimetableInfo

Рисунок 16 – Диаграмма состояния для класса SearchInfo






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных