Business Process Modelling –
Languages, Goals and
Variabilities
Birgit Korherr
Women‘s Postgraduate College for Internet Technologies
Institute of Software Technology and Interactive Systems
Vienna University of Technology
Introduction
Business processes
are often the
starting
point for software development
Business processes define requirements
for
the software systems to be designed
2
BUT:
No mechanism or formal notion is available for
linking business processes with software systems
THE GOAL:
Extending existing BPMLs with missing
concepts and notations
Outline
Generic business process metamodel for
evaluating Business Process Modelling
Languages
Performance Measures and Goals in UML 2
Activity Diagrams
A UML 2 Profile for Variability Models and the
dependency between Variability models and UML
2 Activity Diagrams
Outline
Generic business process metamodel for
evaluating Business Process Modelling
Languages
Performance Measures and Goals in UML 2
Activity Diagrams
A UML 2 Profile for Variability Models and the
dependency between Variability models and UML
2 Activity Diagrams
Goals of the Evaluation
Comprehensive comparison of Business Process
Modelling Languages (BPMLs) as well as a general
framework is missing
2. Evaluation of six well-established BPMLs
1. Generic business process metamodel
Variabilities
Contribution of the Evaluation
Metamodel provides a foundation for an
evaluation
Stresses strengths and limitations of BPMLs
Comparison between the BPMLs illustrates the
differences and the similarities
Evaluation can be easily extended with further
BPMLs
Facilitation of finding the right BPML for a certain
purpose
Variabilities
The five Perspectives
Functional
Perspective
Behavioural Perspective
Informational
Perspective
Organi-sational
P.
Business Process Context
Perspective
Metamodel – BP Context Perspective
Variabilities
Results of the Evaluation
10
UML 2
AD
EPC
BPMN
IDEF3
Petri
Nets
RAD
Functional
Behavioural
Informational
Organisational
Context
BP
+
+
+
~
~
+
+
~
~
~
+
+
~
~
~
+
+
~
-
~
+
+
-
-
-+
+
~
~
~
UML 2
AD
EPC
BPMN
IDEF3
Petri
Nets
RAD
Functional
Behavioural
Informational
Organisational
Context
BP
Legend:
+ fully supported ~ partially supportedOutline
Generic business process metamodel for
evaluating Business Process Modelling
Languages
Performance Measures and Goals in UML 2
Activity Diagrams
A UML 2 Profile for Variability Models and the
dependency between Variability models and UML
2 Activity Diagrams
Definition about Business Processes
Definition: "A business process is a group of tasks
that together create a result of value to a
customer." [Hammer, 96]
Definition: "Its purpose is to offer each customer the
right product or service, e.g., the right deliverable,
with a high degree of performance measured against
cost, longevity, service and quality." [Jacobson, 95]
Variabilities
Goals of the Extension
Process goals and performance measures are
available in process definitions
Variabilities
Languages
Goals
Current BPMLs do not provide explicit notation
elements for process goals and their measures
E.g. designer has no possibility to integrate time limits
Time
Quality
Costs
Extending the metamodel of
UML 2 AD business process
Contribution of the Extension
Modelling of goals
and
performance measures
allow
to structure process design,
to evaluate the process design, and
to evaluate the operating process.
The extended UML 2 AD makes the
evaluation
criteria
for a business process
conceptually
visible
Variabilities
Example of an AD
Actions
Control Flows
Activity Partitions
Activity
The extended UML 2 Metamodel of the AD
Variabilities
Example of
an
extended AD
Goals
Time
Alert
Quality
Cost
Outline
Generic business process metamodel for
evaluating Business Process Modelling
Languages
Performance Measures and Goals in UML 2
Activity Diagrams
A UML 2 Profile for Variability Models and the
dependency between Variability models and UML
2 Activity Diagrams
Introduction into Variability Models
Variability models define the variability of a product
line
It shows the different variation points and variants of a
software product line.
Variabilities
Languages
Goals
Variability models can be used during the different life
cycle stages of software product lines
Variability modelling is a domain specific modelling
technique
Motivation
Variability models are not integrated into an
modelling framework like the Unified Modeling
Language (UML).
Variability models have also an impact on processes.
Variabilities can change the process flow, e.g.
in a car engine manufacturing process the decision if
the variability
manufacture a diesel engine
or a
petrol
engine
is chosen, changes the process flow.
Variabilities
Goals
2. Show the dependency between variability
models and Activity Diagrams to make the
relationship between structural models and
behavioural models visible
1. Provide variability models to software developers
as a UML 2 profile
Variabilities
Contribution
The UML profile for variability mode
... can be easily created, presented and edited
with existing UML modelling tools.
... represents variability requirements to software
developers or process engineers in a well-known
modelling languages.
... and its shown dependencies onto activity diagrams
visualizes the relationship between structural and
behavioural models.
The UML profile for variability models ...
Variabilities
A UML Profile for Variability Models
Variabilities
Examples of Variability Dependencies
Variability
Dependency
Multiplicity Generalisation
Set
Class Diagram
UML Profile
Mandatory
1
{complete,
disjoint}
Alternative
0..1
{incomplete,
disjoint}
Alternative
1..*
{complete,
overlapping}
Optional
0..*
{incomplete,
overlapping}
Dependency between Variability Models
and Business Processes
Variability models show the different variabilities of a
software.
Activity Diagrams are a part of the behavioural set of
UML 2 diagrams
show the control and data flow between different tasks.
The two modelling techniques describe the
complementary views
variability model describes the structural view and the activity
diagram the behavioural view.
Showing the dependency between these metamodels
to examine in which way they are related to each
other.
Variabilities
Example UML Profile and the Dependency
onto UML 2 Activity Diagrams
UML Profile
UML 2 AD
Variation Point
Activity Partition
Variant
Action
UML Profile
UML 2 AD
Alternative (0..1) Decision -
Merge Node
UML Profile
UML 2 AD
Alternative
(1..*)
Fork -
Join Node
requires
Control Flow
Conclusion
32
Extending BPMLs with goals and
performance measures
Providing variability models to software
developers, and showing the dependency
between variabilities and business processes
Defining a framework for evaluating BPMLs
Transformation of BPMLs to code
MOF
M2
M3
Extended UML
Metamodel
Weaving
Metamodel
XML Code
UMLModel
BPEL Metamodel
Code Generation
M1
MOF
Scripts
PIM
PSM
Code
BPEL Model
ATL Code
input
output
Model Trafo
Generator
Weaving
Model
Publications
Birgit Korherr and Beate List: A UML 2 Profile for Variability Models and their Dependency to Business Processes. 1st International Workshop on Enterprise Information Systems Engineering (WEISE 07), September 2007, Regensburg, Germany, IEEE Press, 2007.
Birgit Korherr and Beate List: Extending the EPC and the BPMN with Business Process Goals and Performance Measures. 9th International Conference on Enterprise Information Systems (ICEIS 07), June 2007, Madeira, Portugal, ACM Press, 2007.
Birgit Korherr and Beate List: Extending the EPC with Performance Measures (short paper).
Proceedings of the 22nd ACM Symposium on Applied Computing (SAC'07), Seoul, Korea, March 11-15, ACM Press, 2007.
Birgit Korherr and Beate List: Extending the UML 2 Activity Diagram with Business Process Goals and Performance Measures and the Mapping to BPEL. 2nd International Workshop on Best Practices of UML (BP-UML'06) at the 25th International Converence on Conceptual Modeling (ER'06), November 2006, Tucson, Arizona, USA, 2006, Spinger Verlag, Lecture Notes in Computer Science.
Birgit Korherr and Beate List: Aligning Business Processes and Software - Connecting the UML Profile for Event Driven Process Chains with Use Cases and Components. CAiSE Forum Proceedings at the 18th Conference on Advanced Information System Engineering (CAiSE'06), June 2006, Luxembourg, 2006.
Birgit Korherr and Beate List: A UML 2 Profile for Event Driven Process Chains. Proceedings of the 1st
IFIP International Conference on Research and Practical Issues of Enterprise Information Systems (CONFENIS 2006), April 2006, Vienna, Austria, 2006, Springer Verlag, IFIP.
Beate List and Birgit Korherr: An Evaluation of Conceptual Business Process Modelling Languages.
Proceedings of the 21st ACM Symposium on Applied Computing (SAC'06), April 2006, Dijon, France, ACM Press, 2006.
Beate List and Birgit Korherr: A UML 2 Profile for Business Process Modelling. Proceedings of the 1st
International Workshop on Best Practices of UML (BP-UML 2005) at the 24th International Conference on Conceptual Modeling (ER 2005), Klagenfurt, Austria, 2005, Springer Verlag, Lecture Notes in Computer Science.
Veronika Stefanov, Beate List and Birgit Korherr: Extending UML 2 Activity Diagrams with Business Intelligence Objects. Proceedings of the 7th International Conference on Data Warehousing and
References
[Curtis, 1992]: Curtis, B., Kellner, M. and Over, J. Process
Modeling.
Communication of the ACM
, Vol. 35, No.9, 1992.
[Hammer, 96]: Hammer, M.: Beyond Reengineering - How the
process-centered organization is changing our work
and our lives. Harper Collins Publischers, 1996.
[Jacobson 95]: Jacobson, I., Ericson, M., Jacobson, A.: The
Object Advantage - Business Process Reengineering
with Object Technology. ACM Press, Addison-Wesley Publishing,
1995.
[List, 06]: List B., Korherr B.: An Evaluation of Conceptual
Business Process Modelling Languages,
Proceedings of the 21st ACM Symposium on Applied Computing
(SAC‘06), April, Dijon, France, ACM Press, 2006.
Example BP, 2nd Hierarchy Level
Time
Organisational Role
Example BP, 3rd Hierarchy Level
Time
Organisational Role