Unambiguous UML Composite Structures: the OMEGA2 experience Iulian - - PowerPoint PPT Presentation

unambiguous uml composite structures
SMART_READER_LITE
LIVE PREVIEW

Unambiguous UML Composite Structures: the OMEGA2 experience Iulian - - PowerPoint PPT Presentation

Unambiguous UML Composite Structures: the OMEGA2 experience Iulian OBER and Iulia DRAGOMIR IRIT University of Toulouse France Outline Overview of the OMEGA Profile Composite Structures Implementation and Evaluation


slide-1
SLIDE 1

Unambiguous UML Composite Structures: the OMEGA2 experience

Iulian OBER and Iulia DRAGOMIR IRIT – University of Toulouse France

slide-2
SLIDE 2

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 2

Outline

 Overview of the OMEGA Profile  Composite Structures  Implementation and Evaluation  Conclusions and Future Work

slide-3
SLIDE 3

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 3

The OMEGA Language

 UML Profile for the specification and verification of real-

time systems

 Consists of:

A large subset of UML + Model coherence constraints + A formal operational semantics + Real-time and verification extensions

slide-4
SLIDE 4

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 4

The OMEGA Profile v1

 Structure = UML Class Diagrams

 Classes with attributes, operations and state machine  Relations: association, composition and generalization

 Behavior

 State machines  Communication through operations and signals

 Observers = objects monitoring the system (state and

events) and giving verdicts about a safety property

slide-5
SLIDE 5

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 5

The IFx Toolset

 Goal: Early model validation and debugging  Principle: Transformation to communicating extended

timed automata (IF Language)

Functionalities:

  • Simulation
  • Static analysis: dead code /

variable elimination, slicing, …

  • Model-checking: observers,

state graph minimization, μ- calculus, …

slide-6
SLIDE 6

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 6

Outline

 Overview of the OMEGA Profile  Composite Structures  Implementation and Evaluation  Conclusions and Future Work

slide-7
SLIDE 7

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 7

Composite Structures

  • 1. Inner components

(parts)

  • 2. Ports
  • 3. Delegation connector

(port-instance)

  • 4. Delegation connector

(port-port)

  • 5. Assembly connector

(instance-port)

  • 6. Assembly connector

(instance-instance)

  • 7. Provided interface
  • 8. Required interface
slide-8
SLIDE 8

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 8

Ports Directionality

Action executed by A: p.op2() //p conforms to J

For each request received by p, the type system has to verify if it conforms with port type

⇒ Bidirectional ports are forbidden!

slide-9
SLIDE 9

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 9

Connectors directionality

For a delegation connector, both ports must have the same direction. For an assembly connector, one port must be required and the other provided.

slide-10
SLIDE 10

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 10

Static typing of connectors

 UML: typing a connector with an association is optional  OMEGA2: there are cases where typing a connector with

an association is necessary

slide-11
SLIDE 11

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 11

Providing / requiring multiple interfaces

 UML: interfaces inheritance  OMEGA2: interfaces stereotyped «interfaceGroup»

which are not taken into account by the type system

slide-12
SLIDE 12

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 12

{K} = typeOf(deleg_backup)

Set of transported interfaces

 Can be computed for connectors originating in ports and

not-typed with associations = Intersection between the two sets of provided / required interfaces at the two ends of the connector

{I,J,L} ∩ {J,L} = {J,L} {I,J,L} ∩ { I } = {I} {K} ∩ {K} = {K} {K} = typeOf(itsK)

slide-13
SLIDE 13

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 13

Implicit association and routing destination

 In OMEGA2, each interface has an association pointing

to itself

 The association is initialized with the destination of

requests conforming to the proprietary interface

deleg_I deleg_J deleg_L

slide-14
SLIDE 14

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 14

Port behavior

 By default: forwarding received requests (conform to its

direction)

 Deterministic routing For a port, the sets of transported interfaces have to be disjoint.

slide-15
SLIDE 15

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 15

Port behavior

 Completeness

All provided/required interfaces should be transferred through connectors.

slide-16
SLIDE 16

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 16

Ports behavior

slide-17
SLIDE 17

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 17

Outline

 Overview of the OMEGA Profile  Composite Structures  Implementation and Evaluation  Conclusions and Future Work

slide-18
SLIDE 18

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 18

Composite Structures in IFx2

 Same overall architecture

 Translation of OMEGA2 models to IF language

 Principles

 Ports and connectors are handled as first class elements  Priority rules for partial order reduction of the state space in order

to avoid combinatorial explosion

slide-19
SLIDE 19

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 19

OCL Formalization

 Developed and evaluated over UML models in XMI

format

Reference: Iulia Dragomir and Iulian Ober. Well-formedness and typing rules for UML Composite Structures. arXiv/CORR submission no. 0136130, November 2010

Computes de set of transported interfaces Verifies that a connector (typed or not-typed with an association) forwards requests

slide-20
SLIDE 20

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 20

Case study : ATV Solar Wing Management

 Complex model provided by Astrium Space Transportation

 3-level hierarchical architecture  37 classes (from which 7 composite structures)  After system initialization: 93 active objects, ~380 ports and 200

connectors for communication

 Results

 Untyped ports and connectors  Incomplete and non-unique ports  After simulation, modeling errors

in system’s behavior

slide-21
SLIDE 21

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 21

Outline

 Overview of the OMEGA Profile  Composite Structures  Implementation and Evaluation  Conclusions and Future Work

slide-22
SLIDE 22

04/08/2013 Unambiguous UML Composite Structures: the OMEGA2 experience 22

Conclusions and Future Work

 Composite structures = coherent and expressive models  Approach based on a set of principles and notions for a

clear operational semantics of OMEGA2 models

 Implementation in the IFx2 Toolset and evaluation on

realistic models

 Current and future work

 Formalization of Composite Structures type system and type

safety proofs

 Adaptation of the profile and tools to SysML