Automatyzacja procesów biznesowych mgr inż. Krystyna Dziubich krystyna.dziubich@eti.pg.gda.pl



Podobne dokumenty
Problemy i Zastosowania Informatyki

Język BPEL. Bussiness Process Execution Language

Plan wykładu PROJEKTOWANIE SYSTEMÓW PROCESÓW PRACY. Organizacje standaryzujace i stowarzyszenia. Definicje podstawowe.

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

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

Usługi sieciowe (Web Services)

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

Web Services. Bartłomiej Świercz. Łódź, 2 grudnia 2005 roku. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz Web Services

JBPM [JUG] Tomasz Gratkowski [GRATKOWSKI SOFTWARE]

Automatyzacja procesów biznesowych mgr inż. Krystyna Dziubich

Implementacja aplikacji biznesowych w technologii WS-BPEL

Standardy workflow przy budowie systemu informatycznego

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

Systemy przepływu pracy (workflow)

Oracle Fusion Middleware

CENTRUM PROJEKTÓW INFORMATYCZNYCH MINISTERSTWA SPRAW WEWNĘTRZNYCH I ADMINISTRACJI

Automatyzacja procesów biznesowych Andrzej Sobecki. ESB Enterprise service bus

Web Tools Platform. Adam Kruszewski

Problemy i zastosowania informatyki M.Szwoch, K.Dziubich

IBM Corporation IBM SOA Center of Excellence

Inżynieria oprogramowania. Jan Magott

JBoss: MetaMatrix, Mobicents, Seam, Rools, ESB

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

1.KOMPOZYCJA I INTEGRACJA USŁUG W ARCHITEKTURZE SOA

Web Services. Wojciech Mazur. 17 marca Politechnika Wrocławska Wydział Informatyki i Zarządzania

Zastosowanie informatyki w gospodarce Wykład 5

MODELOWANIE PROCESÓW Z WYKORZYSTANIEM SIEC SEMANTYCZNYCH

Część I -ebxml. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

Komunikacja i wymiana danych

<Insert Picture Here> SOA w oparciu o domeny kompetencyjne oraz architekturę referencyjną

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

Zarządzanie Procesami Biznesowymi

Rozproszone systemy internetowe

Programowanie komponentowe

Wykład 7 Metodyki wytwarzania oprogramowania internetowego (2) Wykładowca: dr inż. Mariusz Trzaska

Programowanie w języku Java. Wykład 13: Java Platform, Enterprise Edition (Java EE)

GML w praktyce geodezyjnej

Terminarz Szkoleń ACTION CE

Model biznesowy: co to za zwierze?

Automatyczne generowanie testów z modeli. Bogdan Bereza Automatyczne generowanie testów z modeli

5.14 JSP - Przykład z obiektami sesji Podsumowanie Słownik Zadanie... 86

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

Terminarz Szkoleń ACTION CE

SOA Web Services in Java

Rozwój repozytorium usług

Chmura zrzeszenia BPS jako centrum świadczenia usług biznesowych. Artur Powałka Microsoft Services

Dlaczego my? HARMONOGRAM SZKOLEŃ kwiecień - czerwiec ACTION Centrum Edukacyjne. Autoryzowane szkolenia. Promocje RODO / GDPR

Wdrożenie technologii procesowej IBM BPM w EFL

Projekt i implementacja zintegrowanego środowiska programistycznego dla języka ROsWeL

Cel szkolenia. Konspekt

SOA: mit, slogan czy konieczność?

DSL w środowisku Eclipse. Grzegorz Białek Architekt techniczny, Sygnity S.A.

UWOLNIĆ INFORMACJĘ PUBLICZNĄ!

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

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

Podstawy modelowania biznesowego w inżynierii oprogramowania

WZORCE LOGIKI APLIKACJI Reużywalne składniki wymagań

Usługi WWW. dr Zbigniew Lipiński Instytut Matematyki i Informatyki ul. Oleska Opole zlipinski@math.uni.opole.pl

CENNIK I TERMINARZ SZKOLEŃ

KATALOG SZKOLEŃ. Kod szkolenia Nazwa szkolenia Czas trwania. QC370 ALM Quality Center Scripting 11.x 2

Ministerstwo Finansów

extensible Markup Language, cz. 1 Marcin Gryszkalis, mg@fork.pl

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

Programowanie Komponentowe WebAPI

Dobre praktyki w doborze technologii rozwiązań informatycznych realizujących usługi publiczne

Zakres zmian. W ogłoszeniu jest:

To sposób w jaki użytkownik wchodzi w interakcje z systemem. Środowisko graficzne używa kombinacji graficznych elementów(przyciski, okna, menu) i

JAK OPTYMALNIE DOBRAĆ ODPOWIEDNIE TECHNOLOGIE INFORMATYCZNE?

CENNIK I TERMINARZ SZKOLEŃ

Web Services. Technologie Biznesu Elektronicznego. Konrad Kunicki. Politechnika Wrocławska, Wydział Informatyki i Zarządzania

Jak powstaje model biznesowy? Co to jest? Modelowanie biznesowe. Model biznesowy. Jak powstaje model biznesowy? Jak firma generuje przychody?

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

4 Web Forms i ASP.NET Web Forms Programowanie Web Forms Możliwości Web Forms Przetwarzanie Web Forms...152

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

SAM-Insights ADVANCED CENTRAL DATA COLLECTOR (ACDC) Dane licencyjne nie mierzone przez skanowanie. Nowy moduł ACDC o unikalnej funkcjonalności

OfficeObjects e-forms

Dlaczego my? HARMONOGRAM SZKOLEŃ październik - grudzień ACTION Centrum Edukacyjne. Autoryzowane szkolenia. Promocje

Aktualizacja środowiska JAVA a SAS

Modelowanie procesów biznesowych

Analiza i projektowanie aplikacji Java

Kontrola spójności modeli UML za pomocą modelu. Stanisław Jerzy Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska

MODELOWANIE PROCESÓW BIZNESOWYCH I ICH IMPLEMENTACJA W SYSTEMACH INFORMATYCZNYCH MAGDALENA KIERUZEL

HARMONOGRAM SZKOLEŃ styczeń - marzec 2017

Informatyczne fundamenty

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl

Terminarz Szkoleń II kwartał 2013 ACTION CE

Wprowadzenie do technologii Web Services: SOAP, WSDL i UDDI

Model semistrukturalny

CENNIK I TERMINARZ SZKOLEŃ

CENNIK I TERMINARZ SZKOLEŃ

XML w elektronicznej wymianie danych i integracji aplikacji

PERFORMANCE POINT SERVICE NIE TYLKO DLA ORŁÓW

XML w elektronicznej wymianie danych i integracji aplikacji

3 grudnia Sieć Semantyczna

Open Source Stack jako. alternatywa

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

Kompozycja usług. Tomasz Pawlak. Biznesowe Systemy Rozproszone

Elektroniczny Dowód Osobisty w Hiszpanii Doświadczenia Software AG w realizacji projektu analiza przypadku

HP Service Anywhere Uproszczenie zarządzania usługami IT

Sybase Professional Services

Transkrypt:

Automatyzacja procesów biznesowych mgr inż. Krystyna Dziubich krystyna.dziubich@eti.pg.gda.pl K.Dziubich, WETI slajd: 2

Języki opisu procesów Definicje procesów Wymiana definicji procesów Geneza języków opisu Dostępne notacje workflow Przykład dla BPEL Przykład dla Windows WF K.Dziubich, WETI slajd: 3

Definicje procesów Definicja procesu obejmuje całościowe i wyczerpujące opisanie przebiegu procesu w postaci powiązanego zbioru czynności, relacji między tymi czynnościami, warunku rozpoczęcia i zakończenia procesu, szczegółowego opisu czynności składowych, uczestników procesu, wymienianych bądź modyfikowanych danych za pomocą wybranego języka i/lub przyjętej konwencji reprezentacji graficznej K.Dziubich, WETI slajd: 4

Przykładowe definicje procesów w notacjach graficznych K.Dziubich, WETI slajd: 5

Wymiana definicji procesów będzie prawidłowa dzięki: przyjęciu, przez wszystkich dostawców narzędzi do definiowania procesów, wspólnego meta-modelu definiowania procesów, określającego semantykę i użycie wspólnych obiektów i atrybutów, jako podstawy do implementacji własnych notacji zapisu definicji procesów przetłumaczenie definicji procesów zapisanych w notacji dostawcy na język XPDL zrozumiały przez pozostałe komponenty modelu odniesienia i odwrotnie. K.Dziubich, WETI slajd: 6

Geneza języków opisu WPDL (Workflow Process Definition Language) prekursor języka XPDL opublikowany w 1998; był pierwszą próbą zmiany języków wyrażania definicji procesów XPDL (XML Process Definition Language ) PDL dostosowany do wymogów XML. Jest językiem umożliwiającym zapis procesów biznesowych w postaci wspierającej automatyczną manipulację rozumianą jako modelowanie bądź interpretowanie definicji przez systemy wspierania pracy oraz procesów biznesowych. Dostarcza on plik w formacie XML pozwalający na przenoszenie i wymianę modeli procesów między różnymi narzędziami niezależnie od przyjętej notacji pierwotnego sposobu modelowania procesu. W wersji 2.0 format pliku dla BPMN K.Dziubich, WETI slajd: 7

Geneza języków opisu cd. Możliwe jest tłumaczenie graficznych definicji procesów z BPMN na języki BPML (Business Process Modeling Language) oraz BPEL4WS (Business Process Execution Language for Web Services). zawiera 38 symboli obrazujących typowe zdarzenia biznesowe odwzorowywalne na BPEL4WS już 6 podstawowych symboli pozwala na zbudowanie pełnego modelu procesów biznesowych pozostałe służą do dodatkowego definiowania zdarzeń koniecznych z punktu widzenia inżynierii oprogramowania K.Dziubich, WETI slajd: 8

Geneza języków opisu cd. Model wykonany za pomocą podstawowego zestawu symboli BPMN przez analityka można uzupełnić o dodatkowe elementy w celu wygenerowania kodu dla BPEL (Business Process Execution Language); K.Dziubich, WETI slajd: 9 BPMN2BPEL (opensource): trudno wygenerować kod w BPEL łatwo czytelny dla człowieka; trudno zapewnić odwzorowywalność w obie strony BPMN BPEL

A BPD with Annotations to Show the Mapping to BPEL4WS K.Dziubich, WETI slajd: 10 http://www.omg.org/bpmn/documents/mapping_bpmn_to_bpel_example.pdf

Dostępne notacje Nazwa notacji Twórca BPSS ebxml (Business Process Specification Schema) UN/CEFACT and OASIS BPML (Business Process Modeling Language) BPMI WS-CDL (Web Service Choreography Description Language) W3C Web Services Choreography Working Group WSCL: WS Choreography Language Hewlett-Packard WSFL (Web Services Flow Language) IBM XLANG Microsoft BPEL4WS (Business Process Execution Language for Web Services) WS-BPEL 2.0 BEA, IBM, Microsoft zgłoszone do OASIS XPDL: XML Precess Definition Language WfMC OWL-S (Semantic Markup for Web Services) W3C / akademicki EPML: EPC Markup Language K.Dziubich, WETI slajd: 11 PNML: Petri Net Markup Language Akademicki Akademicki

K.Dziubich, WETI slajd: 12 zależności notacje

BPEL Business Process Execution Language (BPEL), short for Web Services Business Process Execution Language (WS-BPEL) is an OASIS standard executable language for specifying interactions with Web Services. BPEL is intended to do orchestrations (specifying the executable process that involves message exchanges with other systems) rather than choreographies (specifying specific details for interactions among systems which is a trend within ESB patterns, and a topic of BPMN diagraming). BPEL is intended to do programming in the large (management of high-level state transitions of a process), rather than programming in the small (short-lived programmatic behavior). K.Dziubich, WETI slajd: 13

BPEL W jakim celu stosować BPEL? Tworzenie aplikacji Komponowanie z użyciem WS Produkt końcowy program będący WS Przykład: WS zbierający informacje pogodowe dla podanego kodu pocztowego WS wysyłający sms: jeśli ciepło idź na plaże, jeśli zimno idź do sklepu Kompozycja z użyciem BPEL Możliwość pobrania i wykonywania WS złożonego leniwy i niezdecydowany K.Dziubich, WETI slajd: 14

BPEL BPEL is an XML programming language. As a programming language it has three basic components: Programming logic - BPEL Data types - XSD (XML Schema Definition) Input/Output (I/O) - WSDL (Web Services Description Language) K.Dziubich, WETI slajd: 15

BPEL Różnica BPEL / inne języki programowania klasycznego Elementy biblioteczne to usługi sieciowe Obsługa wejścia/wyjścia zależne od używanych WS BPEL jest managerem usług nie bibliotek kodu BPEL działa ponad serwerem aplikacyjnym Oracle BPEL Process Manager Microsoft BizTalk IBM Websphere Business Integration Server Foundation IBM ActiveBPEL Engine OpenStorm Service Orchestrator K.Dziubich, WETI slajd: 16

K.Dziubich, WETI slajd: 17 BPEL - składnia

K.Dziubich, WETI slajd: 18 Przykład BPEL4WS <process name="proces_zatwierdzania_wniosku targetnamespace="http://przyklad.pl/zatwierdzanie-wniosku/" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:lns="http://przyklad.pl/zatwierdzanie-wniosku/wsdl/" > <import importtype="http://schemas.xmlsoap.org/wsdl/ location="zatwierdzanie_wnioskupt.wsdl" namespace="http://przyklad.pl/zatwierdzanie-wniosku/" /> <partnerlinks> <partnerlink name="customer" partnerlinktype="lns:zatw_wn_lt" myrole="usl_zatw_wn /> <partnerlink name="aktualizuj_urlop" partnerlinktype="lns:wn_aktualizujlt myrole="aktualizuj_urlop" /> </partnerlinks> <variables> <variable name="request" messagetype="lns:wniosekinfmessage" /> <variable name="odpowiedz" messagetype="lns:potw_zwrotne" /> </variables> <faulthandlers>... </faulthandlers> <flow> <links> <link name="receive-to-akutalizuj" /> <link name="aktualizuj-to-generuj" /> </links>

Przykład BPEL4WS cd. <receive partnerlink="customer" porttype="zatw_wn_pt" operation="request" variable="request" createinstance="yes"> <sources> <source linkname="receive-to-akutalizuj" /> </sources> </receive> <invoke partnerlink="aktualizuj_urlop" porttype="wn_akt_urloppt" operation="aktualizuj" inputvariable="request" outputvariable="odpowiedz" > <targets> <target linkname="receive-to-akutalizuj" /> </targets> <sources> <source linkname="aktualizuj-to-generuj" /> </sources> </invoke> <invoke partnerlink="generuj_skierowanie" porttype="wn_gen_skierowaniept" operation="generuj" inputvariable="request" outputvariable="wniosek" > <targets> <target linkname="aktualizuj-to-generuj" /> </targets> <sources> <source linkname="generuj-to-wyslij" /> </sources> </invoke> K.Dziubich, WETI slajd: 19

Przykład BPEL4WS cd. <assign> <targets> <target linkname="generuj-to-wyslij" /> </targets> <sources> <source linkname="wyslij-to-klient" /> </sources> <copy> <from variable="wniosek" /> <to variable="do_co" part="tresc_maila" /> </copy> <copy> <from variable="request" part="e-mail_przelozonego" /> <to variable="do_co" part="do" /> </copy> <copy> <from variable="request" part="e-mail_pracownika" /> <to variable="do_co" part="cc" /> </copy> </assign> K.Dziubich, WETI slajd: 20

K.Dziubich, WETI slajd: 21 Przykład BPEL4WS cd. <invoke partnerlink="wyslij_maila" porttype="wyslij_mailapt" operation="wyslij" inputvariable="kto_co" outputvariable="odpowiedz" > <targets> <target linkname="generuj-to-wyslij" /> </targets> <sources> <source linkname="wyslij-to-klient" /> </sources> </invoke> <replay partnerlink="customer" porttype="zatw_wn_pt" operation="request" variable="odp_na_request" > <targets> <target linkname="wyslij-to-klient" /> </targets> </replay> </flow> </process>

Narzędzia i platformy Eclipse (wersja inkubacyjna) BPEL Manager Tomcat + ODE (Orchestration Director Engine) Oracle Jdeveloper Oracle SOA Suite Oracle WebLogic Server 11g + Domena ADF K.Dziubich, WETI slajd: 22

BPEL Designer for Eclipse http://www.eclipse.org/bpel/ K.Dziubich, WETI slajd: 23

BPEL in eclipse (incubation phase) Designer. A GEF-based editor that provides a graphical means to author BPEL processes. Model. An EMF model that represents the WS-BPEL 2.0 specification. Validation. A validator which operates on the EMF model and produces errors and warnings based on the specification. Runtime Framework. An extensible framework which will allow for deployment and execution of BPEL processes from the tools into a BPEL engine. Debug. A framework which will allow the user to step through the execution of a process, including support for breakpoints. K.Dziubich, WETI slajd: 24

comparison of BPEL and BPMN engines K.Dziubich, WETI slajd: 25

linki Developing, Deploying and Running a Hello World BPEL Process with the Eclipse BPEL Designer and Apache ODE http://www.eclipse.org/resources/resource.php?id=429 - Developing a simple Bpel project with eclipse Bpel Designer Plugin and WSO2 BPS Bpel Exporter Plugin http://wso2.org/library/tutorials/developing-simple-bpel-project-eclipse-bpeldesigner-plugin-wso2-bps-bpel-exporter-plugin WS-BPEL 2.0 Tutorial - http://www.eclipse.org/stp/b2j/docs/tutorials/wsbpel/wsbpel_tut.php Web Services Business Process Execution Language Version 2.0 (OASIS Standard): http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.html BPEL Designer Project http://www.eclipse.org/bpel/ Oracle BPEL Process Manager Developer's Guide - http://docs.oracle.com/cd/b14099_17/integrate.1012/b14448/introbpel.htm K.Dziubich, WETI slajd: 26

Przykładowy Windows WF K.Dziubich, WETI slajd: 27 choreografia

XOML-owy zapis notacji graficznej Windows WF <SequentialWorkflowActivity x:class="workflowconsoleapp2_del.workflow2" x:name="workflow2 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/workflow"> <InvokeWebServiceActivity x:name="weryfikacja_uprawnień" /> <IfElseActivity x:name="czy_osoba_uprawniona_do_sali"> <IfElseBranchActivity x:name="uprawniona"> <IfElseBranchActivity.Condition> <CodeCondition Condition="czy_uprawniona" /> </IfElseBranchActivity.Condition> <InvokeWebServiceActivity ProxyClass="{x:Type WorkflowConsoleApplication2 del.zamek.bera_service}" MethodName="Unlock" x:name="odblokowanie_zamka_sali" /> </IfElseBranchActivity> <IfElseBranchActivity x:name="brak_uprawnień" /> </IfElseActivity> </SequentialWorkflowActivity> K.Dziubich, WETI slajd: 28

Porównanie elementów składowych języka BPEL i Windows WF K.Dziubich, WETI slajd: 29

Bizagi BPM Suite for Workflow Automation Demo: http://www.bizagi.com/index.php?option=com_content&view=article& 245&Itemid=231 K.Dziubich, WETI slajd: 30

Praca.? www.payscale.com/research/us/industry=science_and_engineering_services/job-listings K.Dziubich, WETI slajd: 31 http://www.odinjobs.com/odin/jobs.jspx?s=bpmn&l=

K.Dziubich, WETI slajd: 32 Literatura D.M. Bridgeland, R. Zahavi: Business Modeling A Practical Guide to Realizing Business Value 2009 isbn: 978-0-12-374151-6 Andreas Realini, G2G E-government: The big challange for Europe, 2004 Martin Ader, Workflow Comparative Study, 2004, http://www.waria.com/books/study-2004.htm Alan Jordan, Business Process Management, http://www.alanjordan.com/bpm.htm Workflow Magement Coalition, http://www.wfmc.org Wofkflow Patterns, http://www.workflowpatterns.com/ Norbert Ritter, Business Porcess Magement and Workflow Mangement, http://vsis-www.informatik.uni-hamburg.de/teaching/ss-05/wfws/k2.pdf Alec Sharp, Patrick McDermott : Workflow Modeling - Tools for Process Improvement and Application Development, Artech House 2001 http://modelowanie.wordpress.com [1] van der Aalst, W.M.P., ter Hofstede, A.H.M. and Weske, M.: "Business Process Management: A Survey", in Business Process Management, Proceedings of the First International Conference. Springer Verlag, 2003. http://www.wfmc.org/standards/framework.htm