Przez innowacyjność do przewagi konkurencyjnej

Działać skuteczniej, efektywniej i szybciej niż konkurencja – bez ponoszenia wysokich nakładów – to marzenie każdego menedżera. Jednak gdzie szukać innowacji, które to umożliwią? Odpowiedź jest przewrotna, a zarazem prosta – wewnątrz własnej organizacji.

Każde przedsiębiorstwo posiada ogromną ilość informacji w wielu systemach, bazach danych, aplikacjach czy arkuszach kalkulacyjnych. Spojrzenie na nie pod innym kątem i w innym kontekście, zestawienie ich z innymi danymi rzuca na nie nowe światło i odkrywa nowe możliwości. Dzięki takim niebanalnym i innowacyjnym w skali organizacji działaniom uzyskuje się przewagę konkurencyjną.

Efektywność takich działań można wzmocnić, korzystając z narzędzi IT, które dostarczą wszystkich niezbędnych informacji (niezależnie od źródła ich pochodzenia). Obecnie dzięki aplikacjom kompozytowym SAP budowa takich rozwiązań jest prostsza niż kiedykolwiek.

SAP AG dostarcza środowiska – SAP Composite Application Framework – i narzędzi – WebDynpro, Visual Composer – dzięki którym możemy te innowacyjne procesy wymodelować oraz udostępnić użytkownikom jako tak zwane aplikacje kompozytowe.

Aplikacje kompozytowe to swego rodzaju jednorodny zbiór funkcjonalności połączonych w jedną logiczną całość, rezydujących na górze istniejących aplikacji i systemów IT. Innymi słowy aplikacje te są skoncentrowane na potrzebach danej grupy użytkowników oraz wspierają procesy biznesowe, które są dynamiczne, wzajemnie się zazębiające i obejmujące różne obszary w ramach danego przedsiębiorstwa.

Aplikacje te integrują informacje pochodzące z różnych źródeł, dzięki czemu użytkownik ma na jednym ekranie zebrane wszystkie dane konieczne do podjęcia decyzji czy wykonania działania biznesowego. Informacje są zaprezentowane w atrakcyjnej i interaktywnej formie – aplikacje kompozytowe bowiem są budowane jako interaktywne aplikacje webowe (głównie w technologii Flash), działające w przeglądarce internetowej.

Dla firm posiadających np. portal korporacyjny są one idealnym uzupełnieniem jego zawartości, istotnie zwiększając jego użyteczność. Dzięki aplikacji kompozytowej realizacja danego procesu zostaje przeniesiona do portalu. Tym samym portal zaczyna służyć jako jednorodny i spersonalizowany punkt dostępu do narzędzi umożliwiających pracownikom realizację ich zadań.

Spojrzenie na zgromadzone w systemach IT informacje pod innym kątem i w innym kontekście, zestawienie ich z innymi danymi rzuca na nie nowe światło i odkrywa nowe możliwości.

Warto podkreślić, że dzięki czerpaniu informacji z działających rozwiązań informatycznych aplikacje kompozytowe pozwalają na pełniejsze wykorzystanie istniejącej infrastruktury IT. Dodatkowo firmy osiągają poważne oszczędności oraz wyższy zwrot z IT, nie wspominając już o efektywniejszym i bardziej wszechstronnym wykorzystaniu przechowywanych danych.

Od interfejsu do logiki biznesowej

Najbardziej charakterystyczną cechą aplikacji kompozytowych jest brak ich mocnego powiązania z systemami back-end. Operują one na pewnym poziomie ogólności, jeżeli chodzi o kwestie integracji, pobierania i aktualizacji danych. I to tak naprawdę jest ich główną zaletą.

W aplikacjach kompozytowych mamy do czynienia z całkowitym rozróżnieniem pomiędzy interfejsem użytkownika a logiką biznesową zaszytą się w warstwie back-end. Z pozycji tej aplikacji nie jest istotne, w jaki sposób logika biznesowa została zaimplementowana na systemach back-end. Istotne jest to, że modyfikacje i zmiany w logice biznesowej w żaden sposób nie wpływają na wykorzystywany interfejs użytkownika.

Taka architektura pozwala na uzyskanie elastyczności i powoduje, że aplikacje kompozytowe są do pewnego stopnia niezależne od systemów back-end.

Uzyskanie takiej funkcjonalności nie byłoby możliwe bez odpowiedniej architektury środowiska do budowy aplikacji kompozytowych, jaką jest SAP Composite Application Framework. Podejście do budowy takich aplikacji ma strukturę warstwową, tzn. warstwa prezentacji danych jest oddzielona od warstwy logiki biznesowej rezydującej na systemach back-end.

W pewnym uproszczeniu architektura aplikacji kompozytowych składa się z trzech głównych warstw:

  • warstwy systemów back-end,
  • warstwy obiektów biznesowych,
  • warstwy prezentacji danych (interfejs użytkownika).

Najniżej znajduje się warstwa systemów back-end. Jest to miejsce integracji z systemami zawierającymi dane. Systemy back-end posiadają odpowiednio przygotowane zdalne interfejsy (np. BAPI, moduły RFC, WebService), za pomocą których możliwy będzie dostęp do danych i wykonywanie na nich operacji.

Środkową warstwą jest warstwa obiektów biznesowych. Główny zamysł polega na tym, aby aplikacje kompozytowe korzystały z obiektów biznesowych, czyli pewnych kompletnych struktur danych opisanych za pomocą atrybutów. Takimi obiektami mogą być np. klient, zamówienie, dostawa, produkt.

Występują dwa typy obiektów biznesowych: zdalne i lokalne. Zdalne obiekty biznesowe odwołują się do warstwy back-end i pobierają lub wysyłają dane, korzystając z interfejsów dostępnych w ramach funkcjonujących systemów (BAPI, moduły RFC, WebService). Lokalne obiekty są natomiast tworzone na etapie budowania aplikacji i nie mają bezpośredniego połączenia z warstwą back-end. Są to pewnego rodzaju dodatkowe obiekty wykorzystywane w aplikacji i nie mają odzwierciedlenia w warstwie back-end.

Na obiekcie biznesowym wykonywane są podstawowe operacje, takie jak stwórz nowy, aktualizuj, usuń, wyszukaj itp. Opierając się na takim podejściu i przyjmując założenie, że obiekty biznesowe stają się tylko kontenerami dla danych – obiektom tym możemy nadać dowolną logikę biznesową.

Taki sposób funkcjonowania pokazuje nam jeszcze jedną zaletę tego podejścia – mianowicie reużywalność obiektów. Oznacza to, że różne aplikacje mogą korzystać z tego samego raz stworzonego obiektu biznesowego i mogą wykonywać na nim różne operacje (wg różnej logiki biznesowej).

Przykładowo obiekt o nazwie „dane podstawowe klienta”, zwracający podstawowe informacje takie jak nazwa klienta, adres, telefon, osoby kontaktowe, limit kredytowy, warunki płatności itp., może być użyty w aplikacji kompozytowej służącej do analizy zamówień, ale także w aplikacji dostarczającej danych o zaległych płatnościach czy też innej aplikacji, służącej do np. określania rentowności sprzedaży w podziale na poszczególnych klientów.

Warte podkreślenia jest również, że w dość prosty sposób jesteśmy w stanie zmienić bez przebudowy całej aplikacji np. źródło danych dla danego obiektu biznesowego. Przykładowo obiekt biznesowy nazywa się „lista klientów” i wykonywana jest na nim operacja wyszukiwania po numerze klienta.

W pierwotnej wersji obiekt korzysta z danych pochodzących z systemu ERP. Jeśli jednak pojawia się w firmie potrzeba zmiany systemu back-end na inny, np. CRM, taka zmiana dotyczy tylko źródła danych, a sam obiekt biznesowy w aplikacji oraz wszystkie operacje, które są na nim wykonywane, są niezmienne.

Po zmianie użytkownik, w chwili gdy odpytuje nasz obiekt biznesowy zwany „listą klientów”, otrzymuje dane z systemu CRM, a nie jak jeszcze niedawno z systemu ERP.

Ostatnim elementem tej architektury jest warstwa odpowiedzialna za wygląd interfejsu użytkownika. Interfejs użytkownika, czyli tak naprawdę ekran, dzięki któremu użytkownik będzie mógł pracować i wykonywać operacje na obiektach biznesowych, może być wykonany za pomocą różnych technologii, jak np. SAP Visual Composer, WebDynpro, czy Adobe Flex.

Przykładowo za pomocą technologii Adobe Flex łatwo można stworzyć prototyp interfejsu, dzięki czemu użytkownicy na bardzo wczesnym etapie mogą zobaczyć, jak będzie wyglądała ich przyszła aplikacja, i ewentualnie już wtedy zgłosić swoje uwagi. Takie podejście – gdy najpierw jest tworzona część wizualna, a dopiero w następnym kroku nadajemy jej funkcjonalność – pozwala kierownictwu i użytkownikom zaznajomić się z aplikacją, zanim tak naprawdę zostanie stworzona. To pozwala uniknąć pracochłonnych i kosztownych zmian w przyszłości.

Kompozytowy czyli kompleksowy

Firmy potrzebują kompleksowych informacji dotyczących danego procesu biznesowego, który osadzony jest w danym kontekście, tak aby zainteresowani użytkownicy mogli podjąć właściwe działania. Kluczowe zatem dla nowych aplikacji jest, aby były one:

  • kompleksowe (dostarczały całościowego poglądu na proces, a nie tylko na jego fragment),
  • istotne (zawierały kluczowe dla danego procesu informacje),
  • odpowiednie (dopasowane do konkretnych potrzeb biznesowych),
  • aktualne (dostarczały najaktualniejszych danych).

Takie aplikacje muszą nie tylko prezentować najświeższe informacje pochodzące z systemów transakcyjnych czy hurtowni danych, ale także dostarczać informacji dotyczących przeszłych zachowań i podjętych działań.

Dzięki takiemu sposobowi prezentacji danych decyzja np. o sprzedaży danego produkty z takim, a nie innym rabatem będzie o wiele prostsza do podjęcia i oparta na bardziej akuratnych danych.

Za doskonały przykład może tu posłużyć aplikacja do zarządzania limitem kredytowym klientów.

Przykładowe zastosowanie aplikacji kompozytowych SAP

  • Stopień realizacji celów – kompleksowa aplikacja kompozytowa umożliwiająca weryfikację realizacji założonych w planie biznesowym celów firmy, monitorowanie wielkości produkcji, porównywania i analizowanie wielkości sprzedaży, cen i marży na różnych rynkach.
  • Rozrachunki z klientami – aplikacja dostarczająca kompleksowych informacji o limitach kredytowych klientów i stopniu ich wykorzystania, umożliwiająca przegląd struktury oraz historii płatności oraz analizę zobowiązań.
  • Analiza cyklów sprzedażowych – analiza działalności konkurencji w poszczególnych fazach rocznego cyku sprzedaży, umożliwiająca podjęcie lepszych decyzji o wyborze odpowiedniej strategii w nadchodzącym okresie.
  • Promocje handlowe – analiza efektywności akcji promocyjnych oraz badanie stopnia ich realizacji i nakładów na poszczególne działania marketingowe.
  • Dochodowość kontrahentów – aplikacja do analizy i porównywania, jaki udział mają poszczególni klienci w całkowitych dochodach przedsiębiorstwa z tytułu prowadzonej działalności.

W każdej praktycznie firmie dochodzi do większego lub mniejszego rozdźwięku pomiędzy działami, co skutkuje albo niewykonaniem pewnych działań, albo zdublowaniem pewnych prac. To przekłada się na spadek produktywności i wydłużenie danego procesu w czasie, nie wspominając już o możliwości podjęcia niewłaściwej decyzji i poniesienia z tego tytułu strat.

W przypadku takiego rozdźwięku między działem sprzedaży i działem finansów (kontrola kredytowa) może dojść do złego zarządzania limitem kredytowym. Dany kontrahent może np. znacząco przekroczyć limit kredytowy. Bez takiej informacji dział sprzedaży może jego zadłużenie jeszcze zwiększyć przez sprzedaż produktów, których już nie powinien sprzedawać.

Może oczywiście dojść do sytuacji odwrotnej. Naszemu kontrahentowi dział sprzedaży odmawia sprzedaży produktów, pomimo tego że uregulowane zostały płatności za poprzednie faktury – tylko że niestety taka informacja nie została na czas dostarczona z księgowości.

Misja do zrealizowania

Częstym problemem w firmach jest brak możliwości uzyskania jednolitego obrazu całości danych, które dotyczą danego procesu biznesowego, a jednocześnie powiązane są z wieloma dokumentami i tabelami zawierającymi dane, generowanymi w różnych działach.

Takie rozproszenie informacji może znacznie utrudnić uzyskanie właściwego poglądu na konkretną kwestię i doprowadzić do wielokrotnego wykonywania tych samych czynności.

Dlatego celem aplikacji kompozytowych (szczególnie tych dostarczających danych analitycznych) jest, aby szersze grono użytkowników uzyskało dostęp do potężnego, a zarazem elastycznego i opartego na koncepcji ról rozwiązania biznesowego. Rozwiązania, które przyczynia się do poprawy komunikacji i ogólnej produktywności w firmie – dostarcza bowiem użytkownikom takich informacji jakich potrzebują do tego, by sprawnie wykonywać przypisane zadania. Takie do pewnego stopnia spersonalizowane aplikacje mają nieoceniony wpływ na prawidłowe podejmowanie decyzji.

Problem braku analitycznych narzędzi nakierowanych na dany proces biznesowy występuje – w mniejszym bądź większym stopniu – praktycznie w każdej organizacji. A pierwszym symptomem jest chociażby potrzeba pobrania danych z kilku źródeł i przekopiowywanie ich do arkusza kalkulacyjnego w celu dokonania ich zbiorczej analizy.

Aplikacje kompozytowe łączą business know-how, process know-how oraz software know-how w taką formę aplikacji, która wzmacnia siłę istniejących w firmie danych i funkcjonalności. W praktyce oznacza to, że aplikacje kompozytowe łączą atrakcyjny wygląd (Flash) z danymi koniecznymi do prawidłowego przeprowadzenia danego procesu biznesowego, stając się wypełnieniem pewnej luki, jaka istnieje między wykorzystywanymi systemami IT w organizacji, kierując tym samym organizację na drogę innowacyjnego rozwoju.

Nowy duch w IT

Można wysunąć tezę, że aplikacje kompozytowe to nowy duch tknięty w firmowe systemy informacyjne. To odejście od idei człowieka jako integratora, czyli osoby, która musi przełączać się pomiędzy różnymi ekranami różnych aplikacji z różnych systemów, po to by dotrzeć do właściwych danych.

To także pewnego rodzaju zmiana modelu, w którym użytkownikom dostarczano zbyt wielu lub za mało danych, co wywoływało informacyjny chaos, nad którym ciężko zapanować. Dzięki analitycznym aplikacjom kompozytowym możliwe jest odciążenie analityków, którzy do tej pory musieli dokonywać pracochłonnej ekstrakcji danych udostępnianych innym grupom użytkowników.

Podsumowując, aplikacje kompozytowe wyróżniają się:

  • koncentracją na roli i procesie,
  • konsolidacją wielu źródeł informacji,
  • wysoką dostępnością,
  • szybkością i elastycznością rozwoju aplikacji umożliwiającą znaczną redukcję kosztów implementacji.

Powyższe cechy przyczyniają się do:

  • poprawy komunikacji i przepływu informacji poprzez umożliwienie płynnej współpracy między działami czy partnerami biznesowymi,
  • ułatwienia koncentracji na biznesie i szybszej reakcji na potrzeby rynku,
  • całościowego spojrzenia na dany proces biznesowy, a nie tylko na jego ograniczony fragment,
  • pełniejszego wykorzystania infrastruktury SOA.