SOA: marzenia o wspólnym języku biznesu i IT

Bez tego rodzaju wsparcia szanse, że zawiodą ludzie - i sama SOA - są dość duże. Można wynająć konsultantów niezbędnych do zasilenia organizacji w stosowną wiedzę lub, w niektórych wypadkach, zatrudnić nowych pracowników, którzy są przygotowani do wykonania projektu SOA. Nie są to łatwe decyzje, ale czasami mogą ocalić projekt.

I na końcu należy rozważyć, na kogo wywierać będą wpływ usługi, procesy, wyodrębnianie danych i w rezultacie nowe aplikacje. W jakim zakresie zmieni to sposób wykonywania przez nich pracy? Jak trzeba ich przeszkolić? Jak zapewnić im wsparcie? Jak można wykorzystać ich sugestie dla ulepszeń? Na takie pytania lepiej odpowiedzieć na wczesnym etapie projektu.

Zarządzanie w ramach SOA

Kontrolowanie elementów SOA, realizowane najczęściej przez centralne repozytorium SOA, ma umożliwiać zarządzanie dostępnością usług, wersjonowanie i zgodność z zewnętrznymi i wewnętrznymi systemami.

SOA: marzenia o wspólnym języku biznesu i IT

Dane i usługi zbiegające się na desktopie prowadzą do większej złożoności infrastruktury i problemów bezpieczeństwa

Rejestr (repozytorium) SOA ma zapewniać mechanizm śledzenia zasobów SOA w organizacji, obejmujący wszystkie zależności i powiązania. W takim repozytorium mogą być publikowane usługi, przedstawiane w kategoriach sensownych dla organizacji i rozpoznawalne przez mechanizmy wyszukiwania. Usługi są powiązane z innymi elementami, które są opisywane przez relacje zależności i grupowane za pomocą reguł rozszerzalnej taksonomii. Dobre zarządzanie zmniejsza ryzyko niedobrania usług i powielania wysiłku projektantów.

Rejestr SOA nie tylko kataloguje usługi, umożliwiając ich wielokrotne używanie, ale także - poprzez korporacyjne standardy projektowania - zachęca do używania wspólnych szablonów, aby projektowanie usług zachowywało spójność między różnymi grupami projektantów w organizacji. Spójność taka może być utrzymywana przez cykl życia usługi - od koncepcji po produkcję - przez wdrożenie odpowiednich procedur zatwierdzania i dołączanie odpowiedniej dokumentacji, specyfikacji oraz planu testowania w każdej fazie. Organizacja powinna mieć zdolność konfigurowania nie tylko usług, ale także reguł i procesów biznesowych, a zasadniczo dowolnych zasobów SOA, poprzez zestaw etapów i stanów cyklu życia. Do włączenia ról i uprawnień potrzebne jest także uwierzytelnianie i zatwierdzanie na różnych etapach, przez które przechodzi usługa.

Repozytorium SOA zapewnia pamięć metadanych dla usług i innych elementów przypisanych do zasobów SOA, w tym schematów WSDL, XML, arkuszy stylu XSLT i reguł polityki itp.

Z chwilą wywołania usługi organizacja powinna mieć możliwość śledzenia, jak jest ona używana. Kontrolowanie usług w czasie rzeczywistym obejmuje monitorowanie wydajności, dostępności, wykorzystywania itp. Zarządzanie staje się ważne dla zapewnienia funkcjonowania usługi zgodnie ze zdefiniowanym poziomem usług i powiadamiania o zmianie sposobu pracy usługi. Usługa powinna być powiązana ze SLA (Service Level Agreement), czyli umową dotyczącą poziomu usługi, która obejmuje zdolność do definiowania, pomiaru i monitorowania specyficznych charakterystyk wydajnościowych i określa konsekwencje ich obniżenia.

Ponieważ rejestr SOA przechowuje informacje o wzajemnych relacjach usług i wiąże wszystkie usługi z takimi elementami, jak polityki, to tym samym zapewnia pewien poziom przejrzystości, który pozwala organizacjom na szybkie zmiany przy minimalnym ryzyku.

Chociaż zarządzanie SOA wymaga inwestowania w ludzi i technologie, korzyści z takich inwestycji mogą być znaczne. Rzeczywiste korzyści z SOA są osiągane wtedy, kiedy cele biznesowe kreowane odgórnie są zbieżne z projektami IT budowanymi oddolnie. Celem każdej inicjatywy SOA jest poprawienie komunikacji, procesów i efektywności w ramach przedsiębiorstwa, aby mogło dostarczać najlepsze produkty i usługi przy jak najniższych kosztach. Jednak przed rozpoczęciem każdej inicjatywy SOA powinno się zapewnić lepszą współpracę i komunikację pomiędzy biznesem i IT w zakresie celów, procesów, planów implementacji oraz optymalizacji. Jedynie wtedy, gdy zrozumiała jest istota biznesu, można organizować projektowanie spójnej wizji i metodologii w całym procesie i zapewnić, że usługi składające się na SOA będą optymalnie wspierać biznes.

Zarządzanie oparte na modelach

Zmienne wymagania biznesu można spełnić, stosując architektury zorientowane na usługi do przyspieszenia projektowania, poprawienia oceny wpływu zdarzeń IT na biznes oraz obniżenia kosztów zarządzania i integracji. Aby czerpać korzyści z takiego podejścia, zespół IT powinien zapewnić pewien poziom integracji semantycznej pomiędzy systemami IT. Integracja ta oznacza, że systemy nie tylko łączą się ze sobą (tzn. mają możliwość wymiany komunikatów), ale także powinny mieć wspólny język takich komunikatów, translowanych w sposób automatyczny na działania (akcje). Bez tego wspólnego rozumienia, komunikaty mogą być, co prawda, wymieniane, ale muszą być translowane przez człowieka, zanim przekształcą się w odpowiednie działanie.

Semantyczną integrację osiąga się poprzez modele zawierające opisy elementów tworzących system, jak również powiązań je łączących. Chociaż nie jest to lekarstwo na wszystkie problemy, modele pozwalają na lepszą integrację semantyczną poprzez udostępnianie modelu elementów i stosowanie transformacji, zasad polityki i pożądanych stanów różnego typu informacji.

Modele mogą być w łatwy sposób translowane z jednego języka modelowania na inny, tak więc wywołujący i dostawca usługi nie muszą używać tego samego języka modelowania. W tym celu został zaprojektowany np. Service Modeling Language. Udostępnianie modeli w całym cyklu życia systemu pozwala ekspertom na wzbogacanie ich o informacje odnoszące się do każdego etapu cyklu życia (takiego jak projektowanie, implementacja, testowanie, wdrożenie, operowanie i wycofanie).


TOP 200