from interaction overview diagrams to pepa nets
play

From Interaction Overview Diagrams to PEPA nets Le la Kloul - PowerPoint PPT Presentation

From Interaction Overview Diagrams to PEPA nets Le la Kloul PRiSM, Universit e de Versailles Juliana K uster-Filipe School of Computer Science The University of Birmingham 1 Contents 1. Motivation 2. Design Notation Dynamic


  1. From Interaction Overview Diagrams to PEPA nets Le¨ ıla Kloul PRiSM, Universit´ e de Versailles Juliana K¨ uster-Filipe School of Computer Science The University of Birmingham 1

  2. Contents 1. Motivation 2. Design Notation • Dynamic Models in UML 2.0 • IODs vs Activity Diagrams • Using IODs for Mobility 3. PEPA nets 4. Formal Translation 5. Conclusions 2

  3. Contents 1. Motivation 2. Design Notation • Dynamic Models in UML 2.0 • IODs vs Activity Diagrams • Using IODs for Mobility 3. PEPA nets 4. Formal Translation 5. Conclusions 2

  4. Motivation • Model and analyse mobile systems. • System consists of several locations. Some objects can move between locations. Within a location objects can interact with others. • Choice of modelling language: for designers vs for analysis. From Interaction Overview Diagrams to PEPA nets 3

  5. Motivation • Model and analyse mobile systems. • System consists of several locations. Some objects can move between locations. Within a location objects can interact with others. • Choice of modelling language: for designers vs for analysis. UML 2.0 vs PEPA nets From Interaction Overview Diagrams to PEPA nets 3

  6. Dynamic Models in UML 2.0 • Individual behaviour is modelled using state diagrams - intra-object behaviour. • Collaborative behaviour is modelled using interaction diagrams - inter-object behaviour. These diagrams include – Sequence diagrams – Interaction overview diagrams (IODs) From Interaction Overview Diagrams to PEPA nets 4

  7. Sequence diagrams • Are a visual scenario-based formalism. • Describe the instances involved in an interaction, and the messages exchanged for the interaction (partially ordered over time). • Contain two dimensions: a vertical dimension denoting time; a horizontal dimension representing the instances involved in the interaction. From Interaction Overview Diagrams to PEPA nets 5

  8. Sequence diagrams in UML 2.0 • Have new improved structure and expressiveness (through so-called interaction fragments ) • Loops and conditional branching can be indicated more clearly • Parallel behaviour can be expressed as well as ordering of non-related communications From Interaction Overview Diagrams to PEPA nets 6

  9. Sequence diagrams in UML 2.0 • Have new improved structure and expressiveness (through so-called interaction fragments ) • Loops and conditional branching can be indicated more clearly loop alt • Parallel behaviour can be expressed as well as ordering of non-related communications par strict From Interaction Overview Diagrams to PEPA nets 6

  10. Example Diagram sd sdia j:B i:A k:C m1 m2 m3 m4 m7 m8 State1 From Interaction Overview Diagrams to PEPA nets 7

  11. Example Diagram sd sdia j:B i:A k:C m1 m2 alt [x>=0] m3 m4 [x<0] m7 m8 State1 From Interaction Overview Diagrams to PEPA nets 7

  12. Example Diagram sd sdia j:B i:A k:C m1 par m2 alt [x>=0] m3 m4 [x<0] m7 m8 State1 m5 From Interaction Overview Diagrams to PEPA nets 7

  13. Ordering 3 sd d a b c m1() m2() m3() From Interaction Overview Diagrams to PEPA nets 8

  14. Ordering 3 sd d a b c seq m1() m2() m3() From Interaction Overview Diagrams to PEPA nets 8

  15. Ordering sd 3 d a b c seq strict m1() m2() m3() From Interaction Overview Diagrams to PEPA nets 8

  16. Ordering sd 3 sd 3 d d a a b b c c seq par strict m1() m1() m2() m2() m3() m3() From Interaction Overview Diagrams to PEPA nets 8

  17. Interaction Overview Diagram • High level structuring mechanism for sequence diagrams. • Special kind of activity diagram with control flow only. • Nodes are interactions (sequence diagrams); edges show the order in which these interactions occur. • Uses forks, joins, decision and merge nodes from activity diagrams. From Interaction Overview Diagrams to PEPA nets 9

  18. student, registrar intover UniReg lifelines initiation sd SH sd SR1 housing registrar student student register() apply() join decision inline interaction sd SC sd SR2 registrar student cashier student exclude() pay() From Interaction Overview Diagrams to PEPA nets 10

  19. Semantics of an IOD intover 3 1 sd d a b c m1() m2() sd 2 a b m3() From Interaction Overview Diagrams to PEPA nets 11

  20. Flattening 3 sd d a b c m1() m2() m3() From Interaction Overview Diagrams to PEPA nets 12

  21. Flattening sd 3 3 sd d d a a b b c c strict m1() m1() m2() m2() m3() m3() From Interaction Overview Diagrams to PEPA nets 12

  22. Which Case to Allow? • Both interpretations are sensible: strong and weak sequential composition. • We need different notation for each case. From Interaction Overview Diagrams to PEPA nets 13

  23. Strong Sequential Composition intover 3 1 sd d a b c m1() m2() sd 2 a b m3() From Interaction Overview Diagrams to PEPA nets 14

  24. Object Flow in ADs Ship Order Fill Order Order Order Order Ship Order Fill Order Order Order Assemble Pick Materials Order for Order Materials Materials From Interaction Overview Diagrams to PEPA nets 15

  25. Alternative input/output pins d a activity node b e c From Interaction Overview Diagrams to PEPA nets 16

  26. Weak Sequential Composition intover 3 1 sd d a b c m1() m2() b a a b sd 2 a b m3() From Interaction Overview Diagrams to PEPA nets 17

  27. IODs for Mobility • Nodes represent locations in the system (interaction name). • Explicit object flow is used to indicate object mobility. • { upperBound value } indicates the maximum = number of tokens allowed in a pin. • { initBound = value } indicates the initial number of tokens in a pin. • { weight = value } indicates the number of tokens carried in an edge. From Interaction Overview Diagrams to PEPA nets 18

  28. Secret Agents intover SecretAgents 006, 007 lifelines sd P1 sd P3 007 Remote 006 MI5 process/r4 download/r1 sd P2 :007 :Connection :006 par save/r2 select/r3

  29. Secret Agents intover SecretAgents 006, 007 lifelines 006 007 sd P1 sd P3 007 Remote 006 MI5 process/r4 download/r1 007;move/s1 006;move/s4 007 006 sd P2 :007 :Connection :006 par save/r2 select/r3 007;move/s2 006;move/s3

  30. Secret Agents intover SecretAgents 006, 007 lifelines {initBound=1} {initBound=1} 006 007 sd P1 sd P3 007 Remote 006 MI5 process/r4 download/r1 007;move/s1 006;move/s4 007 006 sd P2 :007 :Connection :006 par save/r2 select/r3 007;move/s2 006;move/s3 From Interaction Overview Diagrams to PEPA nets 19

Recommend


More recommend