Une méthodologie de conception des systèmes distribués basée sur UML



Documents pareils
Synthèse d une conception UML temps-réel à partir de diagrammes de séquences

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

UML (Paquetage) Unified Modeling Language

IFT2255 : Génie logiciel

Analyse,, Conception des Systèmes Informatiques

Une méthode formelle pour la vérification de la consistance temporelle et la gestion prédictive de la Qualité de service pour la présentation des

Description de la formation

Architecture distribuée

Développement d un interpréteur OCL pour une machine virtuelle UML.

Chapitre I : le langage UML et le processus unifié

openarchitectureware & transformation de modèle Yannick Lizzi Architecte Logiciel itemis France Mail: lizzi@itemis.de

RTDS G3. Emmanuel Gaudin

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

La démarche MDA. Auteur : Projet ACCORD (Assemblage de composants par contrats en environnement ouvert et réparti)*

DEVELOPPEMENT ET MAINTENANCE DE LOGICIEL: OUTIL DE PILOTAGE

Objectif : Passer de l analyse métier et fonctionnelle à la définition des applications qui

Efficient Object Versioning for Object- Oriented Languages From Model to Language Integration

Classeur de suivi de l auditeur. Architecture et Ingénierie des Systèmes et des Logiciels

Travaux soutenus par l ANR. Jean-François CAPURON (DGA) Bruno LEGEARD (Smartesting)

Patrons de Conception (Design Patterns)

Les diagrammes de modélisation

Prise en compte des ressources dans les composants logiciels parallèles

Le Processus RUP. H. Kadima. Tester. Analyst. Performance Engineer. Database Administrator. Release Engineer. Project Leader. Designer / Developer

NFP111 Systèmes et Applications Réparties

Université de Bangui. Modélisons en UML

Voix sur IP Étude d approfondissement Réseaux

Sujet de thèse CIFRE RESULIS / LGI2P

Élasticité des applications à base de services dans le Cloud

Génie logiciel (Un aperçu)

C est quoi le SWAT? Les équipes décrites par James Martin s appellent SWAT : Skilled With Advanced Tools.

Modèles système, modèles logiciel et modèles de code dans les applications spatiales

Cours en ligne Développement Java pour le web

Une proposition d extension de GML pour un modèle générique d intégration de données spatio-temporelles hétérogènes

Vérifier la qualité de vos applications logicielle de manière continue

Apprendre la Programmation Orientée Objet avec le langage Java (avec exercices pratiques et corrigés)

Proposition de sujet de thèse CIFRE EUROCOPTER / LGI2P

Refonte front-office / back-office - Architecture & Conception -

Générer du code à partir d une description de haut niveau

Problématiques de recherche. Figure Research Agenda for service-oriented computing

La plate-forme DIMA. Master 1 IMA COLI23 - Université de La Rochelle

Architecture à base de composants pour le déploiement adaptatif des applications multicomposants

Conception des systèmes répartis

L EAI. par la pratique. François Rivard. Thomas Plantain. Groupe Eyrolles, 2003 ISBN :

Rational Unified Process

Cours de Génie Logiciel

Mineure Architectures Orientées Services SOA Business Process Modeling (BPM) Mineure SOA. Business Process Modeling (BPM)

Formation : Modélisation avec UML 2.0 et Mise en pratique

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Traduction des Langages : Le Compilateur Micro Java

Visual Paradigm Contraintes inter-associations

UML (Diagramme de classes) Unified Modeling Language

Diagrammes de Package, de déploiement et de composants UML

Eléments de spécification des systèmes temps réel Pierre-Yves Duval (cppm)

BIG DATA en Sciences et Industries de l Environnement

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

Cours Gestion de projet

Projet Active Object

CONCEPTION DE PROJET SIG AVEC UML

OCL - Object Constraint Language

Cours STIM P8 TD 1 Génie Logiciel

Certification de l assemblage de composants dans le développement de logiciels critiques

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.

Laboratoire 4 Développement d un système intelligent

CQP Développeur Nouvelles Technologies (DNT)

Eléments pour l animation l réunion du 16 Septembre v0.4 du 13 Septembre 2010

Pascal Brunot Hadrien Cambazard UML FOR BUSINESS INTELLIGENCE PROJECT

Business Process Modeling (BPM)

OPEN DATA : CHALLENGES ET PERSPECTIVES D ENTREPOSAGE

Sommaire. Conduite de projet Méthode d analyse et de conception. Processus unifié. Objectifs d un processus de développement

Modélisation de Lignes de Produits en UML *

Retour d expériences avec UML

Synergies entre Artisan Studio et outils PLM

EP60.92 Projet d application pluridisciplinaire La chasse aux trésors

Modelio by Modeliosoft

En vue de l obtention du. Discipline : Informatique. Présentée et soutenue par Mohamed HADJ KACEM. Le Jeudi 13 Novembre 2008

3. UML - Unified Modeling Language Diagrammes statiques

Analyse et Conception objet du logiciel Analyse et conception objet du logiciel : Méthode de conception objet et notation UML.

Modélisation d un réseau sociotechnique Application à la gestion de crise. Guillaume Philippe (UBS / CAMKA System) Christine Chauvin (UBS)

Implémentation Matérielle des Services d un RTOS sur Circuit Reconfigurable

Présentation du M2 SIC : Systèmes Informatiques et Applications Marines

SECTION 5 BANQUE DE PROJETS

Réussir la modélisation UML des phases amont Techniques de «pré-modélisation» : un pont vers le modèle

CURRICULUM VITAE. Informations Personnelles

Conception, architecture et urbanisation des systèmes d information

Le génie logiciel. maintenance de logiciels.

Le Guide Pratique des Processus Métiers

Modélisation de la Reconfiguration Dynamique appliquée à un décodeur LDPC Non Binaire

ANALYSTE PROGRAMMEUR DIPLÔME D ÉTABLISSEMENT

Offre Référentiel d échange

DSL. Domain Specific Language. À l'aide des technologies Eclipse Modeling. Goulwen Le Fur Le 23 novembre 2012

Meta Object Facility. Plan

Management des processus opérationnels

UNIVERSITÉ DEMONTRÉAL

Utilisation de SysML pour la simulation d environnement virtuel

Validation des Besoins dans les Modèles UML2.0

Cours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé.

Université Paris XI Faculté des sciences d Orsay THÈSE. présentée pour l obtention du grade de Docteur en Sciences de l Université Paris-Sud XI Orsay

Comparaison de trois techniques de modélisation de processus: ADONIS, OSSAD et UML

Gouvernance IT : par où commencer? Hubert Lalanne DE, Chief Architect for Industries IBM Software France

Modélisation des interfaces matériel/logiciel

Transcription:

Une méthodologie de conception des systèmes distribués basée sur UML Nouvelles Technologies de la Répartition (NOTERE 2005) 1 er septembre 2005 Ludovic Apvrille Pierre de Saqui-Sannes Axelle Apvrille Page 1

Plan TURTLE : un profil UML outillé Limites de l approche actuelle Méthodologie proposée Formalisation des diagrammes de déploiement Génération automatique de code Démonstration Conclusion Page 2

Contexte : le profil UML TURTLE Bref historique Introduit en 1999 Partenaires : LAAS/CNRS, ENSICA, Université Concordia, ENST TURTLE-P (2003), analyse TURTLE (2005) Profil UML dont la sémantique formelle est donnée par traduction en RT-LOTOS Applications temps-réel, protocoles Outils supports : TTool (ENST) + RTL (LAAS- CNRS) Analyse, conception et validation formelle de protocoles / applications Page 3

Diagramme de classes TURTLE Attributs Gate Formule OCL associant des portes de synchronisation Opérateur de composition «Synchro» Page 4

Approche actuelle Validation formelle Génération de code (3) Code (Java) Exécution (2) Conception CD + ADs (1) Analyse IOD + SDs Synthèse automatique Validation formelle Page 5

Vers une nouvelle extension Limites de l approche actuelle Applications conçues de façon monolithique Conséquences Distribution de l application non validée formellement Code Java monolithique Non exécutable dans un contexte distribué Contributions Nouvelle méthodologie Sémantique formelle aux diagrammes de déploiement UML 2 Notion de composants, notion de noeuds d exécution Génération de code qui tient compte de la distribution Mise à jour des outils supports Page 6

Propositions : Méthodologie Validation formelle (3) Déploiement : composants + DD Génération de code (4) Code (Java) Exécution Génération et exécution de code Java (2) Conception CD + ADs Validation formelle Synthèse automatique (1) Analyse IOD + SDs Validation formelle Page 7

Formalisation des diagrammes de déploiement UML 2 Notion de composant TURTLE Regroupement de classes TURTLE et des relations relatives à ces classes TURTLE Éléments internes d un composant indissociables Déploiement de composants TURTLE Notion de nœud d exécution = «node» en UML 2 Instance d un composant TURTLE sur un nœud d exécution TURTLE = artéfact TURTLE Liens de communication Information d interconnexion de portes Délai, taux de perte Information pour la génération de code «réseau» Page 8

Exemple Page 9

Sémantique formelle Diagramme de déploiement + description des composants -> conception TURTLE Classes des composants Ajoutées à la conception TURTLE (renommage) Liens asynchrones Chaque lien est modélisé par une classe TURTLE ajoutée à la conception Délai, taux de perte Acheminement des messages Relation de synchronisation entre les classes des composants et les liens Page 10

Génération de code Java (1/2) Générateur de code Java pour les conceptions TURTLE Une classe Java par classe TURTLE Une classe principale Synchronisations, opérateurs temporels, etc. sont implémentés sous forme de librairies Java Générateur de code pour un déploiement Réutilisation du générateur pour la conception Problème des liens Modélisés à des fins de validation formelle et de génération de code Certains paramètres ne peuvent être pris en considération Délai, taux de perte Certains paramètres doivent être traités : protocoles utilisés, numéro de ports, adresses réseaux Page 11

Génération de code Java (2/2) C1 C1_T1 C1_T1.g1 = L12.gt1 Synchro Main_C1.java g1 = g2, UDP, etc. L12 (1) code Java C2 L12.gt2 = C2_T2.g2 Synchro (2) (2) C2_T2 Main_C2.java (1) Génération d une conception TURTLE annotée Portes UDP / TCP / UDP + paramètres associés (2) Générateur de code Java pour les conceptions TURTLE Générateur «étendu» Les portes annotées «réseau» sont traitées différemment Plusieurs modules logiciels exécutables sont générés Librairies qui gèrent les actions sur les portes Émission, réception de données via UDP, TCP, RMI Page 12

Outillage TTool Conception Déploiement de composants Déploiement Validation Simulation Analyse d accessiblité Minimisation Bisimulation Paquetages Java Spécification RT-LOTOS Graphe d accessibilité Trace de Graphe simulation d accessibilité Compilateur Java Aldebaran / RTL CADP Page 13

Conclusion Profil TURTLE Arrivé à maturité Expériences académiques et industrielles Enrichissement du profil Phase de déploiement Sémantique formelle Génération de code «réseau» Outillage TTool + RTL Travaux futurs Conception TURTLE à la UML 2.0 Génération de séquences de test TTool téléchargeable bientôt gratuitement! http://www.eurecom.fr/~apvrille/turtle Page 14

Questions? Article NOTERE 2005 L. Apvrille, P. de Saqui-Sannes, Une méthodologie de conception des systèmes distribués basée sur UML", Nouvelles Technologies de la répartition (NOTERE'05), Gatineau, Québec, Canada, Aout-Septembre 2005. Autres références L. Apvrille, P. de Saqui-Sannes, F. Khendek, Synthèse d'une conception UML temps-réel à partir de diagrammes de séquences", Colloque Francophone sur l'ingénierie des protocoles (CFIP'05), Bordeaux, France, mars 2005. L. Apvrille, J.-P. Courtiat, C. Lohr, P de Saqui-Sannes, TURTLE: A Real-Time UML Profile Supported by a Formal Validation Toolkit, IEEE Transactions on Software Engineering, Vol. 30, No. 7, pp. 473-487, July 2004. L. Apvrille, P de Saqui-Sannes, P. Senac, C. Lohr, Verifying Service Continuity in a Satellite Reconfiguration Procedure, Journal of Automated Software, Engineering, Kluver, issue 11:2, 2004. L. Apvrille, P. de Saqui-Sannes, C. Lohr, P. Sénac, J.-P. Courtiat, A New UML Profile for Real-time System Formal Design and Validation, Proceedings of the Fourth International Conference on the Unified Modeling Language (UML 2001), Toronto, Canada, October 2001. Page 15