Accueil

Le diagramme d'activités


Introduction

Le diagramme d'activités fait partie des diagrammes peu connus que propose UML. Pourtant, il est très utile et dispose d'un spectre d'utilisation très large — c'est d'ailleurs le diagramme que j'utilise le plus après le diagramme de classes. Il permet de décrire toutes sortes de processus : des processus industriels, des processus métier, le déroulement d'un cas d'utilisation ou encore un algorithme. Je vous invite donc à le découvrir à travers un exemple quelque peu original...

Exemple

Ceux qui me connaissent le savent, je suis plutôt gourmand. Et je le suis d'autant plus que j'adore cuisiner. Alors, je vous invite à préparer avec moi une mousse au chocolat. La recette est assez simple ; commençons tout d'abord par la liste des ingrédients.

Pour faire une mousse au chocolat, il nous faut :

La préparation de la mousse se déroule de la façon suivante :

  1. Battre les jaunes d'œuf avec le sucre jusqu'à ce qu'ils blanchissent.
  2. Faire fondre le chocolat dans une casserole, au bain marie.
  3. Ajouter, en remuant bien, le chocolat fondu à la préparation.
  4. Adjoindre le beurre par petites quantités, en mélangeant jusqu'à ce que le mélange soit bien lisse.
  5. Parfumer éventuellement la crème avec le café ou le parfum choisi.
  6. Battre les blancs d'œuf en neige très ferme.
  7. Incorporer délicatement les blancs en neige à la crème.
  8. Laisser reposer le tout deux heures au réfrigérateur et sortir les cuillers !

Dans la suite de cette partie, nous allons nous attacher à décrire graphiquement, à l'aide d'un diagramme d'activités, le processus qui consiste à préparer la mousse au chocolat. Comme je suis gourmand et parce que j'imagine que vous l'êtes aussi, nous allons, si vous le permettez, commencer par la fin. Dans un diagramme d'activités, la fin d'un processus est représentée par un état final.

Quelle est la dernière étape de la recette ? Il faut laisser reposer la mousse au réfrigérateur. UML introduit la notion d'activité. Une activité est une chose que l'on fait, une quantité de travail qui possède une signification dans le discours que l'on tient — nous reviendrons là-dessus un peu plus tard. Nous pouvons considérer le fait de laisser reposer la mousse comme une activité. Certes, celle-ci ne demande pas beaucoup d'effort de notre part, mais il s'agit d'une activité malgré tout — il faut mettre la mousse au réfrigérateur et patienter...

Pour indiquer que cette activité constitue la dernière activité de notre processus, il suffit d'ajouter une transition entre celle-là et l'état final. Une transition placée entre deux activités indique que les deux activités s'enchaînent : la transition est franchie lorsque l'activité qui précède est terminée.

Pour pouvoir mettre la mousse au réfrigérateur, encore faut-il avoir incorporé les blancs en neige dans la crème ! Complétons donc notre diagramme en ajoutant cette activité et en prenant soin de la lier à l'autre par une transition pour montrer leur enchaînement.

Avant de pouvoir incorporer les blancs en neige à la crème, il faut d'une part avoir battu les blancs en neige et d'autre part avoir ajouté le beurre au mélange chocolaté — nous traiterons du parfum un peu plus tard. Ces deux activités sont nécessaires et indépendantes : nous avons pu les réaliser en même temps — et oui ! nous travaillons à deux, vous avez donc très bien pu battre les blancs en neige pendant que j'ajoutais le beurre au mélange. Pour exprimer le parallélisme, le diagramme d'activité propose la barre de synchronisation. Elle indique que les deux activités doivent être complétées pour pouvoir passer à l'activité suivante et elle indique aussi que ces deux activités se déroulent en parallèle :

Je pense maintenant que vous commencez à bien comprendre le truc ; vous ne devriez donc pas être trop choqué par cela :

Que nous reste-t-il à ajouter ? Rien d'après la recette. Il nous suffit d'indiquer le commencement du processus : dans un diagramme d'activités, le début d'un processus est matérialisé par un état initial comme celui-ci :

Ce que l'on veut exprimer, c'est que nous allons commencer par battre les jaunes avec le sucre et faire fondre le chocolat et battre les blancs en neige. Pour cela, nous allons à nouveau utiliser une barre de synchronisation :

super activité, couloir, objet, décision

Je ne vous cache pas que pour écrire cette partie, j'ai jeté un coup d'œil à mon livre de recettes — mes amis me l'ont offert, une idée de génie ! un coup de maître ! et oui, parce que si c'est moi qui vais cuisiner, ils espèrent bien pouvoir goûter, c'est à peine s'ils ont mis des marques devant les recettes qui les intéressent ! — et il se trouve que la recette de mon livre me semble encore meilleure — elle utilise beaucoup moins de beurre mais introduit du lait et de la crème. Mais bon, pour les besoins de la démonstration j'ai conservé la recette initiale : elle était plus simple.