SOA - usługi na pierwszym miejscu

Architektura ukierunkowana na usługi to standaryzowana metodologia organizacji i projektowania, wiążąca ściśle IT z procesami biznesowymi. Zaczyna się ona i kończy na procesach biznesowych, organizując do realizacji wspólnego celu rozproszony zestaw technologii.

SOA (Service Oriented Architecture) to oparta na standardach struktura, w której są budowane, wdrażane, zarządzane i aranżowane usługi, mające zapewnić sprawniejszą infrastrukturę IT, szybko reagującą na zmieniające się wymagania biznesu. W architekturze ukierunkowanej na usługi informacje i procesy - niegdyś przypisane do aplikacji stworzonych do realizacji jednego konkretnego celu - stają się elementami zbioru szeroko dostępnych i elastycznych usług programowych, które można integrować i wielokrotnie wykorzystywać.

Celem architektury ukierunkowanej na usługi jest stworzenie w przedsiębiorstwie elastycznej i trwałej infrastruktury, która ułatwi połączenie dowolnego zbioru aplikacji w dowolnym czasie, tak aby możliwe było sprostanie wyzwaniom rynkowym. Architektura SOA musi umożliwiać dynamiczne dodawanie i konfigurowanie usług na bieżąco, a także modyfikowanie przepływów logicznych między nimi, dopasowując sposób działania systemu do zmian w procesach biznesowych.

Rozmach tej wizji czyni z SOA koncepcję dość ogólnikową. Jednak potencjalne korzyści upatrywane w obniżce kosztów IT oraz większej sprawności biznesowej zachęcają wiele organizacji do podjęcia trudu wdrożenia tej architektury. Jednym z motywów takich decyzji jest też to, że SOA może przynosić "efekt transformacji" w obrębie całego przedsiębiorstwa, przy zachowaniu większości aplikacji i infrastruktury już wdrożonej.

U podstaw SOA stoją trzy podstawowe koncepcje: wirtualizacja usług, usługi wielokrotnego użytku i brokery usług.

SOA - usługi na pierwszym miejscu

SOA według Cisco

Wirtualizacja usług

Usługa jest kawałkiem kodu, który może być wywołany przez innego programistę za pośrednictwem publikowanego interfejsu metadanych, określanego jako "kontrakt usługowy".

SOA wymaga zdefiniowania usług wielokrotnego użytku na wysokim poziomie, bez wikłania w to kodu aplikacyjnego. W ramach SOA każda usługa powinna mieć rozpoznawalne funkcje biznesowe, które odgrywają jasno określoną rolę dla wielu aplikacji. Przykładem takich usług biznesowych wielokrotnego użytku jest np.: weryfikacja tożsamości, przechowanie danych adresowych, wyliczenie wynagrodzenia itp.

Inną zasadą SOA jest to, że usługa powinna być stabilna, ze ściśle określonymi zakresami funkcjonalności, tak aby zmiany w implementacji usługi nie zrywały możliwości współdziałania z istniejącymi użytkownikami tej usługi.

Józef Muszyński

***

Pełna treść artykułu została zamieszczona w marcowym wydaniu miesięcznika NetWorld.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200