69
Variability and Configurability of Business Processes Why, What, When, and How? Dragan Gašević

Variability and Configurability of Business ProcessesWhy, What, When, and How?

Embed Size (px)

DESCRIPTION

In today’s vibrant environment of the modern society, developers of process-aware information systems need novel methods for modeling business processes. These methods should have capabilities that could address challenges such as improved reusability of the existing process designs, reduced time-to-market, or run-time business logic change. Recognizing these challenges, the topics of variability and configurability of business process have recently received significant research attention. Although there have been many promising proposals, some important challenges still remained to be address: i) there is no clear consensus on the two key notions – variability and configurability – and their implications on business process affairs such as flexibility, dynamicity, or agility; and ii) (software) development method that can consider different aspects of variability and configurability at different stages of the development lifecycle. In this talk, we will attempt to position variability and configurability of business processes in terms of the well-adopted terminology used in (software) quality engineering. We will then make a distinction between design and run-time variability, and then explain needs for managing both types of variability, so that configurability of business process can systematically be supported. During the talk, we will reflect on the experience in the work on a rule-enhanced business process modeling language (rBPMN) and families of business processes developed by borrowing from software product lines. The talk will be finished by discussing open research challenges among which cross-community and empirical research are emphasized.

Citation preview

Page 1: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Variability and Configurability of Business ProcessesWhy, What, When, and How?

Dragan Gašević

Page 2: Variability and Configurability of Business ProcessesWhy, What, When, and How?
Page 3: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Business processes

Many (buzz)words

Dynamic Variable

Changeable Flexible

Configurable DeclarativeAgile

Page 4: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 5: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Now, please, help! What’s different and similar?

Business processesDynamic Variable

Changeable Flexible

Configurable DeclarativeAgile

Page 6: Variability and Configurability of Business ProcessesWhy, What, When, and How?

The rest of the talk A perspective to the problem Some experience in managing variability Open challenges

Page 7: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Part IA Perspective to

the Problem

Why and what?

Page 8: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Let me introduce myself

Also, an excuse to invite you tothe 4th International Conference on Software Language Engineering

http://planet-sl.org/sle2011

Page 9: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Variability in SoftwareLocations in software where behaviour can be configured

http://www.program-transformation.org/Variability/SoftwareVariabilityManagement

Page 10: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Variability ManagementSystematic approaches to managing

the complexity of variability in software

Higher configurability of software products

Page 11: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 12: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 13: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 14: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Community Engineering

Page 15: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Variability Management in BPs

Systematic management of complexity of variability for

better configurability

Page 16: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Changeability in BPsPossibility and ease of change

when modifications needed

At design, configuration, and run-time

Page 17: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Understandability in BPsProspect and likelihood to be understood & comprehended

Both variable BPs & configuration processes

Page 18: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Part II Experience in variability &

configurability of BPs

How and When?

Page 19: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 20: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 21: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 22: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 23: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 24: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 25: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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)

Page 26: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Business Process Family Design

Dom

ain

Engi

neer

ing

Domain Design

D3 D4 D5

Variability for run-time

rBPMN: rule-enhanced BPMN

Page 27: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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/

Page 28: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 29: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 30: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 31: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 32: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 33: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 34: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Part III Open Challenges

Page 35: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Does it work!?All those models! Yeah, right!?

Page 36: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Empirical researchUrgent!

Page 37: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Quality Issues Usability

Natural language vs. visual Physics of notation, cognitive dimensions, …

Maintainability Understandability, changeability, analyzability Internal structure metrics and experiments

Page 38: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Does visualization help?

Page 39: Variability and Configurability of Business ProcessesWhy, What, When, and How?
Page 40: Variability and Configurability of Business ProcessesWhy, What, When, and How?
Page 41: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 42: Variability and Configurability of Business ProcessesWhy, What, When, and How?
Page 43: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 44: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Community call: We need a corpus!

Page 45: Variability and Configurability of Business ProcessesWhy, What, When, and How?
Page 46: Variability and Configurability of Business ProcessesWhy, What, When, and How?
Page 47: Variability and Configurability of Business ProcessesWhy, What, When, and How?
Page 48: Variability and Configurability of Business ProcessesWhy, What, When, and How?
Page 49: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 50: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Evidence-based BPM As the integration of best research evidence with

practitioner expertise and stakeholder values

The goal made up based on

Page 51: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Evidence-based BPM

Page 52: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Evidence-based BPM

Page 53: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Evidence-based BPMCurrent best evidence from research

to integrate withpractical experience and human values

in the decision making process

Page 54: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Evidence-based BPM

Page 55: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Systematic reviews

Page 56: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Systematic reviews

Page 57: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Systematic reviews

Page 58: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Measures matter!

Page 59: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 60: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 61: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Infrastructure need!

Page 62: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Community Engineering

Page 63: Variability and Configurability of Business ProcessesWhy, What, When, and How?
Page 64: Variability and Configurability of Business ProcessesWhy, What, When, and How?
Page 65: Variability and Configurability of Business ProcessesWhy, What, When, and How?
Page 66: Variability and Configurability of Business ProcessesWhy, What, When, and How?
Page 67: Variability and Configurability of Business ProcessesWhy, What, When, and How?
Page 68: Variability and Configurability of Business ProcessesWhy, What, When, and How?

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

Page 69: Variability and Configurability of Business ProcessesWhy, What, When, and How?

Thank you!

Questions?