УДК 004.94
Гудков К.В., Гудкова Е.А.
ФГБОУ ВПО «Пензенский государственный технологический университет», Пенза, Россия
ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ МОДЕЛИРОВАНИЕ ИНФОРМАЦИОННОЙ СИСТЕМЫ СБОРА, ОБРАБОТКИ И ХРАНЕНИЯ ДАННЫХ
Процесс разработки программного обеспечения подразумевает под собой стадию моделирования. Модель - это абстракция, описывающая моделируемую систему с определенной точки зрения и на определенном уровне абстрагирования. Модель представляет законченный взгляд на систему. [1]
Моделирование позволяет решить четыре различных задачи: визуализировать систему в ее текущем или желательном состоянии; определить структуру или поведение системы;
получить шаблон, позволяющий затем сконструировать систему; документировать принимаемые решения, используя полученные модели.
Наиболее современным подходом к разработке программного обеспечения является объектноориентированный. Здесь в качестве основного строительного блока выступает объект или класс. В
самом общем смысле объект - это сущность, обычно извлекаемая из словаря предметной области или решения, а класс является описанием множества однотипных объектов. Каждый объект обладает, состоянием и поведением.
Объектно-ориентированный подход к разработке программного обеспечения является сейчас преобладающим просто потому, что он продемонстрировал свою полезность при построении систем в самых разных областях любого размера и сложности. Кроме того, большинство современных языков программирования, инструментальных средств и операционных систем являются в той или иной мере объектноориентированными, а это дает веские основания судить о мире в терминах объектов. Объектно-
ориентированные методы разработки легли в основу идеологии сборки систем из отдельных компонентов.
Унифицированный язык моделирования (UML) является стандартным инструментом для создания моделей программного обеспечения. С помощью UML можно визуализировать, специфицировать, конструировать и документировать артефакты программных систем.
UML пригоден для моделирования любых систем: от информационных систем масштаба предприятия до распределенных Web-приложений и даже встроенных систем реального времени.[2]
В данной статье рассматривается объектно-ориентированное моделирование информационной системы сбора, обработки и хранения данных. В качестве предметной области выбраны некооперативное выделение и распознавание лиц. Информационная система (ИС) описанного типа позволит автоматически выделять изображения лиц из панорамного видеопотока и обеспечивать их последующее распознавание. Для выделения изображения лица не требуется специального позиционирования человека в поле зрения видеокамеры, более того, человек даже может и не предполагать, что находится в зоне видеонаблюдения [3], что определяет актуальность использования таких ИС.
Процесс разработки согласно ИС представляет собой совокупность следующих базовых рабочих процессов :
определение требований; анализ;
проектирование; реализация; тестирование.
Процесс определения требований заключается в сборе всех возможных требований, осознании контекста системы, определении функциональных и нефункциональных требований, и включает в себя создание: модели вариантов использования и концептуальной модели.
Основной в этом случае является модель вариантов использования, которая предназначена для определения требований к системе. Она включает в себя актеров, варианты использования и связи между ними. Для отображения этой модели язык UML предлагает использовать диаграммы Use Case/вариантов использования (рисунок 1) совместно с моделями State Diagram/диаграммы состояний (рисунок 2) . Последние используются для конкретизации вариантов использования системы.
ции, база данных, хранящая видеозаписи и результаты обработки, оператор, лицо, осуществляющее настройки информационной системы, а также при необходимости поиск в базе данных ИС, и видеокамера, устройство, производящее видеозапись.
Далее рассмотрим диаграмму состояний.
Диаграмма состояний в UML описывает все возможные состояния одного экземпляра определенного класса и возможные последовательности его переходов из одного состояния в другое, то есть моделирует все изменения состояний объекта как его реакцию на внешние воздействия.
Обычно диаграммы состояний описывают состояния ключевых объектов в данной предметной области. Таким объектом в рассматриваемой предметной области является видеокамера. Рассмотрим диаграмму состояний данного объекта, показанную на рисунке 2.
В начале следует переход в первое состояние «Выключено». Из данного состояния по событию «включено» при условии срабатывания условия «исправно» происходит переход в состояние «Включено».
Устройство переходит в состояние «ожидания»». По срабатывания датчика движения устройство переходит в состояние «регистрация данных» (подразумевается что, при появлении движущегося объекта
в поле зрении видеокамеры будет сохраняться серия отдельных кадров изображения - фотоснимков с максимально возможным для данной видеокамеры разрешением, а в режиме непрерывной съемки видеокамера может работать с невысоким разрешением). При срабатывании условия «буфер полон» происходит переход в состояние «передачи данных». В этом состоянии устройство передает информацию в базу данных. По завершении передачи данных снова переход в состояние «регистрация данных». Также возможен переход в состояние «ожидания» если сработал таймер отключения.
По сигналу «выключено» устройство переходит в состояние «Выключено» из которого оно может про прошествии времени снова перейти в состояние «включено».
Разработанная диаграмма позволяет отследить изменения объекта устройство в процессе его жизненного цикла.
Концептуальная модель может создаваться в некоторых случаях для более точного определения контекста системы и представляет собой сущности предметной области и их связи. Для построения этой модели используются диаграммы классов (Рисунок 3).
Рисунок 3 - диаграмма классов ИС
Представленная диаграмма содержит набор классов описывающих предметную область некооперативного выделения и распознавания лиц. Ключевую роль в данной информационная систем играют классы NWRLDispatch, контролирующих процесс регистрации изображения и получения вектора признаков, NWRLDenoise, производящий очистку от шума и NWRLIdent контролирующий процесс идентификации личности. Класс NWRLRegDevice описывает устройство регистрации фотоизображения в информационной системе. Класс Image представляет изображение и его характеристики. Классы VectorPr и NWRLFiter2D представляют вектор признаков и параметры фильтра для его получения. Класс Object и его потомки NWRLObject- информация об объектах. Классы User, Admin, Guard содержат информацию о различных категориях лиц, зарегистрированных в системе.
Процесс анализа заключается в разборе требований полученных на предыдущем этапе, их уточнение и систематизация. Процесс анализа создает аналитическую модель системы.
В процессе проектирования создается архитектура системы, которая позволит реализовать и затем поддерживать все требования определенные на предыдущих этапах. В процессе проектирования систем используются модели проектирования и развертывания (Рисунок 4).
«device»
Устойство
регистрации
Сервер БД
а а
«executable» «library»
ObjectRegs IdentObject
а
«library»
DBSetupUtil
Рабочее место
а «executable» WorkShop
Удаленный администратор
а
«executable»
RemoteAdminConsole
Рисунок 4 - диаграмма развертывания ИС
С точки зрения реализации система имеет клиент-серверную архитектуру. На рабочей станции разворачивается локальное клиентское ПО (компонент Workshop) и Узел рабочей станции связан по каналу связи с удаленным сервером БД. На сервере размещаются компоненты ObjectRegs - регистрация объектов, утилита администрирования (компонент DBSetupUtil) для доступа к базе данных, и библиотека функций идентификации. К серверу по каналу связи подключается устройство регистрации (видеокамера) для регистрации изображения. Удаленный администратор может при помощи средства RemoteAdminConsole выполнять удаленную настройку системы
Процесс реализации заключается в создании компонентов системы на основе данных, полученных на этапе проектирования. Согласно разработанной архитектуре создаются подсистемы и классы системы, которые реализуются в виде файлов компонентов.
На этом этапе создается модель реализации, которая описывает, как реализуются в виде компонентов элементы модели проектирования (классы). Данная модель описывает способ организации этих компонентов в соответствии с механизмами структурирования и разбиения на модули, принятыми в выбранной среде программирования. Модель реализации представляется диаграммой компонентов (Рисунок 5).
Рисунок 5 - диаграмма компонентов
На диаграмме компонентов показано взаимодействие программных компонентов проектируемой системы. ПО информационной системы состоит из базы данных DBI, хранящей изображения, личные данные пользователей и посетителей, настройки системы, IdentVisitor - библиотека функций для идентификации объектов, VisitorRegs - утилита регистрации, DBSetupUtil - утилиты обслуживания базы данных, RemoteAdminConsole - удаленная консоль администрирования системы и GuardWorkShop - ПО рабочего места .
В процессе тестирования проверяются созданные компоненты и версии системы на целостность и проводятся системные тесты. Возможно создание тестовых компонентов для автоматизации тестирования. В процессе тестирования проверяются результаты реализации.
Таким образом, в статье рассмотрен объектно-ориентированный подход к моделированию информационной системы сбора, обработки и хранения данных. Были разработаны основные модели языка UML для проектирования информационных систем.
ЛИТЕРАТУРА
1. Трофимов С. Использование моделей UML в процессе разработки программных систем. Режим доступа: http://www.caseclub.ru/articles/modeli.html/. - Загл. с экрана.
2. ДаСистемс. Статьи. UML. Режим доступа: http://www.dasystems.ru/uml.html. - Загл. с экрана.
3. Брилюк Д.В., Старовойтов В.В. Распознавание человека по изображению лица нейросетевыми методами. - 2002г.
4. Потапов, А. С. Распознавание образов и машинное восприятие: общий подход на основе принципа минимальной длины описания, Политехника, 2007г.
5. Якобсон А., Буч Г., Рамбо Дж. Унифицированный процесс разработки программного обеспечения. - СПб.: Питер, 2002. - 496 с.
6. Михеев М.Ю., Мурашкина Е.Н. Графическое представление структурных взаимосвязей логических и
физических моделей информационной системы сейсмомониторинга. Современные информационные технологии: Сборник статей международной научно-технической конференции. Вып. 18. - Пенза: ПензГТУ,
2013.-С. 78-84.