Plan Pourquoi des ADL? Généralités sur les ADL Principes des ADL

Slides:



Advertisements
Présentations similaires
Analyse et définition des besoins
Advertisements

MOT Éditeur de modèles de connaissances par objets typés
PC / Traitement numérique / Contrôle Environnement logiciel
1 Modéliser Ou comment RE-présenter sa connaissance.
Cilia, un framework de médiation ouvert, léger, multi-personnalités
Langage de modélisation objet unifié
Processus d'expression du besoin
Un processus de conception des logiciels distribués pour l’automobile
IREMIA : Institut de REcherche en Mathématiques et Informatique Appliquées Université de la Réunion Uniformisation des mécanismes de conception de SMA.
Projet FIACRE 1 ACI Sécurité InformatiqueToulouse, novembre 2004 FIACRE Fiabilité des Assemblages de Composants Répartis Modèles et outils pour lanalyse.
LOG4430 : Architecture logicielle et conception avancée
XML - Henry Boccon-Gibod 1 XML, Langage de description La question du choix de formalismes Les entités et leur représentations modalités de modèles et.
Groupe France Télécom Projet Cilia : collaboration LIG Adèle – Orange Labs/MAPS/MEP slide 1 Cilia, un framework de médiation ouvert, léger, multi-personnalités.
M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 3ème.
UML - Présentation.
Reference Model of Open Distributed Processing
1 Les technologies XML Cours 1 : Les Web Services et Architectures Orientées Services Fé vrier Version 1.0 -
UML (Unified Modeling Langage)
Urbanisation et Architecture CNAM NFE107
Alain Le Guennec Jean-Marc Jézéquel Action Triskell
Langage SysML.
Présentation SysML (Systems Modeling Language ) est basé sur UML et remplace la modélisation de classes et d'objets par la modélisation de blocs pour un.
Initiation à la conception des systèmes d'informations
Etude des Technologies du Web services
XML-Family Web Services Description Language W.S.D.L.
le profil UML en temps réel MARTE
Réalisée par :Samira RAHALI
Sommaire Objectif de Peakup Principes de fonctionnement
Modèle, Méthode et Conception
Etude globale de système.
Techniques de test Boulanger Jean-Louis.
Synthèse d’activités Présentation.
MOT Éditeur de modèles de connaissances par objets typés
Présentation du mémoire
© Petko ValtchevUniversité de Montréal Janvier IFT 2251 Génie Logiciel Notions de Base Hiver 2002 Petko Valtchev.
COTRE COmposants Temps REel
Les étapes du cycle de développement du génie logiciel
Leçon 1 : notion dobjet IUP Génie Informatique Besançon Méthode et Outils pour la Programmation Françoise Greffier Université de Franche-Comté.
Sensibilisation a la modelisation
Langage de modélisation graphique de systèmes
Comparaison entre RIP et OSPF en utilisant OPNET
1 Architecture orientée service SOA Architecture orientée service SOA (Service Oriented Architecture)
Supports de formation au SQ Unifié
Hatainville Les Moitiers d’Allonne – Tel : Website : stratic.online.com La démarche projet Mars 2001.
Institut Supérieur des Sciences Appliquées et de Technologie Sousse
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Mastère Professionnel Systèmes de Communication et Réseaux
Introduction au Génie Logiciel
Initiation à la conception des systèmes d'informations
François CARCENAC,Frédéric BONIOL ONERA-DTIM Zoubir MAMMERI IRIT
Présentation AICHA REVEL INGENIEUR D’ÉTUDE STERIA DEPARTEMENT TRD
Année 2006 – 2007 ENSEA © Emeric Rollin
1 Vers la gestion de la cohérence dans les processus multi-modèles métier Wolfgang THEURER Ecole Nationale Supérieure d’Ingénieurs des Etudes et Techniques.
ISNET-43 Atelier de génie logiciel Approche fonctionnelle ou objets Concurrence ou complémentarité ? Synthèse.
L’enseignement de spécialité SLAM
PaCO++ André Ribes Réunion Hydrogrid Rennes 15/09/03.
Hiver 2004SEG2501 Chapître 41 Chapître 4 SDL – structure d’un système et son comportement.
2 Tracks Unified Process
Web Services 17/01/2009.
Chapitre 2 Rappels objet et Présentation des diagrammes UML
IHM Modèle d’architecture et liens avec les outils de production d’interface IHM Dirrigé par : Catherine RECANATI Présenté par : Youssef OUDGHIRI YOUSFI.
Chapitre 2 Rappels objet et Présentation des diagrammes UML
1 Structure en MC Principes Stockage des données dans la mémoire volatile d’un ordinateur Problèmes Stockage temporaire «Petits» volumes de données Langages.
Architecture Client/Serveur
© Petko ValtchevUniversité de Montréal Janvier IFT 2251 Génie Logiciel Le Processus Hiver 2002 Petko Valtchev.
TP D’UML Groupe N° 3.
INTRODUCTION AUX BASES DE DONNEES
1 Journée GDR GPL --- Ingénierie des Exigences octobre 2015 Ph. Dhaussy Philippe Dhaussy Univ. Européenne de Bretagne Lab-STICC UMR CNRS 6285 Equipe.
19 avril Spécification d’un cadre d’ingénierie pour les réseaux d’organisations Laboratoire de recherche : OMSI à l’EMSE.
Transcription de la présentation:

2004 – 2005 Françoise Simonot-Lion (simonot@loria.fr) Ingénieur Civil des Mines 3ème année Ingénierie des Systèmes d’Information – Module SI153 Qualité et Sûreté des Logiciels et des Systèmes ADL Architecture Description Language 2004 – 2005 Françoise Simonot-Lion (simonot@loria.fr)

Plan Pourquoi des ADL? Généralités sur les ADL Principes des ADL Principaux ADL Exemples AADL AIL_Transport et EAST-ADL Croissance etn embarquée : +10% Coût de l’etn > coût du groupe moto-propulseur Part du logiciel : croissance exponentielle (10MO en 2004) Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Pourquoi des ADL? Contraintes de développement des systèmes embarqués critiques Multi-partenaires Car manufacturers Suppliers Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Pourquoi des ADL? Contraintes de développement des systèmes embarqués critiques Échange d’informations sur le système au cours du développement (cahier des charges vs recettes) Réutilisabilité Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Pourquoi des ADL? Contraintes de développement des systèmes embarqués critiques Obligation de prouver des propriétés (certification / réglementation / normalisation) Temps Sûreté de fonctionnement Qualité Optimisation Code Matériel Consommation de ressources coût Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Pourquoi des ADL? Modèle classique de développement Construction de modèles Passage d’une étape à l’autre Validation tool Test generation Specification Tool Coding - realisation System specification Design Validation Integration Test equipement Validation Tool Allocation Tool Performance Evaluation Tool Calibration Tool Code Code Inspector Code Generator Construction de modèles Cohérence des modèles Traçabilité Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Pourquoi des ADL? Modèle classique de développement Pas de correspondance automatique entre étapes du développement Pas de formalisation systématique des entrées et sorties de chaque étape Pas de description formelle des données échangées Modèles faits au « coup par coup » : incohérences, pertes d’informations entre les étapes ou lors de la modélisation Techniques empiriques – au mieux standards internes à l’entreprise Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Pourquoi des ADL? Modèle proposé de développement Validation tool Test generation Specification Tool Coding - realisation System specification Design Validation Integration Test equipement Calibration Tool Code Code Inspector Code Generator Validation Tool Allocation Tool Performance Evaluation Tool Une approche formelle qui couvre le cycle de développement Architecture Description Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Généralités sur les ADL Architecture Description Language Langages informatiques Langages déclaratifs Décrits à l’aide d’une grammaire (BNF, MOF/UML, …) Syntaxe et sémantique Ils décrivent de manière formelle une architecture de système sous ses aspects : Exigences Fonctionnelle Matérielle Logicielle Opérationnelle Les architectures représentées dans ces langages peuvent être manipulées par des outils informatiques Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Généralités sur les ADL Catégories d’ADL Syntaxe textuelle et / ou graphique Associé ou non à des outils de conception / validation Permet de représenter Soit une architecture logicielle, Soit une architecture système (matériel + logiciel) Génériques ou spécialisés Prototypes de recherche ou intégrés dans des démarches industrielles Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Principes généraux des ADL Vision « gros grain » Décrire une application à un niveau d’abstraction tel qu’on puisse faire abstraction des problèmes d’implantation (codage) en extraire des éléments réutilisables disposer d’une notation suffisamment précise pour vérifier des propriétés de cohérence de la structure de l’application La plupart sont utilisés pour des architectures logicielles abstraction faite d’une distribution et d’une implantation du code Certains d’entre eux permettent la spécification d’attributs temporels voire de modélisation de gestionnaires de ressources à l’exécution Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Principes généraux des ADL Trois concepts Composant : entité (active ou inactive) du système Un composant est visible et manipulable uniquement par son interface (séparation entre interface et sa réalisation) Connecteur : permet de spécifier les interactions entre les composants Configuration / connexion : interconnexion de composants via des connecteurs pour réaliser une fonctionnalité Styles architecturaux ou modèles de référence (exemple, client / serveur, blackboard, …) [ Machines d’exécution ] Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Principaux ADL RAPIDE, Université de Stanford (1995) Styles architecturaux Hiérarchisation des composants Composant : spécification de leur comportement interne par une abstraction du code (comportement décrits par le formalisme des POSETS) Connexion par l’intermédiaire de relation entre services définis à l’interface (~connecteurs) Reconfiguration dynamique Machines d’exécution (simulation – observation de traces) – aspects fonctionnels Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Principaux ADL WRIGHT, Université Carnegie – Mellon de Pittsburgh (1997) Styles architecturaux Hiérarchisation des composants Composant : spécification de leur comportement interne par une abstraction du code - CSP Sémantique des interfaces (CSP – Hoare 1985) Connexion par l’intermédiaire de connecteurs (composants particuliers - protocoles) Configuration statique Analyse d’architectures par exploration du graphe de classes – aspects fonctionnels Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Principaux ADL DARWIN (1995), Imperial College de Londres Pas de styles architecturaux Reconfiguration dynamique Hiérarchisation des composants Composant : boîte noire dont on ne spécifie que les interfaces Connexion par l’intermédiaire de relation entre services définis à l’interface (~connecteurs) pas d’exploitation du modèle Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Principaux ADL UNICON Pas de styles architecturaux Hiérarchisation des composants Composant : boîte noire dont on ne spécifie que les interfaces Connexion par l’intermédiaire de connecteurs prédéfinis (composants particuliers - protocoles)  Configuration statique Modélisation du support exécutif Vérification de cohérence d’une architecture (propriétés des interfaces) Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Principaux ADL MetaH Systèmes de contrôle – commande (développé par Honeywell – DARPA – 1991) Syntaxe textuelle et graphique Pas de styles architecturaux Hiérarchisation des composants (macro-composants) Composants : spécification du comportement interne par le code source à exécuter Connexion directe entre ports Configuration statique / Modélisation des modes de fonctionnement Modélisation du support exécutif (centralisé) Analyse d’ordonnançabilité des tâches – Analyse de sûreté de fonctionnement Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Principaux ADL BASEMENT Systèmes embarqués dans l’automobile Pas de styles architecturaux Pas de hiérarchisation des composants Composant : Spécification de leur comportement interne par une abstraction du code Connexion par l’intermédiaire de connecteurs (composants particuliers - protocoles) Configuration statique Modélisation du support exécutif Analyse d’ordonnançabilité des tâches et des messages Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL AADL Systèmes embarqués dans l’avionique, l’automobile, l’aérospatiale, les systèmes autonomes Repose sur MetaH Couvre les architectures opérationnelles architectures logicielles (tâches) et les architectures de communication architectures matérielles multi-processeurs et distribuées architectures fermées (pas de création dynamique d’acteurs) Standardisation en cours (2001 - …) SAE (Society of Automotive Engineers - www.sae.org/) Voir http: //www.laas.fr/FERIA/SVF/WADL04/presentations.php Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL AADL Description de composants et de leur organisation Hiérarchisation de composants (composition récursive) Composants – sémantique précise system, data, process, thread, memory, processor, bus, device Interfaces et interactions complétement définies Flux de données et d’événements, appel / retour synchrone, accès partagé Plusieurs protocoles d’ordonnancement supportés Modélisation possible des transitions de modes de marches (commutation entre architectures statiquement définies) Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL AADL Tout composant est décrit sur deux niveaux : Description de l’interface fonctionnelle du composant (ce qui est vu par les couches de haut niveau) Description de l’implémentation du composant (structure interne, propriétés, comportement du composant) Un composant décrit par son interface « externe » peut correspondre à plusieurs « implémentations » Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL AADL Catégories de composants – composants applicatifs System : organisation hiérarchique de composants Process : espace d’adresses virtuelles protégées Thread : unité ordonnançable Périodique, apériodique, sporadique, « background » Subprogram : code séquentiel qui peut être « appelé » Point d’entrée d’un thread ou méthode classique Data : données pouvant être partagées Propriétés d’accès Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL AADL Catégories de composants – composants « plate-forme » Memory : fournit un moyen de stocker des données ou un code Device : interface avec l’environnement externe Processor : fournit le service d’exécution et d’ordonnancement des « threads » Bus : fournit le support d’échange entre des composants « plate-forme » Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL AADL Interactions et flux entre composants Port :transfert directionnel de données ou de contrôle Data port : port de données (pas de file) Event port : port d’événements Event data port : file de messages Immediate connection Delayed connection Port d’entrée Port de sortie Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL AADL Flux flux F1 Flow Exemple : spécification des flux F1 et F2 (vue externe) System S1 I O1 O2 Flow path F2 Flow path F1 spécification d’implémentation (vue interne) Flow path F3 Flow path F4 flux F1 System implementation S1.impl1 I O1 O2 Process P1 Process P2 I1 I2 OP1 OP2 C1 C2 C3 Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL AADL Propriétés Permet de caractériser un composant période d’un thread, … pire temps d’exécution d’un sous-programme, … échéance sur un flux de bout en bout, … Pour chaque catégorie, un ensemble de type de propriétés est prédéfinie On peut ajouter des types de propriétés à chaque catégorie de composant Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL AADL Gestion des fautes et modes de marche Spécification de manière non ambiguë : La redondance passive ou active de composants Un partage continu de variable d’état Un mécanisme de vote majoritaire … Spécification formelle des changements de configuration Chaque configuration est définie statiquement Le coût d’un changement est spécifié L’événement de changement est spécifié Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL AADL Outils et extensions Un outil : OSATE Eclipse Release 3 Réalise la vérification syntaxique et sémantique des modèles Text < -- > XML Éditeur (textuel et graphique) Les outils d’analyse peuvent se « connecter » via XML ou Java (AADL Object API) – compatibilité à AADL Une extension : COTRE (http://www.laas.fr/FERIA/SVF/WADL04/presentations.php) Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL AIL_Transport / EAST - ADL ADL dédiés aux systèmes embarqués dans l’automobile AIL_Transport : ministère de l’industrie, France (1999 – 2001) – industriels et laboratoires EAST – ADL : Projet européen ITEA EAST-EEA (2001 – 2004) – industriels et laboratoires (www.east-eea.net/docs) Représentation d’un système embarqué dans l’automobile à toute étape de son développement Traçabilité Consistence entre modèles et artefacts produits à diverses étapes Possibilité de génération automatique de modèles pour les activités de Validation & Vérification Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Niveaux d’abstraction Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Vues sur le système Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Vehicle Feature Model Description des caractéristiques visibles par l’utilisateur cahier des charges du système variantes Une instance rassemble toutes les autres vues sur un système donné Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Functional Analysis Architecture Description des fonctions du système Supporte une description par niveaux de raffinement Objets Objets « Analysis Function » Interaction par des objets « Function Port » Modèle de comportement associé aux fonctions Pas de modèles de comportement associé aux liens entre fonctions Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Functional Design Architecture Description de l’application du point de vue logiciel Supporte une description par niveaux de raffinement Objets Objets « Composite Software Function » Objets feuilles « Elementary Software Function » Interaction par des objets «  Signal Function Port » un objet « Connector Signal » (lien Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Functional Design Architecture « Elementary Software Function » Modèle d’exécution De la fonction Entre fonction (contrainte « Precedes ») Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Functional Design Architecture « Elementary Software Function » Modèle d’exécution De la fonction Entre fonction (contrainte « Precedes ») Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Function Instance Model Décrit les composants logiciels du système de manière à pouvoir les déployer dans des trames gérées par des protocoles et des tâches gérées par un OS Instancie les objets contenus dans une « Functional Design Architecture » Représentation non structurée Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Function Instance Model Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Hardware Architecture Décrit les composants matériels (architecture informatique support) du système Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Platform Model Décrit les composants de gestion des ressources de la plate-forme matérielle Ordonnanceurs Protocoles Mécanismes des composants middleware (frame packing, filttrage, …) … Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Allocation Model Décrit l’architecture opérationnelle en termes de tâches, trames, buffers pour les communications internes Se spécifie à l’aide d’objets « Deployment » Cf AADL Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Allocation Model Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Allocation Model Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Modélisation des exigences Objets « EFeature » : fonctionalités du système Objets « Interaction » : coopération entre les fonctionalités du système (disjonction, enchaînement, protocoles, …) Objets « Design Constraint » : tout ce qui contraint la recherche d’une solution Coût Standards d’entreprise (micro-contrôleurs, réseaux, …) Contraintes d’allocation des composants réalisant une fonctionnalité Objets « Quality Requirement » : propriétés non fonctionnelles attendues du système Performances, SdF : sécurité, fiabilité, … Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Validation et Vérification (V&V) Vérification / validation de propriétés fonctionnelles de propriétés non fonctionnelles (cf. Quality Requirement) Méthodes Analytiques Simulations Tests Résultats Déterministes Statistiques Probabilistes Génération automatique des modèles nécessaires grâce à la sémantique du langage Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Exemples d’ADL EAST - ADL Validation et Vérification (V&V) – modélisation (cf profile Testing Profile UML 2.0) Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement

Architecture Description Languages Conclusions Architectures logicielles  architectures de systèmes Monde des systèmes embarqués complexes et contraints Intérêt économique fort (réutilisabilité, traçabilité, approches par composants) Intérêt en termes de réglementation Favorise les activités de V&V Favorise la documentation Favorise des échanges formalisés entre partenaires Ecole des Mines de Nancy ISI – SI153 Sûreté de fonctionnement