Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S --...

23
Eric MADELAINE 1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso, 18-19 dec 2006 A UML profile for Distributed Components
  • date post

    18-Dec-2015
  • Category

    Documents

  • view

    219
  • download

    1

Transcript of Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S --...

Page 1: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 1

E. Madelaine, Antonio Cansado, Emil Salageanu

OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis

OSCAR meeting, Valparaiso, 18-19 dec 2006

A UML profile for Distributed Components

Page 2: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 2

• Motivations • Vercors Platform

• Specification Languages

• UML models for distributed components• TTool

• UML 2.0 components

• CTTool

• Towards a profile for the Grid Component Model

• Perspectives

Agenda

Page 3: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 3

Definition : Software modules, composable, with well-defined interfaces, and well-defined black box behaviour

Our interests : 1. Encapsulation: Black boxes, offered and required services2. Composition

Design of complex systems, hierarchical organization into sub-systems3. Separate administration

Architecture Description Language (ADL), Non-functional interfaces4. Distribution (e.g. Computational Grid)

Interaction at interfaces through asynchronous method calls

Distributed Applications :ProActive implementation of the Fractal Model, Grid Component Model (GCM)

Distributed Software Components

Page 4: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 4

The Vercors Platform

Eric Madelaine

Tomas Barros

Christophe Massols

Marcela Rivera

Antonio Cansado

Emil Salageanu

Hejer Rejeb

Page 5: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 5

The Vercors Platform : Formats

1: Architecture & Interfaces Descriptions

2: Parameterized Networks of LTSs

3 : Networks of Finite LTSs

4 : (full) Lotos Processes

Page 6: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 6

The Vercors Platform

Mapping ???

Arguments of method calls and return values, in the

interface formalism

Values in Lotos data types

Page 7: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 7

Need for an Integrated Specification Language

Examples:

-Process Algebras

-Java/A

-ArchWare Π-ADL

Work of Antonio Cansado…

Including distributed component concepts:

- Request queues, futures, proxies, collective interfaces, non-functional controllers, etc.

Page 8: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 8

Next Step:Language for the non-expert user

- Do not invent “yet another graphical specification language”

- Required capacities: hierarchical component architecture, signatures of interfaces, FSM behaviour specifications

- Extensibility for higher level abstractions.

- Semantics in term of the specification language.

=> UML diagrams

Specification Language• Expressiveness, Completeness,

• Strong semantics, Calculus-level proofs…

Page 9: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 9

Next Step:Language for the non-expert user

UMLArchitecture

+behaviours

ADL&

Proactive code

“correct by construction”

Page 10: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 10

• Motivations • Vercors Platform

• Specification Languages

• UML models for distributed components• TTool

• UML 2.0 components

• CTTool

• Towards a profile for the Grid Component Model

• Perspectives

Agenda

Page 11: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 11

Starting Point: TTool

- Labsoc (System On Chip), ENST Sophia, Ludovic Apvrile.

- UML 1.5 diagrams: - Class diagrams + Interaction diagrams / Sequence Charts + Real Time

- Turtle Model:- Translation to RT-Lotos, Real-time Model-checking

- Generation of Java code (simulator)

Page 12: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 12

Starting Point: TTool

Page 13: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 13

Class diagrams

Page 14: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 14

Activity diagrams

Page 15: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 15

UML 2.0 : new standard diagrams for components[ V. Mencl, M. Polak, Fractal’06

UML 2.0 Components and Fractal: An Analysis ]

Component: now “as we know it”• hierarchy / nested components• provided and required interfaces

• Key concepts:• StructuredClassifier

• functionality decomposed into parts• EncapsulatedClassifier

• communication through Ports• Port

• has provided and required Interfaces• has multiplicity (=> collection interfaces)

• Component• combines these features, + inherits from Class (attributes)

Page 16: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 16

UML 2.0 [continued]

1. As a StructuredClassifier

• may own parts

with type, multiplicity

2. As a NameSpace

• may own components, classes, instanceSpecifications, interfaces

• But you must explicitely instanciate components.

Page 17: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 17

UML 2.0 [continued] : technical details

1. Connectors• Cannot be linked to interfaces (only to ports)

• Cannot be linked to InstanceSpecifications

2. Interfaces via Ports:• Only one interface per port.

• Position of interface client/server.

• Port multiplicity determines cardinality+contingency.

3. Subcomponents implemented as Component + InstanceSecification

Page 18: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 18

UML 2.0 [continued]

1. Full mapping Fractal/Sofa -> UML 2.0

by M. Polak (2006)

1. Prototype Implementation, using Enterprise Architect

Page 19: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 19

Prototype : CTTool(with Emil Salageanu)

- UML 2.0 diagrams for Composite Structures + State Machines

- Editor + verification environment using TTool code base=> generation of Lotos code

=> bridges to CADP toolset

- No deviance from UML 2.0

- No asynchronous components yet (common base for Oasis / Labsoc)

Prototype available: www-sop.inria.fr/oasis/Vercors

Demo…

Page 20: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 20

Next Step : ProActive TTool ??

1) Simplify the graphical constructions:• Interface / Ports

• Delegate interfaces

• Libraries for components, interface descriptions

2) Higher level constructions• Asynchronous components (future proxies, queues)

• Multicast and Gathercast interfaces

Page 21: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 21

Next Step : ProActive TTool ??

Integration in the ProActive IDE ??

- Eclipse Plugin

- Fractal / GCM GUI

- Early warnings / semantic information :

- deadlocks, active object dependencies, etc

Page 22: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 22

Next Step : Graphics

Keep as much as possible existing styles…:

1. UML 2.0 composite structures

2. Fractal GUI (??)

3. MARTE

4. Simulink….

Page 23: Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,

Eric MADELAINE 23

Muchas gracias