Top Banner
1 Workflow/Business Process Management Introduction business process management and workflow management Eindhoven University of Technology Faculty of Technology Management Department of Information Systems P.O. Box 513 5600 MB Eindhoven The Netherlands [email protected] Wil van der Aalst
24

Eindhoven University of Technology Faculty of Technology Management

Jan 27, 2016

Download

Documents

isolde

Eindhoven University of Technology Faculty of Technology Management Department of Information Systems P.O. Box 513 5600 MB Eindhoven The Netherlands [email protected]. Workflow/Business Process Management Introduction business process management and workflow management. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Eindhoven University of Technology Faculty of Technology Management

1

Workflow/Business Process Management

Introduction business process management and workflow management

Eindhoven University of TechnologyFaculty of Technology ManagementDepartment of Information SystemsP.O. Box 513 5600 MB EindhovenThe [email protected]

Wil van der Aalst

Page 2: Eindhoven University of Technology Faculty of Technology Management

2

Focus on "classical" workflow management systems, but ...

Four types of "workflow-like" systems:

1. Information systems with hard-coded workflows (process& organization specific).

2. Custom-made information systems with generic workflow support (organization specific).

3. Generic software with embedded workflow functionality (e.g., the workflow components of ERP, CRM, PDM, etc. systems).

4. Generic software focusing on workflow functionality (e.g., Staffware, MQSeries Workflow, FLOWer, COSA, Oracle BPEL, Filenet, etc.).

Page 3: Eindhoven University of Technology Faculty of Technology Management

3

WFM architecture- reference model and example -

Page 4: Eindhoven University of Technology Faculty of Technology Management

4

Reference model of the Workflow Management Coalition

Process Definition Tools

Administration & Monitoring

Tools

Interface 1

Interface 4Interface 5

Workflow Enactment Service

Workflow API and Interchange formats

Other WorkflowEnactment Service(s)

WorkflowClient

Applications

Interface 3Interface 2

WorkflowEngine(s)

WorkflowEngine(s)

InvokedApplications

What?When?Who?

Page 5: Eindhoven University of Technology Faculty of Technology Management

5

Process Definition Tools

Administration & Monitoring

Tools

Interface 1

Interface 4Interface 5

Workflow Enactment Service

Workflow API and Interchange formats

Other WorkflowEnactment Service(s)

WorkflowClient

Applications

Interface 3Interface 2

WorkflowEngine(s)

WorkflowEngine(s)

InvokedApplications

Page 6: Eindhoven University of Technology Faculty of Technology Management

6

Process Definition Tools

Administration & Monitoring

Tools

Interface 1

Interface 4Interface 5

Workflow Enactment Service

Workflow API and Interchange formats

Other WorkflowEnactment Service(s)

WorkflowClient

Applications

Interface 3Interface 2

WorkflowEngine(s)

WorkflowEngine(s)

InvokedApplications

Page 7: Eindhoven University of Technology Faculty of Technology Management

7

Process Definition Tools

Administration & Monitoring

Tools

Interface 1

Interface 4Interface 5

Workflow Enactment Service

Workflow API and Interchange formats

Other WorkflowEnactment Service(s)

WorkflowClient

Applications

Interface 3Interface 2

WorkflowEngine(s)

WorkflowEngine(s)

InvokedApplications

Page 8: Eindhoven University of Technology Faculty of Technology Management

8

Page 9: Eindhoven University of Technology Faculty of Technology Management

9

Workflow perspectives- processes dominate! -

Page 10: Eindhoven University of Technology Faculty of Technology Management

10

Workflow perspectives• Process perspective (tasks and the routing of

cases)

• Resource perspective (workers, roles, 4-eyes principle, etc.)

• Case/data perspective (process instances and their attributes)

• Operation/application perspective (forms, application integration, etc.)

• ...

Page 11: Eindhoven University of Technology Faculty of Technology Management

11

Process perspective: Protos (extended Petri nets)

Page 12: Eindhoven University of Technology Faculty of Technology Management

12

Process perspective: Staffware

Page 13: Eindhoven University of Technology Faculty of Technology Management

13

Process perspective: COSA (Petri nets)

Page 14: Eindhoven University of Technology Faculty of Technology Management

14

Process perspective: Baan DEM

Page 15: Eindhoven University of Technology Faculty of Technology Management

15

Process perspective: Event driven process chains (ARIS/SAP)

Plannedtrip

is approved

Needto correctplanned

tripis transmitted

Entryof a

travelrequest

Needfor trip

has arisen

Tripis requested

Approvalof travelrequest

Plannedtrip

is rejected

Page 16: Eindhoven University of Technology Faculty of Technology Management

16

(Oracle) BPEL

<sequence name="main"> <flow name="Flow_1"> <links> <link name="receive-to-assess"/> <link name="receive-to-approval"/> <link name="approval-to-reply"/> <link name="assess-to-setMessage"/> <link name="setMessage-to-reply"/> <link name="assess-to-approval"/> </links> <sequence name="sequenceReceive"> <source linkName="receive-to-assess" transitionCondition="bpws:getVariableData('inputVariable','payload','/client:LoanApprovalProcessRequest/client:amount') &lt; 10000"/> <source linkName="receive-to-approval" transitionCondition="bpws:getVariableData('inputVariable','payload','/client:LoanApprovalProcessRequest/client:amount') &gt;= 10000"/> <receive name="receiveInput" partnerLink="client" portType="client:LoanApproval" operation="initiate" variable="inputVariable" createInstance="yes"/> </sequence> <sequence name="sequenceAssess"> <target linkName="receive-to-assess"/> <source linkName="assess-to-setMessage" transitionCondition="bpws:getVariableData('risk') = 'low'"/> <source linkName="assess-to-approval" transitionCondition="bpws:getVariableData('risk') != 'low'"/> <assign name="initiateAssessor"> <copy> <from variable="inputVariable" part="payload" query="/client:LoanApprovalProcessRequest/client:firstName"/> <to variable="invokeAssessor_initiate_InputVariable" part="payload" query="/ns1:AssessorProcessRequest/ns1:firstName"/> </copy> <copy> <from variable="inputVariable" part="payload" query="/client:LoanApprovalProcessRequest/client:name"/> <to variable="invokeAssessor_initiate_InputVariable" part="payload" query="/ns1:AssessorProcessRequest/ns1:name"/> </copy> <copy> <from variable="inputVariable" part="payload" query="/client:LoanApprovalProcessRequest/client:amount"/> <to variable="invokeAssessor_initiate_InputVariable" part="payload" query="/ns1:AssessorProcessRequest/ns1:amount"/> </copy> </assign> <invoke name="invokeAssessor" partnerLink="Assessor" portType="ns1:Assessor" operation="initiate" inputVariable="invokeAssessor_initiate_InputVariable"/> <receive name="receiveAssessor" partnerLink="Assessor" portType="ns1:AssessorCallback" operation="onResult" variable="receiveAssessor_onResult_InputVariable" createInstance="no"/> <assign name="completeAssessor"> <copy> <from variable="receiveAssessor_onResult_InputVariable" part="payload" query="/ns1:AssessorProcessResponse/ns1:level"/> <to variable="risk"/> </copy> </assign> </sequence> <sequence name="sequenceNoApproval"> <target linkName="assess-to-setMessage"/> <source linkName="setMessage-to-reply"/> <assign name="setAccepted"> <copy> <from expression="'Accepted'"/> <to variable="outputVariable" part="payload" query="/client:LoanApprovalProcessResponse/client:result"/> </copy> </assign> </sequence>

Page 17: Eindhoven University of Technology Faculty of Technology Management

17

Petri nets as a basis

• The process perspective is the most dominant one.

• There are many modeling techniques and tools– BPEL, BPMN, DFD, ISAC, SADT, PN, HLPN, PA, FC, UML, ...

– Simulation tools, design tools, CASE tools, WFMS, ...

• Focus on the essential concepts rather than (system-)specific languages.

• Approach in this course (1) first master workflow modeling in terms of workflow nets (a subset of Petri nets), and (2) only then look into mappings to and from (system-)specific languages.

Page 18: Eindhoven University of Technology Faculty of Technology Management

18

Example of a process model: A Petri net modeling order processing

start register

send_bill

receive_payment

archive

ship_goodswait_for_availability

reminder

end

c1

c2

c3

c5

c4

c6

Page 19: Eindhoven University of Technology Faculty of Technology Management

19

Play the token game …

start register

send_bill

receive_payment

archive

ship_goodswait_for_availability

reminder

end

c1

c2

c3

c5

c4

c6

Page 20: Eindhoven University of Technology Faculty of Technology Management

20

Test Exercise: Dining philosophers

• 5 philosophers sharing 5 chopsticks: chopsticks are located in-between philosophers

• A philosopher is either in state eating or thinking and needs two chopsticks to eat.

• Model as a Petri net.

Page 21: Eindhoven University of Technology Faculty of Technology Management

تقدم طراحي فرآيند بر سيستم اطالعاتي

Page 22: Eindhoven University of Technology Faculty of Technology Management

اهميت تعريف صحيح فرآيند جهت بازمهندسي آن

Page 23: Eindhoven University of Technology Faculty of Technology Management

داليل استفاده از روش پتري نت در مدلسازي جريان کاري

Page 24: Eindhoven University of Technology Faculty of Technology Management

مشخصات کلی سيستم های مديريت جريان کار