55
Fundamentals of Business Process Management and BPMN Gregor Polančič, 2016

Fundamentals of business process management and BPMN

Embed Size (px)

Citation preview

Fundamentals of

Business Process Managementand

BPMN

Gregor Polančič, 2016

Agenda

• Introduction

• What is a Business Process

• Business Processes Lifecycle

• BPMN basics for process modeling

• BPMN beyond process modeling

IntroductionFundamentals of Business Process Management

What do you see on the picture?

4

A business unit, i.e. a company

What is the focal objective of a company?

5

Profit

How does a company achieves profit?

6

Profit

Goods / Services

Value creation Generate returns

What does a company need to create value?

7

Resources

What is money?

8

This means we can buy resources.

Can we buy Everything?

9

“There are some things money can't buy /…/”

A company can’t buy …

10

Capabilities

Capabilities need to be established and evolved.

Are people resources or capabilities?

Both

We can hire a person.

A person has to be trained and educated.

Are resources and capabilities related?

12

Capabilities coordinate, control and deploy resources.

13

B. Orand, Foundations of IT Service Management: The ITIL Foundations Course in a Book, 3rd ed. CreateSpace Independent Publishing

Platform, 2011.

Business ProcessFundamentals of Business Process Management

What is a business process?

A set of activities that are performed in coordination in an organizational and technical environment and jointly realize a business goal.

Processes are assets

• Business processes are organizational assets that are central to creating value for customers.• An “asset” represents any item of economic value owned by an individual or corporation,

especially that, which could be converted into money.

Goods / Services

Customer

Business process types

• Operational processes, • processes that constitute the core business and create

the primary value stream (purchasing, manufacturing, marketing, sales, …).

• Management processes, • processes that govern the operation of a system

(corporate governance, strategic management, …).

• Supporting processes, • processes which support the core processes (accounting,

recruitment, technical support, …).

17

Main characteristics of business processes

• Process goals

• Process leader

• Process (time-based) start and end

• Process inputs and outputs

• Process steps

• Process performance monitoring

• Process stakeholders

• Continuous improvement

18

Processes should be managed and …

• By measuring, monitoring, controlling, and analyzing business processes, a company can deliver consistent value to customers and has the basis for process improvement.

… continuously improved

• Business processes should be continuously improved.• Processes are capabilities they need to evolve.

IT is an essential enabler

• Information technology is an essential enabler for (managing) business processes.• Processes are intangible assets IT perfectly manages them.

Goods / Services×

Business Process LifecycleFundamentals of Business Process Management

BPM Lifecycle

• The management of business processes (i.e. taking care of them) consists of a set of interrelated activities organized in a cycle.

• Cycle represents continual improvement.

Define

Model

Simulate

Implement

Execute

Monitor

Analyze

Optimize

Gartner's BPM Lifecycle

Process definition

• “Each company runs processes -some are aware of them.”

• Identification and definition of existing processes based on:• Process results (products and services

a company offers),• Documentation (informal and formal

process descriptions)• Interviews and/or observations of

employees (process participants)

• input for the modeling phase

Define

Model

Simulate

Implement

Execute

Monitor

Analyze

Optimize

Define

Model

Simulate

Implement

Execute

Monitor

Analyze

Optimize

Process modeling

• Processes are intangible we cannot manage them directly.

• Natural languages are inappropriate for process descriptions!

• We need to model processes in order to work with them.

• “All models are wrong, but some are useful.“ [George E. P. Box]

• To take full potential out of process modeling, we need to use a standardizednotation.

• input for the simulation, implementation and analysis.

Define

Model

Simulate

Implement

Execute

Monitor

Analyze

Optimize

Process simulation

• “Simulation is the imitation of the operation of a real-world process.”

• What can or should be simulated?• Execution time• Execution costs,• Resources allocation, etc.

• Simulated vs. real-world process• Faster• Cheaper• More flexible

• input for the modeling phase

• input for the implementation phase

Define

Model

Simulate

Implement

Execute

Monitor

Analyze

Optimize

Process implementation

• Prepare a business process for being executed.

• Obtain and prepare process resources• Get and train people how to perform a

process’s tasks,• Implement and/or configure IT support for

a process,• Acquire and prepare required process

information.• Integrate the process with other processes

(process chain).

• input for the execution phase

Define

Model

Simulate

Implement

Execute

Monitor

Analyze

Optimize

Process execution

• Execution of process instances.

• “A process instance represents one specific case of a process that is currently executing.”

• Process execution means that process‘s tasks are performed• Manually by humans• Computer assisted• Automatically by IT

Define

Model

Simulate

Implement

Execute

Monitor

Analyze

Optimize

Process monitoring

• Tracking of individual process instances• State information (e.g. order

arrived, awaiting delivery, invoice paid),

• Key performance indicators (e.g. lead time),

• Identification of bottlenecks.

• Compare of monitoring results against requirements, e.g. Service Level Agreements (SLA)

Define

Model

Simulate

Implement

Execute

Monitor

Analyze

Optimize

Process analysis

• based on modeling, simulation and/or monitoring phase

• SWOT analysis - identification of potential or actual process• Strengths• Weaknesses• Opportunities• Threats

• input for the optimization phase• input for process re-definition

(new cycle)

Define

Model

Simulate

Implement

Execute

Monitor

Analyze

Optimize

Process optimization

• Process optimization adjusts a process in order to optimize (improve) some specified set of parameters without violating some constraint.

• Optimization goals: • Minimizing costs,• Maximizing throughput,• Improving resources allocation,• Remove bottlenecks.

• Process optimization creates greater business value.

Define

Model

Simulate

Implement

Execute

Monitor

Analyze

Optimize

Continuous process improvement

• “Quality is a never ending quest”

• Continuous process improvement is a way to permanently improve quality of process outcomes:• products,

• services.

BPMN basics for process modelingFundamentals of Business Process Management

What is BPMN?

• Business Process Model and Notation• Business Process - A collection of related,

structured activities or tasks that produce a specific service or product for a particular customer.

• Model –a representation of a business process. • Visual proces model – process diagram• Non-visual proces model (e.g. executable process

model)

• Notation – a set of elements (language) + rules used for representing a business process in a business process model (diagram).

34

Customer requestBusiness process

Process outcome

Task Task Task

Task

Content for the model

‚Alphabet‘ for the model

The current BPMN version is 2.0.2, released in January 2014.

Why BPMN?

Standardized. The de-facto standard in process modeling.

Open. Created and controlled in an open and fair process.

Simple & complete. Can be used in a simple or detailed way.

Learnable. Based on previous notations.

Interchangeable. Capable of being interchanged between IT solutions.

Executable. Capable of being automated.

Standardization enables communication.

Openness enables transparency and democracy.

Simplicity and learnability enable acceptance and popularity.

Interoperability enables humans and IT collaboration.

Automation improves process’s efficiency and consistency.

Primary goal of BPMN

• BPMN 2.0 specification, 1st chapter, 1st paragraph: “The primary goal of BPMN is to provide a notation that is readily understandable by all business users /…/. Thus, BPMN creates a standardized bridge for the gap between the business process design and process implementation.”

BPMN model

User request received

User request analyzed

User request approved

User request rejected

User

Real-world process

Process modeler

Business users(process participants)

Process implementation

In Scope of BPMN

Business process modeling

• Diagrams (e.g. process diagrams, collaboration diagrams).

• Syntax, semantics and visual appearance for process elements (e.g. events, activities and gateways).

• Attributes and properties of the semantic elements represented by the graphical process elements.

• Formats for exchanging diagrams.

Business process execution

• Execution semantics.

• Formats for exchanging executable models.

• Support for BPMN and BPEL process engines.

37

A BPMN 2.0 model example

A worker performs his work and if a problem occurs, he calls the

help-desk center.

The help-desk center receives the call and tries to solve the

problem. If no solution if found in the database, an expert is

involved.

An expert receive a message which interrupts his work in order

to find a solution, which is afterwards returned to the help-

desk center.

Main types of BPMN 2.0 modelsProcess models - represent a specific process

in an organization as a graph of Flow elements.

Collaboration models - represent interactions between two or more processes.

Choreography models – represent between-processes interactions and message flows.

Conversation models - represents conversations between participants.

BPMN 2.0 Process and collaboration models

• Most common in BPMN.

• Supported by the majority of BPMN tools.

• Used for modeling• Private or internal processes

• Public processes

• Collaborative processes

• Use a common set of BPMN elements on three “precision” levels

• Basic or descriptive

• Analytic

• Executable

BPMN Process Modeling Elements

• BPMN diagrams are ‘graphs’ of BPMN elements.

• BPMN elements have defined:• Syntax – rules about how to use BPMN elements in BPMN diagrams.

• Semantics – meaning of BPMN elements.

• BPMN elements may have:• Visual representation.

• Visual and non-visual attributes.

41

Categories of (visual) BPMN

elements

Data Connections Flow objects

Events Activities Gateways

Swimlanes Artifacts

Comment

BPMN activities

• An activity is a generic type of work that an individual or company performs.

• An activity can be: • atomic (task) or

• compound (process, sub-process) – uses a “+” sign.Atomic activity or Task

Compound activity or Sub-process

BPMN gateways

• A gateway is used to split or merge multiple process flows. Thus it determines branching, forking, merging and joining of business process’s paths.

Forking process flow with a Gateway

Alternative process flow - No

Alternative process flow - Yes

• An event is something that »happens« during the process.

• Basic (descriptive) events can start a process, as well, they occur at the end of a process.

BPMN events

An event which starts (instantiates) a process

“Negative” process end

“Positive” process end

Other basic BPMN elements

• Swimlanes (e.g. a Pool) are used to define and organize processes.

• Artifacts (e.g. a data object or document) are used to provide additional information about processes.

• Connecting objects (different types of arrows) connect elements in a logical order.

A Pool defines boundaries of a process

A “document” defines information which is managed within a process

A solid arrow defines the

sequence of a process

A dotted arrow defines the information flow.

Full Set of Process Modeling Elements

None

Message

Timer

Error

Escalation

Cancel

Compen-sation

Conditional

Link

Signal

Terminate

Multiple

Multiple paralel

Start Intermediate

EndEvent sub-pr. Boundary

Inter.Non-inter.

Inter.Non. Inter.

Catching

Throwing

User Task

Send Task

Rule

Task

Service Task

Receive Task

Script

Standard Loop

Parallel multiple

instance

Sequential multiple

instance

Compensation

Ad-hoc

Global (call) Activity

Sub Process (collapsed)

Event-based Sub Process

Transaction

Sub Process (expanded)

Task Task

Manual Task ExclusiveXOR

InclusiveOR

Parallel

Event based

Exclusive Event-based

start

Parallel Event-based

start

Complex

Annotation

Group

Documentation

Sequence flow

Default flow

Conditional flow

Message flow

Association

Directed/data association

Data object

Data store

Message

Data input

Collection

Data output

Initiatingmessage

Pool

Lane Lane Lane

Full class

Analytical class

Descriptive class

BPMN beyond process modelingFundamentals of Business Process Management

BPMN Meta-model• Meta-model is a formal specification of:

• semantic BPMN elements (most of them have visual representations) and

• relationships between semantic BPMN elements.

• Meta-model is represented in UML’s class diagrams.• (semantic) BPMN elements are

represented as object classes with defined required and optional attributes.

• All valid BPMN models must conform to the specification of the meta-model.

48

M1: Instance of a model

Metadata instances e.g. Mark’s invoice

M2: Model

Metadata Schemae.g. BPMN data object representing an Invoice

M2: Meta-model

Schema definition languagese.g. BPMN Meta-model for

Data Object

M3: Meta-meta-model

Universal modeling language

MOF Meta-Levels Hierarchy(Silver 2011)

BPMN Meta-model Example: Data Object

49

BaseElement is the abstract super class for most BPMN elements. It provides the attributes id and documentation, which are inherited other elements (classes).

Inheritance relationship.

DataObject is an Item Aware Element.

DataObjectmight have Data states (e.g. draft, in review, final).

Each element might have documentation attached to it.

The DataObject element inherits the attributes and model associations of FlowElement and ItemAwareElement.

Meta-model defined in UML’s class diagram notation.

isCollection attribute defines if the Data Object represents a collection of elements.

Data Object References are a way to reuse Data Objects in the same diagram.

Classes are organized in packages (e.g. foundation).

BPMN Layered Structure

• The BPMN specification is structured in layers (i.e. packages of classes, where a class represents a semantic BPMN element).• A semantic element might have a

visual representation or not.

• Each layer defines a subset of BPMN semantic elements and models.• Each layer builds on top of and

extends lower layers.

• Process modeling with BPMN includes elements and diagrams, which belong to all layers except choreography.

50

Basic BPMN elements, which are common to all

BPMN models.

This layer defines elements, specific for

Conversation diagrams.

Elements, which belong to yellow layers are specific

for process diagrams.

Layer of elements, which are specific for

choreography models.

This layer defines elements, specific for

Collaboration diagrams.

Choreography layer IS NOT part of process modeling conformance.

BPMN Diagram Interchange (DI)

• BPMN DI describes the location and size of shapes and connectors as well as the linked page structure of BPMN diagrams.• BPMN DI Meta-model is similar to

BPMN’s semantic meta-model.

• The BPMN DI is meant to facilitate interchange of BPMN diagrams between tools rather than being used for internal diagram representation by the tools.

• BPMN diagram consists of• BPMN DI meta-model information,• BPMN semantic meta-model

information.

(Silver 2011) 51

DI::Labeled Shape

BPMNShape

isHorizontal:boolean [0..1]isExpanded:boolean [0..1]isMarkerVisible:boolean [0..1]isMessageVisible:boolean [0..1]participantBandKind:participantBandKind:[0..1]

-memberName

BPMNLabel

BPMN::BaseElement

shape

0..1

label 0..1

shape

*

bpmnElement0..1

1

0..1

Referenced BPMN element, which defines the semantic of BPMN element.

BPMNShaperepresents a depiction of a BPMN element.

BPMN DI Shape meta-model.

BPMNShapealso contains an optional label of type BPMNLabel.

BPMN Serialization

• BPMN Meta-models (semantic and DI), which are represented in class diagrams, are published (i.e. serialized) in two alternative XML formats:• OMG’s Metadata interchange (XMI) and• W3C’s XML Schema Definition (XSD).

• Most BPMN tool vendors use XSD for interchanging models.

• Cannot represent certain relationships of UML class diagrams (e.g. multiple inheritance).

• Transformations between XSD and XMI exist.• Defined in XSLT.

• In BPMN XSD, the information concerning the graphical layout of shapes (e.g. position, size, connection points) is separated from the semantic model.• A valid BPMN model may omit the graphical

information of a BPMN model completely.

(Silver 2011) 52

BPMN20.xsd

Semantic.xsd BPMNDI.xsd

DI.xsd

DC.xsd

BPMN 2.0 schema file structure

Semantics of a BPMN model.

Graphical layout of a BPMN model.

BPMN Execution Semantics

• Part of BPMN Process Execution Conformance.• Not required for BPMN Process Modeling Conformance.

• Describes a clear and precise understanding of the operation of BPMN ‘executable’ elements.• Common executable subclass of BPMN elements defines basic ‘executable’ BPMN elements.• Those BPMN elements, capable of being executed on a process engine.• Non-operational elements examples: manual task, ad-hoc process and abstract task.

• BPMN execution semantics defines:• Process instantiation and termination,• Flow elements (activities, gateways, events) behavior,

• Execution semantics includes: • A description of the operational semantics of the element. • Exception issues for the element where relevant. • List of workflow patterns supported by the element where relevant.

53

BPMN Execution Semantics: Activity Lifecycle

54

An activity is ready for execution if the required number of tokens is available to activate the activity /…/.

When some data InputSetbecomes available, the Activity changes from Ready to the Active state /…/.

An Activity, if Ready or Active, can be Withdrawn from being able to complete in the context of a race condition /…/.

An Activity’s execution is interrupted if an interrupting Event is raised or if an interrupting Event Sub-Process is initiated. In this case, the Activity’s state changes to Failing (in case of an error) or Terminating (in case any other interrupting Event).

If an Activity’s execution ends without anomalies, the Activity’s state changes to Completing /…/.

If an Activity fails during execution, it changes from the state Active to Failed.

After all completion dependencies have been fulfilled, the state of the Activity changes to Completed /…/.

Recommended and used literature

• M. Dumas, Fundamentals of business process management, 1st ed. New York: Springer, 2013.

• M. Weske, Business process management concepts, languages, architectures. Berlin; New York: Springer, 2012.

• B. Silver, BPMN method and style: a structured approach for business process modeling and implementation using BPMN 2.0. Aptos: Cody-Cassidy Press, 2011.

• J. Freund and B. Rücker, Real-Life BPMN: Using BPMN 2.0 to Analyze, Improve, and Automate Processes in Your Company, 2 edition. CreateSpace Independent Publishing Platform, 2014.