Introduction à UML 2 Modélisation Orientée Objet de Systèmes Logiciels Pierre G

Introduction à UML 2 Modélisation Orientée Objet de Systèmes Logiciels Pierre Gérard Université de Paris 13  IUT Villetaneuse DUT Informatique  S2D - 2008/2009 Table des matières 1 Introduction à la Modélisation Orientée Objet 1 2 Modélisation objet élémentaire avec UML 5 2.1 Diagrammes de cas d'utilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.2 Diagrammes de classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.3 Diagrammes d'objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.4 Diagrammes de séquences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 3 UML et méthododologie 33 3.1 Des besoins au code avec UML : une méthode minimale . . . . . . . . . . . . . . 33 3.2 Rational Uni ed Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 3.3 eXtreme programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4 Modélisation avancée avec UML 53 4.1 Expression de contraintes avec OCL . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.2 Diagrammes d'états-transitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 4.3 Digrammes d'activités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 4.4 Diagrammes de communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 4.5 Diagrammes de composants et de déploiement . . . . . . . . . . . . . . . . . . . . 87 5 Bonnes pratiques de la modélisation objet 89 5.1 Design Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 1 INTRODUCTION À LA MODÉLISATION ORIENTÉE OBJET 1 Introduction à la Modélisation Orientée Objet Bibliographie UML   UML 2.0, guide de référence   James Rumbaugh, Ivar Jacobson, Grady Booch  Editions Campus Press (2005)   UML 2.0   Benoît Charoux, Aomar Osmani, Yann Thierry-Mieg  Editions Pearson, Education France (2008)   UML 2.0 Superstructure  et  UML 2.0 Infrastructure   OMG (Object Management Group)  www.uml.org (2004). Bibliographie OCL   UML 2.0 Object Constraint Language (OCL)   OMG (Object Management Group)  www.uml.org (2004)  Cours de Jean-Marie Favre, IMAG  http://megaplanet.org/jean-marie-favre Matériel et logiciel  Systèmes informatiques :  80 % de logiciel ;  20 % de matériel.  Depuis quelques années, la fabrication du matériel est assurée par quelques fabricants seulement.  Le matériel est relativement able.  Le marché est standardisé. Les problèmes liés à l'informatique sont essentiellement des problèmes de logiciel. La  crise du logiciel   Étude sur 8 380 projets (Standish Group, 1995) :  Succès : 16 % ;  Problématique : 53 % (budget ou délais non respectés, défaut de fonctionnalités) ;  Échec : 31 % (abandonné). Le taux de succès décroît avec la taille des projets et la taille des entreprises.  Génie Logiciel (Software Engineering) :  Comment faire des logiciels de qualité ?  Qu'attend-on d'un logiciel ? Quels sont les critères de qualité ? Critères de qualité d'un logiciel  Utilité  Adéquation entre le logiciel et les besoins des utilisateurs ;  Utilisabilité  Fiabilité  Interopérabilité  Interactions avec d'autres logiciels ; Introduction à UML 2 1 / 96 1 INTRODUCTION À LA MODÉLISATION ORIENTÉE OBJET  Performance  Portabilité  Réutilisabilité  Facilité de maintenance  Un logiciel ne s'use pas pourtant, la maintenance absorbe une très grosse partie des eorts de développement. Poids de la maintenance Réartition eort dév. Origine des erreurs Coût de la maintenance Dé nition des besoins 6% 56% 82% Conception 5% 27% 13% Codage 7% 7% 1% Intégration Tests 15% 10% 4% Maintenance 67% (Zeltovitz, De Marco) Cycle de vie La qualité du processus de fabrication est garante de la qualité du produit.  Pour obtenir un logiciel de qualité, il faut en maîtriser le processus d'élaboration.  La vie d'un logiciel est composée de diérentes étapes.  La succession de ces étapes forme le cycle de vie du logiciel.  Il faut contrôler la succession de ces diérentes étapes. Etapes du développement  Étude de faisabilité  Spéci cation  Déterminer les fonctionnalités du logiciel.  Conception  Déterminer la façon dont dont le logiciel fournit les diérentes fonctionnalités recherchées.  Codage  Tests  Essayer le logiciel sur des données d'exemple pour s'assurer qu'il fonctionne correctement.  Maintenance Modélisation 2 / 96 Introduction à UML 2 1 INTRODUCTION À LA MODÉLISATION ORIENTÉE OBJET Modèle  Un modèle est une représentation abstraite de la réalité qui exclut certains détails du monde réel.  Il permet de réduire la complexité d'un phénomène en éliminant les détails qui n'in u- encent pas son comportement de manière signi cative.  Il re ète ce que le concepteur croit important pour la compréhension et la prédiction du phénomène modélisé, les limites du phénomène modélisé dépendent des objectifs du modèle. Langages de modélisation  Un langage de modélisation doit dé nir :  La sémantique des concepts ;  Une notation pour la représentation de concepts ;  Des règles de construction et d'utilisation des concepts.  Des langages à diérents niveaux de formalisation  Langages formels (Z,B,VDM) : le plus souvent mathématiques, au grand pouvoir d'expression et permettant des preuves formelles sur les spéci cations ;  Langages semi-formels (MERISE, UML...) : le plus souvent graphiques, au pouvoir d'expression moindre mais plus faciles d'emploi.  L'industrie du logiciel dispose de nombreux langages de modélisation :  Adaptés aux systèmes procéduraux (MERISE...) ;  Adaptés aux systèmes temps réel (ROOM, SADT...) ;  Adaptés aux systèmes à objets (OMT, Booch, UML...).  Le rôle des outils (Ateliers Génie Logiciel) est primordial pour l'utilisabilité en pratique des langages de modélisation. Modélisation par décomposition fonctionnelle  Approche descendante :  Décomposer la fonction globale jusqu'à obtenir des fonctions simples à appréhender et donc à programmer. C'est la fonction qui donne la forme du système. Introduction à UML 2 3 / 96 1 INTRODUCTION À LA MODÉLISATION ORIENTÉE OBJET Modélisation orientée objets  La Conception Orientée Objet (COO) est la méthode qui conduit à des architectures logi- cielles fondées sur les objets du système, plutôt que sur une décomposition fonctionelle. C'est la structure du système lui donne sa forme.  On peut partir des objets du domaine (briques de base) et remonter vers le système global : approche ascendante. Attention, l'approche objet n'est pas seulement ascendante. Uni ed Modeling Language  Au milieu des années 90, les auteurs de Booch, OOSE et OMT ont décidé de créer un langage de modélisation uni é avec pour objectifs :  Modéliser un système des concepts à l'exécutable, en utilisant les techniques orientée objet ;  Réduire la complexité de la modélisation ;  Utilisable par l'homme comme la machine :  Représentations graphiques mais disposant de qualités formelles su santes pour être traduites automatiquement en code source ;  Ces représentations ne disposent cependant pas de qualités formelles su santes pour justi er d'aussi bonnes propriétés mathématiquesque des langeges de spéci cation formelle (Z, VDM...).  O ciellement UML est né en 1994. UML v2.0 date de 2005. Il s'agit d'une version majeure apportant des innovations radicales et étendant largement le champ d'application d'UML. 4 / 96 Introduction à UML 2 2 MODÉLISATION OBJET ÉLÉMENTAIRE AVEC UML 2 Modélisation objet élémentaire avec UML 2.1 Diagrammes de cas d'utilisation Modélisation des besoins Avant de développer un système, il faut savoir précisément à QUOI il devra servir, cad à quels besoins il devra répondre.  Modéliser les uploads/Industriel/ uml-cours-support-pdf.pdf

  • 35
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager