Post on 19-Jan-2015
description
transcript
Variability and Configurability of Business ProcessesWhy, What, When, and How?
Dragan Gašević
Business processes
Many (buzz)words
Dynamic Variable
Changeable Flexible
Configurable DeclarativeAgile
What’s all this about? Perhaps
“A business process is flexible if possible to change it without replacing it completely.”
Rainer Schmidt, Gil Regev, Pnina Soffer, Guest Editorial: Requirements for Flexibility and the Ways to Achieve It, Int. J. Business Process Integration and Management, Vol. 3, No. 1, 2008, pp. 1-4
Now, please, help! What’s different and similar?
Business processesDynamic Variable
Changeable Flexible
Configurable DeclarativeAgile
The rest of the talk A perspective to the problem Some experience in managing variability Open challenges
Part IA Perspective to
the Problem
Why and what?
Let me introduce myself
Also, an excuse to invite you tothe 4th International Conference on Software Language Engineering
http://planet-sl.org/sle2011
Variability in SoftwareLocations in software where behaviour can be configured
http://www.program-transformation.org/Variability/SoftwareVariabilityManagement
Variability ManagementSystematic approaches to managing
the complexity of variability in software
Higher configurability of software products
Software Product Lines A set of similar software systems (families)
Share many common features Satisfy requirements of a particular domain
Configuration Process
Product 1 Product 2Product n
…
Maintainability, too?! Already known in (software) engineering
… the ease with which a product can be maintained to correct defects meet new requirements make future maintenance easier, or cope with a changed environment
As simple as a Wikipedia entry: http://en.wikipedia.org/wiki/Maintainability
Software Quality Maintainability characteristics
Analyzability capability to be diagnosed for deficiency
Changeability possibility and ease of change when modifications needed
Understandability prospect and likelihood to be understood & comprehended
ISO 9126 standard, Software engineering — Product quality
Community Engineering
Variability Management in BPs
Systematic management of complexity of variability for
better configurability
Changeability in BPsPossibility and ease of change
when modifications needed
At design, configuration, and run-time
Understandability in BPsProspect and likelihood to be understood & comprehended
Both variable BPs & configuration processes
Part II Experience in variability &
configurability of BPs
How and When?
Legend
Process FlowStage
Artifact
Output
Dom
ain
Engi
neer
ing
Tractability
Domain Analysis Domain Design
Product Family Requirements
Analysis
Requirements Model
Business Process
Family Design
Reference Business Process
Model
Model Mapping
Mapping Schema
Variability Modeling
Feature Model
Domain Implementation
Business Process Model Template
Implementation
Service Discovery/ Implementation & Binding
Appl
icati
on
Engi
neer
ing Application Analysis Application Design
Stakeholder’sRequirements
Analysis
Application Requirements Specification
Feature Prioritization and
Selection
Configured Feature Model
Application Implementation
Application Integration and
Deployment
Final Product
D1 D2 D3 D4 D5
A1 A2 A4
NFPs Aggregation and Propagation
Feature Model enriched with NFP values
D6
Business Process Configuration &
Service Selection
ConfiguredBusiness Process
A3
Traceability Links
Validation
Bird’s Eye View
Legend
Process FlowStage
Artifact
Output
Tractability
Domain Analysis Domain Design
Product Family Requirements
Analysis
Requirements Model
Business Process
Family Design
Reference Business Process
Model
Model Mapping
Mapping Schema
Variability Modeling
Feature Model
Domain Implementation
Business Process Model Template
Implementation
Service Discovery/ Implementation & Binding
Application Analysis Application Design
Stakeholder’sRequirements
Analysis
Application Requirements Specification
Feature Prioritization and
Selection
Configured Feature Model
Application Implementation
Application Integration and
Deployment
Final Product
D1 D2 D3 D4 D5
A1 A2 A4
NFPs Aggregation and Propagation
Feature Model enriched with NFP values
D6
Business Process Configuration &
Service Selection
ConfiguredBusiness Process
A3
Traceability Links
Validation
Bird’s Eye View
Dom
ain
Engi
neer
ing
Appl
icati
on
Engi
neer
ing
Variability Modelingor
Process OrderMinimize RiskCustomer
Satisfaction
Build, then Ship and Bill
Bill, Build, Then Ship
++
Collect Payment
And
Build & PackageOrder
Electronic Payment
In Person Payment
CP
EP IPP
or
And
Ship & BillApply Process to Customer
Or
+
Determine Trustworthiness of
Customer
And
Check Credit Rate
Check if Return Customer
DTC
CCR CRC
And
Approve Order
AO
Apply Process to Any
Customer
And
APACApply Process
to Trusted Customer
Dom
ain
Engi
neer
ing
Features derived from tasks and mapped to tasks and goals
Domain Analysis
CV-PC = DTC
Customer Verification
Payment Management
Order Management
Order Preparation
Bill Payment
E-BillHardcopy
BillOnline
TransactionCash Credit Card Debit Card
TCA-PC = AO ACA-PC = AO OL-PC = EP C-PC = IPP CC-PC = EP DC-PC = EP
Approve Order
Build
Trusted CustomerApproving
Any CustomerApproving
Check ReturnCustomer
Check CreditRate
CRC-PC = CRC CCR-PC = CCR
Integrity Constraints: Any Customer Approving includes Customer Verification
And
or
Alternative
Optional
Mandatory
Legend
P-PC = CPAO-PC = APAC
D1 D2
Goal-goal oriented model
Feature model
Variability Modelingor
Process OrderMinimize RiskCustomer
Satisfaction
Build, then Ship and Bill
Bill, Build, Then Ship
++
Collect Payment
And
Build & PackageOrder
Electronic Payment
In Person Payment
CP
EP IPP
or
And
Ship & BillApply Process to Customer
Or
+
Determine Trustworthiness of
Customer
And
Check Credit Rate
Check if Return Customer
DTC
CCR CRC
And
Approve Order
AO
Apply Process to Any
Customer
And
APACApply Process
to Trusted Customer
Dom
ain
Engi
neer
ing
Derived concerns from
soft-goals
Features annotated with concerns
Domain Analysis
CV-PC = DTC
Customer Verification
Payment Management
Order Management
Order Preparation
Bill Payment
E-BillHardcopy
BillOnline
TransactionCash Credit Card Debit Card
TCA-PC = AO ACA-PC = AO OL-PC = EP C-PC = IPP CC-PC = EP DC-PC = EP
Approve Order
Build
Trusted CustomerApproving
Any CustomerApproving
Check ReturnCustomer
Check CreditRate
CRC-PC = CRC CCR-PC = CCR
Integrity Constraints: Any Customer Approving includes Customer Verification
And
or
Alternative
Optional
Mandatory
Legend
P-PC = CPAO-PC = APAC
D1 D2
Verification with description logic
Goal-goal oriented model
Feature model
Variability Modelingor
Process OrderMinimize RiskCustomer
Satisfaction
Build, then Ship and Bill
Bill, Build, Then Ship
++
Collect Payment
And
Build & PackageOrder
Electronic Payment
In Person Payment
CP
EP IPP
or
And
Ship & BillApply Process to Customer
Or
+
Determine Trustworthiness of
Customer
And
Check Credit Rate
Check if Return Customer
DTC
CCR CRC
And
Approve Order
AO
Apply Process to Any
Customer
And
APACApply Process
to Trusted Customer
Dom
ain
Engi
neer
ing
Derived concerns from
soft-goals
Features annotated with concerns
Domain Analysis
CV-PC = DTC
Customer Verification
Payment Management
Order Management
Order Preparation
Bill Payment
E-BillHardcopy
BillOnline
TransactionCash Credit Card Debit Card
TCA-PC = AO ACA-PC = AO OL-PC = EP C-PC = IPP CC-PC = EP DC-PC = EP
Approve Order
Build
Trusted CustomerApproving
Any CustomerApproving
Check ReturnCustomer
Check CreditRate
CRC-PC = CRC CCR-PC = CCR
Integrity Constraints: Any Customer Approving includes Customer Verification
And
or
Alternative
Optional
Mandatory
Legend
P-PC = CPAO-PC = APAC
D1 D2
Verification with description logic
Goal-goal oriented model
Feature model
Business Process Family Design
Dom
ain
Engi
neer
ing
Domain Design
Identity Federation
Credit Card
Payment
Debit Card Payment
Fraud Detection
Credit Card Validation
(Pre Verification)Mobile-based Notification
(MMS-SMS)
Phone/Fax Notification
Email/ Voice Mail
Selecting Payment
(Gateway Interface)
Notification Services
Paym
ent
Reference Business Process Model (Template)
jf
pf rf sfIdentity Federation
Payment
f
lf kf
if nf0 3
Debit CardPayment
Credit Card Validation
(Pre Verification)
Credit CardPayment
FraudDetection
Phone/Fax Notification
Mobile-based Notification(MMS-SMS)
Email/VoiceEmail
Notification Service
1f ...
Mapping
D3 D4 D5
Business Process Family Design
Dom
ain
Engi
neer
ing
Domain Design
Identity Federation
Credit Card
Payment
Debit Card Payment
Fraud Detection
Credit Card Validation
(Pre Verification)Mobile-based Notification
(MMS-SMS)
Phone/Fax Notification
Email/ Voice Mail
Selecting Payment
(Gateway Interface)
Notification Services
Paym
ent
jf
pf rf sfIdentity Federation
Payment
f
lf kf
if nf0 3
Debit CardPayment
Credit Card Validation
(Pre Verification)
Credit CardPayment
FraudDetection
Phone/Fax Notification
Mobile-based Notification(MMS-SMS)
Email/VoiceEmail
Notification Service
1f ...
Mapping
D3 D4 D5
Reference Business Process Model (Template)
Business Process Family Design
Dom
ain
Engi
neer
ing
Domain Design
D3 D4 D5
Variability for run-time
rBPMN: rule-enhanced BPMN
Business Process Family Design
Dom
ain
Engi
neer
ing
Domain Design
D3 D4 D5
Variability for run-time
rBPMN: rule-enhanced BPMN
http://code.google.com/p/rbpmneditor/
Legend
Process FlowStage
Artifact
Output
Tractability
Domain Analysis Domain Design
Product Family Requirements
Analysis
Requirements Model
Business Process
Family Design
Reference Business Process
Model
Model Mapping
Mapping Schema
Variability Modeling
Feature Model
Domain Implementation
Business Process Model Template
Implementation
Service Discovery/ Implementation & Binding
Application Analysis Application Design
Stakeholder’sRequirements
Analysis
Application Requirements Specification
Feature Prioritization and
Selection
Configured Feature Model
Application Implementation
Application Integration and
Deployment
Final Product
D1 D2 D3 D4 D5
A1 A2 A4
NFPs Aggregation and Propagation
Feature Model enriched with NFP values
D6
Business Process Configuration &
Service Selection
ConfiguredBusiness Process
A3
Traceability Links
Validation
Bird’s Eye View
Dom
ain
Engi
neer
ing
Appl
icati
on
Engi
neer
ing
Legend
Process FlowStage
Artifact
Output
Tractability
Domain Analysis Domain Design
Product Family Requirements
Analysis
Requirements Model
Business Process
Family Design
Reference Business Process
Model
Model Mapping
Mapping Schema
Variability Modeling
Feature Model
Domain Implementation
Business Process Model Template
Implementation
Service Discovery/ Implementation & Binding
Application Analysis Application Design
Stakeholder’sRequirements
Analysis
Application Requirements Specification
Feature Prioritization and
Selection
Configured Feature Model
Application Implementation
Application Integration and
Deployment
Final Product
D1 D2 D3 D4 D5
A1 A2 A4
NFPs Aggregation and Propagation
Feature Model enriched with NFP values
D6
Business Process Configuration &
Service Selection
ConfiguredBusiness Process
A3
Traceability Links
Validation
Bird’s Eye View
Dom
ain
Engi
neer
ing
Appl
icati
on
Engi
neer
ing
Application Analysis
Stakeholder’s Requirements Analysis
A1
or
Process OrderMinimize RiskCustomer
Satisfaction
Build, then Ship and Bill
Bill, Build, Then Ship
++
Collect Payment
And
Build & PackageOrder
Electronic Payment
In Person Payment
CP
EP IPP
or
And
Ship & BillApply Process to Customer
Or
+
Determine Trustworthiness of
Customer
And
Check Credit Rate
Check if Return Customer
DTC
CCR CRC
And
Approve Order
AO
(d)
Apply Process to Any
Customer
And
APACApply Process
to Trusted Customer
ObjectivesPreferencesConstraints
or
Process OrderMinimize RiskCustomer
Satisfaction
Build, then Ship and Bill
Bill, Build, Then Ship
ü+
+
Collect Payment
And
Build & PackageOrder
ü ü
Electronic Payment
In Person Payment
ü
ü ü
CP
EP IPP
or
And
Ship & Bill
üApply Process to Customer
Or
Apply Process to Trusted Customer
ü
+Determine
Trustworthiness of Customer
And
Check Credit Rate
Check if Return Customer
DTC
CCR CRC
And
Approve Order
AO
ü
ü
Apply Process to Any
CustomerAnd
APAC
ü
?üSatisfied Weakly Unknown Weakly Denied Conflict None Satisfied Denied
ü
Backward Reasoning
Appl
icati
on E
ngin
eerin
g
Appl
icati
on E
ngin
eerin
gApplication Design
Feature Prioritization and Selectionor
Process Order
Minimize RiskCustomer
Satisfaction
Build, then Ship and Bill
Bill, Build, Then Ship
ü+
+
Collect Payment
And
Build & PackageOrder
ü ü
Electronic Payment
In Person Payment
ü
ü ü
CP
EP IPP
or
And
Ship & BillüApply
Process to Customer
Or
Apply Process to Trusted Customer
ü
+
Determine Trustworthiness of
Customer
And
Check Credit Rate
Check if Return Customer
DTC
CCR CRC
And
Approve Order
AO
ü
ü
Apply Process to
AnyCustomer
And
APAC
ü
Payment Management
Order Management
Order Preparation
Bill Payment
E-BillHardcopy
BillOnline
TransactionCredit Card Debit Card
Approve Order
Build
Trusted CustomerApproving
Any CustomerApproving
Customer Verification
Payment Management
Order Management
Order Preparation
Bill Payment
E-BillHardcopy
BillOnline
TransactionCash Credit Card Debit Card
Approve Order
Build
Trusted CustomerApproving
Any CustomerApproving
Check ReturnCustomer
Check CreditRate
CRC-PC = CRC CCR-PC = CCR
Pre-configurationbased on intentions
Payment Management
Order Management
Order Preparation
Bill Payment
E-BillHardcopy
BillOnline
TransactionCredit Card Debit Card
Approve Order
Build
Trusted CustomerApproving
Any CustomerApproving
Application Design
Feature Prioritization and Selection
Payment Management
Order Management
Order Preparation
Bill Payment
E-BillOnline
TransactionCredit Card Debit Card
Approve Order
Build
Trusted CustomerApproving
Prioritization and automatic configuration
techniques
Decision science – AHP
Artificial intelligence – Fuzzy Datalog & HTN
Appl
icati
on E
ngin
eerin
g
Preferences
Application Design
Feature Prioritization and Selection
Payment Management
Order Management
Order Preparation
Bill Payment
E-BillOnline
TransactionCredit Card Debit Card
Approve Order
Build
Trusted CustomerApproving
Appl
icati
on E
ngin
eerin
gConditional Stratified
Analytical Hierarchy Process
Relative importance
Part III Open Challenges
Does it work!?All those models! Yeah, right!?
Empirical researchUrgent!
Quality Issues Usability
Natural language vs. visual Physics of notation, cognitive dimensions, …
Maintainability Understandability, changeability, analyzability Internal structure metrics and experiments
…
Does visualization help?
Visualization for configurability Changeability tasks (time)
H1: (Easy) t (38) = 2.11, p = 0.041* H1: (Complex) t (38) = 3.47, p = 0.001*
Understandability tasks (time) H3: (Easy) t (38) = 1.42, p = 0.164 H4: (Complex) t (38) = 2.71, p = 0.009
No significant effect on correctness
For feature models, best predictors of Analyzability: NLeaf and NVC Understandability: NLeaf and FoC Changeability: FoC, NLeaf, and CC
NLeaf - Number of leaf features FoC - Flexibility of configuration
NoV - Number of valid configurations CC - Cyclomatic complexity
Community call: We need a corpus!
Which method to use?Theoretical
Case study
EmpiricalAction research
Ethnography
Simulation
Scenario analysis
Systemic observation
Pilot testingGrounded theory
Critical analysis of literature
Expert reviewFocus group
Algorithmic analysis
Assertion
Cognitive walkthrough Concept mapping
Contextual inquiry
Design research
End-user studyExploratory data analysis
Heuristic evaluation
Lessons learned
Evidence-based BPM As the integration of best research evidence with
practitioner expertise and stakeholder values
The goal made up based on
Evidence-based BPM
Evidence-based BPM
Evidence-based BPMCurrent best evidence from research
to integrate withpractical experience and human values
in the decision making process
Evidence-based BPM
Systematic reviews
Systematic reviews
Systematic reviews
Measures matter!
Measures matter!But, how much really?!
~1/3 out of the 19 studies presented empirical resultsVery few of them report empirical validation as critical
Sanchez Gonzalez et al., 2010 BPM Journal 16 (1), pp. 114-134
Measures matter!But, how much really?!
Not even touched research on interoperability,
compliance, security, maturity, learnability, analyzability, and testability
Sanchez Gonzalez et al., 2010 BPM Journal 16 (1), pp. 114-134
Infrastructure need!
Community Engineering
Acknowledgements Lab for Semantic Technologies at AU
Marek Hatala, Ebrahim Bagheri, Amal Zouaq, Marko Boskovic, Milan Milanovic, Bardia Mohabbati, Mohsen Asadi, Ivana Ognjanovic, Samaneh Soltani, Luis Rocha, Vid Prezel, Tony Lenihan, Esan Murugesupillai, Glenn Brand,…
Jean-Marie Favre and Ralf Lämmel Steffen Staab, Fernando Silva Parreiras,
Gerd Gröner, Tobias Graml, Eduard Schleining Gerd Wagner and Adrian Giurca
Thank you!
Questions?