Что значит интегрированная система
Что такое интеграция и что именно можно интегрировать
Здравствуйте, уважаемые читатели блога KtoNaNovenkogo.ru. Существует множество терминов, которые мы вставляем к месту и не к месту в свою речь, точно не зная, что они обозначают.
К таковым относится и понятие «интеграция». Разберемся, что определяет этот термин, и в каких сферах применяется.
Понятие «интеграция»
В переводе с латыни «интеграция» это «вставка, соединение». Рассуждая логически, делаем вывод, что «интегрировать», значит, вставлять какую-то часть в единое целое.
А «интегрировать» — это значит объединить, слить (например, компании), переплести, вставить, добавить, соединить и т.п.
Простой пример: собирая пазл, мы интегрируем его фрагменты в единую картинку. Развитие человеческого общества – это тоже череда интеграций и дифференциаций (разделения целого на составные части).
Интегрировать что-то можно двумя путями:
По каким принципам можно интегрировать
Интеграция может происходить, основываясь на нескольких принципах. Рассмотрим основные из них подробней.
Пример международной экономической интеграции горизонтальной модели – Евросоюз: страны имеют единую валюту, решают общие политические и экономические проблемы.
Главная цель объединения на основе диагональной модели – это диверсификация, т. е. распределение инвестирования по нескольким направлениям с целью увеличить прибыль и (или) не допустить краха. Иными словами – «раскладывание яиц по разным корзинам».
Наглядный пример – консорциум (объединение независимых предприятий) «Альфа-Групп». Интегрированные в консорциум предприятия занимаются инвестированием, страхованием (что это такое?), розничной торговлей, водоснабжением, производством и реализацией минеральной воды.
Интеграция в различных сферах
Интеграция – это процесс, который актуален для всех сфер жизни человека.
И примеров тому множество:
Интеграция в экономике
Экономическая интеграция (ЭИ) – сближение (или объединение) предприятий, отраслей и регионов. Если ЭИ выходит за рамки одной страны, то тогда речь идет о международной экономической интеграции (МЭИ).
Это создание взаимовыгодных экономических отношений между государствами. Регулируется соглашениями на международном уровне. Подобное сотрудничество дает участникам ЭИ расширенный доступ к материальным, трудовым и финансовым ресурсам, к новейшим технологиям и рынкам сбыта.
Формы МЭИ представлены на схеме:
Что и как можно интегрировать в политике
Политическая интеграция (ПИ) – сближение деятельности политических единиц (государств, политических партий), целью которого является взаимное сотрудничество для достижения определенных результатов, близких всем членам интеграционного сообщества. ПИ бывает 2 видов:
Интеграция в науке и педагогике
Познание человеком сути вещей и явлений – бесконечный процесс. Чем глубже и точнее научные изыскания, тем очевидней, что полноценное изучение какого-либо объекта не может быть проведено в рамках только одной научной дисциплины.
Биохимия – один из примеров симбиоза двух наук – биологии и химии. Невозможно понять принципы жизнедеятельности биологических организмов без знания химических процессов, происходящих в их клетках и тканях.
Приведем еще примеры: геофизика, биофизика, кибернетика и т. д. Следовательно, интеграция наук – это объединение знаний, накопленных в рамках нескольких научных дисциплин, в единое целое для возможности всестороннего изучения объектов, явлений, процессов.
Стремление понять мир, в котором мы живем, диктует необходимость научной интеграции. И это касается не только точных наук. Например, обществознание – это комплекс дисциплин, изучающих все стороны деятельности человеческого общества:
Интеграция в обществознании – это рассмотрение изучаемого объекта не в рамках какой-либо из перечисленных наук, а в их совокупности.
Удачи вам! До скорых встреч на страницах блога KtoNaNovenkogo.ru
Эта статья относится к рубрикам:
Комментарии и отзывы (2)
Интеграция означает жизнь по чужим правилам, если человек интегрируется в общество, значит он берет на себя обязательство подчиняться общественным законам.
Тоже и в межгосударственных отношениях, когда Россия входит в какие-то международные организации, союзы, то так же берет обязательства, что, на мой взгляд, сильно подрывает суверенитет. Мы начинаем зависеть от внешних навязанных нам правил, вряд ли указания некоего дяди могут благоприятно сказываться на благосостоянии народа.
Игорь: хорошо подмечено. Именно от таких ошибочных интеграций лихих девяностых мы сейчас потихоньку и избавляемся. В том числе, и с помощью летних поправок в конституцию
система интегрированная
2.9.2 система интегрированная: Система, объединяющая и совместно использующая информационные ресурсы подсистем и одну общую базу данных, и при этом, в отличие от автономных систем, позволяет работать с каждым ресурсом в отдельности.
Смотри также родственные термины:
2.9.3 система интегрированная закрытая: Система, объединяющая типы подсистем (более одного) так, что они разделяют общие информационные ресурсы системы и общую базу данных, в случае если они установлены вместе (интегрированы) в соответствующей конфигурации, причем выбор конечного пользователя может быть ограничен системами (периферийным оборудованием) только одного производителя.
2.9.4 система интегрированная открытая: Система, предназначенная для совместной работы с другими открытыми системами и обеспечения интеграции с ними с использованием в нормальном состоянии общей базы данных, общего интерфейса и программного обеспечения, общего для этих систем при обмене информацией друг с другом, обеспечивающего как вертикальную, так и горизонтальную интеграцию.
Полезное
Смотреть что такое «система интегрированная» в других словарях:
система интегрированная — Система, объединяющая и совместно использующая информационные ресурсы подсистем и одну общую базу данных, и при этом, в отличие от автономных систем, позволяет работать с каждым ресурсом в отдельности. [ГОСТ Р 52551 2006] Тематики системы охраны… … Справочник технического переводчика
система интегрированная закрытая — Система, объединяющая типы подсистем (более одного) так, что они разделяют общие информационные ресурсы системы и общую базу данных, в случае если они установлены вместе (интегрированы) в соответствующей конфигурации, причем выбор конечного… … Справочник технического переводчика
система интегрированная открытая — Система, предназначенная для совместной работы с другими открытыми системами и обеспечения интеграции с ними с использованием в нормальном состоянии общей базы данных, общего интерфейса и программного обеспечения, общего для этих систем при… … Справочник технического переводчика
система интегрированная закрытая — 2.9.3 система интегрированная закрытая: Система, объединяющая типы подсистем (более одного) так, что они разделяют общие информационные ресурсы системы и общую базу данных, в случае если они установлены вместе (интегрированы) в соответствующей… … Словарь-справочник терминов нормативно-технической документации
система интегрированная открытая — 2.9.4 система интегрированная открытая: Система, предназначенная для совместной работы с другими открытыми системами и обеспечения интеграции с ними с использованием в нормальном состоянии общей базы данных, общего интерфейса и программного… … Словарь-справочник терминов нормативно-технической документации
СИСТЕМА ИНТЕГРИРОВАННАЯ ЗАКРЫТАЯ — Система, объединяющая типы подсистем (более одного) так, что они разделяют общие и информационные ресурсы системы и общую базу данных, в случае если они установлены вместе (интегрированы) в соответствующей конфигурации, причем выбор конечного… … Комплексное обеспечение безопасности и антитеррористической защищенности зданий и сооружений
СИСТЕМА ИНТЕГРИРОВАННАЯ ОТКРЫТАЯ — Система, предназначенная для совместной работы с другими открытыми системами и обеспечения интеграции с ними с использованием в нормальном состоянии общей базы данных, общего интерфейса и программного обеспечения, общего для этих систем при… … Комплексное обеспечение безопасности и антитеррористической защищенности зданий и сооружений
Система интегрированная автоматизированная — Совокупность двух или более взаимоувязанных АС, в которой функционирование одной из них зависит от результатов функционирования другой (других) так, что эту совокупность можно рассматривать как единую АС. ГОСТ 34.003 90 … Комплексное обеспечение безопасности и антитеррористической защищенности зданий и сооружений
Интегрированная система — программный продукт, обеспечивающий работу нескольких разнородных систем с единым интерфейсом. См. также: Программные изделия Финансовый словарь Финам … Финансовый словарь
система — 4.48 система (system): Комбинация взаимодействующих элементов, организованных для достижения одной или нескольких поставленных целей. Примечание 1 Система может рассматриваться как продукт или предоставляемые им услуги. Примечание 2 На практике… … Словарь-справочник терминов нормативно-технической документации
Интеграция программного обеспечения. Описание процесса от бизнес консультанта
Синерги́я (греч. συνεργία — сотрудничество, содействие, помощь, соучастие, сообщничество; от греч. σύν — вместе, греч. ἔργον — дело, труд, работа, (воз)действие) — суммирующий эффект взаимодействия двух или более факторов, характеризующийся тем, что их действие существенно превосходит эффект каждого отдельного компонента в виде их простой суммы[1], эмерджентность.
В процессе работы бизнес консультантом, для увеличения эффективности работы систем предприятия, я почти всегда предлагаю провести интеграцию между различным ПО заказчика. Потому что интегрировав различные системы возможно добиться эффекта синергии.
Мне постоянно приходится сталкиваться с одними и теми же проблемами и решениями многие из которых приходится пояснять в каждом новом проекте заказчикам, некоторые – программистам. А потому я считаю, что о процессе интеграции стоит поговорить подробно. В большинстве примеров я выбрал различные случаи интеграции 1С и CRM, так как сегодня именно этот вопрос, как показывает моя практика, наиболее актуален. Хотя данная статья подойдет при интеграции практически любого программного обеспечения. Итак начнем.
Интеграция – это очень важная часть работы по автоматизации бизнес-процессов, так как требуется она постоянно. В разных ситуациях возникает потребность оперативно обмениваться данными между различными конфигурациями 1С, между программными продуктами 1С и сайтом, между 1С и CAD системами, а также системами биллинга и т.д. Также достаточно часто требуется интегрировать между собой различные веб сервисы, например, интернет-магазин и CRM-систему. В общем, объединить работу различных подразделений компании и автоматизировать рабочий процесс без использования интеграции в большинстве случаев невозможно.
Что такое интеграция?
Википедия дает нам такое определение:
Я считаю, что в данном случае Вики абсолютно права. И дополнить ее можно только одним определением:
Интеграция программных систем и продуктов — это обмен данными между системами с возможной последующей их обработкой.
Смысл интеграции заключается в том, чтобы данные, которые пользователь вводит в одну систему, автоматически переносились в другую. Продукт, в который пользователь вводит данные, называется источник. А получатель данных, соответственно, приемник.
Достаточно часто данные переносят в обе стороны, например, после преобразования в системе-приемнике результаты отправляются обратно в источник. А потому интеграция бывает как односторонней, так и двухсторонней.
Например, если вы объединяете конфигурацию 1С: Торговля с 1С: Бухгалтерией, вам может потребоваться передать данные по всем продажам в бухгалтерию, а обратно получить сведения об оплате по этим продажам.
Важно: при интеграции различных программных решений нужно хорошо понимать их функционал.
Когда-то я и сам совершал такую ошибку, и брался за интеграцию программных продуктов, которые я недостаточно хорошо знал. А потому могу сказать точно: изучать программный продукт в процессе интеграции – это не совсем корректно. При таком подходе чаще всего возникает множество ошибок и проблем, например, перенос не тех данных или сбои в работе. Рекомендую сначала хорошо изучить программный продукт, понять, что он может, каким образом в нем реализованы те или иные функции, и только потом заниматься интеграцией.
В принципе, в процессе интеграции вам может потребоваться и более сложный обмен, и придется вводить, например, трех- или четырехстороннюю интеграцию. Но, по сути, эти процессы ничем не отличаются от обычного одно- или двухстороннего процесса. А потому я буду говорить об интеграции односторонней. А в конце скажу пару слов об особенностях двухсторонней. Все остальные направления вы всегда сможете выстроить по аналогии.
Выбираем источник и приемник
Для каждого случая интеграции данных важно четко определить, какая система будет источником, а какая – приемником.
Например, у вас есть система CRM и программа 1С: Торговля. В обеих системах существует такое понятие, как контактное лицо. В принципе, вводить его вы можете и с одной, и с другой стороны. В данном случае, очевидно, что источником стоит назначить CRM, так как этого требует логика работы с любой CRM-системой.
Аналогично и в других случаях. Нужно понимать, в какой системе пользователь будет вводить данные, а какая станет получателем этих данных через интеграцию. Это обязательно согласовывается с клиентом (пользователем), кроме случаев, когда источник очевиден. при этом обязательно нужно поставить в известность клиента, что данные определенного типа следует вводить именно через систему-источник.
Сопоставление объектов (данных)
Каждый раз при работе с данными нужно очень хорошо понимать, что именно вы выгружаете, в каком виде, а также, куда вы будете выгружать эти данные. В некоторых случаях в источнике у вас будет строковая переменная, а в приемнике – два или более объектов. В других важно просто правильно выбрать объект-приемник.
Например, практически в любой CRM контактное лицо и клиент – это одно и то же. С другой стороны в 1С контактное лицо может быть клиентом, партнером, поставщиком. И очень важно понимать, куда именно записывать данные этого контактного лица. Также важно сопоставлять все данные до того, как начнется работа непосредственно с кодом. Для этого прекрасно подойдут таблицы или блок-схемы.
Когда-то я так же, как и многие, пренебрегал этим этапом работы. Сейчас я знаю, что эти действия позволят избежать огромного количества ошибок. На какой бы стороне ни работал программист – на стороне программы-источника или приемника, такая табличка очень помогает в работе. Программист должен четко понимать, какие данные будут брать из источника, куда их нужно переносить, и как они будут обрабатываться.
Например, при выгрузке контактного лица из CRM нужно четко сопоставить этот контакт партнеру или покупателю.
Также очень важно понимать, какие преобразования потребуются для выгружаемых данных. Например, нужные для интеграции данные в источнике хранятся в качестве перечисления в виде текста. А в приемнике (пусть это будет 1С) аналогичное перечисление имеет ссылочный тип. Следовательно, вам потребуется преобразовать текст в ссылку, и уже ссылку передать в документ.
И здесь возникает проблема: требуются правила сопоставления.
Вы должны четко продумать и прописать правила сопоставления. Более того, об этих правилах необходимо оповестить ваших клиентов. Важно понимать, что клиент не видит логику работы обмена данными, он не понимает особенностей интеграции.
Конечно, вы обязательно введете ограничение прав доступа, добавите другие варианты защиты. Но, как показывает практика, это не гарантирует от того, что пользователь совершит ошибку, из-за которой интеграция перестанет работать или будет работать не корректно. Это может быть кто-то из сотрудников, обладающий правами администратора, или приглашенный специалист, который дорабатывает, например, печатную форму документа, но при этом не осведомлен об особенностях интеграции.
В результате возникают самые разные казусы. Например, вы используете в качестве ключевого слова для поиска при сопоставлении слово «дилер». Клиент по каким-то причинам меняет его в программе-источнике на слово «дилеры». Казалось бы, мелочь! Но эта мелочь приведет к тому, что поиск в 1С перестанет работать.
Интеграция – процесс сложный, и проблемы из-за человеческого фактора возникают достаточно часто, защититься от них практически не реально. Также бывают и программные сбои, особенно это касается таких сложных систем с большим числом багов, как программные продукты 1С. А для бизнеса очень важно, чтобы обмен данными проходил своевременно, а если возникла проблема также важно ее оперативно устранить.
Например, в моей практике была ситуация, когда я провел интеграцию 1С и Oracle, причем, последний являлся программой-источником. Далее на стороне Oracle изменили одно из полей. В результате заказы перестали загружаться в 1С вообще, при этом сервер не выдавал уведомление об ошибке. Обнаружили проблему через неделю.
С одной стороны, это явная недоработка отдела продаж моего клиента, так как неделю не получать ни одного заказа и не волноваться по этому поводу, мягко говоря, странно. С другой – отсутствие уведомления об ошибке я считаю собственной недоработкой. Конечно, в результате ошибки были исправлены, система дальше работала без сбоев, но теперь я всегда добавляю несколько вариантов уведомления об ошибке при передаче данных.
Также стоит лог-файл ошибок вести максимально подробно и как можно дольше хранить историю. Не забывайте, что вы имеете дело с данными, которые имеются в одной базе данных, но отсутствуют в другой. И без подробного отчета вам будет очень сложно понять, что именно произошло в процессе передачи данных.
Обмен данными: писать самому или применять типовое решение?
Лично я предпочитаю всегда разрабатывать решение под заказчика. Здесь можно спорить, можно обсуждать различные варианты, но есть факт: типовые обмены данными всегда сильно перегружены возможностями, которые вашему клиенту не нужны. В результате процесс обмена значительно замедляется, а число возможных ошибок вырастает в разы.
Кроме того, при выборе типового программного решения вы очень сильно зависите от поставщика программного обеспечения. Для любого исправления бага вам придется ждать выпуск очередной версии программы. Также придется подстраиваться при обновлениях под все изменения в работе, который внес разработчик.
А потому при выборе между самостоятельным написанием обмена данными и типовым решением, которое не на 100% подходит для данной ситуации, лучше писать обмен самому.
В некоторых случаях, когда типовое решение действительно на 100% удовлетворяет потребности клиента, а скорость работы для него не критична, я также применяю готовые продукты. Например, при выгрузке номенклатуры и фотографий на сайт я не редко использую готовый обмен данными от Битрикс. Но только для выгрузки. Для работы с заказами я применяю самописный обмен.
Метод подключения: REST API, SOAP или прямое подключение к базе приемника
Выбор протокола обмена данными в большинстве случаев напрямую зависит от системы, которую вы интегрируете. В большинстве случаев программисту приходится учитывать требования обеих систем, а потому выбора как такового не существует. В тех случаях, когда система может работать с несколькими протоколами, выбирайте тот, который вам удобнее. По моему опыту, для малых и средних предприятий этот вопрос не принципиален.
Вопросы клиентского доступа: почему не работает обмен?
Я считаю, что обо всех возможных ограничениях в доступе нужно узнать на начальном этапе интеграции. Таким образом, вы гарантированно избежите очень распространенной проблемы:
Вы внедрили интеграцию, все проверили, протестировали, убедились, что система работает. После чего пользователь обнаруживает, что обмен данными не происходит.
В случае работы с CRM-системой ограничения обычно обусловлены оплаченным пакетом услуг. Здесь достаточно оповестить клиента о наличии такого ограничения, и, при необходимости, помочь оплатить и настроить расширенный пакет.
1С идентификаторы и ошибки, связанные с ними
При интеграции с 1С очень часто ошибки обмена данных возникают из-за неверного выбора УИ (уникального идентификатора). Суть проблемы заключается в том, что объекты в 1С имеют два типа УИ: один уникален внутри выбранного типа объектов. Второй используется для работы со всей базой данных.
Если вы будете проводить поиск по всему справочнику с использованием идентификатора, который предназначен для работы внутри определенного типа данных, возникнет ошибка. Объект может быть вообще не найдет, либо система найдет сразу несколько разных объектов. К этой особенности 1С нужно относиться очень внимательно.
Еще одна проблема: нет возможности привязаться к уникальному идентификатору.
Например, системой-источником является сайт, и на нем не предусмотрено отдельное поле для информации о клиенте, она идет в общем тексте заказа. В этом случае придется выбрать какой-то другой вариант идентификации, например, по email.
При интеграции очень важно выбрать в источнике одно из полей, которое и станет уникальным идентификатором.
Я считаю хорошим тоном дублирование этого идентификатора в двух системах. Например, если я делаю выгрузку информации из CRM в 1С, то поле-идентификатор из CRM я копирую в систему 1С. В дальнейшем весь поиск и интеграция производится по этому полю быстро и просто.
В принципе, это не обязательное действие. Более того, вы будете хранить даже избыточные данные, так как у вас есть нужная информация в одной из систем, но такое дублирование повышает надежность работы обеих программ и является удобным решением для интеграции и последующей обработки данных.
Например, по идентификатору, который идентичен источнику, поиск будет производиться проще и быстрее, так как он не будет требовать дополнительной обработки. Кроме того, если что-то случится с базой данных одной из систем, благодаря дублирующимся идентификаторам сопоставить данные будет намного проще.
Формат выгрузки
Для обмена данными используются самые разные форматы. Это может быть JSON, XML, CSV, TXT, прямой доступ к базе и т.д. У меня в этом вопросе нет каких-то определенных предпочтений. Я считаю, что здесь нужно исходить из рациональных требований проекта.
Постобработка
Итак, обмен данными прошел успешно. Что дальше? Я считаю, что это еще не финал интеграции, так как пользователю мало того, что данные появились в системе. Обычно ему требуется, чтобы с этими данными выполнялись какие-то действия. Что именно нужно клиенту, следует уточнить у него. Но всегда надо помнить о том, что вы работаете для пользователя, для того, чтобы ему было удобно.
Кроме действий, которые нужно выполнить в приемнике, также часто требуется после завершения успешной передачи данных выполнить определенные действия в источнике. Что именно потребуется, вам также расскажет пользователь.
Например, это может быть уведомление клиента о том, что его заказ успешно прошел выгрузку и отправлен в обработку. И здесь также может быть использовано sms, электронное письмо или просто изменение статуса заказа в системе.
Тестирование интеграции
С моей точки зрения интеграция – это часть (иногда частный случай) внедрения программного обеспечения. И здесь, как и для любой другой работы по внедрению ПО, потребуется тестирование программистом, потом – лично консультантом, а также различные варианты тестирования вместе с пользователями. Об этом я подробно писал в статье Внедрение программного продукта. Особенности работы бизнес-консультанта. Часть III. Финальная.
Отличие односторонней и двусторонней интеграции
На самом деле, принципиальных отличий у односторонней, двусторонней или многосторонней интеграции не существует. Суть процесса остается прежней, просто в разные моменты времени приемник и источник меняются ролями. Единственное важное правило, которое я ввел для себя и вам также советую: при двухстороннем обмене необходимо хранить уникальный идентификатор для всех систем, которые участвуют в интеграции. И я считаю, что его также стоит дублировать в обеих системах.
Сегодня я постарался кратко рассказать об особенностях процесса интеграции, с которыми я лично сталкиваюсь на практике. Я надеюсь, что статья оказалась для вас полезной, а если возникнут какие-то вопросы, я, как и всегда, готов на них ответить.