bpmn series - good e-learning · bpmn 2.0 models can be executable. bpmn v2.0 contains greater...

14
BPMN Series What is Needed for Process Automation? © Good e-Learning 2014. All rights reserved. BPMN Series Good e-Learning Resources :: www.goodelearning.com/downloads What is Needed for Process Automation? Good e-Learning’s complete guide to BPMN 2.0 by Gregor Polančič

Upload: hadiep

Post on 16-Feb-2019

247 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BPMN Series - Good e-Learning · BPMN 2.0 Models can be Executable. BPMN v2.0 contains greater support for executable models. BPMN 2.0. defines both: • A. common executable conformance

BPMN Series What is Needed for Process Automation?

© Good e-Learning 2014. All rights reserved.

BPMN Series

G o o d e - L e a r n i n g R e s o u r c e s : : w w w . g o o d e l e a r n i n g . c o m / d o w n l o a d s

What is Needed for Process Automation?Good e-Learning’s complete guide to BPMN 2.0

by Gregor Polančič

Page 2: BPMN Series - Good e-Learning · BPMN 2.0 Models can be Executable. BPMN v2.0 contains greater support for executable models. BPMN 2.0. defines both: • A. common executable conformance

BPMN Series What is Needed for Process Automation?

© Good e-Learning 2014. All rights reserved.

Introduction

In the past, much of the BPMN standard was focused on non-executable BPMN.

• Process diagrams described logic in a way that could be read and understood by humans.

At the time, the only way to execute BPMN models was to map them to BPEL (Business Process Execution Language) notation

Task

Task

Task

<process><receive createInstance="yes" /><switch>

<case name="usa"><invoke name="install_firmware" />

</case><case name="france"><invoke name="install_firmware" />

</case></switch><reply variabele="status" />

</process>

BPEL

BPMN

Page 3: BPMN Series - Good e-Learning · BPMN 2.0 Models can be Executable. BPMN v2.0 contains greater support for executable models. BPMN 2.0. defines both: • A. common executable conformance

BPMN Series What is Needed for Process Automation?

© Good e-Learning 2014. All rights reserved.

BPMN 2.0 Models can be Executable

BPMN v2.0 contains greater support for executable models

BPMN 2.0 defines both:• A common executable conformance sub-class, and • execution semantics for each element

Vendors of modeling tools are now able to establish executable models with BPMN 2.0

Task

Task

Task

/…/<exclusiveGateway gatewayDirection="Diverging" id="sid-258D9D8C-03A9-43B4-9481-B71EE7C4464B" name="">

<extensionElements><signavio:signavioMetaData metaKey="bgcolor"

metaValue="#ffffff"/></extensionElements><incoming>sid-487E9DE0-9488-469B-865C-

32A923523565</incoming><outgoing>sid-550AC674-2A66-49BC-B6B2-

56C342666E4F</outgoing><outgoing>sid-B535865E-A80E-4147-A083-

A92044C10BCD</outgoing></exclusiveGateway>

/…/ BPMN

BPMN

Page 4: BPMN Series - Good e-Learning · BPMN 2.0 Models can be Executable. BPMN v2.0 contains greater support for executable models. BPMN 2.0. defines both: • A. common executable conformance

BPMN Series What is Needed for Process Automation?

© Good e-Learning 2014. All rights reserved.

Common Executable Conformance Sub-Class Elements

• Sequence Flow (unconditional)• Sequence Flow (conditional) • Sequence Flow (default) • Sub-Process (expanded) • Exclusive Gateway• Parallel Gateway • Start Event (None) • End Event (None) • Event-Based Gateway • User Task• Service Task

• Call Activity• Data Object• Text Annotation• Data Association • Message Start Event • Message End Event• Terminate End Event• Catching message Intermediate Event• Throwing message Intermediate Event• Catching timer Intermediate Event• Boundary error Intermediate Event

Note that these elements also have visual representation (icons)!

Page 5: BPMN Series - Good e-Learning · BPMN 2.0 Models can be Executable. BPMN v2.0 contains greater support for executable models. BPMN 2.0. defines both: • A. common executable conformance

BPMN Series What is Needed for Process Automation?

© Good e-Learning 2014. All rights reserved.

BPMN 2.0 Process Automation

Additional information must be added if we want to execute a BPMN 2.0 model

Such information includes:• process variables• task input and output data• performers and user interface• conditional expressions for gateways• event definitions and messages

An example of how a task in BPMN in represented

as a web-form.

Page 6: BPMN Series - Good e-Learning · BPMN 2.0 Models can be Executable. BPMN v2.0 contains greater support for executable models. BPMN 2.0. defines both: • A. common executable conformance

BPMN Series What is Needed for Process Automation?

© Good e-Learning 2014. All rights reserved.

Process Variables

Typically, process variables can be defined globally or locally

• If we define a variable globally, each activity or event has access to the data

• If we define a variable locally, only a specific activity has the access to a variable

Variables can usually be one of the following types:• String• Integer• Double• Boolean• Date-time

An example of how various data types can be represented in the

final application.

Page 7: BPMN Series - Good e-Learning · BPMN 2.0 Models can be Executable. BPMN v2.0 contains greater support for executable models. BPMN 2.0. defines both: • A. common executable conformance

BPMN Series What is Needed for Process Automation?

© Good e-Learning 2014. All rights reserved.

Tasks

Tasks are tightly coupled with variables• e.g. variables are presented in the task in form of an input fields and

can be set (write) or get (read).

Common executable conformance sub-class defines two task types:• User task• Service task

Depending on the vendor, more types of tasks can be supported for the execution of BPMN models.

Page 8: BPMN Series - Good e-Learning · BPMN 2.0 Models can be Executable. BPMN v2.0 contains greater support for executable models. BPMN 2.0. defines both: • A. common executable conformance

BPMN Series What is Needed for Process Automation?

© Good e-Learning 2014. All rights reserved.

User Tasks

A User task is usually represented in the form of a web or desktop application‘s user interface

Data displayed will depend on the global or local variables

Each user task must also define a performeri.e. a person who executes the task

Page 9: BPMN Series - Good e-Learning · BPMN 2.0 Models can be Executable. BPMN v2.0 contains greater support for executable models. BPMN 2.0. defines both: • A. common executable conformance

BPMN Series What is Needed for Process Automation?

© Good e-Learning 2014. All rights reserved.

Service Tasks

A Service Task represents a web service or an automated application

Vendors usually create an automated application using different types of programming or script languages

Similarly to user task, service task is also tightly coupled with variables

Page 10: BPMN Series - Good e-Learning · BPMN 2.0 Models can be Executable. BPMN v2.0 contains greater support for executable models. BPMN 2.0. defines both: • A. common executable conformance

BPMN Series What is Needed for Process Automation?

© Good e-Learning 2014. All rights reserved.

Gateways

Only three types of gateways are defined in a common executable conformance sub-class, namely:

• Exclusive gateway• Parallel gateway • Event-based gateway

Exclusive and event-based gateways commonly check for a condition or event on each outgoing sequence flow

• Because of this, vendors must provide a way to set conditions on each outgoing sequence flow

Exclusive

Parallel

Event-based

Page 11: BPMN Series - Good e-Learning · BPMN 2.0 Models can be Executable. BPMN v2.0 contains greater support for executable models. BPMN 2.0. defines both: • A. common executable conformance

BPMN Series What is Needed for Process Automation?

© Good e-Learning 2014. All rights reserved.

Events and Messages (1/2)

The following events are supported by the common executable conformance sub-class:

• None start• None end • Message start• Message end• Terminate end• Catching message intermediate• Throwing message intermediate• Catching timer intermediate• Boundary error intermediate

Start Intermediate catch

Intermediate throw End

None start

Message start

Catch message

intermediate

Throw message

intermediate

Message end

None end

Catch timer intermediate

Boundary error

intermediate

Terminate end

Page 12: BPMN Series - Good e-Learning · BPMN 2.0 Models can be Executable. BPMN v2.0 contains greater support for executable models. BPMN 2.0. defines both: • A. common executable conformance

BPMN Series What is Needed for Process Automation?

© Good e-Learning 2014. All rights reserved.

Events and Messages (2/2)

None start and end events start or end a process without any specific conditions

Executing throw (intermediate or end) message events are realized by mapping pool’s variables to messages

Executing catch (start or intermediate) message events are realized by mapping messages to pool’s variables

Terminate end events terminate a currently active application

Catching timer intermediate events are triggered when a defined date-time variable is fulfilled.

Boundary error events catch exceptions that usually occur in automated applications

Page 13: BPMN Series - Good e-Learning · BPMN 2.0 Models can be Executable. BPMN v2.0 contains greater support for executable models. BPMN 2.0. defines both: • A. common executable conformance

BPMN Series What is Needed for Process Automation?

© Good e-Learning 2014. All rights reserved.

Summary

With the introduction of the BPMN 2.0 specification, vendors can now create software that enables business process model to be executed

The BPMN 2.0 specification provides a subset of BPMN elements that need to be supported as well as their semantics

In order to make a BPMN model executable, additional information must be added to the model(e.g. process variables, task input and output data, performers and user interfaces)

Page 14: BPMN Series - Good e-Learning · BPMN 2.0 Models can be Executable. BPMN v2.0 contains greater support for executable models. BPMN 2.0. defines both: • A. common executable conformance

BPMN Series What is Needed for Process Automation?

© Good e-Learning 2014. All rights reserved.

Free Resource Librarywww.goodelearning.com/downloads

@goodelearning /goodelearning /company/good-e-learning

No part of this publication may be reproduced, resold, stored in a retrieval system, or distributed in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior permission of the copyright owner

Such requests for permission or any other comments relating to the material contained in this document may be submitted to: [email protected]