Держава у XXI сторіччі > Статті та дослідження > Технології інтеграції державних інформаційних систем і організації міжвідомчої взаємодії

Огляд технологій інтеграції інформаційних систем


Автор:
  • А. В. Данілін, менеджер по роботі з державними організаціями представництва Microsoft у Росії і СНД

Опубліковано: 2003 рік

Це розділ присвячено технічній деталізації підходів до інтеграції інформаційних систем, що можуть бути використані для федеральних міжвідомчих проектів, проектів на рівні регіону, міста або окремого великого відомства.

Основні компоненти архітектури міжвідомчої взаємодії

Корпорація Microsoft була головним виконавцем ряду проектів, де забезпечення міжвідомчого інформаційного обміну відігравало першорядне значення, включаючи проект зі створення урядового шлюзу Великобританії. Ця робота дозволила накопичити унікальний досвід, який сконцентрований в архітектурі міжвідомчої взаємодії, що включає наступні основні компоненти:

Для пояснення терміну веб-служба наведемо приклад того, яким чином дві роз'єднані відомчі системи можуть бути представлені у вигляді веб-служб і які послуги вони можуть надавати один одному в процесі взаємодії. Відомча система документообігу по своїй суті складається з набору певних послуг. Розглянемо процес обміну інформацією між системами документообігу двох різних державних установ. Система першої установи може переслати певний документ у систему другої установи і запросити деяку відповідь. У якості однієї з послуг система документообігу другої установ може, наприклад, повернути свій внутрішній реєстраційний номер документу, прізвище відповідального виконавця, контрольну дату відповіді тощо. Ще однією послугою може бути публікація і пересилання відповідного документа.

Класифікація технологій інтеграції

На рівні окремої організації проблема інтеграції виникає одразу, як тільки в ній впроваджується кілька корпоративних додатків. Як видно з попереднього розділу, на рівні країни, регіону чи міста надання послуг державою громадянам і бізнесу і реалізація інших ділових процесів у державі вимагає також інтеграції систем і даних.

Можна дати наступну класифікацію технологій інтеграції:

Наступна таблиця показує різницю між згаданими класами систем.

Технологія
Хто приймає рішення про використання
Розв'язувана проблема
Workflow
Керівник департаменту, відділу
Управління документами і пересилання документів
EAI і B2Bi
Керівник департаменту інформаційних технологій
Інтеграція даних
BPM
Вище керівництво організації (бізнес-керівництво)
Поліпшення виконання бізнесів-процесів і підвищення ефективності роботи за рахунок більшої гнучкості процесів

Традиційні технології інтеграції корпоративних додатків EAI і міжвідомчої інтеграції B2Bi базуються на використанні так званого брокера (вузла пересилання, шлюзу) повідомлень. Основу розглянутого раніше Урядового шлюзу Великобританії також складає брокер повідомлень.

Технологічним фундаментом брокера повідомлень є, як правило, програмне забезпечення проміжного шару пересилання повідомлень (Messaging-Oriented Middleware, MOM), що забезпечує транспорт доставки інформації і даних між прикладними системами. Прикладом такого програмного забезпечення є «сервер черг повідомлень» MSMQ (Microsoft Message Queuing). Продукти цього класу забезпечують транспорт гарантованої доставки повідомлень між додатками в територіально розподіленому середовищі. Підхід до інтеграції додатків на основі продуктів класу MOM став стандартним в сфері інтеграції корпоративних інформаційних систем наприкінці 90-х років.

Базова ідея цієї технології полягає в наступному. Припустимо, що існує кілька додатків, зв'язаних певним комунікаційним середовищем, але, можливо, не дуже надійним. Один додаток (наприклад, система документообігу A) повинен переслати інформацію/документ іншому додатку (системі документообігу B). Система A передає документ серверу пересилання повідомлень і «забуває» про нього. Сервер пересилання повідомлень забезпечить гарантовану й однократну доставку інформації в систему B.

Якщо при цьому інтегровані додатки знаходяться всередині організації в рамках однієї корпоративної мережі, то забезпечується пересилання інформації в режимі, «близькому до реального часу».

Якщо інтегруються додатки, які знаходяться в різних організаціях, то принцип «черги повідомлень» і гарантованої доставки, що реалізується MOM-продуктами, забезпечує асинхронна взаємодія і так зване «слабке зв'язування» . Додаток організації A не вправі очікувати на миттєву доступність додатку організації B, але програмне забезпечення гарантованої доставки повідомлень бере на себе відповідальність за доставку інформації між ними.

Роль урядового шлюзу в інтеграції інформаційних систем

Необхідність наявності такого інтеграційного елементу, як урядовий шлюз, не є очевидною в умовах, коли надання послуги не вимагає інформаційного обміну між відомствами або коли число залучених до взаємодії відомств невелике. Зрештою, при невеликій кількості відомств можна організувати взаємодію за принципом «кожний з кожним» і написати відповідні незалежні інтерфейси обміну.

Але на етапі реалізації надання державою електронних послуг, що вимагають виконання транзакцій і пов'язаного з ними інформаційного обміну між декількома відомствами, виникає необхідність створення служби інтеграції інформаційних систем різних відомств між собою. У противному разі задача інтеграції за принципом «кожний з кожним і усі з усіма» призведе до квадратичного росту складності, а, виходить, і вартості такої інтеграції. Наявність одного вузла, однієї точки інтеграції на основі брокера повідомлень дозволяє впоратися з ростом складності задачі інтеграції в міру підключення нових інформаційних систем. По суті справи це є однією з задач, виконуваних урядовим шлюзом Великобританії. При цьому шлюз виконує не тільки маршрутизацію повідомлень (які є XML-документами) між інформаційними системами різних державних структур, але і виконує також задачу трансформації цих повідомлень на основі відповідних XML-схем з метою забезпечення сумісності інформаційних систем.

Компоненти брокера повідомлень

Сьогодні брокери повідомлень можуть поєднувати велику кількість взаємодіючих систем. Результатом цього є те, що компанія Gartner Group називає «Корпоративною нервовою системою», тобто інфраструктура брокера повідомлень, до якої легко можуть бути підключені по суті справи будь-які додатки, і яка забезпечує взаємодію між ними в режимі, близькому до реального часу.

Изображение GIF  Мал. 1. Брокер повідомлень

Брокер повідомлень інтегрує гетерогенні додатки і сховища даних і надає три типи служб:

Архітектура брокера повідомлень може включати дві додаткові високорівневі служби:

Крім цього, брокери повідомлень, як правило, підтримують роботу зі специфічними адаптерами для різних типів додатків і даних:

Наявність зазначених додаткових високорівневих служб, а також засобів для моделювання процесів (графічних засобів опису і модифікації процесів), по суті справи, перетворює системи EAI і B2Bi на системи класу BPM (системи управління бізнес-процесами).

Сервер Microsoft BizTalk Server являє собою саме таку систему управління бізнес-процесами (BPM), що забезпечує широкий набір засобів для визначення складних бізнесів-процесів, у яких можуть брати участь зовнішні організації. BizTalk Server містить у собі:

Базові принципи інтеграції з використанням XML і веб-служб

Отже, основою міжвідомчої інтеграції може служити інтеграційне програмне забезпечення і системи управління бізнес-процесами (BPM), такі як, наприклад, Microsoft BizTalk Server. При цьому XML претендує на роль універсального формату даних при такій інтеграції. А самі відомчі системи, як знов розроблювані, так і успадковані, можуть бути реалізовані у вигляді так званих веб-служб або можуть зробити свої інтерфейси доступними у вигляді веб-служб.

Изображение GIF  Мал. 2. Гіпотетична система видачі посвідчення водія, що використовує XML

Щоб прояснити суть цих підходів до організації міжвідомчої взаємодії та інтеграції інформаційних систем, розглянемо прості базові поняття, пов'язані із стандартами XML і веб-службами. Перше і головне, що слід зазначити, — це те, що всі описані нижче стандарти є відкритими, а в їхній розробці беруть участь такі провідні ІТ-компанії, як Microsoft і IBM, а також органи стандартизації Інтернет-співтовариства в особі консорціуму World Wide Web Consortium (W3C) і організації UDDI.org. Це має особливу важливість, оскільки держава повинна орієнтуватися на відкриті стандарти інтеграції.

Друге. Дані технології не залежать від платформи і не вимагають від організацій, чиї додатки інтегруються, використання таких загальних платформних продуктів, як операційні системи і СУБД.

По своїй суті XML — це мета-мова для представлення даних. Термін «мета» використовується тому, що XML-документ не тільки містить у собі дані, але також несе інформацію, що описує ці дані. XML є такою ж універсальною і базовою технологією для представлення, трансформації і обміну даними, як транспортний протокол Transmission Control Protocol/Internet Protocol (TCP/IP) для Інтернету.

XML надає загальний формат для пересилання даних між додатками. При цьому самі дані можуть як і раніше зберігатися в прикладних системах і базах даних у своєму внутрішньому форматі, але в разі потреби їхнього пересилання в інший додаток вони будуть трансформуватися у формат XML, як у проміжний формат, що розуміється всіма системами. Уже сьогодні стандарт XML підтримується постачальниками основних платформних програмних продуктів.

Усе це не усуває необхідності використання програмного забезпечення проміжного шару пересилання повідомлень (MOM), про яке мова йшла вище, оскільки потік XML-даних і документів повинен бути відповідним чином маршрутизований і, можливо, трансформований для того, щоб бути зрозумілим цільовим додатком.

При цьому XML-дані мають текстовий формат і можуть аналізуватися мережними екранами і проходити за межі організацій.

Таким чином, XML пропонує єдине рішення як для інтеграції корпоративних додатків (EAI або A2A), так і для міжвідомчої B2Bi-інтеграції.

Одна з тенденцій полягає в тому, що найбільш передові продукти інтеграції класу систем управління бізнес-процесами (BPM), такі як Microsoft BizTalk Server, не тільки використовують XML як формат обміну даними, але також використовують синтаксис мови XML для опису бізнес-логіки і контролю маршрутів і потоків проходження повідомлень і документів. Зокрема, Microsoft, IBM і ряд інших постачальників розробили мову Business Process Execution Language for Web Services (BPEL4WS) як стандартну XML-мову опису бізнесів-процесів. Це забезпечує те, що нові додатки буде ще легше інтегрувати в загальні бізнес-процеси, а сама логіка бізнес-процесів може бути легко доступною для модифікації. Це також дає можливість створення репозитарія стандартних державних бізнесів-процесів, що лежить в основі електронних адміністративних регламентів.

Ще одна тенденція полягає в тому, що прикладні системи все в більшому ступені реалізуються у вигляді компонентів, так званих веб-служб, функціональні можливості яких доступні для користувачів і інших додатків по мережі Інтернет/інтранет.

У цьому плані системи управління бізнес-процесами (BPM) і технологія веб-служб прекрасно доповнюють один одного. Прикладні системи, що інтегруються, і їхні модулі можуть бути реалізовані в якості чітко визначених служб. Системи BPM забезпечують виконання потоків робіт як ланцюжків взаємозалежних служб, «склеюючи» разом служби в єдині бізнес-процеси.

Нижче наводиться інформація про ключові стандарти веб-служб: XML, SOAP, WSDL і UDDI. Але спочатку розглянемо коротко процес взаємодії додатків у децентралізованому, розподіленому середовищі. Додаток, якому потрібен доступ до іншого додатку як до веб-служби, використовує регістр (каталог) UDDI для виявлення потрібної йому веб-служби (інформація в регістрі UDDI попередньо повинна бути опублікована організацією, що бажає зробити свою веб-службу публічно доступної). У цьому ж регістрі додаток визначає необхідні для взаємодії інтерфейси. Інтерфейси публікуються з використанням стандарту WSDL. Після цього за допомогою інтерфейсу WSDL додаток викликає веб-службу і застосовує SOAP і XML як конверти і формати для передачі інформації, а протоколи HTTP і SMTP — як транспорт для її доставки.

Таким чином, технологія веб-служб забезпечує загальний формат даних (XML), спосіб доставки і транспортування даних по Інтернету і інтранет-мережі (SOAP), а також спосіб виявлення (UDDI) і опису (WSDL) служб.

Основні стандарти XML і веб-служб

Інтеграція інформаційних систем на основі веб-служб пов'язана з використанням чотирьох ключових стандартів:

Основи XML

На відміну від «закритих» стандартів інформаційного обміну, наприклад Electronic Document Interchange (EDI), XML був спроектований таким чином, щоб фахівець, що читає XML-документ, міг зрозуміти його зміст. Наступною основною ідеєю розробників було створення такої мови, яка б забезпечувала можливість опису структури інформації і документів, що дозволяє не тільки людям, але і системам інтерпретувати зміст документа і витягати необхідну інформацію.

При цьому використовується набір так званих тегів, що описують структуру інформації.

Наведений нижче приклад показує, як «Президент Іван Іванович Іванов» може бути «описаний» у вигляді XML-документа.

<?xml version="1.0"?>
<OFFICE RANK="1">Президент></OFFICE>
<NAME>
	<FIRST>Іван></FIRST>
	<MIDDLE>Іванович></MIDDLE>
	<LAST>Іванов></LAST>
</NAME>

XML-тегі використовуються для того, щоб показати, який тип даних являє собою кожне з цих чотирьох слів: «Президент», «Іван», «Іванович», «Іванов». Тег NAME застосовується для структурування трьох тегів більш нижчого рівня ієрархії FIRST (для опису імені), тег MIDDLE — для опису по-батькові і тег LAST — для опису прізвища. Усі XML-документи мають можливість структурувати дані аналогічним ієрархічним способом. Наведений тут приклад містить у собі також використання атрибута даних — ранг офісу «1», призначений офісу Президента.

Ключовими елементами XML є тегі, елементи, атрибути, схеми і простори імен.

Тег — це, як правило, слово, обмежене кутовими дужками, наприклад. Тегі використовуються парами для позначення початку і кінця елементу. Тег, що закінчує елемент — цей той же самий тег, що починає елемент, але тільки він починається із символу косої риски. Кожний елемент містить текст, що має відношення до даного тегу. Так, в елементі

<Account><nobr>729—1269-4785</nobr></Account>

текст між двома тегами може являти собою номер якогось банківського рахунка чи єдиний номер громадянина для виплати соціальної допомоги. Аналогично, в елементі

<Balance>3822.55</Balance>

текст між тегами може представляти кількість грошей, що знаходяться на рахунку, або позначати розмір соціальної допомоги. Остаточна інтерпретація того, що означає той чи інший тег — номер рахунка в банку або розмір соціальної допомоги — залежить від домовленостей розробників системи або від використання так званої схеми, що забезпечує правила інтерпретації XML-документів.

Маючи необхідний набір тегів можна створити XML-документ, що буде в зрозумілий спосіб описувати певну інформацію. Наприклад, можна створити простий документ, що містить інформацію про людину, номер для виплати йому соціальної допомоги і її розмір, використовуючи ті тегі, які щойно були описані вище.

Початковий тег елементу може також містити один і більше атрибутів. Кожен атрибут описує певний аспект відповідного елементу. Так, в елементі

<OFFICE RANK="1">Президент</OFFICE>

атрибут типу показує, що офісу Президента наданий вищий статус, у даному випадку — «1». Елементи є основою XML-документів. Але тут виникає питання: а як визначати зміст усіх цих елементів? Повинен існувати спосіб опису груп елементів (і, виходить, тегів), що будуть використовуватися для певних цілей. Наприклад, який набір тегів повинен використовуватися в країні для опису громадянина (його імені, дати народження, адреси проживання та ін.) у базі даних, що використовується для забезпечення виборів чи в інших системах.

Для цього призначена так звана схема. Кожна схема визначає один чи більше елементів, а також правила їх застосування. Схема, наприклад, може визначати елемент Envelope (Конверт), обмежений тегами і потім визначати те, що цей елемент може містити всередині себе одне чи кілька входжень елемента Body (Тіло документа), обмежене тегами і .

Якби один документ містив тегі, що визначаються тільки однією схемою, то життя було б дуже простим. У загальному випадку, однак, в одному документі містяться елементи, визначені двома і більш схемами. Схеми можуть створюватися незалежними людьми й організаціями, тому існує імовірність того, що один і той самий тег у кожній схемі використовується для позначення різних понять. Наприклад, тег в одній схемі може бути визначений як номер рахунка, в іншій схемі він може використовуватися як єдиний номер громадянина для виплати соціальної допомоги. Для того, щоб було можливо використовувати різні схеми в одному й тому самому документі, повинен існувати спосіб асоціювання елемента з тією схемою, у якій він визначений. Для забезпечення такого зв'язку використовується механізм простору імен (namespaces).

Простір імен дає спосіб забезпечення глобальної унікальності імен для наборів елементів. Кожний простір імен визначається за рахунок використання Єдиного ідентифікатора ресурсів (Uniform Resource Identifier, URI), що виглядає як знайоме багатьом URL-посилання на ресурси Інтернету (Uniform Resource Locater, URL). Простір імен, у якому визначений елемент, може бути специфікований з використанням атрибута.

Наприклад, в елементі

<Account xmlns="http://www.qwickbank.com/bank“>
<nobr>729-1269-4785</nobr>
</Account>

атрибут xmlns вказує, що елемент Account визначений у просторі імен, заданому URI. Успіх використання XML і веб-служб для інтеграції державних інформаційних систем залежить від здатності досягти загальних домовленостей на рівні країни, регіону, міста тощо із приводу стандартів на тегі для представлення даних у XML-документах. Наприклад, два взаємодіючих додатки повинні однаково трактувати певний тег Person з описом особистої інформації громадянина і всі підрядні атрибути цього тега. Тобто повинен існувати організаційний механізм обговорення і прийняття відповідних схем XML-документів, аналогічний механізму, описаному в розділі „Середовище міжвідомчої взаємодії e-GIF у Великобританії“ нижче в даному документі.

Нарешті, хоча це і не так важливо зі смислової точки зору, XML-документ може містити коментарі. Коментарі дозволяють включати інформацію, призначену не стільки для комп'ютера, що обробляє XML-документ, скільки для людини, яка його читає. Коментар у XML-документі виглядає так:

<! — Це XML-документ —>

Безсумнівно, XML містить набагато більше ідей, ніж ті, які щойно обговорювалися. Однак навіть цих знань достатньо, щоб мати базове розуміння того, як XML може використовуватися в якості універсальної мови інформаційного обміну і що таке веб-служби.

Тим, хто хоча б трохи знайомий з мовою розмітки HTML, що використовується для представлення інформації в Глобальній мережі, може бути корисною наступна таблиця, що порівнює мови HTML і XML.

HTML
XML
Тегі попередньо визначені і служать інструкціями для форматування і відображення
Тегі даних не визначені і можуть бути використані як помітки даних у будь-якій ієрархічній структурі
Дані в HTML-документі, загалом, не можуть бути інтерпретовані і оброблені без втручання людини
Дані в XML-документі можуть бути автоматично інтерпретовані і оброблені системою, що підтримує XML
Сильна сторона — відображення інформації за допомогою веб-оглядача
Сильна сторона — забезпечення можливості обміну інформацією
HTML спроектований так, що він може допускати синтаксичні помилки і сфокусований на відображенні інформації
XML спроектований з урахуванням перевірки синтаксичних помилок і забезпечення відповідності структурі даних (чи шаблонам), коли вони задані

Спільні моменти

Особливу цінність представляє можливість трансформування даних XML-документа для відображення на різних пристроях або для відповідності форматові даних конкретного додатка.

Можна мати один екземпляр XML-документа, але зовсім різним образом виводити його на різних пристроях, за допомогою яких користувач намагається одержати до нього доступ. Різні пристрої — ПК, персональні помічники типу iPAQ чи Palm, мобільні телефони — мають різні можливості для відображення інформації, тому той самий XML-документ може бути відображений по-різному, за рахунок використання таблиць стилів (Style Sheet), що описуються з використанням мови XSL (eXtensible Stylesheet Language), що сама по собі використовує формат XML. Це, по суті, текстовий файл формату XML, що надає інструкції з форматування і відображення інформації XML-документа. Таблиця стилів може містити варіації в залежності від типу пристрою, на якому відображається документ.

Изображение GIF  Мал. 3. XML може забезпечити відображення інформації на різних пристроях користувачів

При використанні XML для інтеграції даних між додатками механізм трансформації, відомий як XSLT (XSL Transformation, XSLT) може забезпечити те, що документ типу „Заявка на купівлю“ інформаційної системи організації A буде при пересиланні трансформований в документ типу „Замовлення на постачання“ формату інформаційної системи організації B.

Цей механізм незалежного виконання правил трансформування інформації при пересилання між додатками дуже важливий, оскільки рятує від необхідності внесення змін у додатки в процесі їх інтеграції.

Враховуючи наведену вище інформації про мову XML і інші пов'язані з нею стандарти стає зрозумілим більш точне практичне визначення того, що таке веб-служба, відповідно до визначення компанії Gartner Group: „Веб-служба — це програмні компоненти, які використовують одну або декілька технологій з наступного списку — SOAP, WSDL і UDDI — для виконання розподілених обчислень. Використання кожної з цих базових технологій — SOAP, WSDL або UDDI — становить суть веб-служби. Використання їх усіх разом не обов'язкове“.

Базові принципи застосування XML і веб-служб для організації міжвідомчої взаємодії

Нижче перераховані основні принципи застосування XML і веб-служб для організації міжвідомчої взаємодії:

Изображение GIF  Мал. 4. Технічна модель веб-служб XML як технології інтеграції

Таким чином, ключовим принципом застосування XML для міжвідомчої інтеграції інформаційних систем, у тому числі систем документообігу, є використання веб-служб і регістрів на базі універсального стандарту UDDI. Причому UDDI може використовуватися для створення загальнодоступного регістра не тільки державних інформаційних систем, але і самих державних органів і їхніх послуг, навіть якщо вони надаються традиційним (неелектронним) способом.

На малюнку 14 наведена технічна модель інтеграції відомчих інформаційних систем на основі веб-служб XML. При цьому інтеграційний шлюз може забезпечувати не тільки маршрутизацію повідомлень (брокер повідомлень), але і реалізовувати функції колективного UDDI-регістра доступних державних інформаційних систем, а також реалізовувати функції „брокера веб-служб“, тобто забезпечувати механізм взаємодії між відомчими інформаційними системами як веб-службами.

Microsoft .NET як платформа інтеграції

Чому для проекту створення Урядового шлюзу у Великобританії, аналогічних проектів у Данії і ряді інших країн в якості партнера держави обрали Microsoft і її технології? Коротка відповідь така. Тому що Microsoft сформулювала досить передову концепцію архітектури інформаційних систем під назвою .NET, яку можна визначити коротко в такий спосіб: „Microsoft .NET — це програмне забезпечення для інтеграції інформації, людей, систем і пристроїв на основі технологій XML і веб-служб“.

Платформа Microsoft .NET надає інтегровані засоби розробки, що забезпечують створення додатків у вигляді веб-служб, а також серверні продукти, у яких забезпечена глибока підтримка стандартів XML і веб-служб з погляду інформаційного обміну.

Чому варто використовувати Microsoft BizTalk Server для реалізації архітектури й інфраструктури інтеграції

Основна причина полягає в тому, що BizTalk Server є саме таким сервером інтеграції додатків, що містить потужні графічні засоби проектування процесів інтеграції. Цей сервер підтримує:

Тут варто відзначити масштабованість рішення, запропонованого корпорацією Microsoft для Центрального урядового порталу Великобританії:

Архітектура Урядового шлюзу (на прикладі Великобританії)

Після обговорення основних аспектів використання XML і технології веб-служб можна вдатися до більш детального розгляду практичної реалізації Урядового шлюзу Великобританії.

Архітектура Урядового шлюзу включає наступні основні компоненти:

Тобто Урядовий шлюз у Великобританії взаємодіє не напряму з відомчими інформаційними системами, яких у країні близько 1800, а з серверами інтеграції рівня окремих відомств, що, у свою чергу, забезпечують інтеграцію і маршрутизацію інформації всередині організацій.

Основні функції Урядового шлюзу полягають у наступному:

Изображение GIF  Мал. 5. Загальна схема архітектури Урядового шлюзу

Модель Урядового шлюзу включає наступні компоненти:

Основні принципи проектування Урядового шлюзу у Великобританії полягали в наступному:

Технічні елементи архітектури Урядового шлюзу

Ті, кого не цікавлять технічні питання реалізації архітектури Урядового шлюзу Великобританії, можуть пропустити цей підрозділ і відразу перейти до розділу „Стандарти і єдина архітектура інформаційних технологій для проектів електронного уряду і міжвідомчих проектів“.

Тут розглядаються деякі конкретні деталі кожної з чотирьох складових Урядового шлюзу:

Веб-вузли і портали

Веб-вузли і портали служать систематизованими сховищами веб-форм, що можуть використовуватися громадянами і компаніями для надання інформації державним органам.

Изображение GIF  Мал. 6. Логічна архітектура урядового порталу

Портал надає структуру для всіх хостованих державою форм документів. Там також є загальна служба реєстрації і автентифікації (Registration and Enrollment Portal Authentication).

Підсистема роботи з формами використовує локальне програмне забезпечення проміжного шару, що забезпечує бізнес-функціональність. Можливе також використання веб-служб, що можуть містити загальнодоступні правила реалізації бизнес-логіки для окремих форм. Дані, що вводяться користувачем, зберігаються в базі даних порталу, і після того, як форма заповнена, ці дані використовуються для конструювання XML-документа, що пересилається в Шлюз. Формальне надання (відправлення) документа означає також те, що він відповідає опублікованим для Шлюзу протоколам, що реалізують взаємодію зі Шлюзом. Усі стани виконання транзакції, пов'язані з відправленням (збереженням) документу, також відслідковуються в базі даних порталу.

Форми і перевірки на коректність

Служба форм працює з електронними версіями існуючих паперових бланків. Ці форми можуть відповідати сценарію „Життєві епізоди“, коли одразу декілька державних відомств повинні бути проінформовані про одну й ту ж саму дію громадянина. Наприклад, при реєстрації нової компанії користувач заповнює єдину форму, інформація з який передається в податкову інспекцію, реєстраційну палату тощо.

Технічно ці форми можуть бути представлені як ASP-сторінки або ASP .NET-сторінки, що реалізують логіку за допомогою компонентів проміжного шару на основі COM+ або .NET-служб.

При використанні веб-служб для окремих форм проміжний шар може перенаправляти туди запити. Це створює рівень абстракції, що забезпечує велику гнучкість.

Передача брокеру повідомлень

Після заповнення форми користувач пересилає дані в Шлюз. Дії, виконувані системою, залежать від способу реєстрації користувача: чи використовує він тільки ім'я та пароль або сертифікат.

Ім'я і пароль. Коли користувач вирішив передати дані, компонент бізнес-служби (логіки) на сервері конструює XML-документ, що відповідає опублікованій схемі. Зокрема, заголовок документу містить у собі заповнені поля імені і пароля користувача. Після цього XML-документ через безпечне HTTPS-з'єднання передається на приймаючу ASP-сторінку Шлюзу, де компонент авторизації і реєстрації (R&E-Registration and Enrollment Service) перевіряє права і відповідним чином маршрутизує документ.

Сертифікат. Коли користувач вирішив передати дані, компонент бізнес-служби (логіки) на сервері конструює XML-документ, що відповідає опублікованій схемі. Але в цьому випадку документ пересилається назад веб-оглядачу, де клієнт підключить сертифікат (Private Key, секретний ключ) до специфічних секцій документа і відішле його назад на сервер. Після цього сервер через HTTPS-з'єднання перешле документ на Шлюз, що за допомогою відкритого ключа, отриманого від авторизованого сертифікаційного центра (відправленого разом з документом), перевірить сертифікат і відповідним чином маршрутизує документ.

Веб-служби механізму реалізації правил

Механізм правил надає порталу і серверам інтеграції відомства загальний механізм для перевірки або документу в цілому, або окремих його полів, що теж можливо.

Поширення протоколу SOAP і можливість реалізації SOAP у Microsoft Visual Studio зробило технології веб-служб реальністю. Тепер такі функції, як перевірка форм, можуть здійснюватися по Інтернету, що раніше, як правило, робилося локально. Це дозволить державним клієнтським і серверним системам, а також третім сторонам використовувати загальний набір служб, забезпечуючи більш високий рівень відповідності і гарантію того, що посланий через веб-вузол документ буде прийнятий відомством, для якого він призначається. Це також означає, що якщо змінюється яке-небудь бізнес-правило, то будучи реалізованим як веб-служба, воно одразу ж стає доступним для всіх систем і буде однаково ними використовуватися.

Інтерфейс веб-служб реалізується на основі протоколу SOAP.

Брокер повідомлень і автентифікації

Брокер повідомлень і автентифікації містить дві підсистеми:

Изображение GIF  Мал. 7. Високорівневий погляд на інфраструктуру механізму тразакцій

Підсистема реєстрації і авторизації обслуговує користувачів, що підписалися на послугу, і виконує функцію автентифікації. Механізм транзакцій використовує цю підсистему для автентифікації прийнятих документів, а також керує надійною маршрутизацією документів у відповідні серверні системи. Нижче наводиться більш детальний опис брокера повідомлень. Реєстрація і Авторизація. Ця підсистема керує процесом реєстрації засвідчених документів у Шлюзі, перевіркою введеної інформації на основі даних, представлених серверними системами, підпискою на послуги і поточним управлінням даними про реєстрацію і підписках на послуги.

Механізм транзакцій є головною точкою входу для транзакцій, що повинні виконуватися різними державними структурами. Ці транзакції можуть бути підготовлені клієнтами або шляхом взаємодії на основі веб-оглядача з відомчими чи іншими веб-вузлами, або за допомогою додатків, встановлених на клієнтських машинах. У будь-якому випадку, цілком підготовлена транзакція може бути обладнана цифровим підписом і відправлена на Урядовий шлюз по Інтернету у вигляді форматованого XML-документу, що пересилається по HTTP. Після цього механізм транзакцій перевіряє цілісність отриманого підписаного запиту, викликає службу реєстрації і авторизації для перевірки використаних сертифікатів і підтвердження того, що клієнт має право на запитану транзакцію. Після цього транзакція пересилається на обробку відповідній серверній системі.

Надійна доставка і черги очікування. Відправлення повідомлення на сервер інтеграції відомства (DIS), як правило, здійснюється через інтранет-мережу, яка за замовчуванням не підтримує механізм гарантованої доставки. Відповідно, механізм транзакцій може використовувати систему гарантованої доставки повідомлень, надану сервером BizTalk Server. BizTalk-сервер, що відправляє, пересилає на сервер інтеграції відомства документ (як надійне повідомлення BizTalk Server) і зберігає його копію у своїй черзі на випадок повторного пересилання. BizTalk-сервер на приймаючій стороні сервера інтеграції відомства після одержання повідомлення через посилання URL всередині документу пересилає підтвердження на BizTalk-сервер, що відправив повідомлення. При цьому сервер, що відправив повідомлення, видаляє його зі своєї черги можливого повторного відправлення. У випадку, якщо відправляючий BizTalk-сервер не одержав підтвердження, він спробує переслати його повторно певну кількість разів доти, поки він буде успішно отриманий приймаючим BizTalk-сервером, або поки не вичерпається ліміт кількості спроб. У цьому випадку повідомлення буде поміщено в чергу проблемних повідомлень для відповідної наступної обробки.

Изображение GIF  Мал. 8. Системи віддалених державних відомств

Це є одним із прикладів того, як повідомлення може потрапити в чергу проблемних повідомлень. Документ може також потрапити туди, якщо він не пройде перевірку на безпеку. Механізм транзакцій періодично виконує необхідні роботи по обробці таких проблемних повідомлень.

Сервери інтеграції відомства (DIS) забезпечують з'єднання і двосторонні комунікації між Урядовим шлюзом і системами окремих відомств. Додаткова перевага, одержувана завдяки наявності такого рівня в архітектурі, полягає в тому, що при цьому зменшується кількість серверних систем, з якими брокер повідомлень Урядового шлюзу був би змушений зв'язуватися напряму. Брокер повідомлень взаємодіє з окремими відомствами на рівні серверів інтеграції відомства, що, у свою чергу, забезпечують інтеграцію з різними прикладними серверними системами конкретного відомства. У таких широкомасштабних проектах, як Урядовий шлюз у Великобританії, існує близько 1800 різних прикладних систем у різних департаментах, і такий підхід істотно спрощує роботу брокера повідомлень. Сервер інтеграції відомства одержує документ на свою ASP-сторінку від механізму транзакцій через систему гарантованої доставки повідомлень BizTalk-сервера. Далі він або пересилає документ без змін відповідній прикладній системі, використовуючи стандартний або спеціально написаний компонент інтеграції додатків (Application Integration Component, AIC) BizTalk-сервера, або використовує засоби мапування і трансляції для конвертації документа таким чином, щоб задовольнити специфікаціям приймаючої сторони. Наприклад, він може змінювати довжину полів до використання AIC-компонента для остаточної передачі документа приймаючій стороні.