Workflow

Transkrypt

Workflow
Systemy przepływu pracy (workflow)
Definicja
• Workflow (w języku polskim określany jako przepływ pracy)
jest to zautomatyzowany w całości lub części proces
biznesowy, w trakcie którego dokumenty, informacje lub
zadania są przekazywane pomiędzy uczestnikami procesu
w celu umożliwienia wykonania czynności w sposób zgodny
ze zdefiniowanymi regułami
2
System workflow (Workflow
management system) (przepływ
pracy)
• System umożliwiający za pomocą oprogramowania
tworzenie definicji procesów oraz zarządzanie
wykonywaniem procesów, uruchomionych na jednym lub
wielu silnikach przepływu pracy
• Potrafi interpretować definicje procesów, komunikować się z
uczestnikami przepływu pracy oraz, tam gdzie jest to
wymagane, wywoływać inne aplikacje
3
Cechy współczesnych
systemów przepływu pracy
• Duża złożoność systemu
• System rozproszony oparty o usługi sieciowe (ang. Web
Services)
• Duże nakłady na wdrożenie i utrzymanie systemu
• Konieczność współpracy informatyków, analityków i
specjalistów dziedzinowych
4
Najważniejsze standardy
• Organizacja WfMC
– Słownik pojęć
– Model referencyjny Workflow
– XPDL (XML Process Definition Language) – język zapisu i wymiany definicji
procesów biznesowych
• Organizacja OMG
– BPMN (Business Process Model Notation) – graficzna notacja służąca do
opisywania procesu biznesowego
• Organizacja OASIS
– BPEL (Business Process Execution Language) – język wykonywalny
procesów biznesowych zorientowanych na usługi sieciowe (ang. Web
Services)
5
Słownik pojęć
6
Workflow Reference Model
• Opisuje standardy funkcjonowania systemów przepływu
pracy oraz obrazuje jak standardy dopasowują się do siebie
• Wszystkie systemy przepływu pracy zawierają pewną liczbę
standardowych komponentów, które oddziaływują na siebie
na kilka różnych sposobów
• Model referencyjny opracowany przez WfMC jest próbą
generalizacji, wyszukania i uzgodnienia wspólnych cech
systemów przepływu pracy.
7
8
Model referencyjny systemu
przepływu pracy (Workflow)
Process
Definition T ools
Interface 1
Interface 5
Workflow API and Interchange formats
Interface 4
Other Workflow
Enactment Service(s)
Workflow Enactment Service
Administration
& Monitoring
Tools
Workflow
Engine(s)
Workflow
Engine(s)
Interface 2
Interface 3
Workflow
Client
Applications
Invoked
Applications
9
Model referencyjny systemu
przepływu pracy (Workflow)
10
Mechanizm workflow (Workflow
Engine(s))
• Interpretacja procesu definicji
• Kontrola przebiegu procesu: tworzenie, aktywacja, zawieszenie,
zakończenie, itp.
• Nawigacja pomiędzy czynnościami procesu, która może zawierać
w sobie działanie sekwencyjne bądź równoległe, krytyczny termin
realizacji, interpretację istotnych danych dotyczących procesu
• Statyczne i dynamiczne przypisywanie zadań do uczestników procesu
• Wywoływanie zewnętrznych aplikacji
11
Schemat przejść stanów dla
procesu
12
Podstawowe rodzaje stanów
•
Zainicjowany (Initiated) – instancja procesu została utworzona
i zawiera powiązane z procesem dane; nie są jednak spełnione
warunki uruchomienia procesu
•
Wykonywany (Running) – instancja procesu została uruchomiona
proces jest gotowy do uruchomienia którejś z czynności
•
Aktywny (Active) – jedna lub więcej czynności jest uruchomiona;
zadania zostały przydzielone do wykonawców; wykonawcy mogą lub
już wykonują swoje zadania
•
Zawieszony (Suspended) – wykonywanie procesu zostało
wstrzymane; czynności nie są uruchamiane dopóki proces nie wróci
do stanu „wykonywany” poprzez polecenie wznowienia
13
Podstawowe rodzaje stanów
•
Zakończony sukcesem (Completed) - proces spełnił warunki dla
zakończenia; po wykonaniu końcowych operacji zapisu danych do
dziennika oraz różnych statystyk instancja procesu zostanie
zniszczona
•
Zakończony przerwaniem (Terminated) – wykonywanie procesu
zostało przerwane; po wykonaniu końcowych operacji zapisu danych
do dziennika oraz różnych statystyk instancja procesu zostanie
zniszczona
14
Schemat przejść stanów dla
czynności
15
Podstawowe rodzaje przejść
stanów dla czynności
•
Nieaktywna (Inactive) – instancja czynność została utworzona, ale
nie jest aktywowana, ponieważ nie zostały spełnione warunki
wejściowe
•
Aktywna (Active) – instancja czynności została aktywowana
(uruchomiona); zadania zostały przydzielone; wykonawcy mogą lub
już wykonują swoje zadania
•
Zawieszona (Suspended) – wykonywanie czynności zostało
wstrzymane; czynność będzie przebywać w tym stanie dopóki nie
zostanie jawnie wznowiona;
•
Zakończona z sukcesem (Completed) – wykonanie czynności
zakończyło się sukcesem; wszystkie warunki zakończenia czynności
zostały spełnione
16
Workflow Definition Interchange
(Interface 1)
17
Workflow Definition
Interchange (Interface 1)
• Definicja meta-modelu zdolnego wyrazić obiekty, atrybuty i
związki występujące w definicji procesu
• Specyfikacja interfejsu pomiędzy silnikiem przepływu pracy
a narzędziami służącymi do definiowania procesów i
przechowywania definicji procesów
18
Meta-model procesu
19
Definicja obiektów i ich
atrybutów
• Definicja typu workflow (Workflow Type Definition)
–
–
–
–
Nazwa procesu
Numer wersji
Warunki uruchomienia i zakończenia procesu
Ochrona, kontrola danych źródłowych
• Czynność (Activity)
–
–
–
–
Nazwa czynności
Typ czynności
Warunki uruchomienia i zakończenia czynności
Inne ograniczenia
• Przejście warunkowe (Transition Conditions)
– Warunki przepływu i wykonania
20
Definicja obiektów i ich
atrybutów
• Powiązane dane (Workflow relevant data)
– Nazwa danych i ścieżka dostępu
– Typy danych
• Rola (Role)
– Nazwa oraz istota organizacyjna
• Wywoływana aplikacja (Invoked Application)
– Podstawowa nazwa i typ
– Parametry wykonania
– Lokalizacja i ścieżka dostępu
21
Interfejs do narzędzi
definiowania i składowania
procesów
• Nawiązywanie połączenia (sesji) pomiędzy komponentami
• Pobieranie listy dostępnych definicji procesu
• Pobieranie konkretnej definicji procesu w celu uruchomienia
lub edycji
• Tworzenie, pobieranie, usuwanie i edycja obiektów
wchodzących w skład definicji procesu
• Tworzenie, pobieranie, usuwanie i edycja atrybutów
obiektów wchodzących w skład definicji procesu
22
Workflow Client Application
Interface (Interface 2)
23
Interfejs aplikacji klienta
•
Funkcje statusu procesu (Process Status Functions).
–
•
pobieranie i wyszukiwanie instancji procesu lub czynności wg
określonych kryteriów filtrowania (lub bez)
Funkcje obsługiwania listy zadań/obiektów
(Worklist/Workitem Handling Functions).
–
–
Pobieranie i wyszukiwanie przypisanych zadań wg określonych
kryteriów filtrowania (lub bez)
pobieranie powiadomień o otrzymaniu zadania
24
Interfejs aplikacji klienta
•
Funkcje nadzorcze procesu (Process Supervisory
Functions)
–
–
•
zmiana stanu całej instancji procesu lub czynności (zatrzymanie,
wznowienie)
zakończenie wybranej instancji procesu
Funkcje obsługiwania danych (Data Handling Functions)
–
wyszukiwanie / odzyskiwanie istotnych danych dot. procesów pracy
i aplikacji
25
Invoked Applications
Interface (Interface 3)
26
Funkcje interfejsu wywoływania
aplikacji
•
Założenie sesji (Session Establishment).
–
•
połączenie / rozłączenie sesji aplikacji lub agenta aplikacji
Funkcje zarządzania czynnością (Activity Management Functions)
–
silnik workflow -> aplikacja
•
rozpoczęcie czynności
•
zawieszenie / wznowienie / przerwanie czynności
–
aplikacja -> silnik workflow
•
zawiadomienie o zakończeniu czynności
•
Funkcje obsługiwania danych (Data Handling Functions)
–
Przekazanie i odbiór danych z zewnętrznej aplikacji
27
Workflow Interoperability
(Interface 4)
28
Interfejs interoperatywności
• Interoperatywność to zdolność współpracy dwóch lub więcej silników
workflow podczas wykonywania procesu
• Wyróżnia się kilka poziomów interoperatywności
– Kiedy dwa systemy workflow potrafią zinterpretować wspólną definicję procesu,
umożliwia to obu środowiskom dzielenie definicji procesu (system workflow ma wtedy
możliwość przekazania wykonania czynności lub podprocesu do innych silników
workflow)
– Kiedy dwa systemy workflow nie posługują się wspólną definicją procesu, możliwe są
alternatywne rozwiązania eksportowania szczegółów definicji procesu
29
Scenariusze
interoperatywności
•
•
•
•
Chained Service
Nested Subprocess
Peer-to-Peer
Parallel Synchronized
30
Chained Service
Procesy A na pewnym etapie
wykonuje czynność A5, która
polega na uruchomieniu
procesu B
Proces B wykonuje się w
oddzielnym środowisku
niezależnie od procesu A
31
Nested Subprocess
Proces A na pewnym etapie
wykonuje czynność A3, która
wiąże się z uruchomieniem
procesu B i oczekiwaniem na
jego zakończenie
Proces B wykonuje się w
oddzielnym środowisku, a po
jego zakończeniu sterowanie
przekazywane jest do ponownie
do czynności A3
32
Peer-to-Peer
Dwa całkowicie niezależne systemy
przepływu pracy A i B stanowią
współdzieloną domenę, która pozwala
na uruchomienie i nadzór nad
procesem składającym się z zadań
wykonywanych przez system A oraz
zadań wykonywanych przez system B
33
Parallel Synchronized
Procesy A i B wykonują się niezależnie od siebie
w oddzielnych środowiskach. W obydwu
procesach istnieją jednak czynności (A3 i B4),
które są synchronizowane.
34
Elementy interfejsu
interoperatywności
•
•
•
•
•
Ustanowienie sesji
Operacje wymiany definicji procesu
Sterowanie procesem
Funkcje zarządzania czynnościami
Funkcje zarządzania danymi
35
Administration & monitoring
Interface (Interface 5)
36
Interfejs administrowania
i monitorowania systemu
• Zarządzanie użytkownikami
– tworzenie / usuwanie / zawieszenie / zmiana uprawnień
użytkowników lub grup roboczych
• Zarządzanie rolami
– definiowanie / usuwanie / zmiany roli
• Zarządzanie dziennikiem zdarzeń
– Przeglądanie, usuwanie, drukowanie dziennika zdarzeń, logów, itp.
• Nadzór nad wykonywaniem procesu
–
–
–
–
Zmiana stanu procesu, czynności
Uaktywnianie i blokowanie procesów lub jego wersji
Przerywanie procesu
Przypisanie danych do procesu czynności
• Funkcje statusu procesów
– Pobieranie, wyszukiwanie instancji procesów wg określonych
kryteriów
37
Procesy pracy
Narzędzia do budowania systemów
przepływu pracy - języki specyfikacji
Warstwy standardów
• Modelowanie procesów – standardy definiujące sposób,
w jaki poszczególne pojęcia związane z procesami
biznesowymi powinny być reprezentowane na diagramach
• Choreografia – definiuje sposób, w jaki niezależne
organizacje uczestniczące w procesie biznesowym
komunikują się ze sobą w trakcie wspólnego dążenia do
osiągnięcia celu biznesowego
• Orkiestracja – definiuje czynności i działania realizowane
w trakcie procesu przez organizację
• Administracja przepływem pracy – wywoływanie
i monitorowanie stopnia wykonania
Warstwy standardów
• Rozszerzenia – głównie umożliwiające definiowanie
transakcji w ramach procesów
• Modele referencyjne – gotowe definicje procesów
biznesowych możliwe do wykorzystania w trakcie integracji
procesów biznesowych różnych partnerów
• Opis usług – opis funkcji realizowanych przez usługi
sieciowe oraz sposobu dostępu do tych funkcji
• Komunikacja – wymiana komunikatów, za pomocą języka
XML, sposób konstrukcji komunikatów oraz zarządzania
komunikacją
Język ebXML Business Process
Specification Schema (BPSS)
• Electronic Business using eXtensible Markup Language jest
to oparty o XML standard, którego celem jest ujednolicanie,
zwiększanie bezpieczeństwa i spójności systemów typu
„electronic business”
• Architektura tego standardu to unikalny zestaw pojęć, po
części teoretycznych, a po części związanych z
implementacją
ebXML
• Podstawowym założeniem ebXML jest umożliwienie
współpracy za pośrednictwem Internetu wszystkim
podmiotom gospodarczym, niezależnie od wielkości i
położenia geograficznego
• Standard bazuje na zdefiniowanych rejestrach, profilach i
procesach biznesowych oraz wzorach wymienianych
dokumentów, definiując protokoły i mechanizmy
umożliwiające nawiązywanie i prowadzenie współpracy
biznesowej
Specyfikacje ebXML
• ebXML Technical Architecture Specification - specyfikacja
architektury technicznej ebXML
• Business Process Specification Schema (ebXML BPSS) specyfikacja schematu procesu biznesowego
• Registry Information Model - model informacyjny rejestru
ebXML
• Registry Services Specification(ebXML RSS) - specyfikacja
usług rejestru
• Collaboration-Protocol Profile (ebXML CPP) and Agreement
(ebXML CPA) Specification - specyfikacja profilu i umowy
współpracy
ebXML
• EbXML został zapoczątkowany jako inicjatywa organizacji
standaryzacyjnych OASIS i UN/CEFACT
• Schemat specyfikacji procesu biznesowego za pomocą
ebXML dostarcza semantyki, elementy i własności
potrzebne do określenia współpracy biznesowej
• ebXML oferuje wysoki poziom zgodności z różnymi
standardami, wliczając w to RosettaNet PIPs, interfejsy
OAGIS, SOAP, ASAP, UMM, BPEL, Wf-XML i inne. Te
kwestie zgodności potwierdzają silna rekomendację do
użytku ze standardami ebXML
Wf - XML
<?xml version="1.0"?>
<WfMessage Version=”1.0”>
<WfMessageHeader>
<Request ResponseRequired=”Yes”/>
<Key>http://www.XYZcompany.com/wfprocess/foo</Key>
</WfMessageHeader>
<WfMessageBody>
<CreateProcessInstance.Request StartImmediately=”true”>
<ObserverKey>http://www.ABCcompany.com/wfprocessor</ObserverKey>
<ContextData>
<Vehicle>
<VehicleType>Car</VehicleType>
<Specification>
<Manufacturer>Mercedes</Manufacturer>
<Model>450SL</Model>
</Specification>
</Vehicle>
<Customer>John Doe</Customer>
</ContextData>
Lotus Workflow firmy IBM
• Architektura Lotus Workflow ustanawia relacje występujące
między trzema wymiarami efektywnych procesów przepływu
pracy:
– regułami biznesowymi, które składają się na cały przebieg procesu,
– strukturą organizacyjną przedsiębiorstwa, osobami lub grupami
osób, które są związane z poszczególnymi etapami procesu
biznesowego,
– informacją, która jest wymieniana pomiędzy etapami procesu
biznesowego.
Lotus Workflow Architect
• Graficzne narzędzie, umożliwiające projektantom systemów
szybkie projektowanie procesów przepływu pracy, bez
konieczności programowania
• Wszystkie etapy projektowanych procesów widoczne są w
jednym oknie narzędzia, co pozwala projektantom łatwo
modyfikować lub zmieniać ich wyznaczniki
• Z poziomu Lotus Workflow Architect bardzo prosto aktywuje
się zaprojektowany lub zmodyfikowany proces
Engine
•
•
Na system Lotus Workflow składa się kilka baz
dokumentów Notes, które wykonują i przechowują logikę
procesu, organizację informacji, obiekty z informacjami o
poszczególnych etapach procesu, przykłady zarządzania
procesami, ślady audytu oraz dane zarchiwizowane
Pozwala to projektantom zachowywać i powtórnie
stosować logikę procesu, komponenty oraz
dostosowywanie obiektów pomocniczych Notes i Domino
wraz z narzędziami programującymi, z Domino Designer
włącznie
Viewer
• Pozwala użytkownikom śledzić stan aktualnie
wykonywanego zadania w procesie przepływu pracy
Lotus Workflow - bazy
danych
• Process Definition - przechowuje kolejne etapy procesu,
ich sekwencje oraz reguły warunkowe przebiegu procesu,
• Organization Directory – pozwala, między innymi
definiować, grupować w tzw. departamenty lub grupy
użytkowników procesu,
• Design Repository – przechowuje informacje na temat
projektu procesu workflow,
• Application Database – centralne miejsce pracy z
zadaniami w procesie. Użytkownicy, którzy biorą udział w
procesie korzystają jedynie z tej bazy dokumentów. W niej
znajdują się wszystkie dokumenty związane z zadaniami w
procesie, wszelkie informacje na temat ich stanu
Lotus Workflow - zalety
• Dostarcza elastycznej platformy dla automatyzowania,
poprawiania i zarządzania skomplikowanymi procesami
biznesowymi
• Poszerza rodzinne wydajności przepływu procesów pracy
oprogramowania Lotus Domino i jest łatwy w użyciu;
• Czyni łatwiejszym dokumentowanie i udoskonalanie
procesów biznesowych, które zmieniają się w zależności od
potrzeb organizacji
• Ręczne procesy mogą być wykonane szybciej
i konsekwentnie, z mniejszą ilością błędów, ponieważ
poszczególne kroki są jasno zdefiniowane
i udokumentowane
Lotus Workflow - zalety
• Umożliwia użytkownikowi użycie sieci internetowej do
obsługi procesów biznesowych, co zaoszczędza czas oraz
poprawia wydajność pracownika
• Pozwala przechowywać i zarządzać dokumentami z
oprogramowania Lotus Domino, które pozwala szybko
i skutecznie doręczać je w określone miejsce
• Pozwala uczestnikom zobaczyć ich zadania robocze jako
część schematu blokowego danego przepływu tak, że mogą
oni sprawnie i szybko sprawdzić status i kontekst obecnie
wykonywanego zadania
• Dostarcza umiejętności załączania plików podczas łączenia
się aplikacji Lotus Workflow z przeglądarką internetową
IBM Lotus Notes
• Łączy w sobie funkcje klasy korporacyjnej do przesyłania
wiadomości, obsługi kalendarzy i planowania z platformą dla
aplikacji do pracy grupowej
• Pozwala integrować najcenniejsze zasoby informacji oraz
obsługę poczty elektronicznej, kalendarzy i planowania,
dziennika, list zadań, stron WWW i baz danych w ramach
sprawdzonego, niezawodnego środowiska przesyłania
wiadomości.
Aplikacje kompozytowe
Tworzenie, edycja i
współużytkowanie dokumentów
w edytorze tekstu
Tworzenie i prowadzenie
prezentacji
Tworzenie arkuszy
kalkulacyjnych i analizowanie
danych liczbowych
Poczta elektroniczna
Kalendarz
Zarządzanie kalendarzem
Lotus Domino Designer
• Środowisko do tworzenia aplikacji biznesowych
• Wspiera obsługę stron WWW, projektowanie, daje
możliwość dostępu do relacyjnych baz danych, tworzenia
skryptów dla klienta lub po stronie serwera
• Domino Designer oferuje takie usługi jak: edytor HTML'a w
technologii WYSIWYG, page designer, narzędzia do
tworzenia wyglądu i projektowania nawigacji dla serwisu
WWW
• Aplikacje można "oprogramować" w wykonywalne skrypty
tworzone w języku Java lub wewnętrznym języku Lotusa
tzw. Lotus Script
Panel programisty
Koniec
65

Podobne dokumenty