Разделы сайта

Диаграмма классов модуля доступа к данным ИКС службы видеонаблюдения

Разрабатываемая ИКС службы видеонаблюдения может использовать хранимые данные в любой момент. Причем, для возможности более гибкой поддержки системы, необходимо реализовать возможность смены источника данных.

Следовательно, проблема состоит в том, чтобы создать такой компонент системы, который бы предоставлял механизмы интеграции приложения с набором различных систем хранения данных и при этом обеспечивал прозрачность использования фактического хранилища или реализации источника данных и легкую миграцию приложения для различных систем хранения данных, различных типов хранения, и различных типов источника данных.

Решением данной проблемы есть использование шаблона объектов доступа к данным (DAO), которые будут инкапсулировать весь доступ к источнику данных и управлять соединением с источником данных для получения и хранения данных.

В таком случае логика работы сервиса будет ориентирована на использование объектов DAO. Также данный шаблон полностью скрывает детали реализации источника данных от своих клиентов. Поскольку интерфейс, представленный слоем DAO клиентам, не изменяется, когда базовая реализация источника данных изменяется, реализация DAO позволяет адаптироваться к различным схемам хранения, не влияя на компоненты бизнес-логики.

Так как планируется использование нескольких типов хранилищ данных, в связи с чем повышается вероятность частой миграции приложения для различных реализаций данных хранилищ, то шаблон DAO следует быть сделать очень гибким, применив паттерн проектирования AbstractFactory.

В данном случае нужно создать основную фабрику DAO, являющуюся абстрактным классом, который наследован и реализован различными конкретными фабриками DAO, чтобы поддерживать специфичную реализацию для доступа к данным. Компонент бизнес-логики сможет получить конкретную реализацию фабрики DAO, и использовать его, чтобы получить компоненты DAO, которые работают с той определенной реализацией хранилища.

Данный класс абстрактной фабрики должен содержать описания методов, которые в последующем будут реализованы, конкретными фабриками, а также метод для получения конкретной реализации доступа к данным.

Класс абстрактной фабрики слоя доступа к данным, описывает общие функциональные особенности разновидности применяемого шаблона. Предоставляет всем классам-наследникам обобщенные методы, которые необходимо реализовать для расширения функциональности описанной в нем.

Класс предоставляет статическое свойство фабрики, производящей экземпляры классов DAO, как классам бизнес-логики (для выполнения базовых операций доступа к данным) так и другим и классами слоя доступа к данным при необходимости применения дополнительного экземпляра класса DAO в реализации другого экземпляра DAO при создании сложных механизмов обращения к данным. Диаграмма классов DAO представлена на рисунке 3.1.

Рисунок 3.1 - Диаграмма классов DAO ИКС службы видеонаблюдения

Интересное из раздела

Автоматизация судовой энергетической установки
Автоматическое управление технологическими процессами является одним из главных направлений научно-технического прогресса на морском транспорте. Автоматизация СЭУ обеспе ...

Исследование и расчет двухполюсников и четырехполюсников
В соответствии с заданием сопротивления ДП, входящих в исследуемый ЧП, имеют следующий вид, Ом: Z1(p) = , (1.1) Z2(p) = , ...

Методы локализации неисправностей на аппаратуре СВ и РМ
Информация о воздушной обстановке в виде формуляра кодограммы Т-РМ поступает от СВ в УУО блока УОП АРМ. Из узла управления обменом тип принятого донесен ...