Проектирование автоматизированной информационной системы. 2
ВВЕДЕНИЕ
Выпечка - общее понятие для продуктов питания из зерна и его производных, которые готовят в духовом шкафу при высоких температурах. Выпечке выделяются хлебные изделия кондитерские изделия. Отдельно выделяется группа хлебобулочных изделий длительного хранения с низким содержанием влаги.
Мелкоштучные хлебобулочные изделия включают в себя выпечку преимущественно из хлебного теста весом до 250 грамм. Это булочки, рогалики, круассаны.
Кондитерские изделия выполняют из других видов теста, преимущественно с добавлением жиров и сахара. Сюда также относятся и несладкие изделия с длительным сроком хранения (галеты, крекеры, соленые палочки). Классическими видами кондитерских изделий являются печенье, пироги и торты.
Духовка – разговорное название духового шкафа дровяной, газовой и электрической печи. Температурные режимы этих трёх видов духовок сильно отличаются друг от друга.
Духовка дровяной печи имеет легко регулируемый режим с сильными перепадами температуры. У духовки газовой печи более стабильный температурный режим, особенно если она снабжена термометром и смотровым окошком. В электродуховке слишком быстро возрастает температура и ее необходимо уменьшить.
Под моделью понимается полное описание системы программного обеспечения. По мнению одного из специалистов в области объектно-ориентированного подхода, Гради Буча, моделирование является центральным звеном всей деятельности по созданию качественного ПО. Модели строятся для того, чтобы понять структуру и поведение будущей системы, облегчить управление процессом ее создания и уменьшить возможный риск.
Модель – это чертеж системы. Хорошая модель всегда включает элементы, существенно влияющие на результат, и не включает те, которые мало значимы на данном уровне абстракции. Каждая система может быть описана с разных точек зрения, для чего используются различные модели. Модель может быть структурной, подчеркивающей организацию системы, или поведенческой, т.е. отражающей ее динамику.
Моделирование производится с помощью CASE-средств. CASE-технология представляет собой совокупность методов проектирования ИС, а также набор инструментальных средств, позволяющих в наглядной форме моделировать предметную область, анализировать эту модель на всех стадиях разработки и сопровождения ИС и разрабатывать приложения в соответствии с информационными потребностями пользователей. Большинство существующих CASE-средств основано на методах структурного или объектно-ориентированного анализа и проектирования, использующих спецификации в виде диаграмм или текстов для описания внешних требований, связей между моделями системы, динамики поведения системы и архитектуры программных средств.
Очевидно, что конечная цель разработки ПО информационной системы – это не моделирование, а получение работающих приложений (кода). Диаграммы, в конечном счете – это наглядные изображения. Поэтому при использовании графических языков моделирования очень важно понимать, чем это поможет, при написании кода.
Для успешной реализации проекта объект проектирования (ПО ИС) должен быть, прежде всего, адекватно описан, т.е. должны быть построены полные и непротиворечивые модели архитектуры ПО, включающей:
- совокупность структурных элементов системы и связей между ними;
- поведение элементов системы в процессе их взаимодействия;
- иерархию подсистем, объединяющих структурные элементы.
Унифицированный язык моделирования UML (Unified Modeling Language) – это язык для определения, представления, проектирования и документирования программных систем, организационно-экономических систем, технических систем и других систем различной природы. UML содержит стандартный набор диаграмм и нотаций самых разнообразных видов. Стандарт UML версии 1.1, принятый OMG в 1997 г., предлагает следующий набор диаграмм для моделирования:
- диаграммы вариантов использования (use case diagrams) - для моделирования бизнес-процессов организации (требований к системе);
- диаграммы классов (class diagrams) – для моделирования статической структуры классов системы и связей между ними;
- диаграммы поведения системы (behavior diagrams):
- диаграммы взаимодействия (interaction diagrams):
- диаграммы последовательности (sequence diagrams) и кооперативные диаграммы (collaboration diagrams) – для моделирования процесса обмена сообщениями между объектами;
- диаграммы состояний (statechart diagrams) - для моделирования поведения объектов системы при переходе из одного состояния в другое;
- диаграммы деятельностей (activity diagrams) - для моделирования поведения системы в рамках различных вариантов использования, или моделирования деятельностей;
- диаграммы реализации (implementation diagrams):
- диаграммы компонентов (component diagrams) - для моделирования иерархии компонентов (подсистем) системы;
- диаграммы размещения (deployment diagrams) - для моделирования физической архитектуры системы.
Для построения диаграмм будем использовать среду CASE-средства Rational Rose.
1 ПРЕДВАРИТЕЛЬНЫЙ
АНАЛИЗ ПРОБЛЕМЫ И
- ПОСТРОЕНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ
Рассмотрим
автоматизированную систему «Выпечка».
Основное назначение системы «Выпечка»
- соблюдения правильности технологии
приготовления выпечки при функционировании
печи и всех приборов. Одной из частей
предметной области является план подготовки
печи к выпечке. В нём содержится информация,
о том какая температура и время должны
быть. В основе плана подготовки печи к
выпечке лежит таблица, в которой при определенной
температуре соответствуют необходимые
действия.
1.2 ВЫДЕЛЕНИЕ
ОСНОВНЫХ И ВТОРОСТЕПЕННЫХ
Структура системы описывается в терминах объектов и связей между ними, а поведение системы описывается в терминах обмена сообщениями между объектами. Каждый объект системы обладает своим собственным поведением,
моделирующим
поведение объекта реального
мира. Основными объектами системы
«Выпечка», выполняющими активные действия,
являются человек (повар), компьютер (управляющая
система), исполнительные устройства (таймер,
печь, датчик температуры) и план подготовки
к работе (ПО).
1.3
ОПРЕДЕЛЕНИЕ СВЯЗЕЙ
МЕЖДУ ОБЪЕКТАМИ
Повар вводит план подготовки
печи к выпечки на контроллер, где
анализируется и происходит передача
плана установленных параметров в печь.
По запросу оператора выводит данные.
2 ПОСТРОЕНИЕ ЛОГИЧЕСКОЙ МОДЕЛИ РЕАЛЬНОГО ПРОЦЕССА
2.1 ОПРЕДЕЛЕНИЕ ДЕЙСТВУЮЩИХ ЛИЦ
Действующее лицо, или актер (actor), – это роль, которую пользователь играет по отношению к системе. Действующие лица инициируют варианты использования, а также могут получать от варианта использования информацию. В автоматизированной системе «Выпечка» можно выделить четыре действующих лица: контроллер, повар, датчики, исполнительные устройства.
Контроллер - компьютер, осуществляющий управление автоматизированной системой:
- получает от повара план подготовки печи к выпечке;
- посылает информацию в таймер и на датчик температуры;
- выполняет обработку данных, получаемых от таймера и от датчика;
- производит подачу сигнала о готовности выпечки;
Повар - человек, управляющий работой системы:
- создает и вводит в систему план подготовки печи к выпечке;
Исполнительные устройства - устройства, регулирующие значения параметров внешней среды:
- Timer – таймер;
- Datchik– датчик температуры;
- Pech – печь
2.2 ОПРЕДЕЛЕНИЕ
ВАРИАНТОВ ИСПОЛЬЗОВАНИЯ
Вариант использования, или прецедент, представляет собой последовательность действий, выполняемых системой, в ответ на событие, инициируемое действующим лицом. Вариант использования - это представление о том, что пользователь ожидает от системы. В рассматриваемой автоматизированной системе «Выпечка» можно выделить пять вариантов использования:
- ввод плана подготовки печи к выпечке(Vvod_plana_podgotovki pechi k vypechke), сообщение информациии о готовности выпечки (Soobshenie_inf_o_gotovnosti vypechki);
- передача информации о времени (на таймер)( inf_o_vremeni), подача сигнала в определённое время(с таймера на контроллер);
- ( Podacha_signala_v_opr_vremy), подача сигнала на печь;
- ( Podacha_signala_na_pech), передача информации о температуре (на датчик температуры);
- (inf o temperature), подача сигнала об времени и температуре определенной температуре (с датчика на контроллер) (podacha signala ob opredelennoi temperature).
Первый вариант использования «ввод плана подготовки печи к «выпечке» подразумевает создание поваром и ввод в контроллер плана подготовки печи к выпечке. Контроллер, сверяясь с планом, вырабатывает команды для исполнительных устройств (таймера, датчика).
Второй
вариант использования «
Третий
вариант использования «
Четвертый вариант «подача сигнала о готовности в определённое время» подразумевает, что в определённое время (назначенное пользователем при введение плана подготовки печи к выпечке) произойдёт подача сигнала с таймера на контроллер, а так же с датчика, дающего понять компьютеру, что пришло время готовности.
Пятый
вариант использования «подача
сигнала печь». После поступившей
информации от таймера контроллер,
обработав сигнал, передаёт его
на печь.
2.3 ПОСТРОЕНИЕ ДИАГРАММЫ ВАРИАНТОВ ИСПОЛЬЗОВАНИЯ
(USE
CASE DIAGRAMS)
Диаграмма
вариантов использования
Чтобы открыть диаграмму вариантов использования, надо щелкнуть правой кнопкой мыши в браузере на Use Case View, выбрать в открывшемся меню пункт New, затем Use Case Diagram. Дважды щелкнув на названии этой диаграммы в браузере, открыть ее. Появится панель инструментов с пиктограммами, соответствующая именно этой диаграмме.
Приготовление выпечки в автоматизированной системе «Выпечка» осуществляется на основе плана. Этот план должен быть создан и введен в систему поваром, поэтому, прежде всего на диаграмме необходимо создать действующее лицо – Повар.
Чтобы поместить действующее лицо на диаграмму вариантов использования, необходимо выполнить следующие действия:
- Нажать кнопку Actor на панели инструментов.
- Щелкнуть мышью в каком-либо месте диаграммы вариантов использования.
- Щелкнуть по созданному действующему лицу правой кнопкой мыши, в появившемся меню открыть окно спецификаций (пункт Open Specification), на вкладке General в поле Name ввести имя – «Povar».
- В этом же окне спецификаций в поле Documentation ввести текстовое описание действующего лица – «Повар - человек, управляющий работой системы»:
- создает и вводит в систему план подготовки печи к выпечки;
Теперь необходимо создать на диаграмме вариант использования, инициируемый поваром и отображающий действия по созданию плана подготовки печи к выпечки. Чтобы поместить новый вариант использования на диаграмму, необходимо выполнить следующие действия:
- Нажать кнопку Use Case на панели инструментов.
- Щелкнуть мышью в каком-либо месте диаграммы.
- Щелкнуть по созданному варианту использования правой кнопкой мыши, в появившемся меню выбрать пункт Open Specification, в поле Name ввести имя варианта использования– «zadanie konfiguracii».
- В поле Documentation ввести комментарий к варианту использования – «Создается поваром и вводится в программу, которая впоследствии передаёт информацию в контроллер».
На диаграмме необходимо указать связь между поваром и созданным вариантом использования. Так как каждый вариант использования должен быть инициирован каким-либо действующим лицом, то стрелка должна вести от действующего лица к варианту использования. Чтобы добавить связь на диаграмме, надо выполнить следующие действия:
- Нажать на панели инструментов кнопку Unidirectional Association.
- Придерживая левую кнопку мыши, провести линию от действующего лица к варианту использования.
Между прецедентом «zadanie konfiguracii» и актёром «controller» также нужно добавить связь.
Разработанные конфигурации необходимо ввести в программу, которая передаст информацию на контроллер. Поэтому необходимо поместить на диаграмму действующее лицо –Бд с конфигурациями и рецептами:
- Нажать кнопку Actor на панели инструментов, затем щелкнуть мышью на диаграмме вариантов использования
- Щелкнуть по созданному действующему лицу правой кнопкой мыши, в появившемся меню выбрать пункт Open Specification, на вкладке General в поле Name ввести имя –Bd s konfiguraciyami I receptami. В поле Documentation ввести текстовое описание действующего лица – «Осуществляет анализ конфигураций и последующую передачу в контроллер»
Необходимо создать на диаграмме ещё один вариант использования, показывающий передачу информация о конфигурациях на контроллер:
- Для того, чтобы поместить новый прецедент на диаграмму необходимо щёлкнут по кнопке Use Case на панели инструментов;
- Щелкнуть мышью в каком-либо месте диаграммы;
- Щелкнуть по созданному варианту использования правой кнопкой мыши, в появившемся меню выбрать пункт Open Specification, в поле Name ввести имя варианта использования –schityvanie configuracii.
- В поле Documentation ввести комментарий к варианту использования – «Передача информации o конфигурациях к контроллеру».
На диаграмме необходимо указать связь между БД с конфигурациями и созданным вариантом использования. Чтобы добавить связь на диаграмме, надо выполнить следующие действия:
- Нажать на панели инструментов кнопку Unidirectional Association;
- Придерживая левую кнопку мыши, провести линию от действующего лица к варианту использования.
Затем надо поместить на диаграмме следующее действующее лицо – Контроллер, для чего выполнить следующее:
- Нажать кнопку Actor на панели инструментов, затем щелкнуть мышью на диаграмме вариантов использования;
- Щелкнуть по созданному действующему лицу правой кнопкой мыши, в появившемся меню выбрать пункт Open Specification, на вкладке General в поле Name ввести имя – Controller. В поле Documentation ввести текстовое описание действующего лица – «Компьютер», осуществляющий управление автоматизированной системой.
От варианта использования «schityvanie configuracii» к контроллеру нужно провести линию связи, для чего использовать кнопку Unidirectional Association на панели инструментов.
Контроллер инициирует два действия – передаёт информацию о времени на таймер и задает температуру и предает сигнал на печь. Поэтому следует поместить на диаграмме три варианта использования и провести к ним от контроллера линии связи:
- Для их создания надо использовать кнопку Use Case с панели инструментов;
- Для одного варианта использования ввести в поле Name окна спецификаций имя «zadanie vremeni», в окне документирования ввести комментарий «Контроллер передаёт план времени приготовления выпечки на таймер». Для другого варианта использования надо ввести имя «Zadanie temperatury», а в окне документирования сделать комментарий «Происходит задание температуры и передача сигнала от контроллера на печь»
Необходимо поместить на
Таймер в определенное время посылает сигнал на контроллер о том, что необходимо извлечь выпечку из печи. Чтобы это показать на диаграмме, необходимо создать прецедент:
- Для того чтобы поместить новый прецедент на диаграмму необходимо щёлкнут по кнопке Use Case на панели инструментов;
- Щелкнуть мышью в каком-либо месте диаграммы;
- Щелкнуть по созданному варианту использования правой кнопкой мыши, в появившемся меню выбрать пункт Open Specification, в поле Name ввести имя варианта использования – opovestit ob istechenii zadannogo vremeni
- В поле Documentation ввести комментарий к варианту использования – «Посылка сигнал на контроллер о том, что необходимо извлечь выпечку из печи. И нужно связать данный прецедент с контроллером. Чтобы добавить связь на диаграмме, надо выполнить следующие действия:
- Нажать на панели инструментов кнопку Unidirectional Association;
- Придерживая левую кнопку мыши, провести линию от варианта использования к действующему лицу. Между прецедентом «opovestit ob istechenii zadannogo vremeni» и актёром «Timer», прецедентом «Zadat vremya» и актером «Timer»,прецедентом «Zadat vremya» и актером «Controller» также нужно добавить связь.
Затем надо поместить на диаграмме следующее действующее лицо – Датчик температуры, для чего выполнить следующее:
- Нажать кнопку Actor на панели инструментов, затем щелкнуть мышью на диаграмме вариантов использования;
- Щелкнуть по созданному действующему лицу правой кнопкой мыши, в появившемся меню выбрать пункт Open Specification, на вкладке General в поле Name ввести имя –Datchik temperatury. В поле Documentation ввести текстовое описание действующего лица – «Считывает показания температуры и посылает их на контроллер».
Теперь необходимо создать на диаграмме ещё один вариант использования.
- Для того, чтобы поместить новый прецедент на диаграмму необходимо щёлкнут по кнопке Use Case на панели инструментов;
- Щелкнуть мышью в каком-либо месте диаграммы;
- Щелкнуть по созданному варианту использования правой кнопкой мыши, в появившемся меню выбрать пункт Open Specification, в поле Name ввести имя варианта использования –schityvanie pocazatelei temperatury.В поле Documentation ввести комментарий к варианту использования – «Посылка сигнал на контроллер о данной температуре. И нужно связать данный прецедент с контроллером. Чтобы добавить связь на диаграмме, надо выполнить следующие действия:
- Нажать на панели инструментов кнопку Unidirectional Association;
Придерживая левую кнопку мыши, провести линию от варианта использования к действующему лицу.
Добавляем еще один прецедент. Для этого делаем:
- Для того, чтобы поместить новый прецедент на диаграмму необходимо щёлкнут по кнопке Use Case на панели инструментов;
- Щелкнуть мышью в каком-либо месте диаграммы;
- Щелкнуть по созданному варианту использования правой кнопкой мыши, в появившемся меню выбрать пункт Open Specification, в поле Name ввести имя варианта использования –vyvod informacii o sostoyanii.В поле Documentation ввести комментарий к варианту использования – «Посылка сигнала повару о данном состоянии выпечки». И нужно связать данный прецедент с поваром. Чтобы добавить связь на диаграмме, надо выполнить следующие действия:
- Нажать на панели инструментов кнопку Unidirectional Association;
Придерживая левую кнопку мыши, провести линию от варианта использования к действующему лицу. Так же связываем данный вариант использования с Контроллером.
Создаем еще один вариант использования:
- Для того, чтобы поместить новый прецедент на диаграмму необходимо щёлкнут по кнопке Use Case на панели инструментов;
- Щелкнуть мышью в каком-либо месте диаграммы;
Щелкнуть по созданному варианту использования правой кнопкой мыши, в появившемся меню выбрать пункт Open Specification, в поле Name ввести имя варианта использования – Zapis konfiguracii. В поле Documentation ввести комментарий к варианту использования – «Производится запись конфигураций в Бд с конфигурациями. И нужно связать данный прецедент с Контроллером и БД с конфигурациями.
Если элемент ошибочно введен или является лишним, то существует два способа удалить элемент из диаграммы Вариантов Использования. Первый приведет к его удалению из текущей диаграммы, но он останется в браузере и на остальных диаграммах системы. Согласно второму методу элемент удаляется из всей модели - со всех диаграмм и из браузера.
Чтобы удалить элемент с текущей диаграммы, необходимо выделить его и нажать клавишу Delete.
Чтобы удалить объект из модели, необходимо выделить его в броузере и щелкнуть правой кнопкой мыши, что приведет к появлению контекстного меню. Выбрать из него пункт Delete (Удалить). Можно также выделить элемент на диаграмме и нажать сочетание клавиш CTRL + D. В таблице 1 представлены основные команды работы с данной диаграммой.
Таблица 1. Кнопки панели инструментов
диаграмм вариантов использования
| Кнопка | Назначение |
| Selection tool (Выделение объекта или отмена его выделения) | Превращает курсор в стрелку указателя, так что вы можете выделить объект |
| Text box (Текст) | Добавляет к диаграмме текст |
| Note (Примечание) | Добавляет к диаграмме примечание |
| Anchor note to item (Прикрепление примечания к объекту) | Связывает примечание с вариантом использования или объектом на диаграмме |
| Package (пакет) | Помещает на диаграмму новый пакет |
| Use case (вариант использования) | Помещает на
диаграмму новый вариант |
| Actor (Действующее лицо ) | Помещает на диаграмму новое действующее лицо |
| Unidirectional association (Однонаправленная ассоциация) | Рисует связь между действующим лицом и вариантом использования |
| Dependency or instantiates (Зависимость или наполнение) | Рисует зависимость между элементами диаграммы |
| Generalization (Обобщение) | Рисует связь использования или расширения между вариантами использования, или рисует связь наследования между действующими лицами |
3 ПОСТРОЕНИЕ ДИАГРАММЫ РАЗМЕЩЕНИЯ
(DEPLOYMENT DIAGRAMS)
Диаграмма размещения отражает состав аппаратной части системы и взаимосвязи между компонентами системы, где каждый компонент представляет собой устройство. Центром диаграммы является процессор - компьютер, производящий обработку данных и управляющий исполнительными устройствами. К устройствам, входящим в состав аппаратной части системы, в автоматизированной системе «Выпечка» относится лишь таймер и печь. К устройствам, входящим в состав программной части системы относится датчик температуры.
У модели может быть только одна диаграмма размещения. Чтобы открыть ее, надо дважды щелкнуть мышью на словах Deployment View в броузере. Открывается панель инструментов с пиктограммами, соответствующая именно этой диаграмме. Прежде всего в центр диаграммы необходимо поместить процессор:
- На панели инструментов диаграммы нажать кнопку Processor;
- Щелкнуть в центре диаграммы размещения;
- Ввести название процессора - щелкнуть по нему правой кнопкой мыши, в открывшемся меню выбрать пункт Open Specification, в поле Name ввести имя – Controller;
- В поле Documentation окна спецификаций ввести текстовое описание процессора – «Компьютер (Controller) - устройство, осуществляющее управление автоматизированной системой».
Все остальные устройства, входящие в состав аппаратной части системы, следует поочередно разместить на диаграмме вокруг процессора:
- На панели инструментов нажать кнопку Device;
- Щелкнуть в каком-либо месте диаграммы размещения;
- Щелкнуть по созданному компоненту правой кнопкой мыши, открыть окно спецификаций (пункт Open Specification), в поле Name ввести имя компонента, а в поле Documentation - текстовое описание устройства;
Таким образом для каждого компонента ввести имя и комментарий:
- Компьютер (Controller) - устройство, осуществляющее управление автоматизированной системой;
- Печь (Pech) – выпекает;
- Таймер(Timer) – контролирует время, в которое необходимо подать сигнал на контроллер(в соответствие с планом подготовки печи к выпечке);
- Датчик температуры (Datchik tempewratury) –отвечает за температуру необходимую для приготовления выпечки;