Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parRodolphe Nguyen Modifié depuis plus de 10 années
1
Alain Le Guennec Jean-Marc Jézéquel Action Triskell
Validation de conceptions UML de logiciels embarqués : emprunts aux approches formelles Alain Le Guennec Jean-Marc Jézéquel Action Triskell --
2
UML : l’évolution en cours
Popularité croissante dans l’industrie Support du développement OO pour A&D Standard OMG, grand choix d’outils Interopérabilité à terme, via le format XMI Efforts soutenus de formalisation Groupes pUML et « Action-Semantics » Convergence des formalismes SDL et UML SDL’2000, « profile » UML-RT
3
L’approche Triskell Construction fiable et efficace d’applications « télécom » par composants Permettre l’utilisation de techniques formelles avec UML Model checker basé sur la logique XTL Simulation interactive ou intensive Génération de tests (outil TGV) Si tu ne vas pas à Lagardère…
4
Dans les objectifs de Triskell
Donner une (famille de) sémantique à UML préciser l’existant agir au sein de l ’OMG sur le futur : Action Semantics, UML-RT Adapter des techniques formelles existantes Identifier les problèmes spécifiques à UML Prouver la faisabilité avec un prototype UMLAUT
5
Schéma d’utilisation Intégration de la validation
dans un cycle de vie OO Schéma d’utilisation Validation Results Simulation Model Checking Problem UML Analysis Model Validation code UML Design Model Validation Framework UMLAUT/Simulator TGV Graph API Implementation Test Cases Test Results Test purpose
6
Le simulateur UMLAUT Compilation de la spécification
Objectif : « tisser » entre eux les différents aspects sémantiques d’un modèle UML en les projetant sur le sous-ensemble {statique + AS} Stockage et comparaison d’états Etat local pour chaque objet Topologie du réseau d’objets Autorise la création dynamique d’objets
7
Cohérence entre diagrammes : Implémentation d’une opération
ma(b:B) / (b->mb())->mc(); A in S1 A in S2
8
Sémantique des diagrammes d’état
La notion de classe-état permet d’intégrer la notion d’état au typage L’effet d’une transition associe des actions aux opérations
9
Sémantique dynamique (1)
Sémantique de la concurrence : entrelacements fondée sur les Labelled Transition Systems Evolutions du système -> transitions du LTS Evolutions dues aux actions exécutées spontanément par les objets actifs dans le système en réponse aux stimuli provenant de l’environnement
10
Sémantique dynamique (2)
Evolutions du système spécifiées à l’aide d’un langage d’actions pas encore de standard (« Action Semantics » WG) remplacé par des fragments de programmes nécessite des hypothèses sur l’atomicité ceci permet de transposer sans les analyser les fragments de code représentant des actions directement depuis le domaine syntaxique vers le domaine sémantique
11
Vérification de propriétés
Cas des assertions OCL classiques Les pré et post-conditions des routines ainsi que les invariants de classes sont compilés en transitions spéciales Cas des propriétés exprimées à l’aide d’une logique temporelle XTL est trop éloignée de UML/OCL Les propositions portant sur les états devraient pouvoir être écrites en OCL
12
Génération de tests Repose sur le produit synchrone entre la spécification et un automate objectif de test Un objectif de test permet de construire des cas de test en guidant l’exploration de la spécification selon certains critères Objectifs et cas de test sont représentés en UML par des collaborations / interactions Limitation : données traitées par énumération...
13
Objectifs de test D’un Use-Case UML au IO/LTS pour TGV
14
Cas de test UMLAUT Simulateur TGV TGV UMLAUT Editeur d’objectifs
15
La boîte à outils UMLAUT
Impl. Contracts Tests Semi-automatic or manual UML/AS 1 * UML metamodel Commercial tool XMI / MDL * 1 Application of transformation rules Java/Eiffel/C(++) ... Outil commercial GUI (Applet) UMLAUT Protocol Validation framework Validation engines
16
Travaux de recherche Conception par aspects, patterns & frameworks
UMLAUT=weaver UML, ASL, UMLAUT en UML Composant Contractualisable Générés par UMLAUT pour e.g. EJB, CCM, .NET Composants auto-testables & analyse mutations process, qualification des tests, mesures de fiabilité Synthèse de tests à partir d’UML combinant analyse statique (données) et dynamique
17
Informations et contacts
Action Triskell Outil UMLAUT Fonctionnalités : Validation et génération de tests Transformations de modèles UML Interpréteur/Compilateur OCL/AS (niveaux modèle et méta) Modélisation et utilisation de design patterns
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.