3.3 Проектирование прикладного программного обеспечения для системы безопасности
Разрабатываемая прикладная программа должна состоять из нескольких независимых элементов (модулей), из которых осуществляется сборка целевой программы для решения сформулированных пользователем задач. При этом независимость модулей означает возможность их независимого использования.
Вся задача разбивается на ряд подзадач, которые реализованы в отдельных модулях. Такая структура системы позволяет добавлять новые функции, упрощает разработку и отладку программы, облегчает ее чтение, а также модификацию.
Взаимодействие модулей с основной программой является статическим, то есть подключение модуля происходит на этапе компиляции.
В результате декомпозиции задачи на отдельные подзадачи разработана модульная архитектура программной системы. Иерархическая подчиненность модулей, входящих в программу, представлена на рисунке 3.2.
Приведем краткое описание назначения модулей таблица 3.11.
Таблица 3.11 — Модули
Название модуля |
Назначение |
1 |
2 |
Main |
Главный модуль. Содержит главную форму программной системы и главное меню, которое определяет действия пользователя над программной системой. |
ArrayOfLines |
Модуль содержит новый класс, реализующий работу с зонами (создание, редактирования, удаление и т.д.). |
BD |
Модуль реализует работу с базой данных устройств. |
Addon |
Модуль, реализующий диалог установки масштаба. |
Functions |
Модуль содержащий дополнительные функции обработки, печати и преобразования данных. |
HelpUnit |
Данный модуль реализует подключение к программе справки HelpHtml, созданной программой HTMLWorkShop. |
ZoneUnit |
Форма, содержащая сведения о выбранной зоне, такие как имя зоны, протяженность, список устройств. |
Main |
ZoneUnit |
Addon |
BD |
HelpUnit |
Functions |
ArrayOfLines |
Рисунок 3.2 — Архитектура программы
3.3.1 Реализация функционального назначения программного продукта
В данном программном продукте должны быть реализованы следующие функции:
— создание и ведение базы данных устройств с возможностью коррекции и добавления данных;
— обработку изображения и функции масштабирования;
— работу с зонами, включающую создание, удаление, редактирования, а также добавление, удаление, редактирования устройств зоны;
— расстановку устройств на плане;
— печать готового проекта с перечислением всех используемых устройств и их координат;
— помощь, содержащую краткую информацию по работе с программным продуктом для пользователя;
— удобный пользовательский интерфейс с приятной для глаз цветовой гаммой, с возможностью перемещения по экрану сверху вниз и слева на право (окна, возможность удаления, корректировки, добавления информации, выходные формы, помощь и др.).
Основные возможности АИС можно представить в виде функциональной схемы. Функциональная схема представлена на рисунке 3.2. Приведем краткое описание функциональной схемы.
Первое действие, которое необходимо выполнить, это добавление плана местности к новому проекту. Далее необходимо установить масштаб, т.к. изображение может использоваться любое, включающее фотографию с местности, и это позволяет сделать привязку к местности. Следующим шагом является выделение зон (части периметра), на которых необходимо создать охраняемые участки. Затем необходимо выбрать и добавить одно или несколько устройств, соответствующей зоне, которые необходимо разместить на данном участке. Этот этап подразумевает работу с базой данных устройств. Добавленное устройство будет автоматически размещено на плане местности. Следующим и последним этапом является сохранение проекта с последующей печатью проекта. Перед печатью проекта, при желании можно установить новую точку отсчета устройств для определения координат устройств (по умолчанию, точка (0,0)) на местности. В любой момент работы программы можно вывести справку и просмотреть порядок действия для создания проекта.