Orientacja na usługi

Zorientowanie na usługi to paradygmat projektowania oprogramowania komputerowego w formie usług . Zasady projektowania zorientowanego na usługi kładą nacisk na oddzielenie problemów w oprogramowaniu. Zastosowanie zorientowania na usługi skutkuje podziałem jednostek oprogramowania na oddzielne, autonomiczne i dostępne w sieci jednostki, z których każda ma na celu rozwiązanie indywidualnego problemu. Jednostki te kwalifikują się jako usługi.

Historia zasad i zasad orientacji na usługi

Zorientowaniu na usługi poświęcono wiele uwagi od 2003 roku ze względu na obiecywane korzyści. Obejmują one zwiększony zwrot z inwestycji , sprawność organizacyjną i interoperacyjność , a także lepsze dopasowanie między biznesem a IT . W dużym stopniu opiera się na wcześniejszych paradygmatach projektowania i wzbogaca je o standaryzację, luźne łączenie i zaangażowanie biznesowe. Paradygmat stracił impet w 2009 roku; Microservices można zaobserwować ponowne zainteresowanie . W technologii SOA innego dostawcy platformy stosowały różne definicje zorientowania na usługi. Niektórzy sprzedawcy promują inne zasady i zasady niż inni, ale istnieje sporo cech wspólnych.

Zorientowanie na usługi dziedziczy niewielką liczbę zasad z wcześniejszych paradygmatów, w tym programowania obiektowego , inżynierii oprogramowania opartej na komponentach i otwartego przetwarzania rozproszonego. Powszechnie uznaje się, że kilka zasad orientacji na usługi ma swoje korzenie w paradygmacie projektowania zorientowanego obiektowo. Oba są uzupełniającymi się paradygmatami i zawsze będzie potrzeba obu. Usługi dziedziczą również szereg cech komponentów oprogramowania, m.in

  • Wielokrotnego użytku
  • Niespecyficzne dla kontekstu
  • Komponowalny
  • Zamknięty, tj. niemożliwy do zbadania przez jego interfejsy
  • Jednostka niezależnego wdrażania i przechowywania wersji

Open Distributed Processing (ODP) łączy koncepcje systemów otwartych i przetwarzania rozproszonego, które są podstawowymi cechami zorientowania na usługi. Kluczowe cechy ODP są dziedziczone przez zorientowanie na usługi, w tym federację, interoperacyjność, heterogeniczność, przejrzystość i handel/pośrednictwo.

Zasadnicze cechy

Don Box był jednym z pierwszych, którzy dostarczyli zestaw wytycznych projektowych zwanych jego „czterema założeniami zorientowania na usługi”, które opisał przede wszystkim w odniesieniu do platformy Microsoft Indigo (później Windows Communication Foundation ), która powstawała w tym czasie :

  1. Granice są wyraźne
  2. Usługi są autonomiczne
  3. Usługi współdzielą schemat i umowę, a nie klasę
  4. Kompatybilność usług jest oparta na zasadach

Inni dostawcy i niezależni konsultanci opublikowali swoje definicje zorientowania na usługi i SOA, na przykład N. Josuttis w „SOA w praktyce” oraz D: Krafzig i in. w „Enterprise SOA”. Artykuł w wydaniu IBM System Journal z grudnia 2005 r., zatytułowany „Wpływ orientacji na usługi na poziomie biznesowym”, zawierał badanie dotyczące związku paradygmatu orientacji na usługi z podstawową komponentyzacją i IBM Component Business Model (CBM ) .

Paul Allen definiuje orientację na usługi jako paradygmat (biznesowy), składający się z trzech głównych elementów: architektury biznesowej, architektury zorientowanej na usługi i zarządzania zorientowanego na oprogramowanie. Książka Allena definiuje siedem punktów widzenia zorientowanych na usługi (oznaczonych jako SOV7):   Allen, Paul (2006). Zwycięskie strategie zorientowania na usługi i najlepsze praktyki . Wydawnictwo Uniwersytetu Cambridge. ISBN 978-0521843362 .

  1. Przejrzystość
    • Płynność doświadczenia klienta w korzystaniu z usługi.
  2. Dopasowanie do klienta
    • Możliwość dopasowania oferty do różnych potrzeb klientów.
  3. Łączność partnerska
    • Możliwość korzystania z usług stron trzecich w celu świadczenia usług towarowych
    • Możliwość oferowania usługi różnym partnerom
  4. Adaptacja
    • Dostosowanie się do zmian na rynku.
  5. Możliwość obsługi wielu kanałów
    • Wspieraj klienta od końca do końca przez cały proces, używając różnych kanałów, aby osiągnąć ciągłość.
    • Oferowanie tej samej usługi za pośrednictwem różnych kanałów.
  6. Optymalizacja
    • Oferowanie usług w czasie rzeczywistym na wysokim poziomie wydajności.
  7. Kompleksowe doświadczenie
    • Zaspokajanie różnych potrzeb klientów za pośrednictwem jednego zestawu usług.

Allen wykorzystuje punkty widzenia jako punkt wyjścia do zadawania pytań podczas procesu projektowania.

Zorientowanie na usługi nadal zyskuje coraz większe uznanie jako ważna część krajobrazu komputerów zorientowanych na usługi i ważne podejście projektowe do osiągnięcia architektury zorientowanej na usługi .

Zobacz też

Dalsza lektura