Ce livre sur UML 2.5 s'adresse tout autant aux informaticiens proches de la modélisation qu'à ceux proches de la conception et du développement et qui souhaitent maîtriser UML 2.5. Il propose de nombreux exercices pratiques de difficulté variable pour maîtriser les différents aspects des diagrammes principaux (modélisation d’une conférence scientifique, d’un parcours de document XML, d’un système de vente de billets de train). Un chapitre particulier présente une étude de cas...
Ce livre sur UML 2.5 s'adresse tout autant aux informaticiens proches de la modélisation qu'à ceux proches de la conception et du développement et qui souhaitent maîtriser UML 2.5.
Il propose de nombreux exercices pratiques de difficulté variable pour maîtriser les différents aspects des diagrammes principaux (modélisation d’une conférence scientifique, d’un parcours de document XML, d’un système de vente de billets de train).
Un chapitre particulier présente une étude de cas complète (librairie en ligne) et explique comment mettre en œuvre UML dans un cadre de commerce électronique. Il est complété par un chapitre sur l'utilisation d'UML dans le cadre des bases de données relationnelles.
Le diagramme de structure composite et la composition de patterns sont abordés. Cette nouvelle édition introduit un nouveau chapitre consacré au langage OCL. Les contraintes écrites dans ce langage affinent la modélisation UML.
Pour les apports théoriques sur ce sujet, Editions ENI édite, dans la collection Ressources Informatiques, le livre " UML 2.5 - Initiation, exemples et exercices corrigés".
119 QCM - 69 travaux pratiques et leurs corrigés - Plus de 33h50 de mise en pratique.
Avant-propos
Objectif de ce livre
Comment utiliser ce livre ?
1. Objectifs
2. Prérequis
3. Énoncés
4. Corrigés
Énoncé 1 : L'approche objet
Introduction
Prérequis
Énoncé 1.1 Classes
Énoncé 1.2 Association simple
Énoncé 1.3 Association qualifiée
Énoncé 1.4 Association réflexive
Énoncé 1.5 Généralisation et spécialisation
Énoncé 1.6 Agrégation et composition
Énoncé 1.7 Héritage, encapsulation et polymorphisme
Corrigé 1
Prérequis
Corrigé 1.1 Classes
Corrigé 1.2 Association simple
Corrigé 1.3 Association qualifiée
Corrigé 1.4 Association réflexive
Corrigé 1.5 Généralisation et spécialisation
Corrigé 1.6 Agrégation et composition
Corrigé 1.7 Héritage, encapsulation et polymorphisme
Énoncé 2 : La modélisation des classes et objets
Introduction
Prérequis
Énoncé 2.1 Diagramme d'objets
Énoncé 2.2 Classe d'association
Énoncé 2.3 Site web
Énoncé 2.4 Microprocesseur
Énoncé 2.5 Réseau LAN
Énoncé 2.6 Gestion d'une conférence scientifique
Énoncé 2.7 Commerce électronique
Corrigé 2
Prérequis
Corrigé 2.1 Diagramme d'objets
Corrigé 2.2 Classe d'association
Corrigé 2.3 Site web
Corrigé 2.4 Microprocesseur
Corrigé 2.5 Réseau LAN
Corrigé 2.6 Gestion d'une conférence scientifique
Corrigé 2.7 Commerce électronique
Énoncé 3 : Les patterns de conception
Introduction
Prérequis
Énoncé 3.1 Document XML
Énoncé 3.2 Site web multilingue
Énoncé 3.3 Interface GUI
Corrigé 3
Prérequis
Corrigé 3.1 Document XML
Corrigé 3.2 Site web multilingue
Corrigé 3.3 Interface GUI
Énoncé 4 : La composition d'objets et de patterns
Introduction
Prérequis
Énoncé 4.1 Mesure
Énoncé 4.2 Arbre B
Énoncé 4.3 Table
Énoncé 4.4 Dictaphone
Énoncé 4.5 Document XML
Énoncé 4.6 Statut d'une personne
Énoncé 4.7 Pattern Strategy avec paramétrage
Corrigé 4
Prérequis
Corrigé 4.1 Mesure
Corrigé 4.2 Arbre B
Corrigé 4.3 Table
Corrigé 4.4 Dictaphone
Corrigé 4.5 Document XML
Corrigé 4.6 Statut d'une personne
Corrigé 4.7 Pattern Strategy avec paramétrage
Énoncé 5 : Les cas d'utilisation
Introduction
Prérequis
Énoncé 5.1 Un premier cas d'utilisation
Énoncé 5.2 L'authentification
Énoncé 5.3 La consultation d'horaires de train
Énoncé 5.4 Le distributeur automatique de produits courants
Énoncé 5.5 L'appel téléphonique
Corrigé 5
Prérequis
Corrigé 5.1 Un premier cas d'utilisation
Corrigé 5.2 L'authentification
Corrigé 5.3 La consultation d'horaires de train
Corrigé 5.4 Le distributeur automatique de produits courants
Corrigé 5.5 L'appel téléphonique
Énoncé 6 : Les interactions entre objets
Introduction
Prérequis
Énoncé 6.1 La lampe de chevet
Énoncé 6.2 La consultation des horaires et l'achat du billet de train
Énoncé 6.3 La somme des éléments d'un vecteur
Énoncé 6.4 L'objet graphique composé
Énoncé 6.5 L'interface d'un composant
Énoncé 6.6 Le distributeur de produits alimentaires
Énoncé 6.7 L'outil de dessin
Énoncé 6.8 La communication téléphonique
Énoncé 6.9 L'ascenseur
Corrigé 6
Prérequis
Corrigé 6.1 La lampe de chevet
Corrigé 6.2 La consultation des horaires et l'achat du billet de train
Corrigé 6.3 La somme des éléments d'un vecteur
Corrigé 6.4 L'objet graphique composé
Corrigé 6.5 L'interface d'un composant
Corrigé 6.6 Le distributeur de produits alimentaires
Corrigé 6.7 L'outil de dessin
Corrigé 6.8 La communication téléphonique
Corrigé 6.9 L'ascenseur
Énoncé 7 : Les diagrammes d'états-transitions
Introduction
Prérequis
Énoncé 7.1 La lampe de chevet
Énoncé 7.2 La situation professionnelle d'une personne
Énoncé 7.3 La lettre recommandée
Énoncé 7.4 Le téléphone portable
Énoncé 7.5 L'interface de réception série
Énoncé 7.6 La lampe de chevet (complément)
Énoncé 7.7 La situation professionnelle d'une personne (complément)
Énoncé 7.8 Les élections
Énoncé 7.9 Le moteur électrique et son régulateur de vitesse
Énoncé 7.10 La file des événements d'une interface utilisateur graphique
Corrigé 7
Prérequis
Corrigé 7.1 La lampe de chevet
Corrigé 7.2 La situation professionnelle d'une personne
Corrigé 7.3 La lettre recommandée
Corrigé 7.4 Le téléphone portable
Corrigé 7.5 L'interface de réception série
Corrigé 7.6 La lampe de chevet (complément)
Corrigé 7.7 La situation professionnelle d'une personne (complément)
Corrigé 7.8 Les élections
Corrigé 7.9 Le moteur électrique et son régulateur de vitesse
Corrigé 7.10 La file des événements d'une interface utilisateur graphique
Énoncé 8 : Les diagrammes d'activités
Introduction
Prérequis
Énoncé 8.1 Un premier diagramme d'activités
Énoncé 8.2 La saisie d'un virement bancaire européen
Énoncé 8.3 L'enregistrement sur magnétoscope
Énoncé 8.4 La recherche par dichotomie
Énoncé 8.5 Le processus de développement d'un logiciel
Corrigé 8
Prérequis
Corrigé 8.1 Un premier diagramme d'activités
Corrigé 8.2 La saisie d'un virement bancaire européen
Corrigé 8.3 L'enregistrement sur magnétoscope
Corrigé 8.4 La recherche par dichotomie
Corrigé 8.5 Le processus de développement d'un logiciel
Énoncé 9 : Le langage OCL pour affiner la modélisation
Introduction
Prérequis
Énoncé 9.1 Contrainte portant sur un attribut
Énoncé 9.2 Contrainte portant sur une association binaire
Énoncé 9.3 Contrainte portant sur une association réflexive
Énoncé 9.4 Contrainte portant sur une association qualifiée
Énoncé 9.5 Contrainte portant sur une clôture transitive
Énoncé 9.6 Écriture en OCL de la contrainte {subset} d’UML
Énoncé 9.7 Écriture en OCL de la contrainte {xor} d’UML
Énoncé 9.8 Contrainte sur le nombre d’instances d’une classe
Énoncé 9.9 Contrainte sur l’état d’un objet
Corrigé 9
Prérequis
Corrigé 9.1 Contrainte portant sur un attribut
Corrigé 9.2 Contrainte portant sur une association binaire
Corrigé 9.3 Contrainte portant sur une association réflexive
Corrigé 9.4 Contrainte portant sur une association qualifiée
Corrigé 9.5 Contrainte portant sur une clôture transitive
Corrigé 9.6 Écriture en OCL de la contrainte {subset} d’UML
Corrigé 9.7 Écriture en OCL de la contrainte {xor} d’UML
Corrigé 9.8 Contrainte sur le nombre d’instances d’une classe
Corrigé 9.9 Contrainte sur l’état d’un objet
Énoncé 10 : Étude de cas
Introduction
Prérequis
Énoncé 10.1 La librairie en ligne
Énoncé 10.2 Ajout du livre électronique
Corrigé 10
Prérequis
Corrigé 10.1 La librairie en ligne
Corrigé 10.2 Ajout du livre électronique
Énoncé 11 : Le passage à la réalisation
Introduction
Prérequis
Énoncé 11.1 La traduction d'une association UML dans le modèle relationnel
Énoncé 11.2 La traduction de l'héritage simple dans le modèle relationnel
Énoncé 11.3 La traduction de l'héritage multiple dans un modèle à héritage simple
Énoncé 11.4 La réalisation d'un diagramme simple d'états-transitions
Énoncé 11.5 La réalisation d'un diagramme d'états-transitions possédant des états composés
Corrigé 11
Prérequis
Corrigé 11.1 La traduction d'une association UML dans le modèle relationnel
Corrigé 11.2 La traduction de l'héritage simple dans le modèle relationnel
Corrigé 11.3 La traduction de l'héritage multiple dans un modèle à héritage simple
Corrigé 11.4 La réalisation d'un diagramme simple d'états-transitions
Corrigé 11.5 La réalisation d'un diagramme d'états-transitions possédant des états composés
Gilles VANWORMHOUDT
Gilles VANWORMHOUDT est docteur en informatique de l'Université de Lille et enseignant-chercheur à l'Institut Mines-Telecom. Il mène des recherches dans le domaine de l'ingénierie des modèles. Ses principaux domaines d'enseignements sont les structures de données et les algorithmes pour la science des données ainsi que les techniques avancées de programmation pour les architectures Big Data.
Laurent DEBRAUWER est docteur en informatique de l'Université de Lille 1. Spécialiste de l'approche par objets, il enseigne les Design Patterns à l'université du Luxembourg. Il dirige également les sociétés Objectland et Securiquest.