środa, 2 czerwca 2010

Dlaczego nie ma parowych promów kosmicznych?

Architektura aplikacji i odpowiednia technologia decydują o wszystkim

Andrzej Amanowicz

Kiedy w połowie lat 90 rozpoczynałem przygodę z aplikacjami biznesowymi, moje pierwsze zderzenie z wnętrzem systemu zintegrowanego było dosyć bolesne. Jako młody adept sztuki ERP, świeżo zwerbowany z pracy na uczelni, spodziewałem się zaobcować z technologią najwyższych lotów i najświeższymi nowinkami technicznymi. Okazało się jednak, że prawda daleko odbiegała od moich oczekiwań.

Po przyjrzeniu się systemowi z bliska nie mogłem oprzeć się wrażeniu, iż ta część produktu, która odpowiadała za logikę przetwarzania procesów biznesowych powstała poprzez automatyczne ‘przetłumaczenie’ kodu, pochodzącego jeszcze z przełomu lat 70. i 80. Aby produkt komunikował się z użytkownikiem w sposób uznany w tym czasie za nowoczesny czyli poprzez Windows, stworzono równoległy do logiki biznesowej aplikacji specjalny mechanizm obsługi okienek. Nie chcąc tu zanudzać nie-informatyków, pozwolę sobie to porównać do sytuacji, w której do nowoczesnej karoserii błyskającej szeregiem cyfrowych wskaźników wsadzono by układ napędowy z Syreny Bosto lub gdyby ktoś chciał zaoferować użytkownikom rakietę kosmiczną napędzaną silnikiem parowym.

System ma tylko działać

Na moje zdziwienie, koledzy pracujący w firmie dłużej ode mnie wzruszyli ramionami twierdząc, że system nie jest od bycia nowoczesnym tylko od tego, żeby dobrze policzyć stany magazynowe i wystawić fakturę. Wprawdzie od czasu do czasu krążyły po rynku złośliwe plotki, że i z tym bywa różnie (bo wystawienie faktury trwa kilka minut i w międzyczasie niektórzy z klientów uciekają ze sklepu), ale i na to znalazła się dobra odpowiedź: "przecież do rejestracji sprzedaży służą wyspecjalizowane systemy kasowe, a system ERP jest dla analityków i wystarczy, że sobie te dane z kas raz na dzień pozbiera".

Święta to prawda w przypadku dużych sieci handlu detalicznego. Ale firmy produkcyjne posiadające przyzakładowe sklepiki firmowe, jakoś nie chciały jej zaakceptować. Żeby nie być stronniczym – kłopoty podobne do wyżej wymienionych w końcówce lat 90. dotykały niemal wszystkich systemów zintegrowanych. Kiedy w kilka lat później już za pomocą innego systemu ERP brałem udział w tworzeniu rozwiązania dla dużego dystrybutora elektroniki, moduł sprzedaży został napisany od nowa, a Klient ze złośliwą satysfakcją liczył, ileż to mu jeszcze brakuje do upragnionej wydajności bodajże 1000 faktur na dzień. Miesiące i lata mijały, a ja poznając kolejne produkty coraz bardziej oswajałem się z myślą, ze świat aplikacji biznesowych i wygoda użytkownika to dwie różne bajki i że jedyne co można osiągnąć, to okupiony zarwanymi nocami i nerwami kompromis, w którym różnorodne ‘protezy’ pozwalają w miarę przyzwoicie korzystać z systemu.

Ale żeby to coś było tak proste i przyjazne jak np. przeglądarka WWW? O, co to, to nie! Dopiero później dowiedziałem się, że jednak istnieją na świecie aplikacje, o których nie śniło się filozofom!

Procesy biznesowe w centrum uwagi

W ostatniej dekadzie zagadnienia takie jak globalizacja, konieczność spełnienia szybko zmieniających się regulacji prawnych, czy bezpieczeństwo zewnętrzne i wewnętrzne informacji w firmie stały się ważniejsze niż kiedykolwiek wcześniej. Klimat biznesowy zmienia się dziś znacznie szybciej niż się do tego przyzwyczailiśmy: na rynku pojawiają się nowi, nieznani do tej pory gracze i nie ma praktycznie dnia, żeby nie ogłoszono przynajmniej jednego przejęcia lub fuzji firm w skali globalnej. Przypadki nadużycia swobody gospodarczej - takie jak w "sprawie Enronu", czy ostatnie kłopoty instytucji finansowych z falą trudno spłacalnych kredytów spowodowały, że ustawodawcy znacznie surowiej pilnują przestrzegania ładu korporacyjnego, a organizacje coraz większą uwagę przykładają do stosowania zaawansowanych metod kontroli ryzyka.

W efekcie, głównym zadaniem dla współczesnych systemów informatycznych jest ciągła optymalizacja i zmiana procesów gospodarczych. IT nie ma już na celu jedynie automatyzacji funkcji zaplecza firmy - takich, jak księgowość czy zarządzanie magazynami, ale stanowi strategiczny obszar uzyskiwania przewagi konkurencyjnej poprzez elastyczne wspieranie modelowania i nadzorowania procesów biznesowych. Dziś naturalne jest, że tzw. ‘piony biznesowe’ firmy oczekują od pionu informatyki, że ten wesprze je w dynamicznej zmianie sposobu organizacji firmy, zmianie sposobu komunikacji z Klientami czy symulacji skutków alternatywnych scenariuszy zachowań rynku.

W ankiecie wykonanej na zlecenie Magazynu CIO, za najważniejsze wyzwanie roku 2007 uznano poprawę procesów biznesowych firmy. Wiele wskazuje na to, że i w roku 2008 nikt nie odbierze temu celowi palmy pierwszeństwa. Dzieje się tak z przyczyny coraz większego rozwarstwienia między celami kierownictwa a ich faktyczną realizacją. Wyśrubowane plany sprzedaży, nowe koncepcje zarządzania, akwizycje i zmiany sytuacji konkurencyjnej - to tylko wybrane czynniki, z powodu których firma ‘nie nadąża’ za pomysłami liderów. Zjawisko to obrazuje wykres załączony na rys 1.

Rys.1. Zjawisko rozwarstwiania się celów kierownictwa i faktycznej ich realizacji (Execution gap)

Naprzeciw oczekiwaniom użytkownika - konwergencja technologii

Nic dziwnego, że w zaistniałej sytuacji informatyka traktowana jest jako panaceum na zbyt wolne wprowadzanie innowacji, rosnące koszty przestrzegania przepisów, czy niewykorzystane szanse rozwoju. Dziś systemy IT mają za zadanie nie tylko zaplanować i monitorować biznes, ale pomóc w przewidzeniu zmian na globalnym rynku, ruchów konkurencji oraz konsekwencji różnorakich działań planowanych przez kierownictwo.

Przed aplikacjami biznesowymi stawia to olbrzymie wyzwanie w postaci wymogu elastycznej integracji ‘kręgosłupa informacyjnego firmy’ jakim są systemy back office, z ciągle zmieniającym się zestawem rozwiązań wspierających aktualny w danym momencie model biznesowy organizacji. Na dodatek oczekuje się, że również sam ‘kręgosłup’ będzie dopasowywał się do indywidualnych potrzeb użytkowników - takich jak możliwość personalizacji układu ekranu, rozszerzenie zakresu danych opisujących dowolny obiekt biznesowy (klient, konto, materiał), czy zmiana standardowego przebiegu procesu bez konieczności zatrzymania działania systemu. To wszystko oczywiście przy zachowaniu spójności danych i dostępności dla wszystkich użytkowników systemu informacji dodatkowych - takich, jak zeskanowane dokumenty źródłowe itp.

Podstawowym oczekiwaniem dzisiejszych użytkowników jest konwergencja technologii, gdzie sposób wykorzystania urządzeń i danych zależy ściśle od kontekstu w jakim zostały użyte. Zjawisko to jest najbardziej widoczne w przypadku telefonów komórkowych - aparat taki jest jednocześnie telefonem, walkmanem, aparatem fotograficznym, dyktafonem i jeszcze 10 innymi urządzeniami. W epoce konwergencji technologii również od aplikacji biznesowych oczekuje się, że będą one hybrydami klasycznego systemu zarządzania organizacją, rozwiązań analitycznych klasy Business Intelligence, systemów CRM, systemu elektronicznego obiegu dokumentów i archiwizacji, systemów telekonferencyjnych, systemu zarządzania treścią oraz wielu innych rozwiązań, które historycznie były oddzielone od siebie.

Aby idea ‘wszystko w jednym’ została zrealizowana na poziomie jakościowym spełniającym wyśrubowane wymagania użytkowników, niezbędne jest spełnienie trzech podstawowych przesłanek:


* należy przy konstrukcji nowego rozwiązania wykorzystać najlepsze dostępne na rynku składniki wejściowe (nazwijmy je aplikacjami bazowymi);

* należy stworzyć efektywną architekturę integracji pozwalającą na spójną obsługę procesów biznesowych realizowanych przez dowolną kombinację aplikacji bazowych w zakresie obejmującym co najmniej:

  1. wspólną zintegrowaną obsługę danych podstawowych,
  2. elastyczne definiowanie specyficznych dla Klienta procesów z predefiniowanych ‘klocków’ – usług biznesowych dostarczanych przez aplikacje bazowe,
  3. monitorowanie i dostrajanie efektywności procesów składających się na unikatową dla danego Klienta logikę aplikacji (unikatowość wynika chociażby z dowolnego komponowania procesów),
  4. wspólny system analityczny dla wszystkich aplikacji bazowych, umożliwiający tworzenie sprawozdań i analiz dla dowolnych kombinacji danych, w tym danych pochodzących z wielu takich aplikacji bazowych;

* dla elementów składowych Aplikacji bazowych konieczne jest zapewnienie:

  1. możliwości wywołania kontekstowego funkcji pomocniczych - takich jak np. archiwizacja czy wersjonowanie załączników elektronicznych,
  2. dowolnego sposobu wejścia/wyjścia dla każdej informacji, łącznie z tak nietypowymi technikami jak analiza treści wchodzącego do systemu maila (celem uruchomienia zadania workflow) czy odczytywanie przez komputer treści ekranu (funkcja bardzo przydatna dla osób niedowidzących).

Recepta mistrzów – najlepsze składniki podstawą sukcesu

Zawodowi mistrzowie kuchni zgodnie przyznają, że bez najwyższej jakości składników niemożliwe jest uzyskanie królewskiego dania. Dlatego też do realizacji największego przedsięwzięcia integracyjnego w historii IT, firma Oracle starannie dobrała najlepsze aplikacje bazowe, dokonując akwizycji:

  • systemów ERP firmy PeopleSoft (PeopleSoft i JDE),
  • systemu CRM firmy Siebel,
  • aplikacji do planowania i analiz finansowych Hyperion,
  • aplikacji do planowania transportu G-Log,
  • aplikacji do planowania łańcucha dostaw Demantra,
  • aplikacji do zarządzania cyklem życia produktu Agile,
  • aplikacji billingowych firm SPL oraz Portal Software,
  • platformy zarządzania dokumentami elektronicznymi Stellent, oraz...

...wielu, wielu innych.

Sumarycznie w ciągu ostatnich 3 lat Oracle dokonał ponad 50 akwizycji, z czego ponad 30 dotyczyło aplikacji biznesowych. I chociaż niektóre z nich mają nieco egzotyczne nazwy jak Crystal Ball, to wszystkie przejęte produkty łączy fakt, że przed akwizycją były najlepszymi (lub co najmniej wiodącymi) na świecie rozwiązaniami w swojej dziedzinie.

Historia uczy, że jeżeli jakaś firma przejmuje konkurencyjną technologię, to wkrótce jedna z dwóch linii produktowych staje się zbędna i następuje konsolidacja bazy Klientów organizacji. Mówiąc wprost – użytkownicy aplikacji ‘wycofywanej z obiegu’ są zmuszani do szybkiej migracji na tę, która została ‘zachowana przy życiu’. W przypadku akwizycji dokonywanych przez Oracle rzecz ma się zupełnie inaczej. Nie tylko wszystkie produkty są nadal rozwijane i utrzymywane, ale również możliwe jest uzyskanie nieograniczonego w czasie serwisu dla tej wersji oprogramowania, którą Klient zakupił. Oznacza to, że o aktualizacji czy migracji na inne rozwiązanie decydują wyłącznie potrzeby biznesowe Klienta i decyzje jego Zarządu.

Strategią Firmy Oracle jest dostarczanie rozwiązań dla problemów biznesowych za pomocą optymalnej dla danego Klienta kombinacji komponentów aplikacyjnych – niezależnie od tego z jakiej pierwotnej linii technologicznej one pochodzą. Dzięki wykorzystaniu wspólnych standardów w obszarze integracji, analiz, sprawozdawczości, dostępu do aplikacji i zarządzania bezpieczeństwem, dla użytkownika końcowego możliwa stała się realizacja złożonych procesów biznesowych za pomocą funkcji, pochodzących z aplikacji ‘best of breed’ w poszczególnych obszarach, połączonych w sobą w komfortowy dla użytkownika końcowego sposób.

Architektura tworzy nową jakość

Filozofia ‘one Oracle’ (z punktu widzenia Klienta nie ma różnicy, z której linii aplikacyjnej korzysta) ma swoje odzwierciedlenie zarówno w warunkach licencyjno-prawnych jak i technologicznych. Spośród wielu innowacyjnych rozwiązań technologicznych wykorzystywanych w Aplikacjach Oracle, jako główne filary architektury aplikacyjnej wymienić należy:

  • integrację za pomocą standardu Service Oriented Architecture;
  • uniwersalne dla wszystkich aplikacji, wiodące na rynku narzędzia do analiz, prognoz i symulacji, otwarte na zewnętrzne źródła danych;
  • jednolity, wspólny model zarządzania danymi (z użyciem rozwiązań Trading Community Architecture oraz Oracle Master Data Management);
  • przyjazny użytkownikowi końcowemu, uniwersalny interfejs wejścia/wyjścia z wykorzystaniem popularnych pakietów biurowych.

Magiczne słowo nazywa się AIA (Applications Integration Architecture). Do uznanego powszechnie standardu technologicznego jakim jest Oracle Fusion Middleware dodano gotowe pakiety integracyjne (tzw. PIP - od Process Integration Package), zawierające:

  • modele najlepszych, sprawdzonych procesów biznesowych danego konkretnego sektora lub branży (Industry Reference Models);
  • generyczne obiekty biznesowe (Enterprise Business Objects) takie jak np. Klient, Faktura, Pracownik, używane przez wszystkie aplikacje certyfikowane do AIA;
  • usługi sieciowe (Enterprise Business Services), które realizują konkretne funkcje np. “zaktualizuj historię kontaktów z kontrahentem”;
  • adaptery (Application Business Connectors) umożliwiające eksponowanie funkcjonalności aplikacji w postaci usług webowych, a jednocześnie realizujące funkcjonalności bezpieczeństwa, walidacji i obsługi błędów;
  • procesy biznesowe definiowane w sposób niezależny od aplikacji, realizujące poszczególne usługi i modelowane za pomocą języka graficznego edytora Business Process Execution Language BPEL (Orchestrated Business Flows).

Oczywiście, procesy biznesowe mogą być dowolnie modyfikowane; użytkownicy mogą też tworzyć swoje własne procesy wykorzystując w nich usługi i obiekty z predefiniowanego repozytorium. W razie potrzeby służby informatyczne Klienta są w stanie bez wielkiego wysiłku tworzyć nowe usługi i obiekty, np. odwołujące się do dotychczas używanych w firmie aplikacji firm trzecich (o ile są one kompatybilne ze standardem SOA).

Każda przejęta przez Oracle aplikacja z czasem jest certyfikowana do AIA, a jej usługi są włączane do pakietów PIP obsługujących zintegrowane procesy organizacji. W chwili obecnej dla samego tylko pakietu Siebel CRM istnieje 6 PIP-ów, dzięki którym ‘od ręki’ obsługiwane są m.in. procesy na styku Siebel CRM, czy systemu EBS, Siebel CRM i aplikacji bankowej Flex-Cube. Kolejne pakiety pozwalają na ich natychmiastowe użycie do obsługi nawet bardzo złożonych procesów z szerokiej palety rozwiązań - jak chociażby w pokazanym poniżej procesie ‘Concept to Delivery’ (Od projektu do dostawy).

Rys. 2. Zintegrowana obsługa procesu ‘Concept to Delivery’

O dojrzałości podejścia Oracle niech zaświadczą opinie analityków, którzy zgodnym chórem podkreślają dojrzałość koncepcji i wysoką jakość rozwiązania integracyjnego. Firma Ovum dochodzi do wniosku, że “Długofalowe wyzwanie stojące przed Oracle – różnorodność i szeroki zakres przejętych przez tę firmę aplikacji, które nie zawsze są ze sobą kompatybilne – stało się źródłem przewagi, gdyż dzięki temu powstały rozwiązania AIA”. Forrerster Research i Nucleus porównując rozwiązania Oracle z ofertą konkurencji, podkreślają ich znaczącą przewagę technologiczną, a AMR ‘stawia kropkę nad i’ pisząc “Oracle stworzył jedną z najbardziej fascynujących strategii integracyjnych, które zdarzyło się nam widzieć.”

Koniec wieńczy dzieło, czyli jak zasypać ‘execution gap’

Standaryzacja usług realizowanych przez aplikacje bazowe i ich obsługa przez wspólny silnik integracyjny z wykorzystaniem gotowych (ale łatwo rozszerzalnych) pakietów integracyjnych, pozwalają na błyskawiczne przemodelowanie używanego w firmie rozwiązania z uwzględnieniem jego nowych lub zaktualizowanych procesów biznesowych. W efekcie uzyskujemy lepszą obsługę działalności organizacji, przy kosztach utrzymania i modernizacji IT znacznie niższych niż przed zmianą architektury. Wykorzystanie do realizacji serwisów najlepszych w swojej dziedzinie aplikacji bazowych, zwiększa ergonomię pracy i satysfakcję użytkownika oraz powoduje, że system jest zdolny do lepszej i skuteczniejszej realizacji zamierzeń kierownictwa. W efekcie firma zwiększa swą zdolność konkurencyjną i umacnia pozycję lidera branży.

Rys. 3. Likwidacja rozwarstwiania się celów kierownictwa i faktycznej ich realizacji (‘Execution gap”) dzięki standaryzacji usług aplikacji, zwiększaniu elastyczności IT i zmniejszeniu kosztów

Autor artykułu jest Dyrektorem Konsultingu sprzedaży Aplikacji Oracle na Polskę i Kraje Bałtyckie.

Napisz do autora:
Andrzej.Amanowicz@oracle.com


Brak komentarzy:

Prześlij komentarz