Интеграция приложений

Интеграция приложений

Интеграция приложений - это создание единого информационного пространства, в котором работают все ваши информационные системы. Они взаимодействуют, сообщая друг другу о различных событиях и передавая друг другу нужную информацию. То же самое делают сейчас ваши работники, и хорошо, если они делают это вовремя, по правилам и без ошибок.
Отделы и подразделения вашей организации работают совместно. Не обязательно каждый с каждым, но – совместно. Они обмениваются информацией, они вместе выполняют какие-то задачи. Но у каждого есть свои профильные информационные системы, которые наилучшим образом подходят для выполнения задач сотрудников. Отделы работают вместе, системы – нет. Пусть системы тоже работают вместе! Вместе они могут гораздо больше, чем каждая по отдельности.

Какие преимущества дают интегрированные системы:
  • Обмен данными:
    информация, подготовленная в одной системе, будет передана в другую в нужном виде и в нужное время
  • Обработка событий:
    любое событие в области деятельности вашей организации – будь то прием на работу нового сотрудника или подписание нового контракта – будет отражено в какой-нибудь информационной системе. Если вы захотите, другие системы узнают об этом событии автоматически, и сотрудники возьмутся за работу
  • Анализ деятельности:
    если взаимодействие будет вестись через единую информационную среду, то потом у этой среды можно будет узнать:
    • каков объем обмена информацией между различными подразделениям
    • когда тот или иной документ был передан от одного подразделения другому
    • возвращались ли документы на доработку
    • сколько событий определенного типа произошло
    • прочее
  • Общая оргструктура:
    хранить и изменять данные об организационной структуре вашей организации можно и нужно в одном месте. Информационные системы должны ее только использовать. Ее не надо копировать вручную. Ее не надо сверять. Она будет общей для всех с помощью интеграционного модуля оргструктуры.
  • Общие справочники:
    общей может быть не только оргструктура. Еще есть справочник номенклатуры дел. Список контрагентов. Справочник резолюций. Да что угодно – важно, что это можно хранить в одном месте, а распространять на всех .
  • Распределенные бизнес-процессы:
    по большому счету, распределенные бизнес-процессы состоят из передачи данных между системами, обработки событий и действия пользователей в различных информационных системах. Но есть один важный нюанс – вы сможете сами определять процессы и правила, по которым будут взаимодействовать ваши системы и работать ваши сотрудники.
Сервисная шина предприятия
– это та идея, которая лежит в основе нашей интеграции. Единый программный продукт, через который происходит обмен данными между системами. Что для этого нужно, кроме самого продукта?

Бизнес-анализ

Для начала ответим на следующие вопросы:
  • Какие из ваших информационных систем должны общаться между собой?
  • Какие объекты будут передаваться между ними? Например, это могут быть документы, поручения, отчеты.
  • При каких условиях эти объекты должны передаваться?
  • Какие события в вашей деятельности потребуют какой-либо реакции от информационных систем, а точнее – от использующих эти системы сотрудников?
  • Кого, когда и о чем следует уведомлять в процессе обмена данными между системами? Может быть, вы хотите быть в курсе каждый раз, когда у молодых сотрудников заканчивается испытательный срок
Когда мы ответим на все подобные вопросы, обобщим, проанализируем и уточним ответы, мы получим документ –
техническое задание на интеграцию
. В дальнейшем он будет одним из главных документом нашей работы.

Технический анализ

Информационные системы бывают разные, как и люди. Что нам нужно знать о каждой из них, прежде, чем мы научим их говорить на одном языке? Нужно знать, как мы можем с ними взаимодействовать, и тут есть целый ряд вариантов:
  • У системы есть доступные интерфейсы для взаимодействия (например, веб-сервисы)
  • Внешних интерфейсов у системы нет, но есть база данных, к которой можно подключиться и получить информацию
  • Базы данных нет или она недоступна, но есть кто-то, кто может доработать систему для того, чтобы с ней можно было общаться.
  • Другие варианты
Каким бы ни был ответ, он будет говорить только о том, насколько сложно или легко будет научить конкретную систему говорить на общем языке. Это не может быть невозможно, это может быть только сложно или просто.

Проектирование

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

Дальше

Дальше все происходит по знакомому сценарию:
  • настройка и при необходимости доработка решения
  • тестирование в локальной среде
  • тестирование в среде заказчика
  • приемо-сдаточные испытания
  • опытная эксплуатация
  • перевод в промышленную эксплуатацию
  • гарантийная поддержка
  • постгарантийная поддержка
По вашему желанию мы можем разбить проект на этапы - обращайтесь, и мы обязательно найдем подходящий вам вариант!

Сколько это

  • займет времени
    - это зависит от результатов анализа. Но все время, которое нам потребуется, будет потрачено на создание вашего интеграционного пространства. Все необходимые инструменты и технологии у нас уже есть
  • будет стоить
    - это зависит только от того, сколько это займет времени и сколько потребуется наших сотрудников, чтобы решить вашу задачу. Вы платите только за работу – все программные продукты в стандартной поставке вы получите без дополнительных затрат.

Технологии и программные продукты

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

Apache ServiceMix

, реализована сообществом Apache Software Foundation. Она представляет из себя набор базовых взаимодействующих друг с другом компонент, позволяющих построить интеграционное решение любой сложности:
  • Apache Karaf – предоставляет базовую среду исполнения, реализует архитектуру OSGi посредством одной из OSGi-платформ
    1. Apache Felix
    2. Eclipse Equinox
  • Apache Camel – платформа маршрутизации сообщений между различными компонентами. Сильнейшая из платформ с открытым кодом, поддерживаемая большим сообществом разработчиков. Именно Camel дает возможность на нижнем уровне реализовывать все необходимые шаблоны интеграции (EIP), позволяя единообразно связывать в одну цепочку взаимодействия веб-сервисы, брокеры сообщений, программные модули и многое другое
  • Apache ActiveMQ – брокер сообщений, который позволяет не только обеспечить гарантированную доставку сообщений, но и эффективно масштабировать решения на ServiceMIx на уровне сообщений
  • Apache CXF – платформа разработки веб-сервисов и их клиентов.

Neologica Entaxy

Даже используя ServiceMix непросто построить интеграционное решение – недостает нескольких компонентов:
  • Хранилище бизнес-данных, передаваемых через интеграционную среду. Хранилище необходимо не только для временного хранения в процессе обработки и передачи, но и для последующего анализа
  • Движок бинес-процессов. Несмотря на то, что в новой версии ServceMix уже появилась поддержка BPMN-движка Activiti, она все-таки недостаточна для реализации ряда интеграционных задач, не говоря уже о том, что движок интегрирован без интерфейса управления и мониторинга Activiti Explorer
  • Система анализа и управления, работающая с бизнес-объектами, а не с объектами самой ESB
Список не полный, но основные моменты в нем отражены. Решение появилось эволюционно – мы разработали платформу Entaxy, получив тем самым эффективную надстройку над ServiceMIx с включением дополнительных внешних компонент и библиотек. Оставаясь в рамках решений с открытым кодом мы получили возможность строить интеграционные приложения, ориентируясь и оперируя уже бизнес-терминами, а не техническими понятиями. Это делает разработку быстрее, а использование и сопровождение – проще и понятнее.
СУБД

eXist-db

предназначена для хранения и обработки данных в виде XML. Это не реляционная СУБД, она ориентирована именно на XML, поэтому операции с XML проходят в ней быстрее проще и эффективнее. eXist-db используется в качестве одной из частей хранилища в платфоме Entaxy.

MySQL

в представлении не нуждается – одна из наиболее используемых, надежных и проверенных бесплатных СУБД с открытым кодом. Хранилище Entaxy использует СУБД MySQL для хранения метаданных.

Activiti

- это движок бизнес-процессов, поддерживающий BPMN. Известен широко, используется в современных версиях EMC Alfresco. Включение Activiti в Entaxy позволило не только вынести процессы обработки данных на бизнес-уровень, но и реализовать распределенные бизнес процессы.

Hyperic HQ Open Source

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