extension d'xadl2.0 à l'expression du comportement

15
Extension d'xADL2.0 à l'expression du comportement Christophe Mareschal [email protected] ENSAE 10 Avenue Edouard Belin , BP 4032 31055 Toulouse cedex 4 C.Mareschal Jounées FAC 2004

Upload: sissy

Post on 13-Jan-2016

37 views

Category:

Documents


3 download

DESCRIPTION

Extension d'xADL2.0 à l'expression du comportement. Christophe Mareschal [email protected]. C.Mareschal Jounées FAC 2004. ENSAE 10 Avenue Edouard Belin , BP 4032 31055 Toulouse cedex 4. Objectif. Objectif : Assister les tâches de réalisation de systèmes complexes - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Extension d'xADL2.0 à l'expression du comportement

Extension d'xADL2.0 à l'expression du comportement

Christophe [email protected]

ENSAE

10 Avenue Edouard Belin , BP 4032

31055 Toulouse cedex 4

C.M

ares

chal

Jo

un

ées

FA

C 2

004

Page 2: Extension d'xADL2.0 à l'expression du comportement

2

Ch

rist

op

he

Mar

esch

al -

Jo

un

ées

FA

C 2

004

Objectif

Objectif : Assister les tâches de réalisation de systèmes complexes

– permettre une modélisation de niveau architectural

– coordonner des points de vues différents

– relier les outils support de production et de validation

Problème :

– Multiplicité des outils et des langages qui entourent le développement des systèmes

– Séparation des outils de validation et de conception

– Rigidité des couples formalisme/outils support

• Difficulté à évoluer (dépendances)

• Difficulté à coopérer (incompatibilité)

Page 3: Extension d'xADL2.0 à l'expression du comportement

3

Ch

rist

op

he

Mar

esch

al -

Jo

un

ées

FA

C 2

004

"ADL" : Les langages de description d'achitecture

"XML" : La gestion des langages et la manipulation des descriptions

"xADL2.0" : Un ADL extensible

"AltaRica" : L'expression du comportement, l'analyse de la SdF

"xAltarica" : Le codage d'AltaRica en XML

"xADL2.0*" : Extension d'xADL2.0 à l'expression du comportement

Les langages

Page 4: Extension d'xADL2.0 à l'expression du comportement

4

Ch

rist

op

he

Mar

esch

al -

Jo

un

ées

FA

C 2

004

ADL

– Point de vue "architectural" fondé sur 4 éléments de modélisation de base

– Eléments additionnels pour les autres points de vues

– Conception, analyse, conversion, assemblage, génération de code, déploiement, contrôle

et gestion de configuration ...

XML

– Méta description (spécification des langages)

– Description hiérarchique (structure arborescente)

– Description hypertexte (liens)

– Analyse syntaxique (lecture, écriture, validation syntaxique)

– Transformation syntaxique

– Interrogation (requête)

– Implémentation orientée objet du langage (XML Data binding)

Généralités

ADL

Composant

Interface du composant

Connecteur

Configuration

Page 5: Extension d'xADL2.0 à l'expression du comportement

5

Ch

rist

op

he

Mar

esch

al -

Jo

un

ées

FA

C 2

004

xADL2.0

Modélisation

– ADL : Composant, connecteur, interface, configuration, typage et composition

– XML : Collection de schémas XML

• Structure Statique : xArch Instance, Structure & Types

• Variabilité architecturale : Options, Variantes, Versions

• Implémentation : Abstact Implementation, Java Implementation

Outils

– Spécification des schémas : XML Spy, ou autre

– Génération de classes et d'interfaces java directement dérivées des schémas : Apigen

– Environnement d'édition de description et d'instanciation : Archstudio 3

– Gestion de configuration, architecture de famille de produits : Menage

xArch Instance

Options Variants Versions Implementation

Structure & Types

Page 6: Extension d'xADL2.0 à l'expression du comportement

6

Ch

rist

op

he

Mar

esch

al -

Jo

un

ées

FA

C 2

004

AltaRica

• Modélisation : Comportement

– Automates à contraintes :

flows, states, events, transition, assert

– Description hiérarchique :

node, sub, synchronisation, assert

• Outils : Analyse de sureté de fonctionnement

– Génération d'arbre de défaillance

– Génération de séquences

– Model-checking

– Simulation

– Génération de modèle "bas niveau" : Chaine de Markov, Réseau de Pétri

– Analyse temps réel (version Timed Altarica)

switch

in outr

onpusch

node switchstate on : bool ;flow in, out : bool ;event pusch ;trans true |- pusch -> on := not on ;assert on => (out = in) ;

out => on ;init on := false;

edon

Page 7: Extension d'xADL2.0 à l'expression du comportement

7

Ch

rist

op

he

Mar

esch

al -

Jo

un

ées

FA

C 2

004

xAltarica

• Favoriser la comparaison avec xADL

• Accéder aux outils XML

• Trois schémas

– utils : expressions mathématiques

– altarica : méta-modèle AltaRica (automates et composition)

– timedAltarica : extension temporisée

– + utilisation d'xArch ( XMLLink , identifier, description, direction )

• Modifications par rapport à AltaRica légères, uniquement syntaxiques

– Distinction comportement / composition hiérarchique

– Node devient Component

utils

altarica

xArch Instance

timedAltarica

Page 8: Extension d'xADL2.0 à l'expression du comportement

8

Ch

rist

op

he

Mar

esch

al -

Jo

un

ées

FA

C 2

004

xADL2.0*xArch Instance

Option Variant Version Implementation

Structure + Types

altarica

utils

behavior

Le schéma behavior.xsd

ComponentTypeBeh extends type : Componentype

type : Signature

SubArchitectureBeh extends type:Subarchitecture

instance : # ArchStructure

type : SignatureInterfaceMapping

altarica : Sync

Behavior

altarica : States

altarica : Events

altarica : Trans

altarica : Assert

Page 9: Extension d'xADL2.0 à l'expression du comportement

9

Ch

rist

op

he

Mar

esch

al -

Jo

un

ées

FA

C 2

004

• Adaptation des outils

• Coordination des outils

L'outillage

Page 10: Extension d'xADL2.0 à l'expression du comportement

10

C

hri

sto

ph

e M

ares

chal

- J

ou

née

s F

AC

200

4

Adaptation des outils

Shémas DataBinding_Lib

DOM

environnement XML DB_Compilateur

XML Parser DB_RunTime

ADT

Traitements

Description XML

• Schémas : extension

• DataBinding library : recompilation

• Processeurs XML : pas d'adaptation à faire

• API's "syntax directed" : peuvent s'adapter automatiquement en fonction de la syntaxe

• Autres API's : à adapter

Traitements

IHM IHM

Page 11: Extension d'xADL2.0 à l'expression du comportement

11

C

hri

sto

ph

e M

ares

chal

- J

ou

née

s F

AC

200

4

Adaptation d'ArchStudio 3xADL2.0*

xarchlibs*

xmlSpy Apigen

xArchADT

ADT*

ArchEdit*

• Les nouvelles extensions ont été compilées avec Apigen pour mettre à jour xarchlibs

• Le composant ArchEdit s'est automatiquement adapté :

– menus contextuels avec les nouveau items

– champs de saisies correspondants

• L'ajout de nouveaux composants est facilité

– par l'implémentation xarchlibs

– par l'architecture d'archstudio 3 prévue pour accueillir

facilement des nouveau composants

?

Archstudio 3

Page 12: Extension d'xADL2.0 à l'expression du comportement

12

C

hri

sto

ph

e M

ares

chal

- J

ou

née

s F

AC

200

4

Coordination des outils

• Partager le même "super format"

• Produire en sortie

plusieurs formats ou accepter en entrée plusieurs formats

• Transformer les descriptions avec XSLT

AB

Processeur XSLT

Outils B

Description AB

Outils A

A Outils BOutils A

Description B

B

A to BA Outils B

Description A

Outils A

Description B

B

Description A

Page 13: Extension d'xADL2.0 à l'expression du comportement

13

C

hri

sto

ph

e M

ares

chal

- J

ou

née

s F

AC

200

4

Coordination des outils ADL2.0* et AltaRica

Processeur XSLT

xADL2.0* to xAltarica

xADL2.0*

Outils AltaRica:ocas, altaTools,ToolBox,….

Description xADL2.0*

Archstudio 3

Description xAltarica

xAltarica

Description Altarica

xAltarica to AltaRica

• Feuille de styles– xADL2.0 to xAltarica (XML to XML)– xAltarica to Altarica (XML to TEXT)

• Tranformation XSLT

Page 14: Extension d'xADL2.0 à l'expression du comportement

14

C

hri

sto

ph

e M

ares

chal

- J

ou

née

s F

AC

200

4

Conclusion• Superlangage

– Extensible : adjonction de point de vues.

– Modulaire : encapsulation des sous langages, utilisation sélective.

– Hiérarchisé : du générique au spécifique

• Adaptation des outils– API génériques : parsers, compilateurs

– Data Binding Library : recompilation

– API "syntax directed": adaptation automatique

– Autres API : manipulation de la représentation en mémoire "DOM" ou "ADT"

• Coordination des outils– Description unique, multiples utilisations

– Descriptions multiples + traductions, multiples utilisations

• Perspectives– Intégrer d'autres vues à xADL2.0

– Développer une infrastructure de coordination

– Développer un environnement qui intègre conception et analyse

Page 15: Extension d'xADL2.0 à l'expression du comportement

15

C

hri

sto

ph

e M

ares

chal

- J

ou

née

s F

AC

200

4

xADL2.0 : http://www.isr.uci.edu/projects/xarchuci/index.html

Archstudio 3 : http://www.isr.uci.edu/projects/archstudio/index.html

AltaRica : http://altarica.labri.fr/

xAltarica : http://www.cert.fr/francais/deri/mareschal/altarica/xaltarica.html

Merci ...