Presentation is loading. Please wait.

Presentation is loading. Please wait.

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.

Similar presentations


Presentation on theme: "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."— Presentation transcript:

1 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 by VIATRA2

2 Transformation  Source domain: UML Activities (core elements) o standard process description language o countless editors available  Target domain: Petri nets (basic elements) o mathematical formalism o concurrent behavioural model o efficient analysis tools available

3 UML Activities (core) Activity Action Initial Final Fork Join Control Flow Decision Merge

4 Petri nets  AKA Place/Transition Nets Place Token Arc Transition

5 Petri nets  State = marking of places  State change: firing of a transition o enabled if all incoming places are marked o 1 token removed from each incoming place o 1 token added to each outgoing place Transition not enabled Now enabled

6 Petri nets  What do these Petri nets do?

7 LAB Executing the transformation

8 UML Activity  Petri net  Action  Control flow During Enter Exit

9 UML Activity  Petri net  Initial node  (Flow) final node

10 UML Activity  Petri net  Fork node  Join node

11 GT rules – Control Flow  Mostly straightforward LHSRHS trace We can prescribe a NAC

12 DEMO Simple GT rules in Viatra2 LHSRHS trace

13 GT rules – Action  Straightforward, but big LHSRHS We will use this graph pattern a lot more EnterExit During

14 GT rules – reusing patterns  Let’s reuse! LHSRHS placeOfIncomingEdge placeOfOutgoingEdge placeOfIncomingEdge placeOfOutgoingEdge EnterExit During

15 CODE Pattern composition in Viatra2

16 CODE Pattern composition in Viatra2

17 GT rules - Fork LHSRHS LHSRHS Fork

18 CODE Cooperating rules in Viatra2

19 Similarities  Fork Node o Create transition, trace back to fork node o Connect the placeOfIncomingEdge to transition o Connect transition to each placeOfOutgoingEdge  Join Node o Create transition, trace back to join node o Connect each placeOfIncomingEdge to transition o Connect transition to the placeOfOutgoingEdge  Flow Final Node o Create transition, trace back to final node o Connect the placeOfIncomingEdge to transition o Connect transition to each placeOfOutgoingEdge (there is none, this does nothing)

20 Similarities  Fork Node o Create transition, trace back to fork node o Connect the placeOfIncomingEdge to transition o Connect transition to each placeOfOutgoingEdge  Join Node o Create transition, trace back to join node o Connect each placeOfIncomingEdge to transition o Connect transition to the placeOfOutgoingEdge  Flow Final Node o Create transition, trace back to final node o Connect the placeOfIncomingEdge to transition o Connect transition to each placeOfOutgoingEdge (there is none, this does nothing)

21 Trick  Fork / Join / Final Node o Create transition, trace back to activity node o Connect each placeOfIncomingEdge to transition o Connect transtition to each placeOfOutgoingEdge  Let’s reuse!

22 LAB Transformation program

23 Exercise: what’s missing?

24  Decision and Merge Nodes  What PN constructs should they be mapped into?  Come up with GT rules  Implement in Viatra2  Try activity_complex and activity_prb!

25 Offline exercise („homework”)

26 Where to  Extending the transformation system o Domain metamodels, importers, exporters o Native functions (calls to Java)  Advanced features o Language features: recursion, injectivity, etc. o Performance optimization o Triggers o Live synchronization o SDE integration

27 Additional material  http://wiki.eclipse.org/VIATRA2 http://wiki.eclipse.org/VIATRA2 o Installation o Syntax o How-tos and Examples o Learn about many other features of Viatra2  There is a new release coming up this summer, you have been using a beta version in this lab o Sorry for any hiccups it may have caused o Take it home if you wish! o The unfinished project also!


Download ppt "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."

Similar presentations


Ads by Google