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
2013, 11-13 Sept, Graz, Austria
Agenda Introduction AOBPM – Design AOBPM - Enactment (Weaving) Weaving Approaches Weaving & Flexibility Workitem lifecycle Weaving Steps Formal Semantics Implementation Case Study Limitations & Future Works Questions
11/09/2013 2
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
Traceab
ility
Auditin
g
Deal for speculation
Change asset deal
Logging
Open a Letter of Credit
Secu
rity
Cross-cutting
concerns
Core-Concerns
Gen
eral
M
anag
erD
ealin
g D
ep.
Dea
ler Ju
nio
rC
hie
f
Bac
kOff
ice
Emp
. Fill Position Sheet
Confirm
Off
ice
Emp
.
Archive
Position Sheet
Position Sheet
yes
No
Deal Fill DealSlip
Sign
Deal Slip
Sign
Deal Slip
Archive
Deal Slip
Ch
ange
Ass
et D
eal P
roce
ss
•Complexity •Maintenance •Re-usability •Etc.
(Jalali et al, AOBP Modeling with Precedence, BPMN 2012)
2013, 11-13 Sept, Graz, Austria
AOBPM - Design
11/09/2013 4
(van der Aalst, BPM: A Comprehensive Survey 2013)
Run and Adjust(R
e) d
esig
n
Implement/configure
Data-based analysis
Mod
el-b
ased
ana
lysi
s
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
Logg
ing
Asp
ect
Tran
sfer
Mo
ney
Pro
cess
ArchivePointcut
AspectAdvice
Archive
Sign transaction PROCEED
Secu
rity
Asp
ect Aspect
Advice
Sign when transfer to other account
Sign when transfer to other account
Pointcut
2013, 11-13 Sept, Graz, Austria
Weaving
Static
Lack of flexibility (adjustment)
Dynamic
Handling flexibility
Addressing changes quickly.
11/09/2013 6
MD|N|E
MD|N|E
MD|N|E
Merge models
(MerM)
Cross-cutting Concerns
Core-Concern MD|N|E
rules
ME
ME
ME
S
SAdpat while running
(AdaWR)
Cross-cutting Concerns
Core-Concern
ME
rules
2013, 11-13 Sept, Graz, Austria
Dynamic Weaving & Flexibility
Concerns:
Main
Full Completeness
Runtime Flexibility
Cross-Cutting
Partial Completeness
Runtime
11/09/2013 7
DesignChange
Deviation
UnderspecificationUnderspecification(Late binding) (Late modeling)
Run-timeDesign-time
Par
tial
Full
Flexibility Configuration
Pro
cess
Def
init
ion
Co
mp
lete
nes
s
From Towards a Taxonomy of Process Flexibility by Schonenberg H. et al.
2013, 11-13 Sept, Graz, Austria
Workitem lifecycle
Weaving Points
Weaving information
Control-flow Perspective
Data Perspective
Resource Perspective
Etc.
11/09/2013 8
Createdallocated to a
single resourceStarted
Completed
Suspended
Failedoffered to
multiple resources
offered to a single resource
From Workflow Resource Patterns: Identification, Representation and Tool Support by Russell N. et al.
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 341
Proceed
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
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
ResourceService
Aspect Service
XB
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
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
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
2013, 11-13 Sept, Graz, Austria
Limitations & Future Work (2)
11/09/2013 15
(van der Aalst, BPM: A Comprehensive Survey 2013)
Run and Adjust(R
e) d
esig
n
Implement/configure
Data-based analysis
Mod
el-b
ased
ana
lysi
s
2013, 11-13 Sept, Graz, Austria
Questions
Thank you ...
11/09/2013 16