This document summarizes a presentation on aspect-oriented business process modeling (AOBPM). It introduces AOBPM design, dynamic weaving approaches, how weaving enables flexibility, workitem lifecycles, formal semantics using Petri nets, an implementation using YAWL, and a bank case study. Limitations discussed include using small processes and opportunities for refining advice modeling and precedence. The presentation aims to separate concerns to simplify processes and support agility.
1 of 16
Downloaded 11 times
More Related Content
Dynamic Weaving in Aspect Oriented Business Process Management
1. 2013, 11-13 Sept, Graz, Austria
Amin Jalali*, Petia Wohed*, Chun Ouyang** and Paul Johannesson*
11/09/2013 1
* Department of Computer and Systems Sciences, Stockholm University, Sweden
** Science and Engineering Faculty, Queensland University of Technology, Australia
3. 2013, 11-13 Sept, Graz, Austria
Introduction
ï‚— Separation of concerns
ï‚— Modularization Techniques
ï‚— Cross-cutting concerns
ï‚— Aspect orientation
11/09/2013 3
Issue a bank draft
Traceability
Auditing
Deal for speculation
Change asset deal
Logging
Open a Letter of Credit
Security
Cross-cutting
concerns
Core-Concerns
General
Manager
DealingDep.
Dealer
JuniorChief
BackOffice
Emp.
Fill Position
Sheet
Confirm
OfficeEmp.
Archive
Position Sheet
Position Sheet
yes
No
Deal Fill DealSlip
Sign
Deal Slip
Sign
Deal Slip
Archive
Deal Slip
ChangeAssetDealProcess
•Complexity •Maintenance •Re-usability •Etc.
(Jalali et al, AOBP Modeling with Precedence, BPMN 2012)
4. 2013, 11-13 Sept, Graz, Austria
AOBPM - Design
11/09/2013 4
(van der Aalst, BPM: A Comprehensive Survey 2013)
RunandAdjust
(Re)design
Implement/configure
Data-basedanalysis
Model-basedanalysis
5. 2013, 11-13 Sept, Graz, Austria
AOBPM – Design (2)
ï‚— Modeling
Approaches:
ï‚— AO4BPMN by
Charfi et al.
ï‚— Cappelli et al.
ï‚— Jalali et al.
ï‚— Definitions:
ï‚— Join point
ï‚— Advised Join point
ï‚— Pointcut
ï‚— Advice
ï‚— Aspect
ï‚— PROCEED
11/09/2013 5
-
-
Fill
Information
Transfer
Archive
Information
PROCEED
LoggingAspectTransferMoneyProcess
ArchivePointcut
Aspect Advice
Archive
Sign
transaction PROCEED
SecurityAspect
Aspect
Advice
Sign when
transfer to other
account
Sign when transfer
to other account
Pointcut
6. 2013, 11-13 Sept, Graz, Austria
Weaving
ï‚— Static
ï‚— Lack of flexibility
(adjustment)
ï‚— Dynamic
ï‚— Handling flexibility
ï‚— Addressing changes
quickly.
11/09/2013 6
M
D|N|E
M
D|N|E
M
D|N|E
Merge models
(MerM)
Cross-cutting
Concerns
Core-Concern M
D|N|E
rules
M
E
M
E
M
E
S
S
Adpat while running
(AdaWR)
Cross-cutting
Concerns
Core-Concern
M
E
rules
7. 2013, 11-13 Sept, Graz, Austria
Dynamic Weaving & Flexibility
ï‚— Concerns:
ï‚— Main
ï‚— Full Completeness
ï‚— Runtime Flexibility
ï‚— Cross-Cutting
ï‚— Partial Completeness
ï‚— Runtime
11/09/2013 7
Design
Change
Deviation
UnderspecificationUnderspecification
(Late binding) (Late modeling)
Run-timeDesign-time
PartialFull
Flexibility Configuration
ProcessDefinitionCompleteness
From Towards a Taxonomy of Process Flexibility
by Schonenberg H. et al.
8. 2013, 11-13 Sept, Graz, Austria
Workitem lifecycle
ï‚— Weaving Points
ï‚— Weaving information
ï‚— Control-flow Perspective
ï‚— Data Perspective
ï‚— Resource Perspective
ï‚— Etc.
11/09/2013 8
Created
allocated to a
single resource
Started
Completed
Suspended
Failed
offered to
multiple resources
offered to a single
resource
From Workflow Resource Patterns: Identification, Representation
and Tool Support by Russell N. et al.
9. 2013, 11-13 Sept, Graz, Austria
Weaving Steps
ï‚— Steps:
ï‚— Launching
ï‚— Pausing
ï‚— Resuming
ï‚— Finalizing
ï‚— Questions:
ï‚— How data should be synchronized?
ï‚— Howe each type of advice should be treated?
ï‚— What information should be persisted for dynamic weaving?
ï‚— How each workitem and case should be controlled?
ï‚— Etc.
11/09/2013 9
B
D Proceed E
Proceed F
G Proceed
H
A C
2 3
41
Proceed
10. 2013, 11-13 Sept, Graz, Austria
Formal Semantics
ï‚— Coloured Petri Nets
ï‚— widely-used formal technique for system design and
verification
ï‚— Implemented in CPN Tools
ï‚— State Space Analysis
ï‚— To proof soundness
11/09/2013 10
11. 2013, 11-13 Sept, Graz, Austria
Implementation
ï‚— Implemented as a
service for YAWL:
1. support full
workitem life cycle
2. has formal
foundation
3. open-source
4. based on Service
Oriented
Architecture
11/09/2013 11
Rule
RepositoryProcess
Repository
Org Model
Event
Log
YAWL
Process
Editor
A
R
A
YAWL
Workflow
Engine
B X
UsersUsers Pointcut Editor
B
R
O
A
Admin worklist
Resource
Service
Aspect
Service
XB
12. 2013, 11-13 Sept, Graz, Austria
Case Study
ï‚— Interviews with a domain expert
ï‚— Two similar process selected
ï‚— Change asset deal process
ï‚— handles deals for exchanging assets of the bank from one
currency to another.
ï‚— Deal for speculation process
ï‚— Contains several security concerns
 The result is changing the bank’s assets
11/09/2013 12
13. 2013, 11-13 Sept, Graz, Austria
Case Study (2)
ï‚— Result:
ï‚— separation of several concerns.
ï‚— Decrease complexity
ï‚— Increase reusability
ï‚— Facilitate Maintenance and change management
ï‚— Enable agile development
ï‚— Documenting additional knowledge
ï‚— Direction for future work
11/09/2013 13
14. 2013, 11-13 Sept, Graz, Austria
Limitations & Future Work
ï‚— Small processes
ï‚— Pros: learn quickly, easier to present to a less domain
knowledgeable audience.
ï‚— Cons:
ï‚— Too small advices
ï‚— Future Works:
ï‚— Precedence
ï‚— Case studies in other domains like healthcare
ï‚— Needs to refine the modeling techniques in definition of
advice types
11/09/2013 14
15. 2013, 11-13 Sept, Graz, Austria
Limitations & Future Work (2)
11/09/2013 15
(van der Aalst, BPM: A Comprehensive Survey 2013)
RunandAdjust
(Re)design
Implement/configure
Data-basedanalysis
Model-basedanalysis
16. 2013, 11-13 Sept, Graz, Austria
Questions
Thank you ...
11/09/2013 16