- •2013 Содержание:
- •Введение
- •1. Описание задачи
- •2. Модель прецедентов
- •2.1. Прецедент «Выбор необходимой температуры»
- •2.2. Прецедент «Поддержание оптимальной частоты воздуха и заданной температуры»
- •2.3. Конкретный прецедент «Выбор необходимой температуры»
- •2.4. Конкретный прецедент «Поддержание оптимальной частоты воздуха и заданной температуры»
- •3. Статическая модель предметной области
- •5. Динамическая модель
- •5.1. Диаграмма кооперации для прецедента «Выбор необходимой температуры»
- •6. Модель состояний
- •7. Консолидация диаграмм кооперации
- •Заключение
2.2. Прецедент «Поддержание оптимальной частоты воздуха и заданной температуры»
Актеры. датчик температуры
Предусловие. Система включена, заданная температура совпадает с комнатной.
Описание:
Как только комнатная температура, согласно датчику, совпадет с заданной, система переходит в пассивный режим (режим поддержки заданной температуры).
Когда комнатная температура становиться меньше заданной, система вырабатывает управляющие воздействие на механизмы нагревания воздуха.
Когда загрязненность воздуха в помещении неудовлетворительная, система осуществляет очистку воздуха (забор воздуха с улицы).
Альтернативы:
– если комнатная температура выше заданной, производится охлаждение воздуха. Реакция системы такая же, как в главной последовательности;
Система поддерживает необходимую температуру до отключения пользователем.
2.3. Конкретный прецедент «Выбор необходимой температуры»
Актеры. Пользователь (главный), датчик температуры.
Описание:
Пользователь включает кондиционер. Задает необходимую температуру. Пусть она будет выше комнатной. Датчик текущей температуры оповещает систему о текущей комнатной температуре (период оповещения – каждую секунду). Датчик загрязненности воздуха оповещает о загрязненности (опрос датчика каждую секунду).
Запускается абстрактный прецедент Планирование Кондиционера.
Запускается абстрактный прецедент Забор воздуха с улицы.
Альтернативы:
– пользователь задает температуру ниже комнатной. Реакция системы такая же, как в главной последовательности;
Система поддерживает необходимую температуру до отключения пользователем.
2.4. Конкретный прецедент «Поддержание оптимальной частоты воздуха и заданной температуры»
Актеры. датчик температуры
Предусловие. Система включена, заданная температура совпадает с комнатной.
Описание:
Как только комнатная температура, согласно датчику, совпадет с заданной, система переходит в пассивный режим (режим поддержки заданной температуры).
Запускается абстрактный прецедент Планирование Кондиционера.
Запускается абстрактный прецедент Забор воздуха с улицы.
Альтернативы:
– если комнатная температура выше заданной, производится охлаждение воздуха. Реакция системы такая же, как в главной последовательности;
Постусловие. Система поддерживает необходимую температуру до отключения пользователем.
3. Статическая модель предметной области
В статической модели отражаются статические отношения, существующие в системе управления кондиционером. Для начала рассмотрим физические классы предметной области (рис.3). Кондиционер - это составной класс, содержащий один Датчик Температуры, Датчик загрязненности воздуха, систему охлаждения и систему обогрева, а также пульт ДУ. Система управления кондиционером - это тоже составной класс, включающий Систему отопления и систему охлаждения.
Рис.3. Концептуальная статическая модель системы управления кондиционером
Класс Кондиционер ассоциирован также с составным классом Датчики, включающим в себя классы Датчик температуры и Датчик загрязненности воздуха. Они извещают о состоянии окружающей среды.
Из диаграммы контекста системы видно, что, за исключением перечисленных составных классов, остальные классы на рис.3, представляющие объекты реального мира, - это внешние устройства, то есть датчики или приводы. Поэтому они изображены в виде классов внешних устройств (ввода или вывода), которые осуществляют интерфейс с системой управления кондиционером (рис. 4).
Рис.4.
Диаграмма контекста классов для системы
управления кондиционером
Чтобы подготовиться к динамическому моделированию, рассмотрим программные объекты в системе управления кондиционером. Объект Кондиционер составлен из нескольких объектов. Поскольку он получает информацию от внешних объектов и управляет внешними объектами, то некоторые его компоненты - это объекты интерфейса устройств ввода/вывода, а именно датчики и пульт ДУ.
Для каждого объекта внешнего устройства существует соответствующий объект программного интерфейса. Так, Кондиционер получает команды от объектов Интерфейс Пульта ДУ, которым управляет пользователь, и Интерфейс Датчиков, который информирует Кондиционер о текущем состоянии окружающей среды. В Кондиционере есть также объекты Интерфейс Системы охлаждения и Интерфейс Системы Обогрева. Кондиционер посылает команды этим объектам.
Помимо объектов интерфейса устройств, выявленных с помощью диаграммы контекста классов, нужны еще сущностные и управляющие объекты. Для Кондиционера необходим сущностный объект Состояние и План действий Кондиционера. Под Состоянием понимается информация о том, работает ли Кондиционер вообще, работает ли он после возникновения ошибки, работает он на обогревание или охлаждение воздуха. Сюда же относят План действий Кондиционера, включающий температуру, до которой Кондиционер должен охладить/нагреть воздух в помещении, и которую должен поддерживать. С Кондиционером связан зависящий от состояния управляющий объект Управление Кондиционером, в ведении которого находятся Системы охлаждения и Обогрева. Он управляет нагреванием и охлаждением воздуха, а также очисткой воздуха. Состояния этого объекта изображены на диаграмме состояний Кондиционера. Поскольку запросы на поддержание температуры могут поступать в любое время, то необходимо создать отдельный объект-координатор Координатор Кондиционера, который будет принимать запросы и обновлять план работы Кондиционера.