• Nie Znaleziono Wyników

Podejście usługowe SOA

N/A
N/A
Protected

Academic year: 2021

Share "Podejście usługowe SOA"

Copied!
24
0
0

Pełen tekst

(1)

Podejście usługowe SOA

Jolanta Sala Halina Tańska

(2)

Usługa jest pojęciem podstawowym dla SOA

• Usługa biznesowa (business service) pojedynczy

komponent dostarczany przez IT do biznesu i wspierający realizację określonego zadania występującego w jednym lub więcej procesach biznesowych

• Usługa sieciowa (web service) komponent programowy niezależny od platformy i implementacji, dostarczający określonej funkcjonalności

• Usługa IT (IT service) wg ITIL opiera się na dostarczaniu i zarządzaniu usługami IT poprzez procesy, w tym

kontekście usługa jest pojęciem komercyjnym, opisanym w umowie pomiędzy Dostawcą (IT) i Odbiorcą (Biznes) m.in. outsourcing usług IT

(3)

SOA - usługi na pierwszym miejscu

• Architektura ukierunkowana na usługi to standaryzowane podejście organizacji i projektowania, wiążące ściśle IT z

procesami biznesowymi. Zaczyna się ono 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ć.

(4)

SOA - usługi na pierwszym miejscu

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.

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.

(5)

SOA - usługi na pierwszym miejscu

• Rozmach tego podejścia 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:

1. wirtualizacja usług,

2. usługi wielokrotnego użytku, 3. brokery usług.

(6)

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.

1

(7)

Przykład: SOA w instytucji finansowej

(8)

Usługa wielokrotnego użytku

• Możliwość wielokrotnego używania usługi, to istotna obniżka kosztów.

• Podstawową zasadą przy wdrażaniu SOA jest zachęcanie

programistów do użytkowania istniejących usług - niezależnie kto je zaprojektował - w jak największym, możliwym

zakresie.

• Programiści, przy konstruowaniu nowych aplikacji, powinni tworzyć jak najmniej nowego kodu.

• Nowy kod powinien jedynie ulepszać aranżację nowych wzorców interakcji między istniejącymi usługami.

• Większy zakres ponownego wykorzystaniu kodów przekłada się na niższe koszty i skraca cykle projektowe.

2

(9)

Przykład: SOA w instytucji ubezpieczeniowej

(10)

Usługa wielokrotnego użytku

• Większy zakres ponownego wykorzystaniu kodów przekłada się na niższe koszty i skraca cykle projektowe.

• W praktyce cecha ta w dużej mierze zależy od warstwy pośredniczącej, która pozwala na współdziałanie usług za pośrednictwem sieci.

• W coraz większym zakresie wybieraną dla SOA strukturą

pośrednicząca są środowiska web services, wykorzystujące WSDL (Web Services Desciption Language), SOAP (Simple Object Access Protocol) i inne standardy WS-.

• Jednak w wielu implementacjach SOA usługi są współdzielone, aranżowane i wywoływane w tradycyjnych środowiskach

pośredniczących, które współdziałają na różne sposoby.

• Dla ekspozycji interfejsów aplikacyjnych w środowisku SOA można zamiast web services wybrać też XML, który jest transportowany protokołem HTTP lub transferu plików.

2

(11)

Brokery usług

• Brokery usług pozwalają programistom na deklarowanie swoich

programowych "kontraktów usług" i innych metadanych opisujących - we współdzielonym rejestrze online, repozytorium czy katalogu.

• Infrastruktura brokerów usług przybiera wiele form i są one często specyficzne dla poszczególnych środowisk pośredniczących i

platformowych.

• Standard UDDI (Universal Desciption, Discovery and Integration) definiuje środowisko brokerów usług dla web services.

• Inne popularne środowiska brokerów usług obejmują: Common Object Request Broker Architecture Naming Service, Distributed

Computing Environment Cali Directory Service, Windows NT Registry, Java Remote Method Invocation Registry i repozytoria Electronic

Business XML.

• W charakterze węzłów brokerów usług SOA można też wykorzystywać systemy zarządzania bazą danych.

3

(12)

Podsumowanie 3 koncepcji SOA

• Istotą prawdziwego środowiska SOA jest niezależność od platformy, zarówno operacyjnej, jak i aplikacyjnej.

• Tak więc przy każdej implementacji należy dbać o to, aby nie

wprowadzać specyficznych zależności od WSDL, SOAP, UDDI i innych standardów czy specyfikacji web services.

• Budując SOA, usługi webowe i inne środowiska projektowe,

współdziałania czy operacyjne, powinno się traktować jak szczegół implementacyjny.

• SOA jest ciągle jeszcze w fazie rozwojowej. W rzeczywistości jest

stanem docelowym, do którego wiele organizacji może się zbliżyć, ale nigdy nie osiągnie w pełni.

• Sprowadza się to do maksymalizacji wykorzystania usług i minimalizacji ich redundancji, w złożonych, wieloplatformowych środowiskach

rozproszonych.

12 3

(13)

Podsumowanie 3 koncepcji SOA

• SOA jest podejściem do projektowania systemów informatycznych, które zakłada współdzielenie funkcji aplikacyjnych wywoływanych w sieci.

• Jest to sposób na zrobienie więcej mniejszym wysiłkiem.

• Aplikacje mają być budowane szybciej, w sposób przyrostowy, z niewielką liczbą nowych wierszy kodu.

• Potencjał SOA tkwi w tym, że niewielkie koszty budowy nowych

aplikacji ulegają dalszemu zmniejszeniu w miarę zwiększania stopnia wykorzystania usług.

• Trudność polega jednak na tym, że adaptacja SOA wymaga zmiany tradycyjnego myślenia o: modelowaniu, projektowaniu, integracji, wdrożeniu i zarządzaniu aplikacjami.

• Wiele z oszczędności, jakie daje SOA, ma swoje źródło w zdolności

konsolidowania, w ramach całej organizacji, tzw. silosów nadmiarowej funkcjonalności aplikacyjnej i danych.

12 3

(14)

Architektura zorientowana na usługi

Przykład podstawowych składników SOA

(15)

Według analiz Forrester Research

• Projektowanie oparte na SOA może być początkowo droższe od tradycyjnego podejścia, gdy poszczególne etapy rozpatruje się oddzielnie, z uwzględnieniem budowania poszczególnych

komponentów aplikacji.

• Jednak gdy te aplikacyjne komponenty zaczynają być w coraz szerszym zakresie używane wielokrotnie, SOA staje się

podejściem bardziej efektywnym niż podejście tradycyjne.

• SOA jest jednak nadal koncepcją dość mglistą dla wielu

specjalistów IT i w mniemaniu wielu osób rozciąga się na szeroki krąg luźno związanych ze sobą technologii i podejść.

• Badania przeprowadzone wśród największych firm w Stanach Zjednoczonych (2005), wykazały, że 70% respondentów już

zaimplementowało SOA, a oszacowano, że planuje wdrożyć 51%

średnich firm i 46% małych.

(16)

Małymi krokami do celu

• Z SOA wiązane są nadzieje na sprawną przebudowę infrastruktury IT w biegu.

• Im bardziej dynamiczny biznes, tym więcej może skorzystać na dobrej implementacji SOA.

• Także im więcej sprzymierzeńców, którzy podzielają wizję SOA, tym lepiej.

• Pomocne jest w szczególności pozyskanie silnych partnerów w ramach organizacji, szczególnie ze sfery zarządzania biznesowego, którzy rozumieją konieczność obniżki kosztów i przyspieszenia

reakcji na zmiany w całej organizacji.

• Taka wspólna wizja może być rozległa, ale opłaca się startować z małym projektem.

• Dobrze jest zaczynać od udostępnienia w formie usługi kilku tradycyjnych aplikacji o krytycznym znaczeniu, zapewniając na początek dostęp do ważnych danych i funkcji innym aplikacjom.

(17)

Struktura usług operatora

telekomunikacyjnego

(18)

Małymi krokami do celu

• Można też użyć współdzielonych usług do wyeliminowania

redundancji wśród kilku trudnych do utrzymania aplikacji, których funkcjonalność się pokrywa.

• Takie projekty mogą przynosić widoczne korzyści m.in.:

– ograniczenie kosztów integracji infrastruktury IT i szybsze reagowanie na potrzeby;

– zwiększenie elastyczności i efektywności działania w obliczu takich wyzwań, jak: fuzje i przejęcia, konsolidacja oraz konieczność przestrzegania

przepisów i regulacji prawnych;

– uproszczenie procesu tworzenia, serwisowania i eksploatacji aplikacji oraz obniżenie związanych z tym kosztów;

– zapewnienie działom IT elastyczności pozwalającej sprostać stale zmieniającym się potrzebom przedsiębiorstwa.

• Należy przede wszystkim odpowiedzieć sobie na pytanie, jakie są te problemy biznesowe, które próbujemy rozwiązać, i jak się one mają do innych obszarów funkcjonalnych organizacji?

(19)

Narzędzia SOA

• Głównymi poziomami infrastruktury opartej na SOA są brokery usług, motory aranżacji, środowiska warstw pośredniczących opartych na wymianie wiadomości oraz narzędzia zarządzania na poziomie usług.

• Projektanci używają często graficznych narzędzi definiowania procesów, pozwalające im na specyfikowanie zadań aranżacji, zależności, routingu i kroków procesu za pomocą diagramów. Podejście to nazywa się także projektowaniem typu model-driven.

• Środowiska MOM (Message-Oriented Middleware) zapewniają możliwość ponownego użycia usługi, przewidując protokoły:

gwarantowanej dostawy wiadomości (reliable messaging),

powiadamiania o zdarzeniach oraz publikowania i subskrypcji, które łączą punkty końcowe aplikacji heterogenicznych w szynę usługową

przedsiębiorstwa.

• Zarządzanie infrastrukturami na poziomie usług zapewnia

monitorowanie, optymalizowanie, sterowanie i integrację rozproszonych środowisk aplikacyjnych. Bardziej rozpowszechnionym określeniem tej funkcjonalności jest WSM (Web Sentice Management).

(20)

Jak to zrobić?

Jednym ze sposobów są działania w trzech obszarach:

• SOA Governance – zadaniem jest przygotowanie reguł, podziału

odpowiedzialności, itp., czyli: modelu procesów, według którego usługi będą przygotowywane (SOA Design) i zarządzane (SOA Management) a następnie monitorowanie wykonania i udoskonalenie tychże procesów.

• SOA Design – jest zespołem działań i środków (w ramach procesów wytyczonych przez SOA Governance mającym na celu przygotowanie nowej usługi lub zmianę (łącznie z wycofaniem) istniejącej usługi.

• SOA Management – obejmuje administrację infrastrukturą IT, monitorowanie, strojenie jak również wsparcie przy wdrożeniu nowych i zmienionych usług.

Obowiązuje zasada 4xP:

• People (zasoby ludzkie, wiedza, umiejętności, świadomość, komunikacja)

• Processes (organizacja zarządzania i pracy poprzez odpowiedni model procesów)

• Products (technologie, oprogramowanie, sprzęt)

• Partners (współpraca z poddostawcami wewnętrznymi i zewnętrznymi, współpraca pomiędzy wszystkimi stronami zainteresowanymi)

(21)

Dostawcy SOA

IBM, SAP, Oracle, Software AG, BEA, Cisco, HP, MS i inni

Przykład: Service Oriented Network Arcitecture firmy Cisco

(22)

Przykład: SOMA (Service Oriented Modelling and Architecture)

Szablon (SOMA) procesów wytwórczych dla rozwiązań SOA zbudowany przez IBM na bazie klasycznego RUP (Rational Unified Process) jest dostępny w formie plug-in do narzędzia RUP Method Composer lub w formie darmowej publikacji HTML.

(23)

Materiały źródłowe

• Józef Muszyński, SOA - usługi na pierwszym miejscu, Computerworld, 2006,

https://www.computerworld.pl/news/SOA-uslugi-na-pierwszym-miejsc u,316935.html

• Jarosław Łagowski, SOA – Ideologia nie technologia, XV Konferencja PLUG, 2009,

http://www.ploug.org.pl/wp-content/uploads/ploug-konferencja-15-13 _SOA_-_Ideologia_nie_technologia.pdf

• Piotr Waszczuk, SOA: czym jest, czym nie jest?, Computerworld, 2008, https://www.computerworld.pl/news/SOA-czym-jest-czym-nie-jest,148 360.html

• Rafał Jakubowski, SOA? O co chodzi?, Computerworld, 2008,

https://www.computerworld.pl/news/SOA-O-co-chodzi,322849.html

(24)

Dziękuję za uwagę

Cytaty

Powiązane dokumenty

Inwestor powinien mieć świadomość, że należna mu wypłata z tytułu inwestycji w papiery wartościowe ETC jest uzależniona od wartości platyny i zmian kursów walut, które

Odnosi się z pewnego zewnętrza do całości regionu, wszystkich regio-  nów  filozofii,  by  wpisać  je  w  inne  pole  20 .  Tego  typu  procedury 

O zaciśnięciu zespalanych elementów informuje układ czujnik B1.Po upływie 1s od zaciśnięcia elementów przekaźnik mocy załącza się na czas 3s, powodując przepływ prądu o

Z uwagi na realizację przez Bank wyłącznie transakcji o charakterze zabezpieczającym działalność gospodarczą Klienta, transakcje SWAP walutowy (FX SWAP) mogą być zawierane

Koszty wejścia 0,00% Wpływ kosztów, które inwestor ponosi przy rozpoczynaniu inwestycji Koszty wyjścia 0,00% Wpływ kosztów wyjścia

Związek Miast Polskich z siedzibą w Poznaniu informuje o zamiarze przeprowadzenia wstępnych konsultacji rynkowych, których przedmiotem będzie uzyskanie przez Zamawiającego informacji

Ze względu na poruszaną tu tematykę należy skoncentrować się na punkcie drugim. W tym celu pragnę odnieść się do projektu „Dzieci Sieci”, w ramach którego

Czynników, które wpływają na to, że sprzętu jest za mało, czy jest on niedostatecznej jakości jest wiele.. Podstawowym jest wciąż