the role of bpmn in a modeling methodology for dynamic ... · the role of bpmn in a modeling...
TRANSCRIPT
© 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
© 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
© 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
© 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
© 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 ⊇××
© 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
© 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.”
© 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
© 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
© 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
© 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.”
© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler12
Can we use BPMN 2.0 to describe these Components and their Interactions?
© HSLU - JK BPMN for Dynamic Process Solutions - Jana Koehler13
© 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
© 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
© 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
© 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
© 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
© 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• …
© 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
© HSLU - JK
http://www.bpmn-workshop.org
21