Plus d'informations Moins d'informations
Fermer
Résumé du document Ce livre est un cour génial d'UML Complet .Il est Composé de plus de 170 pages ,il vous apprend l'UML d'une manière génial .
Sommaire 1 Introduction à la modélisation objet 1.1 Le génie logiciel . . . . . . . . . . . . . . . 1.1.1 L'informatisation . . . . . . . . . . 1.1.2 Les logiciels . . . . . . . . . . . . . 1.1.3 Le génie logiciel . . . . . . . . . . . 1.1.4 Notion de qualité pour un logiciel 1.2 Modélisation, cycles de vie et méthodes . 1.2.1 Pourquoi et comment modéliser ? 1.2.2 Le cycle de vie d'un logiciel . . . . 1.2.3 Modèles de cycles de vie d'un logic 1.2.4 Méthodes d'analyse et de conceptio 1.3 De la programmation structurée à l'approc 1.3.1 Méthodes fonctionnelles ou structu 1.3.2 L'approche orientée objet . . . . . 1.3.3 Approche fonctionnelle vs. approch 1.3.4 Concepts importants de l'approche 1.3.5 Historique la programmation par o 1.4 UML . . . . . . . . . . . . . . . . . . . . . 1.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.2 Histoire des modélisations par objets . . . . . . . . . . . 1.4.3 UML en oeuvre . . . . . . . . . . . . . . . . . . . . . . . . 1.4.4 Comment présenter un modèle UML ? . . . . . . . . . . . 1.5 Travaux Dirigés - Introduction à la modélisation objet . . . . . 1.5.1 Objectifs et mise en situation . . . . . . . . . . . . . . . . 1.5.2 Analyse des besoins . . . . . . . . . . . . . . . . . . . . . 1.5.3 Conception avec une approche structurée . . . . . . . . . 1.5.4 Conception avec une approche objet . . . . . . . . . . . . 1.5.5 Maintenance évolutive . . . . . . . . . . . . . . . . . . . . 2 Diagramme de cas d'utilisation 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Éléments des diagrammes de cas d'utilisation . . . . . . . . . . . 2.2.1 Acteur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.2 Cas d'utilisation . . . . . . . . . . . . . . . . . . . . . . . . 2.2.3 Représentation d'un diagramme de cas d'utilisation . . . 2.3 Relations dans les diagrammes de cas d'utilisation . . . . . . . . 2.3.1 Relations entre acteurs et cas d'utilisation . . . . . . . 2.3.2 Relations entre cas d'utilisation . . . . . . . . . . . . . . . . 2.3.3 Relations entre acteurs . . . . . . . . . . . . . . . . . . . . . 2.4 Notions générales du langage UML . . . . . . . . . . . . . . . . . 2.4.1 Paquetage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.2 Espace de noms . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.3 Classeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.4 Stéréotype . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.5 Note . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5 Modélisation des besoins avec UML . . . . . . . . . . . . . . . . . 2.5.1 Comment identiï¬er les acteurs ? . . . . . . . . . . . . . . . 2.5.2 Comment recenser les cas d'utilisation ? . . . . . . . . . . . 2.5.3 Description textuelle des cas d'utilisation . . . . . . . . . . 2.5.4 Remarques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6 Travaux Dirigés - Diagramme de cas d'utilisation . . . . . . . . . 2.6.1 Identiï¬cation des acteurs et de cas d'utilisation simples . . 2.6.2 Caisse enregistreuse . . . . . . . . . . . . . . . . . . . . . . 2.6.3 La bibliothèque . . . . . . . . . . . . . . . . . . . . . . . . . 3 Diagramme de classes 3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Les classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.1 Notions de classe et d'instance de classe . . . . . . . . . . . 3.2.2 Caractéristiques d'une classe . . . . . . . . . . . . . . . . . 3.2.3 Représentation graphique . . . . . . . . . . . . . . . . . . . 3.2.4 Encapsulation, visibilité, interface . . . . . . . . . . . . . . 3.2.5 Nom d'une classe . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.6 Les attributs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.7 Les méthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.8 Classe active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Relations entre classes . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.1 Notion d'association . . . . . . . . . . . . . . . . . . . . . . . . 3.3.2 Terminaison d'association . . . . . . . . . . . . . . . . . . . . . 3.3.3 Association binaire et n-aire . . . . . . . . . . . . . . . . . . . . 3.3.4 Multiplicité ou cardinalité . . . . . . . . . . . . . . . . . . . . . 3.3.5 Navigabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.6 Qualiï¬cation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.7 Classe-association . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.8 Agrégation et composition . . . . . . . . . . . . . . . . . . . . 3.3.9 Généralisation et Héritage . . . . . . . . . . . . . . . . . . . . . 3.3.10 Dépendance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4 Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5 Diagramme d'objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.2 Représentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.3 Relation de dépendance d'instanciation . . . . . . . . . . . . . 3.6 Élaboration et implémentation d'un diagramme de classes . . . . . . 3.6.1 Élaboration d'un diagramme de classes . . . . . . . . . . . . . 3.6.2 Implémentation en Java . . . . . . . . . . . . . . . . . . . . . . 3.6.3 Implémentation en SQL . . . . . . . . . . . . . 3.7 Travaux Dirigés - Diagramme de classe . . . . . . . . 3.7.1 Propriétés et relations simples . . . . . . . . . 3.7.2 Identiï¬cation des relations . . . . . . . . . . . 3.7.3 Interfaces / héritage multiple . . . . . . . . . . 3.7.4 Classes / Objets / Implémentation . . . . . . . . 3.7.5 Système de réservation de vols : Modèle du dom 3.7.6 La bibliothèque . . . . . . . . . . . . . . . . . . 4 Object constraint langage (OCL) 4.1 Expression des contraintes en UML . . . . . . . . . . . 4.1.1 Introduction . . . . . . . . . . . . . . . . . . . . 4.1.2 Écriture des contraintes . . . . . . . . . . . . . 4.1.3 Représentation des contraintes et contraintes p 4.2 Intérêt d'OCL . . . . . . . . . . . . . . . . . . . . . . . 4.2.1 OCL - Introduction . . . . . . . . . . . . . . . . 4.2.2 Illustration par l'exemple . . . . . . . . . . . . 4.3 Typologie des contraintes OCL . . . . . . . . . . . . . 4.3.1 Diagramme support des exemples illustratifs . 4.3.2 Contexte (context) . . . . . . . . . . . . . . . . . 4.3.3 Invariants (inv) . . . . . . . . . . . . . . . . . . 4.3.4 Préconditions et postconditions (pre, post) . . . . . . . . . . 4.3.5 Résultat d'une méthode (body) . . . . . . . . . . . . . . . . 4.3.6 Déï¬nition d'attributs et de méthodes (def et let. . .in) . . . . 4.3.7 Initialisation (init) et évolution des attributs (derive) . . . . 4.4 Types et opérations utilisables dans les expressions OCL . . . . . 4.4.1 Types et opérateurs prédéï¬nis . . . . . . . . . . . . . . . . 4.4.2 Types du modèle UML . . . . . . . . . . . . . . . . . . . . . 4.4.3 OCL est un langage typé . . . . . . . . . . . . . . . . . . . . 4.4.4 Collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5 Accès aux caractéristiques et aux objets . . . . . . . . . . . . . . . 4.5.1 Accès aux attributs et aux opérations (self ) . . . . . . . . . 4.5.2 Navigation via une association . . . . . . . . . . . . . . . . 4.5.3 Navigation via une association qualiï¬ée . . . . . . . . . . . 4.5.4 Navigation vers une classe association . . . . . . . . . . . . 4.5.5 Navigation depuis une classe association . . . . . . . . . . 4.5.6 Accéder à une caractéristique redéï¬nie (oclAsType()) . . . . 4.5.7 Opérations prédéï¬nies sur tous les objets . . . . . . . . . . 4.5.8 Opération sur les classes . . . . . . . . . . . . . . . . . . . . 4.6 Opérations sur les collections . . . . . . . . . . . . . . . . . . . . . 4.6.1 Introduction : «.», «->», «: :» et self . . . . . . . . . . . . . . 4.6.2 Opérations de base sur les collections . . . . . . . . . . 4.6.3 Opération sur les éléments d'une collection . 4.6.4 Règles de précédence des opérateurs . . . . . 4.7 Exemples de contraintes . . . . . . . . . . . . . . . . ........ Et D'autre chose
1 Introduction à la modélisation objet 1.1 Le génie logiciel . . . . . . . . . . . . . . . 1.1.1 L'informatisation . . . . . . . . . . 1.1.2 Les logiciels . . . . . . . . . . . . . 1.1.3 Le génie logiciel . . . . . . . . . . . 1.1.4 Notion de qualité pour un logiciel 1.2 Modélisation, cycles de vie et méthodes . 1.2.1 Pourquoi et comment modéliser ? 1.2.2 Le cycle de vie d'un logiciel . . . . 1.2.3 Modèles de cycles de vie d'un logic 1.2.4 Méthodes d'analyse et de conceptio 1.3 De la programmation structurée à l'approc 1.3.1 Méthodes fonctionnelles ou structu 1.3.2 L'approche orientée objet . . . . . 1.3.3 Approche fonctionnelle vs. approch 1.3.4 Concepts importants de l'approche 1.3.5 Historique la programmation par o 1.4 UML . . . . . . . . . . . . . . . . . . . . . 1.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.2 Histoire des modélisations par objets . . . . . . . . . . . 1.4.3 UML en oeuvre . . . . . . . . . . . . . . . . . . . . . . . . 1.4.4 Comment présenter un modèle UML ? . . . . . . . . . . . 1.5 Travaux Dirigés - Introduction à la modélisation objet . . . . . 1.5.1 Objectifs et mise en situation . . . . . . . . . . . . . . . . 1.5.2 Analyse des besoins . . . . . . . . . . . . . . . . . . . . . 1.5.3 Conception avec une approche structurée . . . . . . . . . 1.5.4 Conception avec une approche objet . . . . . . . . . . . . 1.5.5 Maintenance évolutive . . . . . . . . . . . . . . . . . . . . 2 Diagramme de cas d'utilisation 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Éléments des diagrammes de cas d'utilisation . . . . . . . . . . . 2.2.1 Acteur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.2 Cas d'utilisation . . . . . . . . . . . . . . . . . . . . . . . . 2.2.3 Représentation d'un diagramme de cas d'utilisation . . . 2.3 Relations dans les diagrammes de cas d'utilisation . . . . . . . . 2.3.1 Relations entre acteurs et cas d'utilisation . . . . . . . 2.3.2 Relations entre cas d'utilisation . . . . . . . . . . . . . . . . 2.3.3 Relations entre acteurs . . . . . . . . . . . . . . . . . . . . . 2.4 Notions générales du langage UML . . . . . . . . . . . . . . . . . 2.4.1 Paquetage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.2 Espace de noms . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.3 Classeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.4 Stéréotype . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.5 Note . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5 Modélisation des besoins avec UML . . . . . . . . . . . . . . . . . 2.5.1 Comment identiï¬er les acteurs ? . . . . . . . . . . . . . . . 2.5.2 Comment recenser les cas d'utilisation ? . . . . . . . . . . . 2.5.3 Description textuelle des cas d'utilisation . . . . . . . . . . 2.5.4 Remarques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6 Travaux Dirigés - Diagramme de cas d'utilisation . . . . . . . . . 2.6.1 Identiï¬cation des acteurs et de cas d'utilisation simples . . 2.6.2 Caisse enregistreuse . . . . . . . . . . . . . . . . . . . . . . 2.6.3 La bibliothèque . . . . . . . . . . . . . . . . . . . . . . . . . 3 Diagramme de classes 3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Les classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.1 Notions de classe et d'instance de classe . . . . . . . . . . . 3.2.2 Caractéristiques d'une classe . . . . . . . . . . . . . . . . . 3.2.3 Représentation graphique . . . . . . . . . . . . . . . . . . . 3.2.4 Encapsulation, visibilité, interface . . . . . . . . . . . . . . 3.2.5 Nom d'une classe . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.6 Les attributs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.7 Les méthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.8 Classe active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Relations entre classes . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.1 Notion d'association . . . . . . . . . . . . . . . . . . . . . . . . 3.3.2 Terminaison d'association . . . . . . . . . . . . . . . . . . . . . 3.3.3 Association binaire et n-aire . . . . . . . . . . . . . . . . . . . . 3.3.4 Multiplicité ou cardinalité . . . . . . . . . . . . . . . . . . . . . 3.3.5 Navigabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.6 Qualiï¬cation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.7 Classe-association . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.8 Agrégation et composition . . . . . . . . . . . . . . . . . . . . 3.3.9 Généralisation et Héritage . . . . . . . . . . . . . . . . . . . . . 3.3.10 Dépendance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4 Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5 Diagramme d'objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.2 Représentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.3 Relation de dépendance d'instanciation . . . . . . . . . . . . . 3.6 Élaboration et implémentation d'un diagramme de classes . . . . . . 3.6.1 Élaboration d'un diagramme de classes . . . . . . . . . . . . . 3.6.2 Implémentation en Java . . . . . . . . . . . . . . . . . . . . . . 3.6.3 Implémentation en SQL . . . . . . . . . . . . . 3.7 Travaux Dirigés - Diagramme de classe . . . . . . . . 3.7.1 Propriétés et relations simples . . . . . . . . . 3.7.2 Identiï¬cation des relations . . . . . . . . . . . 3.7.3 Interfaces / héritage multiple . . . . . . . . . . 3.7.4 Classes / Objets / Implémentation . . . . . . . . 3.7.5 Système de réservation de vols : Modèle du dom 3.7.6 La bibliothèque . . . . . . . . . . . . . . . . . . 4 Object constraint langage (OCL) 4.1 Expression des contraintes en UML . . . . . . . . . . . 4.1.1 Introduction . . . . . . . . . . . . . . . . . . . . 4.1.2 Écriture des contraintes . . . . . . . . . . . . . 4.1.3 Représentation des contraintes et contraintes p 4.2 Intérêt d'OCL . . . . . . . . . . . . . . . . . . . . . . . 4.2.1 OCL - Introduction . . . . . . . . . . . . . . . . 4.2.2 Illustration par l'exemple . . . . . . . . . . . . 4.3 Typologie des contraintes OCL . . . . . . . . . . . . . 4.3.1 Diagramme support des exemples illustratifs . 4.3.2 Contexte (context) . . . . . . . . . . . . . . . . . 4.3.3 Invariants (inv) . . . . . . . . . . . . . . . . . . 4.3.4 Préconditions et postconditions (pre, post) . . . . . . . . . . 4.3.5 Résultat d'une méthode (body) . . . . . . . . . . . . . . . . 4.3.6 Déï¬nition d'attributs et de méthodes (def et let. . .in) . . . . 4.3.7 Initialisation (init) et évolution des attributs (derive) . . . . 4.4 Types et opérations utilisables dans les expressions OCL . . . . . 4.4.1 Types et opérateurs prédéï¬nis . . . . . . . . . . . . . . . . 4.4.2 Types du modèle UML . . . . . . . . . . . . . . . . . . . . . 4.4.3 OCL est un langage typé . . . . . . . . . . . . . . . . . . . . 4.4.4 Collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5 Accès aux caractéristiques et aux objets . . . . . . . . . . . . . . . 4.5.1 Accès aux attributs et aux opérations (self ) . . . . . . . . . 4.5.2 Navigation via une association . . . . . . . . . . . . . . . . 4.5.3 Navigation via une association qualiï¬ée . . . . . . . . . . . 4.5.4 Navigation vers une classe association . . . . . . . . . . . . 4.5.5 Navigation depuis une classe association . . . . . . . . . . 4.5.6 Accéder à une caractéristique redéï¬nie (oclAsType()) . . . . 4.5.7 Opérations prédéï¬nies sur tous les objets . . . . . . . . . . 4.5.8 Opération sur les classes . . . . . . . . . . . . . . . . . . . . 4.6 Opérations sur les collections . . . . . . . . . . . . . . . . . . . . . 4.6.1 Introduction : «.», «->», «: :» et self . . . . . . . . . . . . . . 4.6.2 Opérations de base sur les collections . . . . . . . . . . 4.6.3 Opération sur les éléments d'une collection . 4.6.4 Règles de précédence des opérateurs . . . . . 4.7 Exemples de contraintes . . . . . . . . . . . . . . . . ........ Et D'autre chose
Accédez gratuitement au plan de ce document en vous connectant.
Créer un compte gratuit Extraits
[...] Parfois, une association doit posséder des propriétés. Par exemple, l'association Emploie entre une société et une personne possède comme propriétés le salaire et la date d'embauche. En effet, ces deux propriétés n'appartiennent ni à la société, qui peut employer plusieurs personnes, ni aux personnes, qui peuvent avoir plusieurs emplois. Il s'agit donc bien de propriétés de l'association Emploie. Les associations ne pouvant posséder de propriété, il faut introduire un nouveau concept pour modéliser cette situation : celui de classe-association. Une classe-association possède les caractéristiques des associations et des classes : elle se connecte à deux ou plusieurs classes et possède également des attributs et des opérations. [...]
[...] Il nous faut donc gérer : des comptes bancaires, des clients, et des banques. De plus, on aimerait intégrer les contraintes suivantes dans notre modèle : un compte doit avoir un solde toujours positif ; un client peut posséder plusieurs comptes ; une personne peut être cliente de plusieurs banques ; un client d'une banque possède au moins un compte dans cette banque ; un compte appartient forcément à un client ; une banque gère plusieurs comptes ; une banque possède plusieurs clients. [...]
[...] section 5.6 .3) avec leur état successeurs puisque ces pseudo-états ne peuvent rester actifs Transition interne Les règles de déclenchement d'une transition interne sont les mêmes que pour une transition externe excepté qu'une transition interne ne possède pas d'état cible et que l'état actif reste le même à la suite de son déclenchement. La syntaxe d'une transition interne reste la même que celle d'une transition classique (cf. section 5.4 .1). Par contre, les transitions internes ne sont pas 104 UML 2 Laurent Audibert http://laurent-audibert.developpez.com/Cours-UML/ POINT DE CHOIX Représentation de la saisie d'un mot de passe dans un état unique en utilisant des transitions internes. [...]
[...] Ainsi, le stéréotype class est le stéréotype par défaut UML 2 Laurent Audibert http://laurent-audibert.developpez.com/Cours-UML/ 47 CHAPITRE 3. DIAGRAMME DE CLASSES se trouve dans un espace de noms différents de celui de l'élément qui établit la référence. Elle fait partie de la relation entre un élément et le conteneur qui l'héberge, ce dernier pouvant être un paquetage, une classe ou un autre espace de noms. Il existe quatre visibilités prédéfinies. Public ou + : tout élément qui peut voir le conteneur peut également voir l'élément indiqué. [...]
[...] Qu'il permette d'effectuer des recherche sur notre fond. Qu'il permette de gérer les emprunts. Tout le monde peut-il emprunter des ouvrages ? Oui, à condition d'être abonné à la bibliothèque. Donc le système doit aussi gérer les abonnés ? Euh . oui. Un adhérant a-t-il accès au système ? Oui, il doit pouvoir effectuer des recherches pour savoir si un ouvrage existe dans la bibliothèque et s'il est disponible. Même un simple visiteur doit pouvoir le faire. [...]