Title: Extension d'xADL2'0 l'expression du comportement
1Extension d'xADL2.0 à l'expression du comportement
C.Mareschal Jounées FAC 2004
- Christophe Mareschal
- mareschal_at_cert.fr
ENSAE 10 Avenue Edouard Belin , BP 4032 31055
Toulouse cedex 4
2Objectif
- 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é)
3Les langages
- "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
4Généralités
ADL Composant Interface du composant Connecteur Co
nfiguration
- 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)
5xADL2.0
xArch Instance
Structure Types
Options
Variants
Versions
Implementation
- 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
6AltaRica
node switch state on bool flow in,
out bool event pusch trans true -
pusch -gt on not on assert on gt (out
in) out gt on init on
false edon
switch
in
outr
pusch
on
- 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)
7xAltarica
xArch Instance
utils
altarica
- 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
timedAltarica
8xADL2.0
xArch Instance
Structure Types
Option
Variant
Version
Implementation
utils
ComponentTypeBeh extends type Componentype type
Signature SubArchitectureBeh extends
typeSubarchitecture instance
ArchStructure type SignatureInterfaceMapping a
ltarica Sync Behavior altarica
States altarica Events altarica Trans
altarica Assert
altarica
behavior
9L'outillage
- Adaptation des outils
- Coordination des outils
10Adaptation des outils
environnement XML
DB_Compilateur
Shémas
DataBinding_Lib
- 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
XML Parser
DB_RunTime
Description XML
DOM
ADT
IHM
IHM
Traitements
Traitements
11Adaptation d'ArchStudio 3
xmlSpy
Apigen
xADL2.0
xarchlibs
- 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
xArchADT
ADT
?
ArchEdit
Archstudio 3
12Coordination des outils
AB
Outils B
Outils A
Description AB
- Partager le même "super format"
-
- Produire en sortie plusieurs formats ou accepter
en entrée plusieurs formats - Transformer les descriptions avec XSLT
A
B
Outils B
Outils A
Description A
Description B
A
Outils B
Outils A
B
A to B
Description A
Description B
Processeur XSLT
13Coordination des outils ADL2.0 et AltaRica
- Feuille de styles
- xADL2.0 to xAltarica (XML to XML)
- xAltarica to Altarica (XML to TEXT)
- Tranformation XSLT
Outils AltaRica ocas, altaTools, ToolBox,.
Archstudio 3
xADL2.0
xAltarica
xADL2.0 to xAltarica
xAltarica to AltaRica
Description xADL2.0
Description xAltarica
Description Altarica
Processeur XSLT
14Conclusion
- 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
15- xADL2.0 http//www.isr.uci.edu/projects/xarchuci
/index.html - Archstudio 3 http//www.isr.uci.edu/projects/arc
hstudio/index.html - AltaRica http//altarica.labri.fr/
- xAltarica http//www.cert.fr/francais/deri/mares
chal/altarica/xaltarica.html - Merci ...