Unified Modeling Langage
Mémoires Gratuits : Unified Modeling Langage. Rechercher de 53 000+ Dissertation Gratuites et Mémoireser l’essentiel de la notation UML à travers ces concepts et diagrammes soutenus par des exemples et enfin, aborder la problèmatique de la démarche d’analyse et de conception via une étude de cas pour laquelle il sera question de modéliser les exigences, les objets et la dynamique. Il importe de noter que ce document représente notre mini-mémoire dans le cadre de l’unité d’enseignement ENG111 (Information et communication pour ingénieur). En effet,
l’organisation du cursus d’ingénieur à l’EICNAM impose à tout élève ingénieur, la rédaction d’un mini mémoire, afin de mettre en pratique les techniques de recherche documentaire et de rédaction acquises au cours des enseignements de l’UE ENG111
1
I.
Approche Objet
L’usage à grande échelle des langages de programmation objet et l’introduction des concepts
objets dans des langages qui jadis ne les intégraient pas, confère une position majeur à l’approche objet dans le domaine du génie logiciel. Cette situation se justifie en grande partie par l’avènement d’UML qui est le langage standard de modélisation basé sur les concepts objets. L’essentiel des concepts de l’approche objet est présenté ci-dessous.
I.1. Concepts objet I.1.1. Objet
Un objet représente une entité du monde réel ou virtuel, caractérisé par un ensemble de propriétés appelés attributs, des états significatifs correspondant aux valeurs des attributs à différents instants et un comportement correspondant à l’ensemble des opérations qu’il peut exécuter en réaction aux messages provenant d’autres objets.
I.1.2. Classe
Une classe est l’abstraction d’un ensemble d’objet qui possède une structure et un comportement identique. Les opérations et les propriétés d’un objet sont définies dans la classe d’appartenance de cet objet.
Comportement : Ensemble d’opérations Attributs : Ensemble de propriétés
Employé N° employé Nom Qualification Lieu de travail Engager un employé Consulter un employé Modifier un employé Départ d’un employé
Cadre N° employé Nom Qualification Lieu de travail : 135 : Yelouassi : Ingénieur CNAM : Dépôt GPL
Etat
Entrer dans l’organisme Changer de qualification Changer de lieu de travail Sortir de l’organisme
Objet Cadre : Instance de la Classe Employé
Figure N°1: Illustration des concepts Classe – Objet – Comportement – Attribut - Etat
I.1.3. Encapsulation
L’encapsulation est le fait de regrouper dans une même classe la description de la structure des attributs et de la description des opérations.
2
I.1.4. Interface
On entend par interface l’ensemble des opérations d’une classe rendu visible aux autres classes
Traitements
I N T E R F A C E
CLASSE N
Données : Liste des attributs
1 - Opération accessibles - Operation1 - Opération2 - Opération3
2 - Opération NON accessibles - Opération A - Opération B
Figure N°2 : Schéma de principe de l’encapsulation
I.1.5. Généralisation de classe
La généralisation de classe est une opération qui consiste à factoriser dans une superclasse les attributs et/ou les opérations d’un ensemble de classe.
I.1.6. Spécialisation de classe
La spécialisation consiste à créer des sous classes ou classes spécialisées à partir d’une classe par héritage et/ou ajout.
Spécialisation
Œuvre
titre auteur
Relation d’héritage
livre opéra film
Généralisation
roman
BD
Figure N°3: Exempe de généralisation / Spécialisation
3
I.1.7. Polymorphisme
Le polymorphisme est la capacité donnée à une opération de se comporter différemment suivant le contexte de la classe où elle se trouve. Véhicule
Train
Voiture
Bateau
seDeplacer {Sur des rails}
seDeplacer {Sur la route}
seDeplacer {Sur l’eau}
Figure N°4 : Exemple de polymorphisme
I.2. Approche objet vs. Approche fonctionnelle
L’approche fonctionnelle implémentée à l’aide de langages procéduraux, se base sur les fonctions à assurer par le logiciel et propose ainsi un système d’architecture hiérarchique et descendante, alignant ainsi l’avantage de la possibilité de factorisation des composants commun et implicitement l’inconvénient d’une maintenance complexe en cas d’évolution. L’approche objet quant à elle considère le logiciel comme une collection d’objet caractérisés par des attributs et des comportements de telle sorte que de l’interaction entre ces objets résulte la fonctionnalité attendue de l’application. réutilisabilité. Approche Classique Approche orientée objet Le système ainsi obtenu aligne donc les avantages de modularité et de
On parle ici de processus, de procédure et routine, type de données abstraits, de flot de données Séparation des données et des processus qui les traitent « Diviser pour régner » Conception par décomposition et facturation des processus
On parle ici d’objets, de méthodes, d’attributs, d’encapsulation, d’envoi de message (interactions) Encapsulation des données et leurs traitements dans une même unité
Penser en termes d’objets qui s’envoient des messages
Figure N°5 : Illustration Approche Objet vs. Approche fonctionnelle
4
II.
Présentation d’UML
Cette phase de notre étude, aura pour objectif d’exposer brièvement l’historique d’UML, son
objectif et enfin une introduction au formalisme d’UML.
II.1. Historique d’UML
UML compte déjà plus d’une dizaine d’année d’existence. En effet, au début des années 90, il y avait déjà une cinquantaine de méthodes d’analyse et de conception objet au nombre desquels les trois grandes méthodes OMT, BOOCH et OOSE respectivement issue des travaux de James Rumbaugh, Grady Booch, et Ivar Jacobson. De la fusion de ces trois méthodes entre 1994 – 1996 est né UML dont la première version a été publiée par l’OMG au cous de l’année 1997. Nous sommes actuellement à la version V2.4.1 de UML qui depuis la publication de la version 1.1 le 23 Novembre 1997 a connu bon nombre d’évolutions suivant la chronologie ci-dessous (Figure N°6) Date de publication Mars 2000 Septembre 2001 Mars 2003 Août 2007 Novembre 2007 Février 2009 Mai 2010 Mars 2011 Août 2011 version 1.3 version 1.4 version 1.5 version 2.1.1 version 2.1.2 version 2.2 version 2.3 version 2.4 – Beta 2 version 2.4.1 Version
Figure N°6 : Tableau chronogique d’UML
UML s’est rapidement imposé comme un langage graphique de modélisation en perpétuelle évolution et est devenu un standard dans le domaine de la modélisation objet.
II.2. Objectif d’UML
L’objectif principal de l’unification des trois méthodes objets Booch, OOSE et OMT était de proposer une alternative à la prolifération des méthodes objets en permettant les échanges entre différents outils de modélisation objet. Par la suite, les différentes améliorations apportés à la version 1.0 d’UML, notamment, en ce qui concerne les règles de syntaxe, la structure de langage et la capacité de modélisation ont permis d’attribuer à UML les quatre grands objectifs que sont:
5
• • • •
Visualiser Spécifier Construire Documenter
Dans le domaine informatique, UML est utilisé pour spécifier, modifier et construire les documents nécessaires au bon développement d'un
...