Общая информация

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

Выбор способа интеграции в основном зависит от предъявляемых требований к ней, и от ограничений, накладываемых платформами приложений.

Классификация интеграций

Каждая интеграция может быть классифицирована по следующим критериям:

  1. Вид.
  2. Направление.
  3. Режим.
  4. Технология.

Вид интеграции

Выделяются следующие виды интеграций:

  1. Интеграция данных.
  2. Интеграция визуальных интерфейсов.
  3. Интеграция функциональности.

Интеграция данных

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

Интеграция визуальных интерфейсов

Основная задача данного вида интеграции заключается в объединении визуальных интерфейсов нескольких приложений, с целью создания единого рабочего места пользователя, которое позволит ему не выполнять переключения между приложениями в процессе работы. При этом виде интеграции "смывается граница" между системами. Они как бы становятся для пользователя одной единой системой. Это позволяет сократить время, необходимое пользователю для ввода данных. Примером такой интеграции может быть например встраивание Microsoft Internet Explorer в интерфейс Terrasoft в модуль Dashboard.

Интеграция функциональности

Данный вид интеграции используется для объединения функциональных возможностей нескольких систем. Например, интеграция Terrasoft и Microsoft Outlook позволяет реализовать отправку почтовых сообщений из Terrasft. Примерами таких интеграций также может быть интеграция с системами отправки/приема факсов, работа с "мессенджерами" (Skype, ICQ), текстовыми процессором Word, и т.д. Данный вид интеграции используется в том случае, если у компании уже есть приобретенная система, реализующая некоторую функциональность, или реализация аналогичной функциональности в Terrasoft является нерентабельной.

Направление интеграции

Выделяются следующие направления интеграций:

  1. Из Terrasoft в другое приложение (однонаправленная, или односторонняя).
  2. Из другого приложения в Terrasoft (однонаправленная, или односторонняя).
  3. Из Terrasoft в другое приложение и обратно (двунаправленная, или двухсторонняя интеграция).

При однонаправленной интеграции определяется система источник, и система получатель данных. Например, при переносе данных из Terrasoft в "1C Предприятие" источником является Terrasoft, а получателем "1C Предприятие".

При двунаправленной интеграции фактически реализуется две однонаправленных интеграции, и для каждой из них также определяется источник и получатель данных.

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

Однонаправленная интеграция

Однонаправленная интеграция используется в том случае, если модификация определенного типа данных делается только в одной из систем. Например, если регламентом определено, что пользователи могут вводить информацию о контактах и контрагентах только в Terrasoft, то направление переноса этих данных должно быть "Из Terrasoft в другое приложение". При этом никакие новые контакты и контрагенты, и их изменение не должны делаться в системе получателе, т.к. эти изменения никак не отразятся на данных в Terrasoft (системе источнике данных). И наоборот, если документы и счета создаются в бухгалтерской системе, то никакие модификации этих объектов в Terrasoft делаться не должны.

Необходимо отметить, что модификация данных в приложении получателе все же допускается. При этом такая модификация должна затрагивать только те данные, которых нет в системе источнике данных. Например, если из "1C Предприятие" в Terrasoft переносятся контакты, и в данных о контактах Terrasoft есть поле "Обращение", которого нет в "1C Предприятие", то модификация этого поля в Terrasoft разрешается.

Двунаправленная интеграция

Если предусматривается возможность модификации одних и тех же данных в обеих системах, то необходима двунаправленная интеграция.

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

Режим интеграции

Существуют следующие режимы интеграций:

  1. Off line интеграция.
  2. On line интеграция.

Выбор режима интеграции зависит от требований пользователей к периоду актуальности данных.

Off line интеграция

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

 Запуск процесса переноса данных в этом режиме выполняется по определенному расписанию, или может быть инициирован пользователем. Например, для запуска может использоваться механизм задач (Job) Microsoft SQL Server, который будет выполнять интеграцию каждый час. Или, например, в модуле Terrasoft может быть реализовано действие, по выполнению которого также будет запущен процесс интеграции. Для запуска процесса по определенному расписанию могут использоваться любые доступные в текущем контексте средства. Например, механизм задач (Job) СУБД, операционной системы, или же разработки сторонних производителей.

On line интеграция

On line интеграция используется в том случае, если ставится требование необходимости постоянной актуальности данных в двух системах. Данное требование означает, что модификация данных, выполненная в одной системе, сразу попадает в систему получатель.

Для реализации данного режима интеграции обычно требуется изменение системы источника данных, или ее БД. Этот режим, конечно же, является более привлекательным для пользователя, но чаще всего сложность его реализации выше, чем Off line интеграция.

Технология интеграции

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

  1. COM.
  2. Web сервисы.
  3. Native API.
  4. Возможности СУБД.
  5. Шлюзы.
  6. CORBA, и т.д.

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