Automatyzacja procesów biznesowych w środowisku Oracle BPM 11g: zagadnienia wdrożeniowe



Podobne dokumenty
Szkolenie: Budowa aplikacji SOA/BPM na platformie Oracle SOA Suite 11g

Korporacyjna Magistrala Usług na przykładzie Oracle Service Bus

Wprowadzenie do zarządzania procesami biznesowymi

Wymiana opisu procesów biznesowych pomiędzy środowiskiem Eclipse i EMC Documentum

Projekt: Współpraca i Rozwój wzrost potencjału firm klastra INTERIZON

Wprowadzenie do technologii Business Intelligence i hurtowni danych

Modelowanie procesów biznesowych, przepływu pracy i wdrażanie aplikacji w oparciu o Jboss jbpm lub Activiti

Automatyczne decyzje kredytowe, siła szybkiego reagowania i optymalizacji kosztów. Roman Tyszkowski ING Bank Śląski S.A. roman.tyszkowski@ingbank.

Warstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.

Aurea BPM Dokumenty pod kontrolą

Technologie dla aplikacji klasy enterprise. Wprowadzenie. Marek Wojciechowski

Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi

Modelowanie procesów biznesowych, przepływu pracy oraz reguł biznesowych na przykładzie Drools i jbpm lub Activiti

REFERAT PRACY DYPLOMOWEJ

Ekspert MS SQL Server Oferta nr 00/08

1 Wprowadzenie do J2EE

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów dziennych studiów II stopnia)

AUREA BPM Oracle. TECNA Sp. z o.o. Strona 1 z 7

Oracle Application Express -

Wykład 1 Inżynieria Oprogramowania

Czym jest jpalio? jpalio jpalio jpalio jpalio jpalio jpalio jpalio jpalio

Serwery LDAP w środowisku produktów w Oracle

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

AUREA BPM HP Software. TECNA Sp. z o.o. Strona 1 z 7

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Wyjaśnienia treści Specyfikacji Istotnych Warunków Zamówienia

Szczegółowy opis przedmiotu umowy. 1. Środowisko SharePoint UWMD (wewnętrzne) składa się z następujących grup serwerów:

Repozytorium Zasobów Wiedzy FTP

JBPM [JUG] Tomasz Gratkowski [GRATKOWSKI SOFTWARE]

SYSTEM WSMS ZARZĄDZANIE STANDARDEM STACJI ROBOCZYCH. tel: +48 (032)

Inżynieria oprogramowania - opis przedmiotu

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia)

ZAŁĄCZNIK NR 3 OPIS PRZEDMIOTU ZAMÓWIENIA DOTYCZĄCY WDROŻENIA PLATFORMY ZAKUPOWEJ

PROJEKT Z BAZ DANYCH

Dokument Detaliczny Projektu Temat: Księgarnia On-line Bukstor

Aurea BPM. Lepsze procesy, lepsze wyniki Warszawa, 24 lipca 2013

HP Service Anywhere Uproszczenie zarządzania usługami IT

ZARZĄDZANIE WYMAGANIAMI ARCHITEKTONICZNYMI

Systemy obiegu informacji i Protokół SWAP "CC"

Na środowisko teleinformatyczne zbudowane w ramach Projektu składać się będzie sprzęt komputerowy oraz oprogramowanie.

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

Doradzamy, projektujemy, tworzymy, wdrażamy i utrzymujemy dedykowane rozwiązania i systemy informatyczne w oparciu o potrzeby zamawiającego.

Forum Client - Spring in Swing

Oferta szkoleniowa Yosi.pl 2012/2013

7. zainstalowane oprogramowanie zarządzane stacje robocze

Katedra Inżynierii Oprogramowania Tematy prac dyplomowych inżynierskich STUDIA NIESTACJONARNE (ZAOCZNE)

Architektura Systemu. Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu.

Wspomaganie pracy w terenie za pomocą technologii BlackBerry MDS. (c) 2008 Grupa SPOT SJ

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)

SYSTEM VILM ZARZĄDZANIE CYKLEM ŻYCIA ŚRODOWISK WIRTUALNYCH. tel: +48 (032)

Specyfikacja usług. 1. Zakup usług informatycznych dla realizacji dostępu do systemu dla obsługi relacji B2B.

Referat pracy dyplomowej

Procesy biznesowe w praktyce. Przykłady użycia z wykorzystaniem jbpm 4.4

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle

Analiza i projekt systemu pracy grupowej z zastosowaniem metodyki SCRUM w technologii SharePoint Karolina Konstantynowicz

Załącznik nr 1. Do zapytania ofertowego nr 1/UE/2013

WEBCON Business Process Suite 7.7. Lista zmian i nowych funkcjonalności

Część I - Załącznik nr 7 do SIWZ. Warszawa. 2011r. (dane Wykonawcy) WYKAZ OSÓB, KTÓRYMI BĘDZIE DYSPONOWAŁ WYKONAWCA DO REALIZACJI ZAMÓWIENIA

Modele bezpieczeństwa logicznego i ich implementacje w systemach informatycznych / Aneta Poniszewska-Marańda. Warszawa, 2013.

Informatyzacja przedsiębiorstw WYKŁAD

Systemy ERP. dr inż. Andrzej Macioł

Wykład I. Wprowadzenie do baz danych

Błędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation)

ZAPYTANIE CENOWE dotyczące Opracowania Projektu i Wdrożenie Systemu Zarządzania Zasobami Infrastruktury Techniczno-Systemowej

Jarosław Żeliński analityk biznesowy, projektant systemów

Model ofertowy Model ofertowy w Katalogu realizowany jest w oparciu o model SID. Wykorzystanie tego modelu umożliwia:

Administratora CSIZS - OTM

System INTEGRYB jako zintegrowane repozytorium danych umożliwiające zaawansowaną analitykę badawczą

ZAŁOŻENIA TECHNICZNO-TECHNOLOGICZNE SYSTEMU BUDOWANEGO W RAMACH PROJEKTU

Piotr Krząkała. Dyrektor Handlowy ds. Kluczowych Klientów

Kurs ASP.NET ASP.NET CORE APLIKACJE WEBOWE

SOA Web Services in Java

System Obsługi Wniosków

System automatycznego rozsyłania wiadomości

Korporacyjna Magistrala Usług na przykładzie Mule ESB

SiR_13 Systemy SCADA: sterowanie nadrzędne; wizualizacja procesów. MES - Manufacturing Execution System System Realizacji Produkcji

Programowanie Komponentowe WebAPI

INŻYNIERIA OPROGRAMOWANIA

Zapytanie ofertowe nr 1/POIG 8.2/2013

Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki. Paweł Parys. Nr albumu: Aukcjomat

epuap Opis standardowych elementów epuap

Zaawansowane aplikacje internetowe. Wykład 7. Implementacja procesów biznesowych w języku BPEL. wykład prowadzi: Maciej Zakrzewicz BPEL.

Język BPEL. Bussiness Process Execution Language

Oracle Designer. Oracle Designer jest jednym z głównych komponentów pakietu Oracle Developer Suite. Oracle Designer wspiera :

Międzyplatformowy interfejs systemu FOLANessus wykonany przy użyciu biblioteki Qt4

Graficzna notacja procesów biznesowych BPMN. Porównanie z notacja UML. Jakub Morkis, Piotr Chmielewski

W książce omówiono: SAP zostań ekspertem w 24 godziny!

OPIS i SPECYFIKACJA TECHNICZNA

PureSystems zautomatyzowane środowisko aplikacyjne. Emilia Smółko Software IT Architect

Informacja o firmie i oferowanych rozwiązaniach

Bazy danych i ich aplikacje

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów dziennych studiów II stopnia)

Hurtownie danych - przegląd technologii

Virtual Grid Resource Management System with Virtualization Technology

egroupware czy phpgroupware jest też mniej stabilny.

REKOMENDACJE DOTYCZĄCE PLATFORMY ZARZĄDZANIA KOMPETENCJAMI

problem w określonym kontekście siły istotę jego rozwiązania

TWÓJ BIZNES. Nasz Obieg Dokumentów

Transkrypt:

XVII Konferencja PLOUG Kościelisko Październik 2011 Automatyzacja procesów biznesowych w środowisku Oracle BPM 11g: zagadnienia wdrożeniowe Maciej Zakrzewicz Politechnika Poznańska Streszczenie: Oracle BPM 11g jest jedną z najpopularniejszych korporacyjnych platform automatyzacji i obsługi procesów biznesowych, opartą o koncepcję architektury zorientowanej na usługi (SOA). W skład platformy wchodzą m.in.: repozytorium BPM - baza danych przechowująca definicje procesów biznesowych oraz stany bieżących i historycznych instancji procesów biznesowych, serwer BPM - nieprzerwanie pracująca aplikacja serwerowa, która koordynuje wykonanie instancji procesów biznesowych, BPM Workspace - aplikacja dostępna za pośrednictwem przeglądarki WWW, umożliwiająca kontakt użytkowników końcowych z instancjami procesów biznesowych oraz realizację działań manualnych będących krokami składowymi procesów biznesowych, narzędzia Process Composer i JDeveloper - służące analitykom i programistom do modelowania i implementacji nowych procesów biznesowych, narzędzie Enterprise Manager - wspomagające pracę administratora systemu zarządzania procesami biznesowymi, umożliwiające obserwację stanu każdej bieżącej lub historycznej instancji procesu biznesowego, a także diagnozowanie przyczyn ewentualnych awarii. W referacie przedstawiono architektury i funkcjonalność składników Oracle BPM 11g oraz omówiono wybrane doświadczenia z wdrażania systemów zarządzania procesami biznesowymi opartych o Oracle BPM 11g.

Automatyzacja procesów biznesowych w środowisku Oracle BPM 11g: zagadnienia wdrożeniowe 131 1. Wprowadzenie Pod pojęciem procesu biznesowego rozumie się ustrukturyzowany zestaw czynności, manualnych lub automatycznych, które służą dostarczeniu klientowi lub klientom konkretnego produktu lub usługi. Krokami procesów biznesowych mogą być wywołania funkcji/procedur, wywołania usług programowych, transakcje w bazach danych, wywołania podprocesów biznesowych, czynności manualne realizowane przez pracowników, itd. Procesy biznesowe są zwykle modelowane i opisywane przy użyciu formalnych notacji graficznych, takich jak BPMN, EPC, UML, itp. Wiele firm i instytucji dąży obecnie do automatyzacji zarządzania procesami biznesowymi, sprawiającej, że wszystkie czynności wykonywane są we właściwej kolejności, we właściwym czasie i przez właściwe osoby. Dążenia te stały się motywacją dla rozwoju specjalizowanego rodzaju oprogramowania, nazywanego systemem zarządzania procesami biznesowymi, traktowanego jako spadkobiercę systemów przepływu dokumentów i systemów zarządzania przepływem pracy. System zarządzania procesami biznesowymi posługuje się dostarczonymi modelami formalnymi procesów w celu koordynacji i synchronizacji ich realizacji. Ogólna architektura systemów zarządzania procesami biznesowymi zwykle naśladuje model referencyjny opracowany przez organizację Workflow Management Coalition (rys. 1). Zgodnie z tym modelem, składnikami systemu zarządzania procesami biznesowymi są: (1) Process Definition Tools narzędzia służące do formalnego modelowania procesów biznesowych z pomocą wybranej notacji, (2) Workflow Enactment Service platforma koordynacji i synchronizacji realizacji procesów biznesowych zgodnie z ich formalnymi modelami, (3) Invoked Applications usługi/aplikacje zewnętrzne, wywoływane przez Workflow Enactment Service w celu automatycznej realizacji pojedynczych kroków procesu biznesowego, (4) Client Applications aplikacje zewnętrzne służące do interakcji z użytkownikiem, odgrywającym rolę zarówno zleceniodawcy procesu biznesowego, jak i realizatora pojedynczych kroków manualnych procesu biznesowego, (5) Administration & Monitoring Tools narzędzia administracyjne umożliwiające obserwację postępu realizacji procesów biznesowych. Opcjonalnie, komponent Workflow Enactment Service może wchodzić w interakcję z innymi, równorzędnymi, podrzędnymi lub nadrzędnymi, obcymi systemami zarządzania procesami biznesowymi. Rys. 1. Architektura referencyjna systemu zarządzania przepływami pracy [WFMC] Innym istotnym nurtem technologicznym stanowiącym wyróżnik nowoczesnych korporacyjnych systemów informatycznych jest architektura aplikacyjna zgodna z założeniami tzw. architektury

132 Maciej Zakrzewicz zorientowanej na usługi. Zakłada ona modularność systemów, polegającą na implementacji logiki biznesowej w formie zbioru odrębnych, autonomicznych, rozproszonych i reużywalnych usług, które na żądanie użytkowników są uruchamiane w skoordynowany sposób. Popularne wzorce projektowe dla architektury zorientowanej na usługi dzielą usługi na dwie główne grupy: usługi podstawowe i usługi procesowe. Usługi podstawowe odpowiadają za implementację elementarnych czynności biznesowych, jak np. przelew bankowy, obciążenie konta, aktualizacja stanu magazynowego, weryfikacja danych karty płatniczej. Są one zwykle implementowane z użyciem takich języków programowania jak Java, C#, PL/SQL. Z kolei działanie usług procesowych polega na koordynowaniu wywołań usług podstawowych tak, aby uzyskać przetwarzanie zgodne z założeniami realizowanego procesu biznesowego, np. obsługa zamówień klientów, obsługa wniosków kredytowych, obsługa sprzedaży internetowej. Implementacja usług procesowych zwykle opiera się o specjalizowane języki programowania, wywodzące się z tych samych notacji formalnych, które wykorzystywane są do modelowania procesów biznesowych np. BPMN, BPEL. Niezwykle interesującym wyzwaniem technicznym jest próba połączenia założeń architektury zorientowanej na usługi z koncepcjami systemów zarządzania procesami biznesowymi. Rozwiązaniem, które wychodzi naprzeciw takiemu wyzwaniu jest Oracle BPM 11g wieloskładnikowa platforma operacyjno-narzędziowa umożliwiająca formalne modelowanie procesów biznesowych, a następnie ich implementację i wykonywanie zgodnie z wymogami architektury zorientowanej na usługi [OBPM] [OFM]. W skład platformy Oracle BPM 11g wchodzą m.in.: (1) repozytorium BPM - baza danych przechowująca formalne definicje procesów biznesowych oraz stany bieżących i historycznych instancji procesów biznesowych, (2) serwer BPM - nieprzerwanie pracująca aplikacja serwerowa, która koordynuje wykonanie instancji procesów biznesowych, (3) BPM Workspace - aplikacja dostępna za pośrednictwem przeglądarki WWW, umożliwiająca kontakt użytkowników końcowych z instancjami procesów biznesowych oraz realizację działań manualnych będących krokami składowymi procesów biznesowych, (4) narzędzia Process Composer i JDeveloper - służące analitykom i programistom do modelowania i implementacji nowych procesów biznesowych, (5) narzędzie Enterprise Manager - wspomagające pracę administratora systemu zarządzania procesami biznesowymi, umożliwiające obserwację stanu każdej bieżącej lub historycznej instancji procesu biznesowego, a także diagnozowanie przyczyn ewentualnych awarii. Warto zauważyć, że każdy ze składników Oracle BPM 11g może zostać łatwo odwzorowany na jeden z komponentów architektury referencyjnej Workflow Management Coalition: serwer BPM i repozytorium BPM to Workflow Enactment Service, narzędzia Process Composer i JDeveloper to Process Definition Tools, BPM Workspace to Client Application, a Enterprise Manager to Administration & Monitoring Tool. 2. Główne składniki Oracle BPM 11g 2.1. Serwer BPM i repozytorium BPM Serwer BPM został zaimplementowany w formie aplikacji Java EE posadowionej na serwerze aplikacji Oracle WebLogic Server. Jego głównym zadaniem jest wykonywanie kolejnych kroków instancji procesów BPMN oraz utrwalanie stanów instancji, umożliwiające wznowienie pracy po restarcie lub awarii serwera. Procesy BPMN zainstalowane na serwerze BPM są udostępniane aplikacjom zewnętrznym jako usługi Web Service, opisane dokumentami WSDL. W przypadku procesów BPMN opartych o mechanizmy interakcji z użytkownikami końcowymi, aplikacje zewnętrzne korzystają też z interfejsu Oracle Workflow. Definicje procesów BPMN oraz stany ich instancji są zapisywane w bazie danych repozytorium BPM (kilkaset tabel). Repozytorium BPM może mieścić się w dedykowanej bazie danych Oracle, bądź też w istniejącej bazie danych Oracle któregoś z systemów produkcyjnych.

Automatyzacja procesów biznesowych w środowisku Oracle BPM 11g: zagadnienia wdrożeniowe 133 2.2. BPM Workspace BPM Workspace jest aplikacją Java EE, która służy użytkownikom końcowym do interakcji z serwerem BPM i instancjami wykonywanych procesów BPMN (rys. 2). Interakcja ta obejmuje zarówno inicjowanie nowych instancji procesów, jak i obsługę kroków manualnych wchodzących w skład wykonywanych instancji. Prezentacja graficznego interfejsu użytkownika jest w obu przypadkach realizowana przez uprzednio przygotowane strony/regiony ADF Faces. Pozostałe funkcje narzędzia BPM Workspace obejmują m.in. podgląd kroków manualnych wykonanych w przeszłości, podgląd struktury procesów BPMN, w ramach których wykonywane są kroki manualne, konfigurację preferencji użytkownika w zakresie automatycznego powiadamiania. Inicjalizacja h i t Kroki manualne oczekujące na wykonanie przez użytkow- Interfejs użytkownika dla kroku manualnego 2.3. Process Composer i JDeveloper Rys. 2. Struktura narzędzia BPM Workspace Process Composer i JDeveloper to narzędzia umożliwiające definiowanie modeli procesów biznesowych w notacji BPMN oraz ich instalowanie na platformie serwera BPM. Process Composer jest adresowany przede wszystkim do analityków procesowych, których odpowiedzialność skupia się głównie na opracowaniu modeli procesów biznesowych, ich dokumentacji i weryfikacji (rys. 3). JDeveloper to z kolei narzędzie o orientacji programistycznej, przeznaczone dla deweloperów dokonujących implementacji usług procesowych i ich integracji z usługami podstawowymi i/lub czynnościami manualnymi. Efektem pracy każdego z wymienionych narzędzi może być opublikowana na serwerze BPM i gotowa do użytku usługa procesowa.

134 Maciej Zakrzewicz 2.4. Enterprise Manager Rys. 3. Process Composer Fusion Middleware Enterprise Manager jest narzędziem administracyjnym umożliwiającym m.in. konfigurację serwera BPM, instalowanie, monitorowanie i testowanie procesów biznesowych, instalowanie aplikacji Java EE, konfigurację mechanizmów bezpieczeństwa (rys. 4). Wraz ze standardową konsolą administracyjną dostarczaną z serwerem Oracle WebLogic, Fusion Middleware Enterprise Manager stanowi podstawowe narzędzie do administrowania platformą Oracle BPM 11g. Rys. 4. Fusion Middleware Enterprise Manager

Automatyzacja procesów biznesowych w środowisku Oracle BPM 11g: zagadnienia wdrożeniowe 135 3. Automatyzacja procesów biznesowych na platformie Oracle BPM W tym rozdziale przedstawimy i skomentujemy wybrane problemy implementacyjne dotyczące wdrożeń systemów zarządzania procesami biznesowymi na platformie Oracle BPM 11g. 3.1. Ingerencja w model wykonywanej instancji procesu BPMN Z chwilą zainicjowania instancji procesu BPMN, dalsze wykonanie instancji odbywa się zgodnie z modelem procesu dostępnym w chwili inicjacji. Ewentualne późniejsze zmiany modelu nie mają wpływu na te instancje, których wykonywanie jest w toku. Podejście takie, naturalnie uzasadnione kwestiami zachowania spójności przetwarzania, może stanowić istotne ograniczenie w przypadku elastycznej realizacji procesów długotrwałych (np. kilkumiesięcznych). Podejmowane w takiej sytuacji rozwiązania mieszczą się w dwóch kategoriach: model procesu przewiduje ewentualne modyfikacje sposobu przetwarzania, zawierając liczne rozgałęzienia warunkowe umożliwiające zmianę ścieżki wykonania poprzez manipulowanie zewnętrznymi obiektami (parametryzacja modelu) model procesu cechuje się modułowością właściwe przetwarzanie jest rozbite na łańcuch podprocesów, które są wykonywane w odpowiedniej kolejności; możliwa jest zmiana definicji podprocesu zanim zostanie on wywołany (dekompozycja modelu) 3.2. Reużywalność zadań manualnych Czynności manualne będące krokami procesów biznesowych są implementowane w formie modułów ADF Task Flow. ADF to obszerny zestaw technologii implementacji biznesowych aplikacji Java EE opartych o systemy baz danych. Moduły ADF Task Flow to fragmenty aplikacyjne, które nadają się do łatwego zagnieżdżania wewnątrz innych modułów lub aplikacji ADF/BPM. Funkcjonalność modułów ADF Task Flow obejmuje interakcję z użytkownikiem, interakcję z bazami danych, złożone przetwarzanie zdarzeń, walidację danych, komunikację ze środowiskiem zewnętrznym za pomocą parametrów wejścia-wyjścia, itp. Z punktu widzenia efektywności implementacji/automatyzacji procesów biznesowych, należy dążyć do jak największej reużywalności modułów ADF Task Flow. Środowisko Oracle BPM daje możliwości wykorzystywania tego samego modułu ADF Task Flow dla implementacji różnych czynności manualnych będących krokami procesów biznesowych. Dużym wyzwaniem projektowym jest opracowanie takiego zestawu (portfolio) modułów ADF Task Flow, które będą mogły być integrowane z różnorodnymi modelami procesów BPMN definiowanych w przedsiębiorstwie lub instytucji. 3.3. Stan przetwarzania = stan instancji procesu BPMN? Realizowane procesy biznesowe BPMN charakteryzują się zwykle zestawem zmiennych, które służą do tymczasowej reprezentacji stanu przetwarzania i do przekazywania rezultatów działania kroków wcześniejszych do wejścia kroków późniejszych. Zmienne te mogą stanowić tzw. obiekty procesowe, zarządzane przez serwer BPM, lub zmienne lokalne wykorzystywane wewnątrz zewnętrznych usług Web Services i modułów ADF Task Flow, nieczytelne dla serwera BPM. Decyzja o sposobie implementacji zmiennych stanu przetwarzania jest istotna z punktu widzenia czytelności modelu BPMN, reużywalności usług/modułów składowych i mechanizmów monitorowania przebiegu realizacji instancji procesu BPMN. Przykład powyższego dylematu projektowego przedstawiono na rys. 5. Oba diagramy reprezentują fragment procesu biznesowego, w ramach którego dane wprowadzone przez użytkownika są zapisywane w bazie danych. Pierwszy model zakłada, że w wyniku realizacji czynności manualnej "Pobierz stawki od użytkownika" dane wprowadzane przez użytkownika do formularza modułu ADF Task Flow są zapisywane w obiektach procesowych, które są przekazywane do wejścia usługi

136 Maciej Zakrzewicz Zapisz stawki w bazie danych. Usługa ta dokonuje zapisu wartości pobranych z obiektów procesowych do stosownej tabeli bazy danych. Drugi z przedstawionych modeli obejmuje tylko jeden krok czynność manualną "Pobierz stawki od użytkownika i zapisz w bazie danych". Zakładamy, że skojarzony z tą czynnością moduł ADF Task Flow pobiera dane od użytkownika, a następnie samodzielnie zapisuje je w tabeli bazy danych. Niewątpliwie w tym przypadku model procesu BPMN cechuje się lepszą czytelnością, jednakże jej konsekwencją jest redukcja stopnia reużywalności modułu ADF Task Flow, np. w przypadku gdyby w ramach innego procesu wprowadzone przez użytkownika dane miały przed zapisem do bazy danych podlegać transformacji lub gdyby zapis miał się odbyć do pliku, a nie do bazy danych. 3.4. Harmonogramowanie procesów Rys. 5. Implementacja stanu przetwarzania Istnieje wiele zastosowań systemów zarządzania procesami biznesowymi, w których inicjacja instancji procesów BPMN następuje nie w wyniku aktywności użytkownika, a w rezultacie wystąpienia zdarzenia czasowego, np. nastąpienia końca dnia roboczego. Realizacja tego typu wymagań polega na zastosowaniu jednego z poniższych alternatywnych rozwiązań: zastosowanie w modelu procesu elementu zdarzenia typu Timer, z którym skojarzony może zostać albo punkt czasowy inicjacji instancji (może być określony w formie wyrażenia), albo interwał czasowy dla periodycznego inicjowania instancji (również może być określony w formie wyrażenia) implementacja zewnętrznego mechanizmu harmonogramowania, który według dowolnie zdefiniowanego wzorca (np. różne godziny wyzwolenia w różnych dniach tygodnia) dokonuje inicjalizacji instancji procesów BPM wykorzystując interfejs Web Service udostępniany przez serwer BPM Decyzja projektowa o wyborze jednego z powyższych rozwiązań podyktowana może być przede wszystkim regularnością lub nieregularnością harmonogramu wywoływania instancji procesów. W przypadku harmonogramów nieregularnych, zastosowanie elementu zdarzenia typu Timer wymaga drobnoziarnistego generowania sygnałów wyzwalających, a następnie ich filtrowania za pomocą konstrukcji warunkowych, co w konsekwencji przekłada się na pogorszenie czytelności modelu. Natomiast implementacja zewnętrznych mechanizmów harmonogramowania może przyczynić się do obniżenia "czystości" architektury systemowej oraz spowodować skomplikowanie procedur testowania środowiska. 3.5. Dynamiczny przydział czynności manualnych Czynności manualne stanowiące kroki procesów BPMN są definiowane w obrębie tzw. pasów pływackich, skojarzonych z konkretnym użytkownikiem, grupą użytkowników lub rolą. Istnieje

Automatyzacja procesów biznesowych w środowisku Oracle BPM 11g: zagadnienia wdrożeniowe 137 jednak szereg sytuacji, w których przydział wykonawcy do czynności manualnej powinien odbywać się w sposób dynamiczny. Definicja czynności manualnej pozwala na wykorzystanie wyrażenia (np. zapisanego w języku XPath), które wskaże wykonawcę czynności w chwili, gdy czynność ta będzie inicjowana. Ponadto, dostępne mechanizmy czasu ważności i eskalacji czynności manualnych umożliwiają dynamiczną zmianę wykonawcy w przypadku, gdy pierwotnie przydzielony wykonawca nie ukończy powierzonej czynności w zadanym przedziale czasowym. 3.6. Eksternalizacja reguł decyzyjnych Realizacja sterowania przepływem pracy w modelu procesu biznesowego nierzadko wymaga formułowania złożonych warunków logicznych dla elementów typu bramka. Zanurzenie tych warunków logicznych wewnątrz definicji procesu BPMN stanowi istotne ograniczenie dla ich późniejszych modyfikacji i adaptacji. W szczególności, po reformułowaniu warunków logicznych zapisanych wewnątrz definicji procesu, konieczna jest reinstalacja modelu procesu na serwerze BPM, a tym samym następuje zakłócenie obsługi użytkowników i ich instancji procesów BPMN. Bardzo pożądanym wzorcem projektowym jest eksternalizacja reguł decyzyjnych, polegająca na przeniesieniu logiki warunkowej poza granice modelu procesu BPMN, do usługi zewnętrznej. Wówczas zmiana zapisów logiki zewnętrznej nie powoduje konieczności reinstalacji modelu procesu na serwerze BPM. Interesującym rozwiązaniem technicznym umożliwiającym eksternalizację reguł decyzyjnych jest Oracle Rules logika warunkowa jest zapisywana w plikach repozytoriów mieszczących reguły decyzyjne lub tablice decyzyjne. Oracle BPM oferuje ścisłą integrację z Oracle Rules. 4. Podsumowanie W artykule dokonano przeglądu architektury i funkcjonalności platformy Oracle BPM 11g, omówiono zadania poszczególnych składników platformy oraz przedstawiono wybrane problemy wdrożeniowe. Artykuł stanowi zapis referatu wygłoszonego podczas XVII Konferencji Użytkowników i Deweloperów Oracle. Referencje [WFMC] [OBPM] [OFM] "Workflow Reference Model Diagram", http://www.wfmc.org/reference-model.html "Oracle Business Process Management Suite 11g Handbook", Major Das, Manas Deb, Mark Wilkins, Oracle Press, 2011 "Oracle Fusion Middleware Modeling and Implementation Guide for Oracle Business Process Management 11g"