- •Содержание
- •Введение
- •2. Основные контролы (компоненты) Windows- приложения
- •2.2. Контрол TextBox
- •2. 3. Контрол ComboBox
- •2.4. Контрол ListBox
- •Панели GroupBox и Panel
- •2. 6. Класс Random и его функции
- •3.1. Вывод текстовой информации в контрол Label
- •3.2. Вывод текстовой информации в контрол TextBox
- •Вывод текстовой информации
- •3.3. Программный вывод текста в TextBox
- •3.4. Вывод текстовой информации в контрол RichTextBox
- •Лабораторная работа № 2 Работа с контролами CheckBox, RadioButton и диалоговыми окнами MessageBox
- •1. Контрол CheckBox
- •2. Контрол RadioButton
- •3. Диалоговые окна MessageBox
- •Лабораторная работа № 3 Построение графиков функций
- •Лабораторная работа № 4 Создание Windows приложения «Редактор текста» в среде разработки Visual Studio
- •Создание редактора текста
- •Работа с файлами документа
- •Печать документа
- •Закрытие главного окна редактора текста
- •Реализация функций меню «Правка»
- •Реализация функций меню «Формат»
- •Выравнивание параграфов
- •Реализация функций меню «Справка»
- •Создание инструментальной панели
- •Строка состояния
- •Лабораторная работа № 5
- •Создание диаграммы вариантов использования
- •В среде проектирования Rational Rose
- •Общие сведения о Rational Rose
- •Диаграммы вариантов использования
- •Пример диаграммы ви для финансовой торговой системы приведен на рис.5.3.
- •Связи «расширение» и «использование». Кроме связей между действующими лицами и ви на диаграмме существуют 2 других типа связей. Это связи «расширение» и «использование».
- •Создание диаграммы вариантов использования
- •Добавление ассоциаций
- •Добавление связи расширения
- •Добавление описаний к вариантам использования
- •Добавление описаний к действующему лицу
- •Прикрепление файла к варианту использования
- •Лабораторная работа № 6 Создание диаграммы классов в среде проектирования Rational Rose
- •Создание диаграммы классов Настройка
- •Технология создания диаграммы классов
- •Добавление атрибутов и операций
- •Настройка
- •Добавление нового класса
- •Добавление атрибутов
- •Добавление операций к классу Orderltem
- •Подробное описание операций с помощью диаграммы классов
- •Подробное описание операций с помощью браузера
- •Подробное описание операций
- •Добавление связей
- •Добавление ассоциаций
- •Лабораторная работа№ 7 Создание диаграмм взаимодействия в Rational Rose
- •Создание диаграммы взаимодействия
- •Настройка
- •Создание диаграммы Последовательности
- •Добавление на диаграмму действующего лица и объектов
- •Добавление сообщений на диаграмму
- •Добавление на диаграмму дополнительных объектов
- •Назначение ответственностей объектам
- •Соотнесение объектов с классами
- •Соотнесение сообщений с операциями
- •Создание кооперативной диаграммы
- •Создание кооперативной диаграммы
- •Добавление действующего лица и объектов на диаграмму
- •Добавление сообщений на диаграмму
- •Добавление на диаграмму дополнительных объектов.
- •Назначение ответственностей объектам
- •Соотнесение объектов с классами (если классы были созданы при разработке описанной выше диаграммы последовательности)
- •Соотнесение объектов с классами (если вы не создавали описанную выше диаграмму последовательности)
- •Соотнесение сообщений с операциями (если операции были созданы при разработке описанной выше диаграммы последовательности)
- •Соотнесение сообщений с операциями (если вы не создавали описанную выше диаграмму последовательности)
- •Лабораторная работа№ 8 Создание диаграмм состояний в Rational Rose
- •Описание состояний
- •Добавление переходов
- •Описание переходов
- •Лабораторная работа № 9 Тестирование программ
- •Лабораторная работа № 11 Тестирование программ
- •Лабораторная работа № 12 Тестирование программ
- •Список литературы
Лабораторная работа№ 8 Создание диаграмм состояний в Rational Rose
Диаграммы состояний
Диаграммы состояний определяют все возможные состояния, в которых может находиться конкретный объект, а также процесс смены состояний объекта в результате влияния некоторых событий. Обычно диаграммы состояний строятся для единственного класса и отражают динамику поведения единственного объекта.
Существует несколько форм диаграмм состояний. Пример диаграммы состояний, отражающей поведение объекта Заказ в Системе Обработки Заказов, приведен на рисунке 8.1. На этой диаграмме изображены различные состояния, в которых может находиться объект Заказ. Процесс начинается с Начальной точки, затем следует первый переход в состояние Проверка Позиции Заказа. Метка этого перехода /получить позицию Заказа. Синтаксис метки: <событие>[<условие>]/ <действие>.
Рисунок 8.1 - Диаграмма состояний
Каждая из этих трех частей является необязательной. В данном случае метка включает только действие. После выполнения этого действия объект попадает в состояние Проверка Позиции Заказа. С этим состоянием связана деятельность, которая обозначается меткой выполнить/ проверить позицию. Синтаксис этой метки: выполнить/<деятельность>. В данном случае деятельность называется проверить позицию.
Термин действие используется для перехода, термин деятельность – для состояния. Хотя и то и другое – это процессы, реализуемые некоторым методом класса Заказ, но они различаются между собой.
Действия связаны с переходами и рассматриваются как мгновенные и непрерываемые.
Деятельности связаны с состояниями и могут длиться достаточно долго. Деятельность может быть прервана в результате наступления некоторого события.
Если метка перехода не содержит никакого события, то переход происходит, как только завершается какая-то деятельность, связанная с данным состоянием (как только завершится Проверка Позиции Заказа).
Из состояния Проверка Позиции Заказа возможны 3 перехода. Метка каждого из них включает условие. Условие это логическое, оно может принимать 2 значения – «истина» и «ложь». Если условие принимает значение «истина», то выполняется условный переход.
Из конкретного состояния в данный момент времени может произойти только 1 переход, т.е. условия являются взаимно исключающими. В нашем примере 3 условия:
если проверены не все позиции, входящие в Заказ, то мы получаем следующую позицию и возвращаемся в состояние Проверка Позиции Заказа;
если проверены все позиции и все они имеются на складе, то переходим в состояние Выдача Заказа на Поставку;
если проверены все позиции, но не все имеются на складе, то переходим в состояние Ожидание.
Рассмотрим состояние Ожидание. В этом состоянии нет деятельностей, поэтому Заказ находится в состоянии Ожидания, пока не наступит некоторое событие. Оба перехода из состояния Ожидание отмечены событием Позиция получена. Заказ ожидает до тех пор, пока он не обнаружит наступления данного события.
В состоянии Выдача Заказа на Поставку есть деятельность, которая инициирует поставку. Переход из этого состояния произойдет, если произойдет событие Поставлен.
В рассмотренном примере нет перехода под названием отмена. У нас должна быть возможность отменить любой Заказ в любой момент времени до завершения его выполнения. На рисунке 8.2 добавлено состояние Отмена Заказа. Чтобы отменить Заказ, нужно изобразить переходы из каждого состояния (Проверка Позиции Заказа, Выдача Заказа и Ожидание).
Рисунок 8.2 - Диаграмма состояний без суперсостояний
На рисунке 8.3 изображен другой вариант – для 3 вышеперечисленных состояний определено суперсостояние и единственный переход из него. Подсостояния наследуют любые переходы Суперсостояния.
Создание диаграмм состояний
Пример выполнения задания
В этом упражнении создается диаграмма Состояний для класса Order, показанная на рисунке 8.4.
Рисунок 8.3 - Диаграмма состояний с суперсостояниями
Рисунок 8.4 - Диаграмма Состояний для класса Order
Создание диаграммы
Найдите в браузере класс Order.
Щелкните на классе правой кнопкой мыши и в открывшемся меню укажите пункт Open State Diagram (Открыть диаграмму состояний).
Добавление начального и конечного состояний
Нажмите кнопку Start State (Начальное состояние) панели инструментов.
Поместите это состояние на диаграмму.
Нажмите кнопку End State (Конечное состояние) панели инструментов.
Поместите это состояние на диаграмму.
Добавление суперсостояния
Нажмите кнопку State (Состояние) панели инструментов.
Поместите это состояние на диаграмму.
Добавление оставшихся состояний
На панели инструментов нажмите кнопку State (Состояние).
Поместите состояние на диаграмму.
Назовите состояние Cancelled (Отменен).
На панели инструментов нажмите кнопку State (Состояние).
Поместите состояние на диаграмму.
Назовите состояние Filled (Выполнен).
На панели инструментов нажмите кнопку State (Состояние).
Поместите состояние на диаграмму внутрь суперсостояния.
Назовите состояние Initialization (Инициализация).
На панели инструментов нажмите кнопку State (Состояние).
Поместите состояние на диаграмму внутрь суперсостояния.
Назовите состояние Pending (выполнение заказа приостановлено).
