Интеграция приложений в системах передачи

on

ВведениеВ статье рассмотрены наиболее распространенные подходы к интеграции приложений, а также системы для осуществления интеграции, показаны основные проблемы, возникающие при создании СПТИ, и рассмотрены вопросы гарантированности доставки информации и управления СПТИ. Для этого на первом этапе выделены наиболее типичные случаи интеграции приложений и передачи информации. К таким случаям относится передача так называемой технологической информации и приложений, связанных с обработкой такой информации. Приведено определение понятия технологической информации и приложений, осуществляющих ее обработку. Проанализированы модифицированные проблемы создания интеграционной инфраструктуры в случае сужения задачи до передачи технологической информации. Показано, что в последнем случае появляется еще как минимум две проблемы, связанные с гарантированностью передачи информации и вопросами управления СПТИ. Подробно рассмотрены вопросы основных функций системы управления СПТИ. На втором этапе алгоритмизации процесса создания интеграционной инфраструктуры произведена формализация понятия качества взаимодействия приложений. Введены формализованные понятия качества взаимодействия двух приложений, выделены две основные составляющие — качественная и количественная. Показано, что наличие СПТИ оказывает влияние на обе группы параметров качества взаимодействия. Рассмотрен процесс вычисления качества взаимодействия двух приложений в случае наличия СПТИ. Корпоративная информационная система (КИС) обычно создается для: • осуществления перехода на качественно новый уровень принятия оперативных и стратегических управленческих решений вследствие наличия полной и оперативной информации о деятельности предприятия; • достижения прозрачности, максимальной контролируемости и управляемости деятельностью компании для владельцев и топ-менеджеров предприятия; • увеличения реальных доходов компании в результате наведения порядка в операциях учета и контроля за финансовыми и материальными потоками (например, выставлении счетов и контроля за дебиторской задолженностью); • сокращения времени между производством работ и выставлением счетов клиентам, а также контроля сроков оплаты этих счетов; • снижения финансовых потерь из-за ошибок в оплате счетов от подрядчиков и поставщиков; • возможности ведения качественной и подробной аналитики, позволяющей определять наиболее выгодные направления развития бизнеса . При этом подход к созданию КИС, основанный на интеграции приложений, позволяет: • сохранить ранее сделанные инвестиции; • сократить временные и финансовые затраты на поддержку и развитие информационного пространства компании; • использовать для решения конкретных задач наиболее эффективные системы отдельных производителей; • легко расширять и развивать отдельные возможности существующих информационных систем с уже накопленными в них данными. Варианты реализации Интеграция «каждый с каждым» Это традиционный подход к интеграции систем, заключающийся в создании специализированных интерфейсов обмена данными для каждой пары обменивающихся приложений. Такой подход хорош для небольшого количества приложений. При большом их числе он практически не работает. Кроме того, он не позволяет строить качественно новые запросы к объединенным данным, т.е. качественного выигрыша от объединения данных нет. Интеграция на уровне пользовательских интерфейсов Подход основан на том, что приложения могут использовать друг друга так же, как их используют люди, а именно (с помощью специальных инструментов) через пользовательский интерфейс (screen scraping). Наиболее распространенный вариант — HTML-scraping, при котором специальный инструмент (например, Composite Application Platform компании CrossWeave) идентифицирует компоненты HTML-документа, полученного в результате работы Web-приложения, и предоставляет эти компоненты для повторного использования и интеграции. Такой подход может успешно применяться для сравнительно простых Web-приложений, но в последнее время он все больше вытесняется Web-сервисами (см. ниже «Интеграция при помощи Web-сервисов») Интеграция на уровне данных Один из самых распространенных в настоящее время подходов — создание хранилищ данных (datawarehouses). Он подразумевает поддержку данных в специальных хранилищах независимо от бизнес-логики, их породившей. Доступ к хранилищам могут получать различные приложения. При этом подходе очень важное значение принимает наличие хорошо документированной (и редко изменяющейся) модели данных. Есть у него и свои недостатки, связанные в первую очередь с: • повышенными требованиями (а значит, стоимостью решения) к аппаратному обеспечению серверов хранилища; • необходимостью переделывать существенную (всю работу с БД) часть приложений (следовательно, увеличение стоимости и возможность внесения ошибок); • необходимостью единой схемы данных для разнородных приложений, что существенно ограничивает гибкость и развитие систем . Интеграция на уровне корпоративных приложений Интеграция на уровне приложений (EAI, Enterprise Application Integration) подразумевает совместное использование исполняемого кода, а не (в отличие от предыдущего подхода) внутренних данных приложения. Программы разбиваются на компоненты, которые интегрируются с помощью стандартизованных программных интерфейсов и специального связующего ПО. При таком подходе из этих компонентов создается универсальное программное ядро, которое используют все приложения. Для каждого приложения создается только один интерфейс для связи с этим ядром, что существенно облегчает задачу интеграции. Полученную в результате систему легче поддерживать и расширять. Повторное использование функций в рамках имеющейся среды позволяет значительно снизить время и стоимость разработки приложений. Кроме того, EAI интегрирует приложения, не внося в них каких-либо модификаций, что гарантирует отсутствие ошибок в их работе. Недостатком этого подхода является сложность (заранее точно неоцениваемая) и, соответственно, стоимость работ . Интеграция при помощи Web-сервисов — cамый современный и быстро развивающийся подход к интеграции приложений. Он основан на обеспечении стандартного для Web-служб интерфейса доступа к приложениям и данным. Например, используя стандартный протокол доступа к объектам SOAP (Simple Object Access Protocol), браузер пользователя может сравнить цены на нескольких сайтах и предоставить клиенту сравнительный отчет. Web-сервисы напоминают подход EAI, но с одним существенным отличием — они существенно более стандартизованы. В большинстве случаев EAI — решения разрабатываются как частные для связи конкретных продуктов. Соответственно, подключить к существующему EAI — решению еще одну систему — большая, трудная и долговременная задача. Поскольку Web-сервисы основаны на общих для W3C — консорциума стандартах, они могут работать всюду, где есть WWW. Результаты построения КИС на основе интеграции: • возможность осуществлять оперативное управление компанией; • сохранение инвестиций в обучение персонала, имеющиеся системы и оборудование; • возможность осуществлять планомерное развитие общекорпоративной информационной системы, интегрируя в нее функциональные компоненты, исходя из приоритетов развития бизнеса компании и потребностей функциональных подразделений, т.е. возможность синхронизировать развитие системы с развитием бизнеса; • возможность при необходимости заменить любой функциональный компонент другим, более соответствующим текущим бизнес-потребностям; • возможность инвестировать в развитие информационных технологий не сразу, а поэтапно, на каждом этапе соотнося вложенные средства с полученным бизнес-эффектом; • возможность снижения общей стоимости автоматизированного рабочего места, включая затраты на создание системы, поддержку рабочих мест и обучение пользователей; • резкое снижение времени сбора информации, необходимой для принятия управленческих и бизнес-решений; • ликвидация противоречивости данных от различных служб; • сокращение времени и трудозатрат на ведение учетных операций; • снижение затрат рабочего времени на формирование промежуточных отчетов, на сверку информации между подразделениями; • ведение консолидированного управленческого учета по нескольким филиалам . Решение задач интеграции абстрактного набора приложений является достаточно сложным и не всегда осуществимым процессом. В связи с этим представляется целесообразным сужение задачи создания интеграционной инфраструктуры (ИИ) путем ограничения количества типов приложений, использующих ИИ. Такое сужение представляется целесообразным и с точки зрения специфики той или иной отрасли. Например, в транспортной области основным производственным процессом является предоставление услуг по перемещению грузов и пассажиров. Следовательно, основные проблемы в информационной сфере транспортной отрасли связаны с вопросами передачи информации о технологических процессах, а также взаимодействия приложений, обрабатывающих эту информацию. Наличие методики, пригодной для интеграции приложений, связанных с обработкой технологической информации, позволит существенно упростить процесс создания КИС в транспортной отрасли. Вместе с тем появляется также набор новых требований, обусловленных спецификой приложений, принимающих участие в обмене информацией. Стоит также ввести понятие технологической информации и дать ее определение. Технологической информацией называется набор данных, созданный и передаваемый в соответствии с определенным алгоритмом в автоматическом или полуавтоматическом режиме. Совокупность программных элементов для работы с технологической информацией, используемых ими аппаратных средств и каналов передачи данных называется системой передачи технологической информации (СПТИ). Ключевым моментом, отличающим СПТИ от других систем обработки информации, является процесс передачи информации. Этот фактор отличает СПТИ от систем автоматизированного управления бизнес-процессами. Последние, как правило, выполняют функции сбора и обработки информации, в то время как СПТИ осуществляет обмен. Схематично мес о СПТИ в рамках интеграционной инфраструктуры показано на рис. 1. Рис. 1. Место СПТИ в интеграционной инфраструктуре Необходимо отметить, что СПТИ в дальнейшем должна быть использована не только для интеграции приложений, работающих с технологической информацией, но и для других приложений. Такой подход позволяет на первом этапе создать СПТИ как инфраструктуру, провести интеграцию приложений, работающих с технологической информацией, после чего использовать инфраструктуру для других приложений. Предложенные выше ограничения, связанные с типом информации и приложений, ведут к новому набору проблем, возникающих при создании интеграционной инфраструктуры. • Проблема разнородности. Разнородность, с точки зрения типа обрабатываемой информации, может не приниматься во внимание вследствие однородности обрабатываемой информации. Тем не менее, задачи, решаемые приложениями, входящими в состав СПТИ, являются различными, в силу чего проблема разнородности, с точки зрения решаемых задач, не теряет своей актуальности. • Проблема распределенности. Качество средств передачи данных в случае СПТИ, как правило, ниже, чем при интеграции приложений, непосредственно используемых пользователями. При разработке СПТИ необходимо принимать во внимание качество и разнообразие типов средств передачи данных. • Гарантированность доставки информации. Является одним из важнейших требований к СПТИ. Это связано со спецификой функционирования СПТИ. Как говорилось выше, СПТИ функционирует в автоматическом или полуавтоматическом режиме, вследствие чего влияние человека сведено к минимуму. В отличие от систем с участием человека, процесс «интеллектуальной» проверки факта доставки информации в данном случае невозможен. Представляются возможным два варианта решения проблемы. В первом -приложения СПТИ реализуют алгоритм проверки факта доставки информации и обработки данного события. Реализация подобных алгоритмов является достаточно трудоемкой, а проверка факта доставки не всегда возможна. Второй вариант заключается в реализации свойства гарантированности доставки на уровне самой СПТИ. В этом случае для контроля доставки может быть использована служебная информация СПТИ, недоступная приложениям, вследствие чего возможности алгоритмов существенно возрастают. Алгоритмы же работы самих приложений при наличии у СПТИ свойства гарантированности доставки существенно упрощаются, а надежность конечных приложений повышается . Наличие свойства гарантированности позволяет использовать СПТИ в системах, обеспечивающих управление сложными и критическими технологическими процессами. Разработка инфраструктуры для интеграции приложений и передачи технологической информации является достаточно ресурсоемкой задачей. Вследствие этого максимальный эффект будет достигнут в случае интеграции в СПТИ максимального количества приложений. Однако увеличение количества приложений приведет к увеличению количества передаваемой информации. При этом для взаимодействия ряда приложений фактор времени доставки информации не является определяющим, в то время как для других приложений данный параметр, наряду с гарантированностью доставки, является одним из важнейших. Таким образом, одна и та же интеграционная инфраструктура должна предоставлять возможность организации разных уровней взаимодействия различной приоритетности. Таким образом, можно говорить об организации, в рамках единой системы передачи информации, виртуальных каналов передачи информации с различным уровнем приоритетности. При этом данные каналы являются независимыми, вследствие чего передача информации по одному каналу никак не повлияет на передачу сообщений другого уровня приоритетности по другому каналу. Формализация задачи управления системой передачи технологической информации Вопрос управления СПТИ с точки зрения качества обмена информацией является одним из самых важных при разработке архитектуры СПТИ. Для более четкой постановки задачи необходимо формализовать понятия качества обмена информацией и качества СПТИ . Рассмотрим на первом этапе упрощенную модель взаимодействия в СПТИ, учитывающую лишь 2 приложения (рис. 2). Рис. 2. Упрощенная модель взаимодействия, учитывающая 2 приложения При данных допущениях можно считать, что СПТИ, с точки зрения обмена информации, представлена каналом передачи данных. Введем понятие качества взаимодействия приложений А1 и А2. Под качеством взаимодействия будем понимать, во-первых, степень удовлетворенности требованиям, выдвигаемым к процессу взаимодействия между приложениями, и, во-вторых, числовые характеристики обмена информацией между А1 и А2. Качество интеграции Количественные характеристики . (1) Определение QA1A2 в соответствии с (1) позволяет учитывать две основные характеристики систем передачи технологической информации — удобство интеграции приложений и свойства обмена информацией между приложениями. Далее можно определить: (2) где qi ? {0,1}, причем qi в (2) являются характеристиками, показывающими наличие или отсутствие того или иного свойства, необходимого для решения задачи интеграц