Интеграционные шаблоны проектирования
Шаблоны по методу интеграции
Под методом интеграции понимается способ передачи, который в своей основе оперирует тем или иным объектом. В роли объекта могут выступать как данные, так и сервисы или специфический функционал.
Интеграция систем по данным
Это исторически первый подход в решении задач интеграции. Он характерен для традиционных систем "клиент-сервер", рассмотренных нами ранее. При интеграции приложений по данным основным системообразующим фактором при построении информационной системы является интегрированная база данных коллективного доступа. Концепция интеграции в этом подходе состоит в том, что приложения объединяются в систему вокруг интегрированных данных под управлением единого СУБД. Интегрирующей средой является промышленная база данных со стандартным интерфейсом доступа к ним. Все функции прикладной обработки размещаются в клиентских программах.
Применение этого шаблона к решению конкретных задач характерно, когда есть необходимость передачи больших объемов данных.
Функционально-центрический
Ядром шаблона "Функционально-центрический" являются сервисы.
Системообразующим фактором функционально-центрического паттерна являются сервисы.Общеупотребительные прикладные и системные функции коллективного доступа, реализованные в виде серверных программ со стандартным API.
В качестве сервисов должны быть реализованы следующие функции:
- Прикладная обработка.
- Контроль информационной безопасности.
- Служба времени.
- Централизованный файловый доступ и пр.
Все сервисы являются интегрированными в том же смысле, что и интегрированные данные в базе данных коллективного доступа, т.е. реализуемые сервисами функции достоверны, непротиворечивы и общедоступны.
Интеграция в данном подходе состоит в том, что приложения объединяются в систему вокруг интегрированных сервисов со стандартизованным интерфейсом. Интегрирующей средой является сервер приложений или монитор транзакций со стандартным API.
При использовании паттерна "Функционально-центрический" приложение декомпозируется на три уровня:
- Взаимодействие с пользователем.
- Прикладная обработка.
- Доступ и управление данными.
Интеграционный шаблон "Функционально-центрический" наиболее удачно сочетается с архитектурным шаблоном "Клиент-сервер".