Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kniga_Osnovy_informatiki_i_informatsionnyh_tehn....doc
Скачиваний:
46
Добавлен:
21.04.2019
Размер:
2.84 Mб
Скачать

15.3. Серверы BizTalk как основа средств интеграции информационных систем

Интеграция информационных систем бизнес-партнеров реализуется на основе технологии серверов BizTalk, которая в настоящее время стала стандартом для реализации подсистем информационного обмена.

Инициатива BizTalk отражает стремление Microsoft упростить интеграцию бизнес-процессов внутри организаций и между разными компаниями на основе стандартных Internet-протоколов и форматов. Сюда входят:

– BizTalk Framework,

– межотраслевые инвестиции, например, в создание библиотеки бизнес-документов BizTalk.org,

– продукты и инструментальные средства для разработки, выполнения и управления распределенными бизнес-процессами.

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

BizTalk Framework, впервые представленная в марте 1999 г., упрощает обмен информацией между приложениями масштаба предприятий и позволяет взаимодействовать с торговыми партнерами и заказчиками через Internet. Раньше это было затруднительно из-за отсутствия единой технической терминологии, описывающей бизнес-данные и бизнес-процессы. Эта проблема характерна для всех отраслей индустрии, потому что на каждом предприятии данные используются по-своему.

BizTalk Framework включает спецификации для реализации бизнес-документов на основе XML-схем и набора XML-тэгов, позволяющих BizTalk-совместимым приложениям обрабатывать передаваемую информацию. При этом они служат как бы «конвертами», в которых пересылается деловая информация. Microsoft, другие компании-поставщики программного обеспечения и органы стандартизации будут создавать на основе BizTalk Framework согласованные XML-схемы, которые позволят интегрировать различные бизнес-системы независимо от того, какие платформы, операционные системы и технологии они используют.

BizTalk предлагает набор правил и исходный набор тегов для создания схем электронного документооборота, а также рекомендаций по созданию собственных наборов тегов для обмена информацией с бизнес-партнерами, определяет единый подход к применению XML. Документы рассматриваются как сообщения, которыми обмениваются бизнес-процессы, включая методы создания документов и их маршрутизацию. BizTalk обеспечивает механизм «почтовой рассылки» XML-документов.

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

Документ BizTalk представляет собой сообщение в формате SOAP, в теле которого содержится один или более бизнес-документов (рис. 3.12). Его можно рассматривать как расширение документа SOAP. Спецификация BizTalk содержит несколько пространств имен, каждое из которых позволяет решить определенные задачи. Теги этих пространств имен называют бизнес-тегами (BizTags). Документ содержится в элементе SOAP Envelope – корневом элементе документа. В состав этого документа входит необязательный элемент Header и обязательный элемент Body. В сообщении BizTalk элемент SOAP:Header обязателен, так как он содержит некоторые обязательные бизнес-теги. Элемент SOAP:Body содержит бизнес-данные, состоящие из одного или нескольких документов.

Документ BizTalk не выполняет никаких функций, пока не отправлен. Транспортировка документа – задача транспортного конверта, в роли которого может выступать практически любой протокол электронной передачи, включая HTTP, SMTP и FTP (спецификации BizTalk 2.0 описывают только транспортировку документов с использованием HTTP).

Подход к разработке документов с использованием пространств имен и схем XML позволяет создавать виртуальные конверты с виртуальными документами внутри.

Синтаксис определения типа документа (DTD) допускает наличие только одного определения, а документ BizTalk фактически содержит два типа документа, для чего используется сокращенный синтаксис схем данных (XML Data Reduced, XDR). Таким образом, обработка транзакций BizTalk на основе синтаксиса определения типа документа невозможна.

При получении документа сервер BizTalk приступает к его чтению и анализу. В первую очередь он считывает бизнес-тег dlv:to, чтобы выяснить, кому предназначен документ. Затем сервер BizTalk, возможно, займется анализом и обработкой данных, внесением изменений в БД, передачей «вложенного» документа на обработку соответствующему приложению и т.п. Тип обработки целиком определяется бизнес-процессами получателя сообщения.

XML – мощное средство обработки бизнес-транзакций. XML описывает транзакцию, применяя две независимые схемы: конверт и бизнес-документ. BizTalk совместим с любыми спецификациями бизнес-документов. Это открытый стандарт, доступный всем организациям.

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

Сервер BizTalk в общем случае должен удовлетворять следующим требованиям:

– Поддержка XML (вся инфраструктура BizTalk базируется на XML).

– Сервер BizTalk может быть реализован на любом языке программирования и в любой ОС.

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

– BizTalk-сервер должен поддерживать различные способы доставки документов, работать по различным протоколам (HTTP, FTP, SMTP), передавать данные по факсу, выводить документы на печать и т.п.

– BizTalk-сервер должен обеспечивать защиту информации при передаче (с помощью протоколов S/MIME, PKCS, HTTPS или с помощью дополнительных уровней защиты, например, с помощью электронных подписей).

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

– Сервер BizTalk должен реализовывать несколько вариантов обработки для получаемых документов. Серверы высокого класса включают средства создания потоков обработки документов и управления этими потоками.

– BizTalk-сервер должен обеспечивать возможность синхронной и асинхронной связи.

– Сервер BizTalk должен обеспечивать работу с очередями сообщений.

– BizTalk-сервер должен поддерживать назначение параметров доставки документов BizTalk и их передачу в пакетном режиме в соответствии с требованиями партнеров.

– Сервер BizTalk должен иметь возможность отслеживания выполнения транзакций, включая:

 отслеживание отдельных документов и пакетов документов;

 выявление неверно составленных и недостоверных документов;

 протоколирование операций над документами;

 возможность опрашивать БД протоколирования по отдельным документам, партнерам, виду деятельности и т.п.;

 хранение данных, выбранных пользователем, на основе которых можно создавать отчеты.

– Сервер BizTalk должен отслеживать все аспекты создания и обработки транзакций с различными партнерами (с учетом конкретных условий).

– BizTalk-сервер должен быть масштабируемым. Бизнес-логику следует размещать на среднем уровне, обеспечивая обращение к ней по интрасети.

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

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

– Сервер BizTalk должен уметь обрабатывать EDI-транзакции.

– Сервер BizTalk должен обладать хорошо развитым интерфейсом для организации взаимодействия с другими приложениями.

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

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

Microsoft® BizTalk Server 2000 – решение в области интеграции бизнес-процессов, которое поддерживает BizTalk Framework и интегрирует приложения в рамках как отдельных, так и нескольких предприятий через Internet за счет обмена деловыми документами и информацией в формате XML.

Архитектурно сервер интеграции состоит из двух основных подсистем:

– системы связи приложений BizTalk Messaging и

– системы управления бизнес-процессами BizTalk Orchestration.

Подсистема BizTalk Messaging решает следующую задачу: получение документа по одному транспортному протоколу в одном формате представления, преобразование его в другой формат и отправка документа в новом формате по другому транспортному протоколу. Одновременно со своей основной задачей BizTalk Messaging позволяет задействовать средства обеспечения безопасности – проверку цифровой подписи и расшифровку пришедшего документа, а также шифрование и подпись отправляемого, ведение журнала прошедших документов (целиком или только выделенных полей).

Что требуется для создания связи между двумя приложениями при помощи BizTalk Messaging? Прежде всего необходимо описать формат документов, получаемых на выходе одного приложения и подаваемых на вход другому. Для решения этой задачи в состав BizTalk Server входит приложение BizTalk Editor, позволяющее создать схему документа, во многом похожую на XDR-схему, которая используется для описания XML-документов. Но схемы BizTalk позволяют описать и формат хранения документа – например, плоский файл (позиционированный или с разделителями), EDIFACT или EDI/X12 и, естественно, XML. Если же приложение сохраняет файл в каком-то не поддающемся описанию двоичном формате, существует возможность написать собственный синтаксический анализатор, преобразующий документ в XML и обратно.

Описав формат документов, попадающих на вход и выход BizTalk Server, необходимо описать их преобразование из одного формата в другой. Для этой цели служит приложение BizTalk Mapper, позволяющее описать преобразование при помощи стандарта XSL transformation (XSLT). При этом можно использовать функции, называемые в BizTalk Mapper Functoid, которые не только выполняют простые математические и строковые операции над данными, но и позволяют в процессе преобразования обращаться в базу данных, производить операции над множеством значений (агрегатные функции) и т.д. Если необходимо реализовать нестандартную операцию, можно реализовать собственные функции Functoid на языке VBScript.

После описания документов и преобразования необходимо сконфигурировать подсистему BizTalk Messaging, сообщив ей способ получения документов у приложения-источника и способ отправки преобразованных документов приложению-приемнику. BizTalk Server поддерживает широкий набор транспортных протоколов, по которым можно получать и отправлять документы. Среди них:

– транспортные протоколы Internet (HTTP и SMTP);

– файловый транспортный сервис (BizTalk Server может забирать документы из определенной папки файловой системы и сохранять обработанный документ в определенной папке);

– транспортный сервис MSMQ, позволяющий забирать и отправлять сообщения в очередь (а если использовать средства трансляции сообщений MSMQ-MQSeries, появляется возможность интеграции с наследованными системами и мэйнфреймами).

Если ни один из этих способов не подходит, можно написать собственный COM-компонент, реализующий любой другой транспорт или интегрирующийся с приложением нестандартным способом.

Для управления конфигурацией BizTalk Messaging служит приложение BizTalk Messaging Manager.

При создании схемы взаимодействия приложений используются следующие понятия:

Document definition (описание документа), содержащее описание документа, ссылку на схему документа и указание, какие поля документа подлежат сохранению в журнале;

Envelope (конверт), позволяющий транспортировать документы нестандартного формата, а также вкладывать в посылку маршрутизирующую информацию, если сам документ ее не содержит;

Organization и Application (организация и приложение) – описывают источники и приемники сообщений, содержат идентификаторы, позволяющие адресовать документы;

Channel (канал), в который попадают входящие документы. В канале выполняется обработка входящего документа и, при необходимости, преобразование его в другой формат, описанный в схеме преобразования;

Port и Distribution List (порт и список рассылки) – каждый канал заканчивается портом или списком рассылки, позволяющим описать транспорт и получателя документа (организацию или приложение).

Создав с помощью BizTalk Messaging Manager схему взаимодействия, ее можно сохранить в базе данных хранения конфигурационной информации. После этого каждый документ, попавший в BizTalk Server по любому из транспортных протоколов или полученный через COM-интерфейс, будет обработан подсистемой BizTalk Messaging и отправлен по назначению. Перед отправкой документ будет расшифрован по сертификату отправителя, преобразован в другой формат и зашифрован по сертификату получателя; информация о нем будет сохранена в базе данных журнала.

Таким образом одна только подсистема BizTalk Messaging уже решает целый класс задач, очень часто возникающих при интеграции систем бизнес-партнеров или разнотипных приложений внутри одной организации. Однотипное решение этих задач, с использованием лишь одного приложения, позволит сэкономить значительные средства.

Подсистема BizTalk Orchestration – реализует управление приложениями бизнес-процессов и их взаимодействием.

Назначение подсистемы BizTalk Orchestration – управление «оркестром» приложений, «дирижирование» приложениями внутри одной организации или взаимодействием сразу нескольких организаций между собой.

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

Как мы уже отметили выше, с автоматизацией каждого из этих элементов, составляющих бизнес-процесс в целом, успешно справляется подсистема BizTalk Messaging, но при этом остается неразрешенной и неавтоматизированной задача связывания их воедино. А ее как раз и позволяет решить подсистема BizTalk Orchestration.

В состав BizTalk Server 2000 входит приложение BizTalk Orchestration Designer, предназначенное для описания модели бизнес-процесса и управления им. Процесс разбивается на последовательность действий (Actions), принятия решений (Decision), многократного повторения какого-либо действия (While), параллельного выполнения нескольких задач (Fork и Join) и (как же без этого!) транзакций (Transaction). В скобках приведены не просто переводы терминов, а названия блоков Orchestration Designer, из которых строится бизнес-процесс.

Бизнес-процесс упрощенно можно представить в виде блок-схемы.

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

Так, пользовательский интерфейс BizTalk Orchestration Designer (реали­зованный на базе Microsoft Visio 2000) состоит из страницы описания бизнес-процесса, разделенной на две части: слева – бизнес процесс из блоков действий и принятия решений, справа – его реализация, а посередине – привязка одного к другому. Вторая страница содержит описание используемых данных.

Для реализации бизнес-процесса могут использоваться и такие блоки, как очередь MSMQ, компонент BizTalk Messaging, COM-компонент, а также COM-компонент, реализованный на языке исполнения сценариев (VBScript).

Между собой компоненты описания бизнес-процесса и компоненты реализации связываются через порты и сообщения (но это не те порты и сообщения, что используются в BizTalk Messaging, несмотря на одинаковые названия). Даже вызов COM-компонента представляется как отправка сообщения с входными параметрами и получение ответного сообщения с выходными параметрами метода.

Созданная с помощью BizTalk Orchestration Designer бизнес-модель компилируется в язык XLANG (язык выполнения сценариев на базе XML), который впоследствии исполняется COM+-приложением XLANG Scheduler. За исполнением сценария можно проследить при помощи специального приложения-монитора, позволяющего контролировать все происходящие при этом процессы и определять его текущее состояние.

Во время исполнения бизнес-процесс может приостанавливаться на длительное время (например, если отслеживается процесс доставки товара до получения подтверждения). Для сохранения состояния процесса используется база данных на SQL Server. Для этого применяемые COM-компоненты должны поддерживать сохранение своего состояния (через стандартный интерфейс IPersist).

Таким образом, многие задачи, решаемые сейчас каждый раз заново при управлении бизнес-процессом внутри одной организации, а также при интеграции бизнес-партнеров, могут решаться существенно проще с использованием сервера интеграции приложений. Таким сервером может стать новый продукт Microsoft BizTalk Server.

Автоматизация управления бизнес-процессами ИС учреждений или организации может быть реализована на основе технологии Workflow.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]