Valdis Vitolins, Audris Kalnins, EDOC 2005 Semantics of UML 2.0 Activity Diagram for Business Modeling by Means of Virtual Machine.

Slides:



Advertisements
Similar presentations
Eugene Syriani and Huseyin Ergin University of Alabama Software Modeling Lab Software Engineering Group Department of Computer Science College of Engineering.
Advertisements

1 CIS224 Software Projects: Software Engineering and Research Methods Lecture 6 State Machine and Activity Diagrams (Based on Stevens and Pooley (2006,
Withdrawal Transaction Use Case Primary Actor: Customer Pre-conditions: The customer must have a valid ATM card and PIN. Post-conditions: The customer.
UML State chart/machine diagram State machine diagram is a behavior diagram which shows discrete behavior of a part of designed system through finite state.
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Model Transformation Lab From UML Activities to Petri nets.
Software Design Process A Process is a set of related and (sequenced) tasks that transforms a set of input to a set of output. Inputs Outputs Design Process.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 04. Other.
Activity Diagrams [Arlow and Neustadt, 2005] CS 425 / 625 Seminar on Software Engineering University of Nevada, Reno Department of Computer Science & Engineering.
UML Activity Diagrams In UML an activity diagram is used to display the sequence of actions They show the workflow from start to finish Detail the many.
White Box Testing and Symbolic Execution Written by Michael Beder.
State Diagram. What is State Diagram?  State diagram is used to show the state space of a given class, the events that cause a transition from one state.
1 CS 426 Senior Projects Chapter 14: Activity Diagrams [Arlow and Neustadt, 2005] February 17, 2009.
Activity Diagrams. What is Activity Diagrams?  Activity diagrams are a technique to describe procedural logic, business process, and work flow.  An.
Systems Analysis and Design in a Changing World, 6th Edition
Use of UML and Model Transformations for Workflow Process Definitions Audris Kalnins, Valdis Vitolins University of Latvia, IMCS Baltic DB&IS '2006, July.
Software Design Processes and Management
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Karolina Muszyńska Based on: S. Wrycza, B. Marcinkowski, K. Wyrzykowski „Język UML 2.0 w modelowaniu SI”
Software Engineering EKT 420. What is Activity Diagram Activity diagrams are graphical representations of workflows of stepwise activities and actions.
OOPSLA 2003 DSM Workshop Diagram Definition Facilities Based on Metamodel Mappings Edgars Celms, Audris Kalnins, Lelde Lace University of Latvia, IMCS,
CS 325: Software Engineering March 3, 2015 Activity Modeling for Transformational Systems Trtansformational Systems UML Activity Diagrams.
Towards Human-Executable Business Process Modeling Janis Barzdins, Edgars Rencis, Agris Sostaks Institute of Mathematics and Computer Science, University.
Chapter 8: Modelling Interactions and Behaviour UML Activity Diagram
UML A CTIVITY D IAGRAMS 1 Dr. Hoang Huu Hanh, OST – Hue University hanh-at-hueuni.edu.vn.
Overview of Software Testing 07/12/2013 WISTPC 2013 Peter Clarke.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 21. Review ANALYSIS PHASE (OBJECT ORIENTED DESIGN) Functional Modeling – Use case Diagram Description.
Clone-Cloud. Motivation With the increasing use of mobile devices, mobile applications with richer functionalities are becoming ubiquitous But mobile.
1 Interaction diagrams and activity diagrams Speaker: 陳 奕 全 Real-time and Embedded System Lab 15 August 2002.
1 Devon M. Simmonds University of North Carolina, Wilmington CSC450 Software Engineering WorkFlow Modeling with Activity Diagrams.
Business Informatics Group Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3, 1040 Vienna,
Activity diagrams. Introduction ● Activity diagrams are a behavioural model that represent the dynamics of the system. ● An activity diagram is essentially.
Copyright © 2013 Curt Hill UML Unified Modeling Language.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 UML Activity Diagrams.
Chapter 11 Activity Diagrams. 2 “Activity diagrams are a technique to describe procedural logic, business processes, and work flows” - M. Fowler An activity.
School of Computer Science, The University of Adelaide© The University of Adelaide, Control Data Flow Graphs An experiment using Design/CPN Sue Tyerman.
CS3773 Software Engineering Lecture 06 UML State Machines.
Chapter 14: Activity Diagrams November 2015 [Arlow and Neustadt, 2005] CS 425/625 Senior Projects University of Nevada, Reno Department of Computer Science.
UML Activity Diagrams.
University of Southern California Center for Systems and Software Engineering 9/20/2010© USC-CSSE Activity Diagrams for Business Workflows and.
Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Procedural Activity Patrick Bailey Keith Vander Linden Calvin College.
 Activity diagram is basically a flow chart to represent the flow from one activity to another activity.
UML ACTIVITY DIAGRAM 1. Recap Formal Use Case diagram UML notation for use cases Examples 2.
® IBM Software Group © 2010 IBM Corporation IBM Rational Rhapsody Advanced Systems Training v7.5 Advanced Activity Modeling.
Interaction Models (2): Activity Diagrams Extracted from textbook: Object Oriented Modeling and Design with UML M. Blaha, J. Rumbaugh.
Activity Diagrams IST 420 Dr. Ocker. BPM With Activity Diagrams Business processes consist of a number of activities Activity diagrams depict the sequence.
Diagnostic Information for Control-Flow Analysis of Workflow Graphs (aka Free-Choice Workflow Nets) Cédric Favre(1,2), Hagen Völzer(1), Peter Müller(2)
Cliquez pour modifier le style du titre Cliquez pour modifier les styles du texte du masque Deuxième niveau Troisième niveau Quatrième niveau Cinquième.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 UML Activity Diagrams.
Activity Diagram.
UML Chapter 17.
UML StateChart Diagrams
ACTIVITY DIAGRAMS 《UML面向对象建模基础》.
Activity Diagrams.
Chapter 4: Business Process and Functional Modeling, continued
State Machine Diagrams
Activity Diagram.
Activity and State Transition Diagram
Graph Coverage for Specifications CS 4501 / 6501 Software Testing
Activity Diagram.
State Machine Diagrams
Chapter 8: Modelling Interactions and Behaviour UML Activity Diagram
Activity Diagrams.
UML Activity Diagrams.
UML Activity Diagrams & State Charts
Chapter 14: Activity Diagrams
BPMN - Business Process Modeling Notations
Graph Coverage for Specifications CS 4501 / 6501 Software Testing
Activity diagram It supports visual representation of sequences of actions that target a certain result. May be built for one or many use cases or for.
Chapter 14: Activity Diagrams
Chapter 14: Activity Diagrams
Presentation transcript:

Valdis Vitolins, Audris Kalnins, EDOC 2005 Semantics of UML 2.0 Activity Diagram for Business Modeling by Means of Virtual Machine

Valdis Vitolins, Audris Kalnins, EDOC 2005 Introduction The goal of this paper is to define an Activity Diagram Virtual Machine (ADVM), which would describe this token-based semantics formally enough for process execution The paper proposes an ADVM for a subset of activity diagram features, which are significant for business process modeling and definition

Valdis Vitolins, Audris Kalnins, EDOC 2005 Sample Activity Diagram

Valdis Vitolins, Audris Kalnins, EDOC 2005 Subset of the UML 2.0 AD and Limitations Subset: –All elements from Fundamental, Basic, Intermediate and some elements from Complete Activities: –Activities, Actions, Control and Object Flows, Activity Parameter Nodes, Pins, Control Nodes, Activity Partitions and Groups Limitations: a)outgoing edge from a ControlNode is not an incoming edge for the same ControlNode b)there should be no paths between CallBehaviorActions, InitialNodes, FinalNodes or ActivityParameterNodes containing both ForkNodes and JoinNodes Forbidden Constructs:

Valdis Vitolins, Audris Kalnins, EDOC 2005 Activity Diagram Standard Semantics Control Nodes with Guards are working as "traffic switches” for “visibility” of “offered tokens” Only active elements are Action Engines –They try to fill up their input pins with sets of tokens using "transitive closure visibility“ of “offered tokens” Activity Diagram Standard Semantics: –“visibility rules” are harder to implement than simple actions –Processing of “offered tokens” “all at once” doesn’t work correctly for Single Execution mode (important for simulation) - concurrent control tokens may be lost

Valdis Vitolins, Audris Kalnins, EDOC 2005 ADVM Semantics Edges and Control nodes between stable nodes are concatenated into Paths: –PassRule is created from Guards of Path’s edges which are "anded" together –each PassRule can be evaluated independently Main active elements are Push and Pull token Engines: –provide token movement between stable nodes (actions, initial, final) –Push engines are used for outgoing branches –Pull engines are used for incoming branches Our semantics: –Simple and more suitable for execution –Works also in Single Execution mode

Valdis Vitolins, Audris Kalnins, EDOC 2005 ADVM – other elements Action Engines provide token processing in Actions Activity Engines control activity invocation, startup and termination Input/Output Queues - for Actions, Initial, Final and ActivityParameter nodes ("stable places“) Push Paths - contain only Decision, Merge and Fork nodes (or no at all). Pull paths - contain at least one Join node (and Decision and Merge nodes) Pass Rule - Guards of path’s Edges "anded" together Join criterion - join specification for Pull paths, used by Pull Engine Token Group - set of tokens, which is jointly pulled by a Pull Engine into its input pin

Valdis Vitolins, Audris Kalnins, EDOC 2005 Subset of UML AD Metamodel and mapping to the ADVM classes

Valdis Vitolins, Audris Kalnins, EDOC 2005 Paths and Token Engines Paths are created as a "transitive closure" of Edges and IntermediateNodes between Queues of StableNodes. –constraints and conditions, coming from Guards and Control Nodes are "concatenated" into the PassRule TokenEngines for queues are added the following way: –if for an OutputQueue there exists at least one OutgoingPath without Join, then a PushEngine for this OutputQueue is created –if for an InputQueue there exists at least one IncomingPath with Join, then a PullEngine for this InputQueue is created

Valdis Vitolins, Audris Kalnins, EDOC 2005 Complete Metamodel of our AD VM (Excluding ActivityFactory class)

Valdis Vitolins, Audris Kalnins, EDOC 2005 Conclusion Equivalence: –Essential event trace – starts of action executions and the token sets consumed and produced by these actions are the same for both virtual machines on any activity diagram. In our subset of UML Activity Diagrams there is no real race for tokens by actions in the selected subset (no implicit fork, no forks in a path leading to a pull engine, mutually exclusive guards for decisions) any token will be delivered to its destination in our VM not later than in the original VM assertion that all input pins must have at least one token (or an appropriate group of tokens, if this is a “join pin”) for the action to start, becomes true at exactly the same moment when the original VM would have finally collected all the offered tokens Usage: –Works well for BPM and workflow systems, easily implementable –AD simulator – a tool important for workflow validation