Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Structuring 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}@uni.lu Table of Contents The issue Context : The Efficient project State of the Art Proposed solution: UML2.0 ADXPDL Tool development Conclusion and future work Bibliography 2 The issue Lack of a structuring mechanism supporting both (nested) transactions and exception handling in UML 2.0 activity diagrams and XPDL 3 The E-fficient project (2001-2007) 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 4 State of the art: building blocks Transaction models Flat (ACID properties) Advanced (relaxed ACID properties) Exception handling In a distributed context Combined with transactions Workflow patterns Expressivity comparison of Wf languages Design notations (project constraint) : User level: UML 2.0 Class Diagrams for business domain data Activity Diagrams for business transactions FTT-UML: a profile proposal based on UML 1.5 that aimed at integrating fault tolerance Engine level: XMLSchema and XPDL Transformation rules between UML 1.5 and XPDL 5 UML2.0 ADXPDL: Process Automatic routing of documents to the users responsible for working on them Modeled using: an ActivityDiagram in UML2.0 a WorkflowProcess definition in XPDL <xpdl:WorkflowProcess AccessLevel="PUBLIC" Id="WF" Name="WF_Name"> <xpdl:DataFields> ... </xpdl:DataFields> <xpdl:Activities> <xpdl:Activity Id="initial" Name="Activity1"> ... </xpdl:Activity> </xpdl:Activities> <xpdl:Transitions> <xpdl:Transition From="Activity1" Id="A_ID" To="Activity2"/> </xpdl:Transitions> </xpdl:WorkflowProcess> 6 UML2.0 ADXPDL: Complex Tasks Nested tasks CallBehaviourAction Name <Activity Id="ID" Name="Name"> <Implementation><SubFlowExecution="SYNCH" Id="RelatedWPID">...</SubFlow> </Implementation></Activity> Application or procedure call CallOperationAction Operation <Activity Id="ID"Name="Operation" <Implementation><Tool Id="IDTool" Type="APPLICATION"> <ActualParameters>...</ActualParameters> </Tool></Implementation>...</Activity> Nested transactions CallBehaviourAction <Description> Transaction </Description> <<Transaction>> XPDL 2.0 significant changes 7 UML2.0 ADXPDL: Control points Pseudo nodesRoot activities Fork TransitionRestriction Split Type="AND" DecisionTransitionRestriction Split Type="XOR“ … Initial node no TransitionRestriction Possible optimization of XPDL code 8 UML2.0 ADXPDL: 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 <DataField Id="o_schema" IsArray="FALSE"Name="object"> <DataType> 9 UML2.0 ADXPDL: 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 ExceptionName <Deadline Execution="ASYNCHR"> <DeadlineCondition>date </DeadlineCondition> <ExceptionName>ExName </ExceptionName></Deadline> <Transition From="Ax" Id="Trans" Name="XFailure" To="Ay"> <Condition Type="EXCEPTION"> </Condition>...</Transition> 10 UML2.0 ADXPDL: Concurrent Exceptions Exception resolution in case of concurrency Modeled using: a class diagram containing the resolution tree in UML 2.0 XMLSchema Universal Exception Material_lack j_Material_Lack i_Material_Lack 11 UML2.0 ADXPDL: 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 <<FER>> <Description> FER or BER </Description> 12 UML2.0 ADXPDL: Exceptional Outcome Modeled using: Final ActivityNode with the stereotype «Exception» and name of the exception signalled to the enclosing context Route Activity with name Exception <<Exception>> <Description> Exception </Description> 13 Tool development Partial implementation of the solution as a plug-in for Magic Draw Plug-in integration into Animator tools set 14 Conclusion and future work Proposal of a transformation from UML2.0 AD to XPDL New release of the tool including partially the transformation First investigation in order to understand how to structure processes in a way such as they may be considered trusted First investigation of XPDL2.0 Plug-in update to the MagicDraw release supporting UML2.0 metamodel Formalisation of the proposed solution Investigation of concurrent exceptions Take deeply into consideration XPDL 2.0: support for ACID properties support for exception handling 15 Bibliography (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.lu/tiki/se2c-bib download.php?id=1928, 2005. [DG01] E. Dubois and N. Guelfi. Demande de Contribution Financière pour la Réalisation d’un Projet de Recherche: EFFICIENT, Fonds National de la Recherche, Luxembourg-Kirchberg, Luxembourg., 2001. [EBD+03] R. Eshuis, P. Brimont, E. Dubois, B. Gr´egoire, 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 359–362,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 (MIOS’04), Larnaca, Cyprus, pages 468–482, 2004. 16 Bibliography (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 71–76, 2003. [MG05] T. Mens and P. Van Gorp. A Taxonomy of Model Transformation (s). In [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. International Workshop on Graph and Model Transformation (GraMoT) Tallinn, Estonia September 28,, 2005. 17 Bibliography (3/3) [SD05] B. A. Schmit and S. Dustdar. Model-driven development of web service transactions. In M. N¨uttgens 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 39–54, http://wi.wu-wien.ac.at/˜mendling/XML4BPM2005/xml4bpm-2005-proceedingsschmit.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 1–65, 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. [WvdAD+04] 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/docs/tc-1025 10 xpdl 102502.pdf, 2002. [XPD05] XPDL2.0. http://www.wfmc.org/standards/docs/tc-1025 xpdl 2 2005-10-03.pdf, 2005. 18 E-fficient project 19