the role of bpmn in a modeling methodology for dynamic ... · the role of bpmn in a modeling...

21
© HSLU - JK The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions Jana Koehler Lucerne University of Applied Sciences and Arts Engineering & Architecture [email protected]

Upload: buidan

Post on 27-Jul-2018

230 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK

The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions

Jana Koehler

Lucerne University of Applied Sciences and Arts

Engineering & Architecture

[email protected]

Page 2: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler2

Why Dynamic Process Solutions?

� Agility vs. Control – need to move beyond EAI through workflows– modern working environments: project-oriented & knowledge-

intensive & decision-driven

� Intelligent Case Management– enable activities on the basis of the available information – support human-driven & rule-driven initiatives

• people decide when to perform a business function• business rules govern business conduct

Page 3: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK

Gartner: “Organizations struggle with the interaction of rules and processes”

BPMN for Dynamic Process Solutions - Jana Koehler3

� Business rules (SBVR) and business process modeling standards (BPMN) declare interaction as out of scope

Page 4: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler4

How to model and build such Dynamic Solutions?

� An approach that– treats people - data - business rules as equal communicating

components– relies on BPMN collaboration diagrams for the description of these

components

"A software system that embodies a business process and is built for change, adaptable to business context, and information rich." Rymer/Moore, Forrester 2007

“Applications that evolve with your business must allow business people to change how things are done in those applications - using business rules to manage decisions …” James Taylor, ebizQ.net

Page 5: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler5

The Essence of the Approach

� Processes result from the interaction of Actors on Business Objects guarded by Rules

� Actors have capabilities to execute business functions as part of their activities

� Objects have life cycles that capture milestones of object evolution

� Business rules ensure data integrity and govern business conduct by establishing obligations for actors

PROA ⊇××

Page 6: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler6

A Case Study in the EURENT Domain

� Developed by the business rules community– business rules manifesto, SBVR standard

� Operations of a car rental company and its branch offices

� Requires adhoc activities by humans and is highly rule regulated– detailed domain models + > 100 business rules

Page 7: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler7

1. Identify EURENT Business Objects

Rental

Customer Record

Car

“A Customer has at least one of the following: a Rental Reservation, an in-progress Rental, a Rental completed in the past 5 years.”

Page 8: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler8

2. Develop Object Life Cycles

� States often made explicit in domain models

� Implicitly contained in business rules

on SaleAcquired

Available

on Rent

Returned

In Service

Damaged

“A car from another branch may be allocated, if there is a suitable car available and there is time to transfer it to the pick-up branch.”

Allocated

“If a car is three days overdueand the customer has not arranged an extension, insurance cover lapses and the police must be informed.”

Overdue

Page 9: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler9

3. Capture EURENT Actors and Activities

Branch Manager

Car Park Assistant

Front Desk Clerk

� buy/transfer/sell cars

� inform police

� service cars

� receive & inspect cars

∼∼∼∼

Assign

RentalsCancel

Rental

Handover

Keys &

Contract

Bill

Customer

Create

Rental

Grant

Contract

Extension

Register new

Customer

Adhoc BPMN process

Page 10: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler10

Available

Acquired

Allocated

4. Study Interaction between Objects and Actor Activities

buy car

inspect car

assign next day rentals

� Activities create/terminate objects and their life cycles

� Initiated by actors (adhoc) reacting to events

� Cause state transitions� Can be complex

– e.g. synchronize state transitions of several objects

Assigned

Open

Page 11: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler11

5. Bring Rules into the Picture

� Conventional occurrence still applies: automated decisions in activities� New: triggered by time/monitoring object data continuously or in specific states

Available

Acquired

Allocated

buy car

inspect car

assign next day rentalsInService

schedule service

Assigned

Open

“Each car must be serviced every three months or 10,000 kilometers, whichever occurs first.”

“Customers in the loyalty incentive scheme have priority for free upgrades.”

“At the end of each day cars are assigned to reservations for the following day.”

Page 12: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler12

Can we use BPMN 2.0 to describe these Components and their Interactions?

Page 13: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler13

Page 14: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler14

objectlifecycle

authorized actorapplicable

business rule

Car Object Data Base

MonitorNotification Broadcaster

state + data update

update statereply state

Object Life Cycle Collaboration

� 1 model for each state transition of each object

Actor Data Base

sender authentication

newState =“available” + serviceData

Car Data Base

PersistData

“available” + service data

AuthenticateSender

Staff Data Base

BounceUnexpected Message

“available”

“available”

“?”

Car Monitor

newState= “available”?

yes

no

ValidateData

acquired to

available current state = “acquired”

ConfirmUpdate

confirmation

Page 15: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler15

Business Rule Collaboration

� 1 model for each rule“At the end of each day cars are assigned to reservations for the following day.”

AssignmentRule

“assign rentals”

6 pm

Determine Responsible

Front Desk Clerk

Send Assignment Obligation

MonitorStaff

Data Base

“assign rentals” to Mary on 5/25/2010, 6pm

object lifecyclesrelevant to rule

businessrule

evaluationoutcomenew state

Monitor

actors authorizedfor rule request state

query notification/obligation

other business rules query

reply

Authorized Functions in Actor Data Base(s), Object Data Bases, Business Rules in Rule Base

Page 16: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler16

Actor Collaboration

object lifecyclesauthorized for actor

actor

activity relatedbusiness rules

Authorized Functions in Actor Data Base(s), Object Data Bases, Business Rules in Rule Base

executedactivity

state/data crud

Monitor

otheractorsobligation notification/request state

messagehistory

request/query

reply

� (at least) 1 model per activity

Page 17: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler17

Assign Next Day Rentals

� additional subprocess diagrams further refine the activity model

Get Next Day Rentals

Rentals [Open]|||“assign rentals” [ pickupDate=tomorrow ]

III

Retrieve avail. Cars

Check Car Assignment Rules

Valid

Cars?

Select Car Assign Car

…Search For AlternativesCars

[Available]

Car

[Available]

Rental

[Open]

Car

[Allocated]

Rental

[Assigned]

Assign Next Day Rentals

Assignment Rule

Assign Rental

Rental Data Base

Assign Rental

Car Data Base

yes

no

Valid Car Rules

Page 18: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler18

End-to-End Processes result from Scenarios

� Scenarios drive incremental development and testing

customer calls

create rental

“At the end of each day cars are assigned to reservations for the following day.”

prepare car

…[open]“It is permitted that a

rental is open only if each driver of the rental is not a barred driver.”

[allocated]

[assigned]

play-in: events and models

play-out: possible scenarios

6pm

Page 19: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler19

What an Actor Sees

Activities

that are

always

possible

Activities

resulting from

rule obligations

Activities

enabled/required by

specific object states

Activities

reflecting requests

from other actors

• create rental• …

• assign rentals• …

• delayed car: contact customer• …

• reassign rental• …

Page 20: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler20

Summary & Outlook� Design method for dynamic BPM systems

– 3 pillars: object life cycles & business rules & activities

– represented by BPMN 2.0 collaboration diagrams• component communication & behavior

� Incremental evolution and change made easier– reduce complexity of single design element, develop incrementally– easier adoption of business patterns

– end-to-end process not strictly predefined

– agile approach using scenarios

� Next Steps– 6 promising research areas identified in paper

• language – methodology – tooling – runtime – user interfaces

Page 21: The Role of BPMN in a Modeling Methodology for Dynamic ... · The Role of BPMN in a Modeling Methodology for Dynamic Process Solutions ... 2 BPMN for Dynamic Process Solutions

© HSLU - JK

http://www.bpmn-workshop.org

21