Czas na SOA

37 - soa

SOA – architektura oparta na usługach wkracza dumnie na salony informatyczne, kasując po drodze stare, sprawdzone programy monolityczne. Nikt jej nie zatrzyma. Zwycięży ten, kto się z nią szybko zaprzyjaźni i zrozumie.

Paradygmat SOA. Uff, brzmi nieciekawie. Definicja SOA, dla zwykłego zjadacza chleba, do których i ja się zaliczam, to jak wycieczka po wystawie prac abstrakcjonistów. Wielu je podziwia, ale mało kto rozumie. Bo SOA to koncepcja tworzenia systemów informatycznych, w której główny nacisk stawia się na definiowanie usług, które spełnią wymagania użytkownika. Pojęcie SOA obejmuje zestaw metod organizacyjnych i technicznych mający na celu lepsze powiązanie biznesowej strony organizacji z jej zasobami informatycznymi.

Uwierzcie mi jednak, że termin ten wywołuje gorące dyskusje pomiędzy informatykami i programistami na całym świecie. Miłośnicy gier PC czy Playstation pewnie nigdy o SOA nie słyszeli, bo ona ma zastosowanie w aplikacjach biznesowych. U zwolenników tradycyjnych, monolitycznych systemów informatycznych, SOA budzi tyle skrajnych emocji, co u mnie prośba syna: „tato, złóż mi klocki lego” (nie okazuję tego dziecku, ale w środku mi się przewraca, zwłaszcza, gdy do złożenia jest duża paczka).

– A synku, nie wolałbyś się pobawić samochodzikiem, tym, który kupił ci dziadek – pytam. – Nie, chcę klockami lego.

Cóż, z samochodzikiem jest prościej, wystarczy go wypakować z pudełka i już służy do zabawy, a składanie lego to jedno, wielkie misterium, choć czasami można czerpać z tego przyjemność, widząc uśmiech na twarzy dziecka.

Gorzej, gdy dziecku znudzi się samochodzik – nic z nim nie zrobisz, trafia do kąta, mimo że to taka fajna zabawka. Jakakolwiek przeróbka może skończyć się tym, że samochodzik zostanie zniszczony i już do niczego nie posłuży. Z klockami lego jest inaczej. Samochodzik z lego rozbierzesz, przerobisz i masz bazę policyjną. A jak się dziecku znudzi baza, zrobisz z niej helikopter policyjny. Z gruntu rzeczy, lego jest i droższe i bardziej pracochłonne, ale bardziej praktyczne, bo raz, że jest to zabawka efektowna, a dwa, że efektywna, służy latami.

37aPodobnie jest z SOA. W oparciu o tę architekturę można zbudować spójny system z wielu aplikacyjnych klocków, a co ważniejsze, można ten system rozebrać, albo wyciągnąć z niego poszczególne klocki i włożyć nowe. Jest jeszcze jeden ważny atut pragmatyczny SOA – zdefiniowanie usług. Pomiędzy poszczególnymi departamentami firmy a działem IT jest ogromna luka w komunikacji. Nieporozumienia prowadzą do tego, że firma otrzymuje oprogramowanie, którego tak naprawdę nie potrzebuje. Często słyszy się słowa: „Zupełnie nie rozumiem tego, co mówi do mnie informatyk! To oprogramowanie nie pracuje tak, jak powinno!” Z drugiej strony informatycy mówią, że nie wiedzą, czego właściwie oczekują od nich użytkownicy danego oprogramowania. Co zrobić w takiej sytuacji?

Standardowe aplikacje nie zapewniają rozwiązań doskonale dopasowanych do procesów biznesowych, aplikacje pisane na zamówienie są z kolei kosztowne i szybko przestają nadążać za rzeczywistymi wymaganiami użytkowników. Wysokie koszty wprowadzania firmowego oprogramowania, jak również utrudniający dynamiczny rozwój firmy brak elastyczności w zakresie procesów, wywołują regularną krytykę wprowadzanego oprogramowania ze strony kierownictwa i poszczególnych departamentów.

Irytacja ta wynika z zasadniczych problemów związanych z wdrażaniem technicznych wymogów procesów, w aplikacjach dotyczących zarządzania działalnością firmy: przez długi czas nie istniała metoda zapewniająca odpowiednią semantykę dla spójnej prezentacji procesów biznesowych użytkownikom biznesowym, która równocześnie spełniałaby techniczne wymagania w zakresie mapowania tych procesów w aplikacjach. Obecnie, dzięki architekturze zorientowanej na usługi (SOA), otwiera się nowy rozdział, w którym rzeczywiste procesy biznesowe zaczynają odgrywać centralną rolę w procesie tworzenia oprogramowania.

– Połączenie modeli procesów biznesowych z SOA pozwoli zlikwidować lukę między problemami zarządzania firmową działalnością a wdrażaniem rozwiązań informatycznych – uważa Mikołaj Matuszewski z IDS Scheer.

W porównaniu z poprzednimi generacjami, nowe aplikacje bazujące na architekturze SOA umożliwiają dynamiczne projektowanie procesów biznesowych i ich błyskawiczne dostosowywanie do potrzeb firmy. Obecnie, modele zarządzania procesami biznesowymi wykorzystują działające w czasie rzeczywistym mierniki, które pozwalają na odpowiednie, natychmiastowe zestrojenie procesów i aplikacji.

Problem tylko w tym, że to, co słuszne, niekoniecznie jest zrozumiałe i akceptowane przez biznes. – Niestety, zasadnie forsując SOA znowu budujemy w wielu ludziach biznesu mit, że jest jakieś uniwersalne rozwiązanie, że teraz IT będzie jak prąd z gniazdka, że to jest proste. Budujemy więc nierealistyczne oczekiwania, bo nie ma korzyści z IT bez wysiłku intelektualnego ze strony biznesu – komentuje na łamach „Computerworld” Jacek Pulwarski, szef IT w PP Porty Lotnicze Problem więc w tym, żeby rozgryźć SOA, znaleźć mechanizm szybkiego i prostego składania tych klocków. To tak, jak z klockami lego, jeśli rozrzucimy wszystkie klocki na podłodze, wymieszamy je, wtedy trudno nam znaleźć logikę mechanizmu tej zabawki. Jednak umiejętne usystematyzowanie poszczególnych elementów obraca wszystko w logikę działań. Towarzyszące dorosłemu w zabawie dziecko szybko „łapie” logikę tych działań i z czasem samo składa klocki.

Tę umiejętność radzenia sobie z SOA obrali za cel naukowcy kilku polskich uczelni. Konsorcjum, w skład którego wchodzą: Akademia Górniczo-Hutnicza w Krakowie, Politechnika Wrocławska, Politechnika Poznańska, Uniwersytet Ekonomiczny w Poznaniu oraz Instytut Podstaw Informatyki PAN z Warszawy, realizuje od początku roku projekt finansowany ze środków unijnych „Nowe technologie informacyjne dla elektronicznej gospodarki i społeczeństwa informacyjnego oparte na paradygmacie SOA”.

– Mimo całej zawiłości nazwy naszego projektu, w istocie badania te mają wzbogacić naszą wiedzę na temat środowiska SOA. Głównym problemem SOA jest integracja aplikacji. To jest nasz zasadniczy cel, uproszczenie procesów integracyjnych, a tym samym zmniejszenie kosztów i przyspieszenie wdrożeń – mówi prof. Krzysztof Zieliński, kierownik katedry informatyki AGH, koordynator projektu. – SOA jest obecnie głównym paradygmatem obowiązującym przy budowie dużych systemów informatycznych, zwłaszcza zorientowanych na usługi, a to właśnie rynek usług jest dominujący w gospodarkach wysoko rozwiniętych.

Profesor Zieliński liczy, że efekty projektu, obliczonego na cztery lata, przyniosą zastosowanie praktyczne, zwłaszcza w obszarze: interaktywnych medycznych systemów telekonsultacyjnych, informacyjnych systemów medycznych, elektronicznego rynku złożonych usług biznesowych, systemach monitorowania środowiska i systemach nadzoru bezpieczeństwa, w sektorze telekomunikacji oraz budownictwa.

W projekcie uczestniczy ok. 200 naukowców wspomnianych instytucji. Pierwsza faza projektu ma charakter naukowy, druga wdrożeniowy. Pierwszym z materialnych efektów prac konsorcjum będzie system informatyczny stworzony dla szpitala specjalistycznego im. Jana Pawła II w Krakowie, zbudowany w oparciu o paradygmat SOA.

Polscy naukowcy pracują także nad sprzętowymi usługami SOA, czyli urządzeniami z wbudowaną inteligencją.

– Takie urządzenie może mieć zastosowanie w monitoringu przemysłowym. Kamera może wychwytywać określone numery rejestracji bądź określone kształty. Co ważne, takie urządzenie działa autonomicznie, nie obciążając systemu głównego olbrzymią liczbą danych. W ten sam sposób pracujemy nad robotami, które mogłyby działać w zdefiniowanym obszarze, z wbudowaną logiką działań, mając do dyspozycji bezprzewodową łączność, baterię słoneczną, kamerę, czujniki pomiarowe. Takiego robota można by posłać w miejsca, w których człowiek nie powinien przebywać, zlecając mu zbadanie zanieczyszczenia danego środowiska. Samo urządzenie jest bardzo innowacyjne, bo zbudowane jest w oparciu o technologię FPGA i wszystkie jego funkcje wykonywane są sprzętowo a nie przez program i konwencjonalny procesor. Chodzi nam o to, by w oparciu o SOA zintegrować elementy oprogramowania i sprzętu – wylicza korzyści prof. Zieliński.

Jego zdaniem, paradygmat SOA stwarza realną szansę obniżenia kosztów opracowywania i wdrożenia systemów. A to ma szczególne znaczenie w obszarze publicznym, gdzie instytucje pracują na wielu różnych aplikacjach i których nie są w stanie na bieżąco aktualizować. Istnieje bowiem cała gama programów typu Open Source (bezpłatne aplikacje dostępne w sieci) tworzonych zgodnie z paradygmatem SOA. I wiele firm oraz instytucji w oparciu o SOA buduje już systemy informatyczne wykorzystując do tego oprogramowania.

Wszyscy pamiętamy, ile problemów (a jeszcze więcej kosztowało) przyniosło wdrożenie systemu informatycznego w ZUS-ie.

Projektem polskich naukowców zainteresowało się wiele firm, zwłaszcza IBM, od którego konsorcjum otrzymało propozycję współpracy. Amerykański gigant już od dłuższego czasu wdraża aplikacje w oparciu o SOA. Pozostali dostawcy oprogramowania również budują swoje aplikacje zgodnie z paradygmatem SOA, gdyż daje to im gwarancję działania w przyszłości. Gorzej, że naukowcy z Polski w niewielkim stopniu będą mogli skomercjalizować wyniki swoich badań, bowiem Unia Europejska, finansująca badania, zabrania patentowania software’u. Ale z drugiej strony, co w tym złego, paradygmatu SOA też nikt nie opatentował. PS. Powyższy tekst budowany był na zasadzie paradygmatu SOA. Do tezy (specjalnej kompatybilnej szyny danych) podpinałem różne opinie, by zbudować spójny tekst, który powstawał w dynamiczny sposób. Zanim osiągnął ostateczny kształt, był aktualizowany, pewne fragmenty wypadały, inne były implementowane. Zapraszam na stronę www.teberia. pl, gdzie tekst będzie dostępny on-line. Jeśli ktoś uważa za słuszne, może go wzbogacić o nowe treści, a następnie zamieścić go w naszym serwisie >> dziennikarstwo obywatelskie. Zapraszam do zabawy.

 

admin

Komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *