Повна версія

Головна arrow Інформатика arrow Інформаційні системи і технології на підприємствах

  • Увеличить шрифт
  • Уменьшить шрифт


<<   ЗМІСТ   >>

Сервіс-орієнтована архітектура

Концепція Web-сервісів виникла наприкінці 90-х років XX ст. і стала галузевим стандартом у сфері ІКТ. Стандарти Web-сервісів розроблені такими компаніями, як IBM, Microsoft, Ariba, Sun Microsystems, SAP за підтримки Консорціуму W3C. У межах W3C було створено робочу групу Web Services Architecture Working Group, яка опублікувала глосарій термінів у сфері Web-сервісів.

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

Web-сервіси - це реалізована програмними засобами система для підтримки міжкомп'ютерної взаємодії телекомунікаційних мереж, що підтримується такими стандартами: SOAP (Simple Object Access Protocol) - протокол обміну повідомленнями; WSDL - мова опису програмних інтерфейсів Web-сервісів; UDDI (Universal Description, Discovery and Integration) - класифікатор Web-сервісів.

ІКТ, що реалізують архітектуру Web-сервісів, подано на рис. 9.2.

Динамічні, гнучкі Web-сервіси спрощують бізнес-процеси підприємств і дають можливість швидко знайти бізнес-парт

Технології реалізації Web-cepвiciв

Рис. 9.2. Технології реалізації Web-cepвiciв

нерів. Концепція архітектури Web-cepвiciв підприємства має такі переваги:

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

Інформація про те, які функції пропонує конкретний Web-сервіс, міститься в його описі - WSDL-документі. Інші системи взаємодіють з Web-послугами, використовуючи повідомлення у стандарті за протоколом SOAP, передані з використанням НТТР і XML і в поєднанні з іншими Web-стандартами.

Для пошуку Web-сервісів використовують спеціальні реєстри, що підтримують UDDI. Є два основні методи публікації Web-сервісів для користувачів - UDDI і DISCO. UDDI - це централізований структурований сервіс реєстру, a DISCO пропонує вільну форму механізму пошуку через браузер. Реєстр UDDI - центральне сховище для специфікацій та інформації про підприємства, включаючи послуги, які компанії надають шляхом Internet.

Web-сервіси стають доступними через протоколи НТТР GET, НТТР POST, НТТР SOAP.

SOAP - стандарт передачі повідомлень через Internet, розроблений фірмою Microsoft для віддаленого виклику процедур (RPC, Remote Procйdure Call) через протокол НТТР. Він дає змогу передавати інформацію мережею у форматі XML. Можуть використовуватися будь-яка мережа, будь-який протокол передачі даних, довільна інформація, різні обчислювальні пристрої (зокрема мобільні). Специфікація SOAP визначає ХМЬ-"конверт" для передачі повідомлень, метод для кодування програмних структур даних у форматі XML, а також засоби зв'язку через протокол НТТР.

WSDL - заснований на XML стандарт опису того, як користуватися сервісом, запропонований Консорціумом W3C. Опис Web-сервісу мовою WSDL містить технічні деталі, необхідні для інтеграції Web-сервісу у застосування (формат повідомлень, операції). На сьогодні WSDL підтримують продукт від Microsoft - SOAP Toolkit 2.0 (WSDL Generator) і продукт від IBM - WSDL Toolkit. Мова опису Web-сервісів (Web Services Description Language (WSDL)) визначає синтаксис того, як Web-сервіс може бути викликаний.

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

Компанії IBM, Microsoft та Ariba створили власні UDDI-реєстри (Web-реєстри), де розробники можуть реєструвати свої Web-сервіси. Інформація в UDDI-реєстрах складається з трьох компонентів:

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

UDDI може використовуватися з метою перевірки даних про партнера, пошуку компаній у певній галузі промисловості з конкретним типом обслуговування. UDDI містить елементи таких типів:

  • o бізнес об'єкт (Business Entity) - безпосередньо визначає бізнес;
  • o бізнес-сервіс (Business Service) - містить інформацію про набір послуг;
  • o шаблон зв'язування (Binding Template) - містить інформацію про точки входу послуги;
  • o модель технології (TModel) - визначає окрему специфікацію для послуги.

Бізнес об'єкт (Business Entity) описує ПрО, до якої належить конкретний Web-сервіс. Цей елемент може включати опис категорій для індустрії, що полегшує детальний пошук послуг. Бізнес-сервіс (Business Service) - це клас послуг у межах певної галузі промисловості. Кожна галузь належить певному елементу Business Entity. Шаблон зв'язування та модель технології визначають Web-сервіс. TModel містить абстрактний опис, a Binding Template - конкретну специфікацію послуги.

Поняття архітектури, орієнтованої на послуги, сформувалося упродовж розвитку концепції Web-сервісів. Архітектура Web-сервісів є однією з реалізацій COA (є також інші підходи до реалізації COA: Java RMI (від Sun Microsystems), CORBA (від консорціуму OMG), DCOM (від Microsoft), DCE (запропонований асоціацією Open Group) тощо. COA має такі характеристики: розподілена, інтерфейс функціональних модулів такий, що використання модулів не залежить від технології або платформи, у межах якої вони реалізовані; можливий динамічний пошук і підключення потрібних функціональних модулів; архітектура базується на загальноприйнятих галузевих стандартах'.

Сервіс-орієнтована архітектура (COA) - це концепція проектування, розробки й управління функціональних модулів (сервісів), кожний з яких доступний через мережу і здатний виконувати певні дії.

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

Сервіс-орієнтовані обчислення (СОО) - обчислювальна парадигма, яка використовує сервіси як фундаментальні елементи для розробки застосувань. СОО базуються на COA і забезпечують виконання операцій управління сервісами. Розробка системи СОО - це процес пошуку, підбору і компонування сервісів, що задовольняють вимоги користувача.

Можливість компонування (composability) Web-сервісів часто розглядають як одну з основних переваг їх використання. Компонування полягає у знаходженні набору елементарних сервісів, необхідних для реалізації функцій, використовуваних у запиті користувача, і визначення порядку їх виконання.

Функціональні можливості Web-сервісів визначаються входом, виходом, попередніми умовами і діями сервісу. їх позначають як ЮРЕ (inputs, outputs, preconditions, and effects). Наприклад, для сервісу купівлі попередня умова - це коректне введення номера кредитної картки, вихід - генерація квитанції, а дія - оплата товарів/послуг; електронний магазин може мати такі входи: назва товару, адреса споживача і номер його кредитної картки з попередньою умовою перевірки справжності цієї кредитної картки.

Виходами можуть бути електронна квитанція та операції з кредитною карткою і відвантаження товару споживачеві. Функціональні атрибути можуть описати показники якості сервісу, такі, наприклад, як час виконання купівлі і час п роп лати.

Більшість послуг, необхідних користувачам, формується вручну з використанням заснованих на WSDL описів елементарних сервісів. Для автоматичного компонування програми мають бути здатними відбирати потрібні Web-сервіси і компонувати їх.

Інформація, що міститься в реєстрі UDDI, недостатня для автоматичного компонування Web-сервісів, тому що не дає змоги інтерпретувати їх семантику. Тому розробляються механізми відображення семантики сервісів та її автоматизованого зіставлення з семантикою запитів користувачів. Можна розв'язати проблеми автоматичного компонування, зв'язавши параметри Web-сервісів з термінами визначеної ПрО і семантичним обґрунтуванням цих понять.

Інтелектуальні Web-сервіси (семантичні Web-сервіси, SW-сервіси) розширюють поняття традиційних Web-послуг. Хоча програми можуть знайти певний Web-сервіс в реєстрі UDDI без допомоги людини, вони не спроможні зрозуміти, як саме ним користуватися.

Мова опису Web-сервісів WSDL надає інструмент для опису того, яким чином взаємодіяти з тим чи іншим Web-сервісом, тоді як семантична розмітка надає інформацію про те, що і як здійснює цей сервіс.

Необхідно забезпечувати Web-сервіси такими описами, щоб можна було автоматично розпізнавати їх значення. Одним із поширених засобів подання семантики Web-сервісів є онтології у межах єдиної системи взаємопов'язаних компонентів.

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

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

Найбільшою проблемою при виявленні сервісу є їх розподілений характер. Фіксація семантики запитів і досліджень сервісів, так само як контексту запропонованої взаємодії з сервісом, вимагає адекватних засобів подання сервісів і взаємодій. У зв'язку з цим можуть бути застосовані онтології. Для інтеро-перабельного подання онтологій розроблено мову OWL і її модифікацію для сервісів OWL-S (Web Ontology Language for Services).

Інтелектуальний пошук та автоматичне компонування Web-сервісів можуть бути здійснені за допомогою можливостей семантичного опису Web-сервісів, запропонованих у OWLS.

OWL-S забезпечує онтологічний опис Web-сервісів. Мета розробки OWL-S полягає в тому, щоб зробити можливим використання логічного виведення для Web-сервісів, планування автоматичного компонування Web-сервісів, автоматичного використання сервісів програмними агентами.

OWL-S забезпечує декларативні описи властивостей Web-послуги і можливості, які можуть використовуватися для автоматичного виявлення сервісу.

Використовуючи OWL-S, Web-сервіс може повідомляти потенційним користувачам про свої функціональні можливості. Запит на обслуговування може бути узгоджений з оголошенням Web-сервісів за допомогою процесу підбору (matchmaking).

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

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

Для семантичного обґрунтування параметрів Web-сервісів використовують онтології різного рівня. Використовують різну архітектуру для опису семантики джерел інформації: підходи, засновані на єдиній онтології, використовують одну глобальну онтологію, що забезпечує спільний словник для специфікації семантики; підходи, засновані на множинних онтологія х, кожне джерело інформації описується власною онтологією; гібридні підходи подібні підходам, заснованим на множинних онтологіях у тому, що семантика кожного початкового тексту описана її власною онтологією, але для того, щоб зробити локальні онтології порівнянними, формується глобальний словник для загального використовування.

Загальний словник (тезаурус) містить базові терміни (при* мітиви) ПрО, які комбінуються в локальні онтології для того, щоб описати складнішу семантику. Іноді загальний словник також є онтологією. ПрО може мати декілька онтологій. Будь-яка ПрО характеризується своєю дійсністю, тобто множиною ситуацій, які мали місце у минулому, мають місце у теперішньому і матимуть місце в майбутньому. Інтеграцію онтологій можна розглядати як процес знаходження схожості між різними онтологіями. Нова онтологія може бути використана як посередник між різними системами. Залежно від змін, які необхідно зробити, щоб одержати нову онтологію, можна розрізняти такі рівні інтеграції: відповідність (alignment), часткова сумісність (partial compatibility), удосконалення і уніфікація (unification).

Основою архітектури, орієнтованої на послуги, є взаємодія її учасників: постачальника, споживача та реєстру послуг (рис. 9.3).

Схема взаємодії учасників СОА

Рис. 9.3. Схема взаємодії учасників СОА

Концепція Web-сервісів означає, що вони мають певну обмежену функціональність. Для вирішення складних завдань потрібно використовувати функціональність кількох послуг. Тому в процесі розвитку архітектури Web-сервісів виникло поняття компонування Web-сервісів і потік Web-послуг, або ще використовують термін оркестровка (Web Service Choreography) і хореографія (Web Service Choreography) Web-сервісів. Ці поняття відображають взаємодію послуг і послідовність їх виконання. Застосунки, побудовані з використанням Web-сервісів, базуються на потоках робіт (Workflow-based applications).

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

Для опису бізнес-систем, що базуються на архітектурі Web-сервісів, IT-компанії запропонували використання різних стандартів: Wf-XML (від Workflow Management Coalition), WSFL (IBM Web Services Flow Language), XLANG (Microsoft^ XLANG: Business modeling language for BizTalk), PIPs (Roset-taNet's Partner Interface Process) тощо.

На сьогодні набули поширення BPEL4WS (Business Process Execution Language for Web Services), розроблений IBM, Microsoft i BEA Systems, i WSCI (Web Service Choreography Interface) корпорації Sun Microsystems.

Ще одна корисна технологія підтримки Web-сервісів відома за назвою .NET. Microsoft.NET Му Services надають набір Web-сервісів, які дають змогу клієнтам управляти своїми персональними даними. Компанія Microsoft розробила Global XML Web Services Architecture (GXA - глобальна архітектура Web-сервісів XML).

GXA складається з таких специфікацій: WS-Security, WS-Licensing, WS-Referral, WS-Routing i WS-Inspection. Кожна специфікація представлена як модульна надбудова над SOAP-повідомленням. Отже, будь-яка GXA-специфікація може використовуватися в комбінації з рештою GXA-спсцифінацій.

Розподілені обчислення через Internet викликають фундаментальні зміни у веденні ? бізнесу, і саме Web-сервіси забезпечують відкритий механізм інтеграції бізнес-процесів. Управління бізнес-процесами відбувається в автоматизованому режимі. Так, за допомогою методів моделювання можна перевіряти коректність виконання бізнес-логіки, представленої в діаграмах, а потім автоматично одержувати опис цих діаграм на XML-мовах управління бізнес-процесами.

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

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

Тактичні переваги Web-серВісів: проста розробка і впровадження застосунків, використання інвестицій, зменшення ризику, пов'язаного з впровадженням проектів у сфері автоматизації послуг та бізнес-процесів, можливість безперервного поліпшення надання послуг, скорочення кількості звертань за технічною підтримкою, підвищення показника повернення інвестицій (ROI) тощо.

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

Висновки

Різні інституціональні структури у мережі Internet створюють власні інформаційні моделі завдяки Web-сайту, формуючи певні інформаційно-економічні простори засобами інтелектуалізованого програмного забезпечення (мультиагентні системи або програмні агенти як представники-агенти суб'єктів економічної діяльності) у глобальному електронному середовищі або об'єктно орієнтованого ПЗ (сайт, портал, електронна поштова скринька тощо).

Саме Web-сервер, своєрідна візитна картка підприємства, що представляє сукупність зв'язаних між собою Web-сторінок, презентує фірму та її послуги. На головній сторінці Web-сайта підприємства розповідається про історію створення фірми, її профіль, проекти, продукти/послуги, бізнес-партнерство тощо, тобто інформація про те, чим займається організація, і які надає пропозиції. Часто на цій сторінці розміщується посилання на портали (багатофункціональні сайти) електронних ринків чи е-магазинів, які є точками входу у глобальну мережу всіх учасників процесу ^-бізнесу, а також місцем для розміщення електронних каталогів товарів, послуг, управління транз-акціями, логістичними процесами, платежами тощо.

Сьогодні на зміну технологіям Web приходять технології Web2 та Web3. їх основою є соціальні мережі, спільна робота, спрямована на розробку інформаційних ресурсів. На основі цих нових технологій функціонують корпоративні блоги, енциклопедії Wiki тощо.

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

 
<<   ЗМІСТ   >>