Title: Barbara Gallina, Nicolas Guelfi, Amel Mammar
1Structuring Business Nested Processes Using UML
2.0 Activity Diagrams and Translating into
XPDL
- Barbara Gallina, Nicolas Guelfi, Amel Mammar
- University of Luxembourg
- Faculty of Sciences, Technologies and
Communication - Laboratory of Advanced Software Systems
- 6, rue Richard Coudenhove-Kalergi
- L-1359 Luxembourg-Kirchberg LUXEMBOURG
- barbara.gallina,nicolas.guelfi,amel.mammar_at_un
i.lu
2Table of Contents
- The issue
- Context The Efficient project
- State of the Art
- Starting point
- Steps to reach a solution
- Proposed solution UML2.0 AD?XPDL
- Conclusion and future work
- Bibliography
3The issue
- Engineering complex distributed business
processes necessitates an integrated use of
techniques for - modeling
- verification
- validation
- Modelling of
- Behaviour of e-Business transactions in a
business analysts understandable manner - Nested transactions for reusability and
structuring purposes - Exception handling (alternatives) for
dependability purposes - Distributed validation through transactions
animation - Use of a Workflow Engine
- Verification through model checking
4The E-fficient project
- Tools set (called Animator) for eBusiness
Transactions - Three layered approach
- Business layer transactions identification
- Specification layer
- UML Activity diagram business process
- UML Class diagram specification of messages
- Technical layer execution of the transaction,
translated into, XPDL using an animator
5State of the art building blocks
- Transaction models
- Advanced transaction models
- Exception handling
- In a distributed context
- Combined with (nested) transactions
- Design notations
- User level UML 2.0
- Class Diagrams for business domain data
- Activity Diagrams for business transactions
- Engine level XMLSchema and XPDL
6State of the art zoom into XPDL
- A standard XML based language proposed by WfMC
- An exchange language to be used at the interface
between the tools to design workflows and the
Enactment Service to execute workflows
7Starting point
- FTT-UML, a profile proposal based on UML 1.5 that
aimed at integrating fault tolerance ref CGR04 - Some transformation rules between UML 1.5 to XPDL
ref Esh03
8Steps to reach a solution
- Expressivness power comparison UML2.0 AD vs XPDL
using W. van der Aalst criteria - Workflow Patterns directly supported (exclusive
choice for example) - Workflow Patterns that need a workaround solution
(deferred choice in XPDL) - ?
- Adoption of some solutions and propositions of
new ones
9UML2.0 AD?XPDL Process
- Automatic routing of documents to the users
responsible for working on them - Exchange of a set of information to achieve a
business goal - Modeled using
- an ActivityDiagram in UML2.0
- a WorkflowProcess definition in XPDL
10UML2.0 AD?XPDL Roles
- Roles (business partners) cooperate in order to
reach the transaction goal (in normal and
exceptional cases) - Modeled using
- a swimlane in UML 2.0
- a default-value inside the datafileds in XPDL
lt/DataTypegt ltInitialValuegt Swimlane lt/InitialVa
luegt lt/DataFieldgt
11UML2.0 AD?XPDL Simple tasks
- Action node Activity with no implementation
ltActivity Id"ActivityID" Name"ActivityName"gt ltIm
plementationgt ltNo/gtlt/Implementationgt... lt/Activity
gt
ActivityName
12UML2.0 AD?XPDL Complex Tasks
- Nested tasks
- Application or procedure call
- Nested transactions
ltActivity Id"ID" Name"Name"gt ltImplementationgtltSu
bFlowExecution"SYNCH" Id"RelatedWPID"gt...lt/SubFl
owgt lt/Implementationgtlt/Activitygt
Name
ltActivity Id"ID"Name"Operation" ltImplementationgt
ltTool Id"IDTool" Type"APPLICATION"gt ltActualParam
etersgt...lt/ActualParametersgt lt/Toolgtlt/Implementati
ongt...lt/Activitygt
Operation
ltDescriptiongt Transaction lt/Descriptiongt
ltltTransactiongtgt
XPDL 2.0 significant changes
13UML2.0 AD?XPDL Process starting/ending point
- The starting point ?
- Initial node Route Activity
- The ending point ?
- Final Activity Node Route Activity
ltActivity Id"initialID" Name"initial"gt ltRoute/gt.
..
ltActivity IdfinalID" Name"initial"gt ltRoute/gt...
14UML2.0 AD?XPDL Control nodes
- Control nodes root activities
- Fork
- Decision
ltActivity Id"ID" Name"fork"gt ltRoute/gt ...ltTransi
tionRestrictionsgt ltTransitionRestrictiongt ltSplitTy
pe"AND"/gt lt/TransitionRestrictiongt lt/TransitionRe
strictionsgtlt/Activitygt
ltTransitionRestrictiongt ltSplit Type"XOR"/gt lt/Tran
sitionRestrictiongt
15UML2.0 AD?XPDL Inputs/outputs
- Represent administrative documents on which
operation related to process tasks are executed - Modeled using
- Object nodes in UML 2.0
- Data Fields in XPDL and also as Formal/Actual
Parameter if inputs or outputs of SubFlow or Tool
Activity
ltDataField Id"o_schema" IsArray"FALSE"Name"obje
ct"gt ltDataTypegt
16UML2.0 AD?XPDL Transition
ltTransition From"A-ID" IdtransID"
To"B-ID"gt... lt/Transitiongt
17UML2.0 AD?XPDL Exceptions
- Circumstances that diverge from the normal ones
- Modeled using
- Accept Event Action with an outgoing Interrupting
Edge inside an Interruptible Region in UML 2.0 - Deadline specification inside an activity and
transition condition of type Exception in XPDL1.0 - in XPDL 2.0 Event concept will be supported
ltDeadline Execution"ASYNCHR"gt ltDeadlineConditiongt
date lt/DeadlineConditiongt ltExceptionNamegtExName lt/
ExceptionNamegtlt/Deadlinegt ltTransition From"Ax"
Id"Trans" Name"XFailure" To"Ay"gt ltCondition
Type"EXCEPTION"gt lt/Conditiongt...lt/Transitiongt
18UML2.0 AD?XPDL Exception Handling
- Backward or Forward Error Recovery
- Modeled using
- A CallBehaviorAction stereotyped
- FER named by the exception in case there is a
way to go - BER named by the exception in case the only
possible way is roll-back - Sub-Process Definition (synchronous) with
stereotype nature indicated in description element
ltDescriptiongt FER or BER lt/Descriptiongt
19UML2.0 AD?XPDL Concurrent Exception
- Exception resolution in case of concurrency
- Modeled using
- a class diagram containing the resolution tree in
UML 2.0 - XMLSchema
20UML2.0 AD?XPDL Exceptional Outcome
-
- Final ActivityNode Route Activity with
name - with the stereotype Exception
- Exception and name
- of the exception
- signalled to the
- enclosing context
-
ltDescriptiongt Exception lt/Descriptiongt
ltltExceptiongtgt
21Conclusion and future work
- Partial implementation of the solution
- plugin development inside Magic Draw
- plugin integration inside Animator tools set
- Update to the latest MagicDraw version
- Formalisation of the proposed solution
- Investigate concurrent exceptions deeply
- Take into deeply consideration XPDL 2.0
- support for ACID properties
- support for exception handling
22Bibliography (1/3)
- CGGP05 A. Capozucca, B. Gallina, N. Guelfi, and
P. Pelliccione. Modeling Exception Handling a
UML2.0 Platform Independent Profile for CAA. In
Proceedings of ECOOP 2005 Workshop on Exception
Handling in Object Oriented Systems, Glasgow
(Scotland), Department of Computer Science.
LIRMM Montpellier-II University,http//se2c.uni.l
u/tiki/se2c-bib download.php?id1928, 2005. - DG01 E. Dubois and N. Guelfi. Demande de
Contribution Financière pour la Réalisation dun
Projet de Recherche EFFICIENT, Fonds National de
la Recherche, Luxembourg-Kirchberg, Luxembourg.,
2001. - EBD03 R. Eshuis, P. Brimont, E. Dubois, B.
Gregoire, and S. Ramel. EFFICIENT a Tool Set
for Supporting the Modelling and Validation of
ebXML. In Proceedings of the 9th European
software engineering conference held jointly with
11th ACM SIGSOFT international symposium on
Foundations of software engineering, pages
359362,2003. - Esh03 R. Eshuis. Activity Diagrams as XPDL
Specification, Draft version May 16,2003. - GCR04 N. Guelfi, G. Le Cousin, and B. Ries.
Engineering of Dependable Complex Business
Processes Using UML and Coordinated Atomic
Actions. In Springer, editor, International
Workshop on Modeling Inter-Organizational Systems
(MIOS04), Larnaca, Cyprus, pages 468482, 2004.
23Bibliography (2/3)
- GGM05 B. Gallina, N. Guelfi, and A. Mammar.
Structuring Business Nested Processes Using UML
2.0 Activity Diagrams and Translating into XPDL,
Technical Report TRSE2C-05-07 University of
Luxembourg 2005. - GM05 N. Guelfi and A. Mammar. A Formal
Framework to Generate an XPDL Specification from
a UML Activity Diagram, Technical Report
available on http//se2c.uni.lu/users/AM
University of Luxembourg 2005. - JMN03 P. Jiang, Q. Mair, and J. Newman. Using
uml to design distributed collaborative
workflows from uml to xpdl. In 12th
International Workshop on Enabling Technologies
Infrastructure for Collaborative Enterprises,
Linz, Austria, IEEE Press, pages 7176, 2003. - MG05 T. Mens and P. Van Gorp. A Taxonomy of
Model Transformation (s). In International
Workshop on Graph and Model Transformation
(GraMoT) Tallinn, Estonia September 28,, 2005. - NM05 Inc No Magic. MagicDraw 9.0 Version,
Commercial tool http//www.magicdraw.com/ , 2005. - Obj03 Object Management Group (OMG). Unified
Modeling Language (UML) Superstructure version
2.0, final adopted specification (02/08/2003).
http//www.omg.org/cgi-bin/doc?ptc/2003-08-02,
2003. - RtHEvdA04 N. Russell, A.H.M. ter Hofstede, D.
Edmond, and W.M.P. van der Aalst. Workflow Data
Patterns., QUT Technical report, FIT-TR-2004-01,
Queensland University of Technology, Brisbane,
2004.
24Bibliography (3/3)
- SD05 B. A. Schmit and S. Dustdar. Model-driven
development of web service transactions. In M.
Nuttgens and J. Mendling, editors, XML4BPM 2005,
Proceedings of the 2nd GI Workshop XML4BPM XML
Interchange Formats for Business Process
Management at 11th GI Conference BTW 2005,
Karlsruhe Germany, March 2005, pages 3954,
http//wi.wu-wien.ac.at/mendling/XML4BPM2005/xml4
bpm-2005-proceedings-schmit.pdf, March 2005. - Tud05 Tudor Research center. Animator.
http//efficient.citi.tudor.lu/releases/ , 2005. - vdA03 W.M.P. van der Aalst. Patterns and XPDL
A Critical Evaluation of the XML Process
Definition Language., QUT Technical report,
FIT-TR-2003-06, Queensland University of
Technology, Brisbane, 2003. - vdA04 W.M.P. van der Aalst. Business process
management demystified A tutorial on models,
systems and standards for workflow management. In
Springer, editor, In J. Desel, W. Reisig, and G.
Rozenberg, editors, Lectures on Concurrency and
Petri Nets, volume 3098 of Lecture Notes in
Computer Science, Berlin, pages 165, 2004. - vdAtHKB00 W.M.P. van der Aalst, A.H.M. ter
Hofstede, B. Kiepuszewski, and A.P. Barros.
Advanced Workflow Patterns. In Springer, editor,
In O. Etzion and P. Scheuermann, editors, 7th
International Conference on Cooperative
Information Systems (CoopIS 2000), volume 1901 of
Lecture Notes in Computer Science, Berlin,, 2000. - WfM05 WfMC. http//www.wfmc.org/, 2005.
- Whi04 IBM Corp. United States S. A. White.
Process Modeling Notations and Workflow Patterns.
In The Workflow Handbook 2004. WfMC, Future
Strategies Inc., Lighthouse Point , FL , USA,
2004. - WvdAD04 P. Wohed, W.M.P. van der Aalst, M.
Dumas, A.H.M. ter Hofstede, and N. Russell.
Pattern-based Analysis of UML Activity Diagrams,
BETA Working Paper Series, WP 129, Eindhoven
University of Technology, Eindhoven, 2004. - XPD02 XPDL1.0. http//www.wfmc.org/standards/doc
s/tc-1025 10 xpdl 102502.pdf, 2002. - XPD05 XPDL2.0. http//www.wfmc.org/standards/doc
s/tc-1025 xpdl 2 2005-10-03.pdf, 2005.