
Платформа реалізації soa
Як відзначають аналітики компанії ZapThink, яка спеціалізується на питаннях SOA, і замовникам, і постачальникам необхідно усвідомити наступний принциповий момент: SOA – це не черговий варіант розподіленої обчислювального середовища, який, досягнувши стадії зрілості, буде існувати паралельно з іншими можливими варіантами [2]. У перспективі будь-яка архітектура ІТ-середовища – клієнт-серверна, многозвенная, побудована на базі шини повідомлень і т.д. – Повинна розглядатися в контексті орієнтації на сервіси. SOA – це більш високий рівень абстракції, який дає можливість об’єднати різні архітектурні стилі та моделі організації розподілених систем на різних платформах за допомогою слабо пов’язаних інтерфейсів і асинхронного взаємодії між ними.
За прогнозами ZapThink, найближчі три роки будуть періодом вдосконалення стандартів і продуктів, які підтримують SOA, при цьому інші підходи до побудови розподілених середовищ продовжать розвиватися незалежно. До 2007-2008 року більшість програмних продуктів вже зможуть запропонувати інтерфейси Web-сервісів, і значна частина ІТ-рішень буде сервісно-орієнтованої. Аналітики ZapThink вважають, що переможний хід SOA як загальновизнаної архітектури для побудови складних, розподілених програмних інфраструктур почнеться не раніше 2008 року, і тільки до початку наступного десятиліття можна очікувати, що альтернатив сервісно-орієнтованого підходу не залишиться.
Однак, щоб отримати архітектуру для реальних додатків, концепцію SOA необхідно деталізувати. SOA – це не тільки інтерфейси для опису сервісів. Необхідно зрозуміти, як організовано потік робіт між сервісами в додатку для вирішення певного бізнес-завдання. SOA повинна відображати бізнес-процеси в програмні компоненти не тільки з урахуванням внутрішніх процесів, а й з урахуванням взаємодії з партнерами. Необхідні механізми завдання та контролю політик для зв’язку між сервісами, в тому числі, формальних угод про рівень обслуговування. Крім того, взаємодія між сервісами зобов’язує дотримуватись певних правил захисту інформації і має відбуватися в надійній середовищі. Звідси завдання забезпечення безпеки в SOA.
Програмні компоненти для вирішення всіх цих завдань утворюють платформу реалізації SOA. У ZapThink виділяють п’ять основних груп функцій програмних продуктів, необхідних для побудови SOA: це функції захисту, управління, підтримки процесів, інтеграції та інструментарію. Для того, щоб отримати працездатні програми в архітектурі SOA, обов’язковим для цих компонентів є проходження відкритим стандартам (Насамперед, стандартам Web-сервісів) і принципам сервісної орієнтації, таким як слабка зв’язаність, інкапсуляція змісту, асинхронність взаємодії.
П’ять категорій програмних рішень – це п’ять сегментів ринку програмного забезпечення, які з часом стануть частиною єдиного ринку засобів для реалізації SOA. У той же час, ці основи SOA є частиною “екосистеми” сучасного ринку програмного забезпечення, яка починає поступовий перехід до глобальної підтримки принципів орієнтації на сервіси. Усталені ринки програмного забезпечення, які зараз трансформуються у зв’язку з переходом компаній до підтримки SOA в своїх продуктах. Все більш широка адаптація SOA в кінцевому підсумку призведе до зникнення цих сегментів ринку, принаймні, в тому вигляді, в якому вони існують зараз.