ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
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
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)
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
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
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
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.
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.
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
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
Resource
Service
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)
RunandAdjust
(Re)design
Implement/configure
Data-basedanalysis
Model-basedanalysis
2013, 11-13 Sept, Graz, Austria
Questions
Thank you ...
11/09/2013 16

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
  • 2. 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
  • 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