Livre : UML 2 – de l’apprentissage à la pratique

UML 2 - de l'apprentissage à la pratique Enseignant à l’institut universitaire de technologie de l’Université de Paris 13, lorsque le cours d’UML m’a été confié, j’ai dû rechercher dans la volumineuse bibliographie UML un support de cours adéquat. Les ouvrages pédagogiques concernant le langage UML sont nombreux et de qualité très inégale, mais je n’ai pas eu à chercher bien loin puisque mon collègue et ami Aomar Osmani avait coécrit un support de cours d’une grande qualité (UML2, Charroux, Osmani et Thierry-Mieg, 2005). Cependant, cet ouvrage ne me convenait pas parfaitement. Il ne couvrait pas l’ensemble de la matière que je voulais enseigner et ne répondait pas à toutes mes interrogations. C’est pourquoi j’ai entrepris la rédaction de ce support, qui, de révision en révision est est devenu cet ouvrage édité dans la collection Info+ des éditions Ellipses sous le titre UML 2 – de l’apprentissage à la pratique.
L’objectif de ce livre est d’offrir une approche progressive, rigoureuse et pédagogique du langage de modélisation UML, et d’aborder des problématiques connexes comme celle des patrons de conception (design patterns en anglais) et des processus de développement logiciel mettant en œuvre le langage UML. Cet ouvrage propose également une analyse critique et pointue de certains choix de modélisation. Vous trouverez enfin dans ce livre une série de travaux dirigés accompagnés de corrigés complets et détaillés, élaborés pour permettre un apprentissage progressif et méthodologique des principales notions du langage UML.
Ce livre de 298 pages est composé de 10 chapitres décrits ci-dessous.
  1. Introduction à la modélisation objet – Ce chapitre introductif aborde la problématique du génie logiciel et de la modélisation, les différents cycles de vie d’un logiciel, les différences qui opposent la programmation structurée à l’approche orientée objet, puis les concepts fondamentaux de la pensée objet avant de présenter brièvement le langage de modélisation UML et ses différents diagrammes.
  2. Diagramme de cas d’utilisation et notions transversales d’UML – Ce chapitre commence par aborder des notions transversales du langage UML, avant de détailler les éléments constitutifs d’un diagramme de cas d’utilisation. Ces diagrammes permettent la modélisation des besoins des utilisateurs. La dernière section propose des conseils concernant leur élaboration.
  3. Diagramme de classes – Le diagramme de classes est considéré comme le plus important de la modélisation orientée objet. Ce chapitre présente, dans un premier temps, les notions fondamentales qui régissent les diagrammes de classes, puis détaille les classes et les relations, avant d’aborder les interfaces. Le chapitre traite ensuite de la problématique des diagrammes d’objets avant d’aborder l’implémentation d’un diagramme de classes, et plus précisément sa traduction en Java ou en SQL.
  4. Langage de contraintes OCL – L’objectif de ce chapitre est de permettre la spécification de contraintes sur des éléments de modèle. Ce chapitre présente tout d’abord comment les contraintes s’expriment en UML, puis détaille le langage OCL (Object Constraint Language en anglais) qui permet d’exprimer des contraintes complexes dans les diagrammes UML en général, mais plus particulièrement dans les diagrammes de classes.
  5. Diagramme d’états-transitions – Un diagramme d’états-transitions permet de spécifier de manière exhaustive et non ambigüe, à l’aide d’un automate à états finis, l’ensemble des comportements d’une instance d’un classeur. Cette modélisation est utilisée pour représenter et mettre en forme la dynamique du système.
  6. Diagramme d’activités – Un diagramme d’activités permet de mettre l’accent sur les traitements et est particulièrement adapté à la modélisation du cheminement de flots de contrôle et de flots de données.
  7. Diagramme de structures composites et diagrammes d’interaction – Les diagrammes d’interaction permettent d’établir un lien entre les diagrammes de cas d’utilisation et les diagrammes de classes en montrant comment les objets collaborent pour réaliser une certaine fonctionnalité. Le diagramme de structures composites permet de modéliser le contexte particulier d’exécution dont les diagrammes d’interaction cherchent à modéliser la dynamique.
  8. Diagrammes de composants et diagrammes de déploiement – Ces diagrammes, qui constituent les deux derniers types de vues statiques en UML, permettent respectivement de décrire le système modélisé sous forme de composants réutilisables en mettant en évidence leurs relations de dépendance, et d’identifier les éléments matériels et leur disposition physique.
  9. Patrons de conception (Design Patterns) – Un patron de conception est une solution de conception commune à des problèmes récurrents dans un contexte donné. Les patrons de conception sont désormais inévitables dès qu’il est question de technologie orientée objet. L’objectif de ce chapitre est de montrer leut intérêt à travers la présentation de quelques patrons incontournables (5 patrons GRASP, 6 patrons du GoF puis 4 autre patrons incontournables).
  10. Mise en œuvre d’UML – UML n’est qu’un langage de modélisation, ce n’est pas une méthode. La première section de ce chapitre est justement consacrée à la présentation des principales méthodes issues des meilleures pratiques de l’ingénierie logicielle : le Processus Unifié (UP, RUP), Scrum et XP. Les sections suivantes détaillent une méthode simple et générique, située à mi-chemin entre UP et XP.
Cet ouvrage est naturellement destiné aux étudiants en informatique qui suivent un cursus comportant du génie logiciel, de la modélisation UML ou de la programmation objet, aux professeurs désirant s’appuyer sur un support de cours précis et complet, ou encore aux professionnels informaticiens utilisant UML dans leurs projets.
Cette entrée a été publiée dans Livres, Enseignement. Placez un signet sur le permalien.

11 Responses to Livre : UML 2 – de l’apprentissage à la pratique

  1. Baccs

    Cool, un autre bouquin que je vais acheter et faire acheter par ma boîte ;)

    Celui sur les BD est très bien d'ailleurs ! Je ne doute pas que celui là sera aussi bien, et cela devrait me rafraîchir la mémoire, qui en a bien besoin !

    Reply
  2. Jean Marc Vaginay

    Bonjour,
    Je suis prof d’info en BTS IRIS et je dois faire un cours sur le développement d’application et UML. En fouinant sur le net, je suis tombé sur votre livre au format pdf. M’autorisez-vous à utiliser des extraits de votre cours que je diffuserai à mes étudiants ?
    Cordialement

    Reply
    • Laurent Post author
      Bonjour,
      J’ai dû retirer le pdf à la demande de l’éditeur (il en subsiste des versions « pirates ») mais la version html existe toujours chez Developpez.com. En fait, il ne s’agit pas du format pdf du livre mais simplement de son ébauche (cf. Nouvelles du cours d’UML 2).
      Je vous autorise à en utiliser des extraits, en citant vos sources, mais vous recommande plutôt de travailler sur le livre qui est bien plus abouti.
      Cordialement, Laurent Audibert.
      Reply
      • Jean Marc Vaginay

        Je vous remercie beaucoup pour votre autorisation, il va de soi que j’en citerai la source (livre + page sur dvlp.com). Et je ne fournirai des extraits que sous forme « papier ». Si personnellement je peux envisager l’achat de votre livre, je peux difficilement l’imposer à mes étudiants. Nous ne faisons qu’une utilisation succincte d’UML en BTS. Par contre l’utilisation de vos pages sur dvlp.com me semble intéressante lors de séances de TD.

        Cordialement.

        Reply
  3. MONTREUX

    Bonjour,

    j’ai lu votre livre PDF et voudrais maintenant acheter le livre chez amazon.fr.

    Est-ce que les corrections des exercices sont présentes dans le livre commercialisé ?

    Merci.

    Reply
  4. MONTREUX

    Merci pour la rapidité de votre réponse.

    Donc, par exemple, l’énoncé du tutoriel sur la bibliothèque d’oeuvres a sa correction ?

    Je vais donc acheter votre livre dont la version restreinte pdf m’a beaucoup plu.

    Reply

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *