business process management. 2 ”a structured, measured set of activities designed to produce a...

45
Business Process Management

Upload: grace-higgins

Post on 03-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Business Process Management

Page 2: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

2

”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A process is thus a specific ordering of work activities across time and space, with a beginning and an end, and clearly defined inputs and outputs: a structure for action.”

“Taking a process approach implies adopting the customer’s point of view. Processes are the structure by which an organization does what is necessary to produce value for its customers.”

Davenport (1993)

Business process

Page 3: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Business Processes Defined

A business process is a collection of interrelated tasks, which are designed to deliver a particular result

Types of business processes Management processes - processes that govern the operation

of a system Operational processes - processes that constitute the core

activities of the business and delivers the primary value of the organization

Supporting processes - which support the core processes

Page 4: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

4

A business process is a collection of interrelated tasks, which are designed to deliver a particular result.

Business processes span potentially multiple departments

Business process

Process can be Large and complex Dynamic Widely distributed Long running Mix of business and technical steps Involve human intelligence and judgement

Processes can be defined in workflows or process flows define the sequence of steps and any logic associated These can be automated but do not have to be

Page 5: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

What is Business Process Management (BPM)?

BPM is a discipline combining software capabilities and business expertise through people, systems, and information to accelerate time between process improvements, facilitating business innovation

BPM software supports the definition and automation of workflows involving individuals and systems The definition and automation of workflows Monitoring and optimisation of running workflows

BPM also enables flexible deployment, monitoring and tracking, process focus and efficiency.

Page 6: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

BPM and process re-engineering

The concept of Business Process Management came from Process re-engineering: Analysing and redesigning key

processes within an organisation in order to improve performance Workflow automation (typically person-centric processes such as

purchase order approval)

BPM is complementary to process re-engineering and six-sigma projects but can also be used for any process automation project. Process re-engineering/six sigma is a business driven initiative to

measure and optimise performance at a business level. Process re-engineering/six sigma does not require IT integration,

it may simply add reports to existing systems.

Page 7: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Examples of processes suitable for BPM: Setting up a new customer account

Collect new customer details.

Verify compliance with money laundering laws

Set-up account

Blacklist DB Compliancesystems

Compliancesystems

Pending

Branch networkBranch network

Account system

Account system

Page 8: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Verify compliance with money laundering laws

Opportunities and benefits of process automation

Capture new customer details.

Account set-up and provisioning

Blacklist DB Compliancesystems

Compliancesystems

Pending

Branch networkBranch network

Account system

Account system

Capture existing process knowledge.

Support future out sourcing decisions.

Out sourced provider

Reduce errors

Automates roll-out of change

Automate process to enhance self-service

Page 9: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

An example of a simple process defined

1. Process starts at a scheduled time.

2. Collected information from database

3. Format the email to the customer

4. Email the invoice5. Format the email

with the late reminder

6. Add a new activity (a reminder if not paid for a week)

7. Wait for the week8. Send the late

payment reminder

(c) SAP

1 2 3

45

6

7

8

Page 10: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Other examples of processes for automation 1: Process: New Hire Integration

Background Check Allocation of office space Reservation of phone, pager Creation of access rights in operational systems

Problem: Lost productivity due to late provisioning of work infrastructure

Automating the process coordination reduced cycle time from 2 week average to 2 days

Automation Goal: Performance

10

Page 11: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Other examples of processes for automation 2:

Process: Employee Termination Removal of computer access rights Collection of company-issued phone, pager, access card Removal from employee directory

Problem: Not all equipment is collected, access rights remain after an employee leaves

Automating the process coordination ensures that no step is forgotten

Automation Goal: Compliance

11

Page 12: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Business Process Management: Evolution from simple workflow

Page 13: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

1990s – “workflow in the head”

ApplicationLogic

in Multiplesystems

UI“Screens”

© 2007 Workflow management coalition

In an organisation without integration across multiple systems, the workflow is managed ‘manually’ by the user ensuring that the correct steps are executed in multiple applications Each step involves the user using the individual systems

Enterprise Application“Account Management”

Backg

rou

nd

Ch

eck

Co

nfo

rman

ce Ru

les

List A

ccts

New

Acct

Mo

d A

cct

Del A

cct

Page 14: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

1993: Workflow Assist in Sequence

UI“Screens”

backgroundcheck

createaccount

checkguidelines

LaunchesUI

User accessesoriginal UI directly

Human BPM/Workflow:

Enterprise Application“Account Management”

Backg

rou

nd

Ch

eck

Co

nfo

rman

ce Ru

les

List A

ccts

New

Acct

Mo

d A

cct

Del A

cct

© 2

00

7 W

ork

flo

w m

an

ag

em

en

t c

oa

liti

on

ApplicationLogic

in Multiplesystems

The original workflow systems assisted the user by ensuring that the right systems were invoked in the right sequence The original systems are still directly interacted with

Page 15: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

1996: Supporting collaboration

UI“Screens”

backgroundcheck

createaccount

checkguidelines

Launches

© 2007 Workflow management coalition

ApplicationLogic

in Multiplesystems

Enterprise Application“Account Management”

Backg

rou

nd

Ch

eck

Co

nfo

rman

ce Ru

les

List A

ccts

New

Acct

Mo

d A

cct

Del A

cct

Workflow systems evolved to allow multiple individuals to participate in a single workflow

Page 16: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

2002: Introduction of a process engine

ExposedWeb

Services

enterinfo

Review

UI connects user to process engine, not

the back-end applications

© 2

00

7 W

ork

flo

w m

an

ag

em

en

t c

oa

liti

on

ApplicationLogic

in Multiplesystems Enterprise Application

“Account Management”

Backg

rou

nd

Ch

eck

Co

nfo

rman

ce Ru

les

List A

ccts

New

Acct

Mo

d A

cct

Del A

cct

createaccount

bgcheck

rules

A distinct process engine automates the workflow and deals with interactions with the backend systems – the user no longer directly interacts with these systems

Page 17: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

17

The process engine

A process is an entity that typically encapsulates an interaction of a user with business entities (applications).

Can includes user-centric interactions (email reminders, task lists etc) and system interactions .

A process typically updated and changes the state of the business entities indirectly The business application mediates these changes

A business process may have its own state which may exist only for the duration of the process; at the completion of the process the state ceases to exist. The duration of the state may be very long

Process state may be transient or persistent.

Page 18: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Human Activities Have Three Phases

Review

Automated phase beforeto prepare for the task

Wait phase for Human to do the work,includes timers andescalation logic

Automated phase afterto take care of resultsof the task

User Interface(while waiting)

© 2007 Workflow management coalition

Page 19: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Separation of ResponsibilityBusiness Retains Control of• Assignment of Responsibility• Groups, Roles, Skills• Deadlines• Alerts, Reminders, Escalations• Order of Tasks• Addition of Manual Tasks• User Interface

IT Retains Control of• Computational Logic• Data Representations• Scalability / Performance• Interoperability• Master Data Management

© 2007 Workflow management coalition

ExposedWeb

Services

enterinfo

Review

ApplicationLogic

in Multiplesystems

Enterprise Application“Account Management”

Backg

rou

nd

Ch

eck

Co

nfo

rman

ce Ru

les

List A

ccts

New

Acct

Mo

d A

cct

Del A

cct

createaccount

bgcheck

rules

BPM supports the separation of tasks between the business analyst (defining the business level elements) and IT (retaining control of systems and data)

Page 20: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Business Process Management

Page 21: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

BPM in process automation

BPM can also be tactically to automate or optimise processes Removing manual processing steps ensures appropriate processes are

followed.

To formalise and capture knowledge The activity of defining the process means that knowledge in people’s

heads is captured (and hence supports out-sourcing).

To reduce the opportunity for human error The defined process is enforced with the BPM software and opportunity

for human error reduced.

To ensure compliance with legal or organisational requirements The process definitions can be audited and the execution of the

processes tracked

Page 22: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Key components of a BPM software product

Modelling and simulation Support the design and simulation of business processes. Uses graphical tools and standardised specification

languages to define the process

Monitoring (Business Activity Monitoring) Track performance of processes and operational activity

Process orchestration and optimisation Execute the process definitions Modify and evolve the definitions to improve performance.

Page 23: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Example of monitoring dashboard

Page 24: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Second example of dashboard

Page 25: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Where BPM is appropriate

Business Process Management is not suitable for all areas of business as it requires processes which can be formalised. Clearly needs a well-defined business case to support the potential

changes in the operational process,

Finding matches for the strengths of BPM Areas which are already well-defined. Areas where there is either complexity or rapid change or both Areas where the cost of error is much greater than the cost of

fixing the problem.

Page 26: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

COMPARING APPROACHES TO BUSINESS PROCESS AUTOMATION

26

Page 27: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Comparing EAI, ERP and BPM

EAI integrates primarily behind the scenes Most of the user interaction is unchanged

Process changes occur only for the integrated process27

App1 App 3App2 App1 App 3App2

Page 28: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Benefits of EAI/SOA based process automaton Integrates with existing process and data models – handling

incompatibilities when necessary Allows the high value integration problem to be addressed without

disrupting the other applications Integrates with existing process and data models – handling

incompatibilities when necessary Minor/moderate changes to the user interaction causes

minor/moderate changes to the business as a whole

28

Page 29: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Comparing EAI, ERP and BPM

ERP changes both user interaction and applicaton All user interaction, data/process models are changed

29

App1 App 3App2

Module1

Module2

Module3

Page 30: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Benefits of ERP based process automation

Creates a set of processes and associated data models which are mutually compatible and comprehensive

Equally effective at automation within a single department or across multiple departments

ERP vendor typically provides ‘standard’/template processes already proven for a particular industry

30

Page 31: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Comparing EAI, ERP and BPM

BPM integrates the user interaction layer across multiple applications All user interaction related to the integrated process changed

Process and interaction changes occur only for the integrated process

31

App1 App 3App2

App1 App 3App2

BPM layer

Page 32: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Benefits of BPM based process automation

Improvement in the redesigned process, Reduction in risk/error (due to missed or wrongly

executed steps) Auditability of completed processes – needed for

compliance and other purposes Makes it easier to deploy process changes (for instance

caused by outsourcing, regulation changes, business changes etc)

32

Page 33: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

BPM versus EAI and SOA

BPM can use different technologies to implement the process. Like SOA, it can be implemented using different technologies

EAI products typically claim to provide BPM capabilities Typically support processes defined as system to system

interactions (i.e. does not include human interactions)

SOA and BPM are partially complementary BPM can build upon SOA using the services already defined. However, it is not usual to attempt to combine a move to SOA

and a move to BPM

Page 34: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

BPM and ERP

BPM provides process integration If the organisation is using an ERP system, the BPM system

integrates into the capabilities of that system and integrates with other systems and users (via Email etc) SAP’s Business One tool:

System interaction step

User interaction

steps

Page 35: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

BPEL – A business process language

Page 36: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Business Process Orchestration with BPEL

An example of a business process orchestration language Others remain more popular / native with one BPM platform

Business Process Execution Language (BPEL) Defines the process as an XML document which is executed by a process

engine.

A portable business processes built on top of the Web services infrastructure

Industry wide language for business processes Simple constructs and principles Common skill set and language for developers

Choice of process engines Standards lead to competitive offerings Allows different engines to be used for different tasks A number of Open Source implementations available

Page 37: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

37

A simple business scenario A specific ordering of work

activities Across time and place With a beginning, an end Clearly identified

Inputs Outputs

E.g. An order arrives and

proceeds down a simple series of steps to check Inventory Price Credit check

Before issuing an invoice

Page 38: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Exercise: Defining a business process

38

• Working in groups pick a business process

• Define the steps involved in the process from a business perspective

• Define the steps involved in the process from a technology perspective

• Think about the time the process takes to complete• Think about what happens if it goes wrong

Page 39: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

BPEL Components

The basic activities required to define a process such as Invoke the port-

type on a participant.

Receive a message from a participant

Reply to a message

Terminate a process

“Structured” Activities including Pick from a list of options

based on some value While a condition is true

repeat the task Flow to the next step

Defining the entities involved in the process. BPEL defines

these as Partner Links (role of the participant in the process).

Defining the way the entity is involved with the Port-types (an interface definition)

Page 40: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Structured activities – as XML and diagrams

<sequence>

<flow>

<pick>

Serialized <send>, <receive>, <invoke>, <…>

parallel <send>, <receive>, <invoke>, <…>

Wait for one or more <receive> or an alarm condition

• Structured activities define the flow within the business process flow

Page 41: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Structured activities – as XML and diagrams

<switch><case>… <case /> <otherwise /> </switch>

While

Wait

Page 42: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Starting and stopping process

Start a process on receiving an external message<receive createInstance=“yes”>…</receive>

Start a process at a predefined time<pick> <!-- set an alarm in 3 days and 10 hours --> <onAlarm for="'P3DT10H'"> <!-- handle timeout for order completion --> … </onAlarm></pick>

Page 43: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

BPEL Error HandlingAs well as defining the usual behaviour of the process, it is also necessary to define what to do when things go wrong. This is done with faultHandlers which are called when the usual behaviour fails and an exception is thrown. <faultHandlers> <catchAll> … </catchAll></faultHandlers>…<switch><case condition= "bpws:getVariableProperty(stockResult,level) > 100"><throw faultName="OutOfStock"/></case>

Page 44: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Many instances of a process may be running in the BPEL engine. When a message arrives, the engine has to figure out which process it belongs to. This is done with message correlation

The correlation data is something in the message which is unique (e.g. invoice purchase order number) and allows the process engine to associate the message with the right process

<propertyAlias propertyName="orderNumber" messageType="POMessage" part="PO" query="/PO/Order"/><correlationSets> <correlationSet name="PurchaseOrder" properties="orderNumber"/></correlationSets>…

BPEL Message Correlation

Page 45: Business Process Management. 2 ”A structured, measured set of activities designed to produce a specific output for a particular customer or market… A

Advanced concepts: BPEL Transactions

Transactionality is also important for BPEL but it is different to that used by J2EE (with the JTS/JTA interfaces). BPEL uses compensation handlers which reverse the effects of failed processes. i.e. the compensation handler reverses out the changes made by the failed processJ2EE’s transaction model ensures no work happens until it is all complete The J2EE model does not work for long lived transactions which BPEL processes often are.

<compensationHandler> <invoke partnerLink="Seller" operation="SyncPurchase" …> … <compensationHandler> <invoke partnerLink="Seller" operation="CancelPurchase“ …/> </compensationHandler> </invoke>