Académique Documents
Professionnel Documents
Culture Documents
: DIAGRAMME D’ACTIVITE
I- Introduction
II.1. Présentation diagramme d’activités :
II.2. Les actions (action):
II.3. Les activités (activity) :
II.4. Les nœuds activités :
II.5. Les transitions :
II.6. Les nœuds d’actions (action node) :
II.7. Les noeuds de contrôle (control nodes en anglais).:
II.7.1. Nœud initial :
II.7.2. Noeud final:
II.7.3. Nœud de décision (decision node) :
II.7.4. Nœud de fusion (merge node) :
II.7.5. Nœud de bifurcation ou de débranchement (fork node) :
II.7.6. Nœud d’union ou de jointure (join node) :
II.7.7. Synchronisation : Disjonction & Conjonction d'activités :
II.8. Les nœud d’objet (object node) et les flots d’objet :
II.9. Pins d’entrée/sortie :
II.10. Noeuds de stockage de données (data store node) :
II.11. Les partitions ou couloirs d’activités (travées – swinlanes) :
II.12. Avantage des diagrammes d'activités:
II.13. Les inconvénients des diagrammes d'activité:
III. Conclusion
Exercice 1
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
I- Introduction
Les diagrammes d'activités sont particulièrement adaptés à la description des cas
d'utilisation. Plus précisément, ils viennent illustrer et consolider la description textuelle
des cas d'utilisation. De plus, leur représentation sous forme d'organigrammes les rend
facilement intelligibles et beaucoup plus accessibles que les diagrammes d'états-
transitions. On parle généralement dans ce cas de modélisation de workflow. On se
concentre ici sur les activités telles que les voient les acteurs qui collaborent avec le
système dans le cadre d'un processus métier. La modélisation du flot d'objets est
souvent importante dans ce type d'utilisation des diagrammes d'activités.
Les diagrammes d'activités permettent de mettre l'accent sur les traitements. Les
diagrammes d'activités ne sont pas spécifiquement rattachés à un classeur particulier.
Nous pouvons attacher un diagramme d'activités à n'importe quel élément de
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
modélisation afin de visualiser, spécifier, construire ou documenter le comportement de
cet élément. Dans la phase de conception, les diagrammes d'activités sont
particulièrement adaptés pour une plus grande description des cas d'utilisation. Plus
précisément, ils viennent illustrer et consolider la description textuelle. De plus, leur
représentation sous forme d'organigrammes nous les rend facilement intelligibles. Nous
nous concentrons ici sur les activités telles que les voient les acteurs qui collaborent
avec le système dans le cadre d'un processus métier. La modélisation du flot d'objets est
souvent importante dans ce type d'utilisation des diagrammes d'activités.
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
discrètes à partir desquelles se construisent les comportements. La notion d'action est à
rapprocher de la notion d'instruction élémentaire d'un langage de programmation
(comme C++ ou Java). Une action peut être, parexemple :
Nous distinguons ainsi graphiquement les actions associés à une communication: send
signal, accept event et accept time event. Cela permet de mieux mettre en valeur les
échanges entre les diagrammes de la spécification.
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
Une activité définit un comportement décrit par un séquencement organisé d'unités dont
d'exécution est modélisé par des nœuds reliés par des arcs (transitions). Le flot de
contrôle reste dans l'activité jusqu'à ce que les traitements soient terminés.
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
Une activité possède éventuellement des paramètres en entrée ou en sortie, ainsi que des
variables locales au même titre qu'une méthode d’un objet. Une activité peut regrouper
des nœuds et des arcs, c’est ce que nous appelons « groupe d'activités ».
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
Un nœud d'activité est un type d'élément abstrait permettant de représenter les étapes le
long du flot d'une activité. Il existe trois familles de nœuds d'activités :
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
Un nœud d'action est un nœud d'activité exécutable qui constitue l'unité fondamentale
de fonctionnalité exécutable dans une activité. L'exécution d'une action représente une
transformation ou un calcul quelconque dans le système modélisé. Les actions sont
généralement liées à des opérations qui sont directement invoquées. Un noeud d'action
doit avoir au moins un arc entrant.
Graphiquement, un nœud d'action est représenté par un rectangle aux coins arrondis qui
contient sa description textuelle. Cette description textuelle peut aller d'un simple nom à
une suite d'actions réalisées par l'activité. UML n'impose aucune syntaxe pour cette
description textuelle, nous pouvons donc utiliser une syntaxe proche de celle d'un
langage de programmation particulier ou du pseudocode. Certaines actions de
communication ont une notation spéciale comme montré ci-contre :
Dans l’exemple ci-contre, nous détectons l'arrivée du train; cette action représente
l'action "accept event" c'est-à-dire que le système reçoit le signal de l'arrivée du train.
Deuxièmement, "faire clignoter les feux" est une action "send signal", cela veut dire que
le système envoie un signal qui est transmis à un objet cible sans attendre que ce dernier
ait bien reçu ce signal. Ensuite, l'action "time event" est un événement temporel
déclenché après l'écoulement d'une certaine durée. Enfin, "abaisser la barrière" est une
action "send signal", un message est envoyé et transmis à la cible.
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
II.7. Les noeuds de contrôle (control nodes en anglais).:
Un nœud de contrôle est un nœud d'activité abstrait utilisé pour coordonner les flots
entre les nœuds d'une activité. Il existe plusieurs types de nœuds de contrôle :
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
Un nœud initial est un nœud de contrôle à partir duquel le flot débute lorsque l’activité
enveloppante est invoquée. Une activité peut avoir plusieurs nœuds initiaux. Un nœud
initial possède un arc sortant et pas d’arc entrant.
Nœud de fin d'activité : Lorsque l'un des arcs d'un nœud de fin d'activité est activé,
l'exécution de l'activité enveloppante s'achève et tout nœud ou flot actif au sein de
l'activité enveloppante est abandonné.
Graphiquement, un nœud de fin d'activité est représenté par un cercle vide contenant un
petit cercle plein.
Nœud de fin de flot : Lorsqu’un flot d’exécution atteint un nœud de fin de flot, le flot en
question est terminé, mais cette fin de flot n’a aucune incidence sur les autres flots actifs
de l’activité enveloppante.
Graphiquement, un noeud de fin de flot est représenté par un cercle vide barré d’un X.
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
Un nœud de décision est un nœud de contrôle qui permet de faire un choix entre
plusieurs flots sortants. Il possède un arc entrant et plusieurs arcs sortants. Ces derniers
sont généralement accompagnés de conditions de garde pour conditionner le choix.
Graphiquement, nous représentons un nœud de décision par un losange.
Il est possible d'associer une condition à une transition, qui est alors appelée condition
de garde. Pour que la transition soit franchie, il faut que la condition soit remplie. C’est
une expression booléenne qui doit être vraie pour que la transition soit déclenchée.
Quand le nœud de décision est atteint, si aucun arc en aval n'est franchissable (aucune
condition de garde n'est vraie), c'est que le modèle est mal formé. L'utilisation d'une
garde [else] estrecommandée après un noeud de décision, car elle garantit un modèle
bien formé. En effet, la condition de garde [else] est validée si et seulement si toutes les
autres gardes des transitions ayant la même source sont fausses. Ce noeud est aussi
appelé BRANCHEMENT CONDITIONNEL : Le losange représente un branchement
conditionnel qui offre des possibilités d’alternatives. Il permet d’introduire des
conditions booléennes (vrai / faux) mutuellement exclusives, notées entre crochets
(notion de condition surveillée ou expression de garde).
par un losange.
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
Ce noeud est aussi appelé NOEUD DE CONVERGENCE (CONFLUENCE): Le
losange est utilisé pour modéliser un point de convergence : endroit où deux ou
plusieurs chemins d’exécution mutuellement exclusifs se rejoignent. A partir de ce point
de convergence la dernière partie du trajet est commune.
Un nœud d’union, également appelé nœuds de jointure est un nœud de contrôle qui
synchronise des flots multiples. Un tel nœud possède donc plusieurs arcs entrants et un
seul arc sortant.
Ces traits pleins que nous utilisons dans les nœuds de bifurcation et d’union s’appellent
aussi barres de synchronisation qui permet de réaliser des traitements parallèles
(simultanéité) et ensuite de la synchronisation pour représenter la fin de ces traitements
parallèles. Les barres de synchronisation permettent d'ouvrir et de fermer des branches
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
(chemins) parallèles au sein d'un flot d'exécution d'une méthode ou d'un cas
d'utilisation.
• Dans l’union, la barre de synchronisation ne peut être franchie que lorsque toutes
les transitions en entrée sur la barre sont déclenchées, et donc lorsque toutes les actions
en amonts sont toutes finies (d’où la notion de synchronisation).
Graphiquement, un tel nœud d'objet est représenté par un rectangle dans lequel est
mentionné le type de l'objet. Des arcs viennent ensuite relier ce nœud d'objet à des
activités sources et cibles. Le nom d'un état, ou d'une liste d'états, de l'objet peut être
précisé entre crochets après ou sous le type de l'objet. Nous pouvons également préciser
des contraintes entre accolades, soit à l'intérieur, soit en dessous du rectangle du nœud
d'objet.
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
Dans le diagramme d'activités, les objets peuvent être représentés. Ils sont utilisés ou
modifiés par des actions. Ils peuvent aussi initier des actions. Il arrive aussi que
différentes activités manipulent un même objet qui change alors d’état selon le degré
d’avancement du mécanisme comme dans le diagramme précédent.
Les valeurs sont passées par copie : une modification des valeurs d'entrée au cours du
traitement de l'action n'est visible qu'à l'intérieur de l'activité.
Graphiquement, un pin est représenté par un petit carré attaché à la bordure d'une
activité. Il est typé et éventuellement nommé. Il peut contenir des flèches indiquant sa
direction (entrée ou sortie) si l'activité ne permet pas de le déterminer de manière
univoque.
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
II.10. Noeuds de stockage de données (data store node) :
Un nœud de stockage des données est un nœud tampon central particulier qui assure la
persistance des données. Lorsqu'une information est sélectionnée par un flux sortant,
l'information est dupliquée et ne disparaît pas du nœud de stockage des données.
Lorsqu'un flux entrant véhicule une donnée déjà stockée par le nœud de stockage des
données, cette dernière est écrasée par la nouvelle. Ce nœud est représenté comme un
nœud d'objet détaché avec le stéréotype « data store ». Voici ci-dessous un exemple de
nœud de stockage de donnée:
Après avoir recruté le personnel, il est stocké dans le noeud de stockage des données de
façon permanente, appelé dans ce cas "Base de données du Personnel". Ceux qui n'ont
pas été affectés sont disponibles pour être affectés par l'activité "Affecter personnel".
L'étiquette "selection: personnel.affectation=null" permet de sélectionner ceux qui n'ont
pas été affectés.
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
Chaque travée représente les responsabilités d’une classe ou d’un service particulier.
Les travées sont intéressantes car elles combinent la façon dont les diagrammes
d’activités décrivent la logique des traitements avec celle des diagrammes d’interaction
qui représentent les responsabilités.
Les partitions, souvent appelées couloirs ou lignes d'eau (swimlane) du fait de leur
notation, permettent d'organiser les nœuds d'activités dans un diagramme d'activités en
opérant des regroupements.
Les partitions n'ont pas de signification bien arrêtée, mais correspondent souvent à des
unités d'organisation du modèle. Nous pouvons, par exemple, les utiliser pour spécifier
la classe responsable de la mise en œuvre d'un ensemble de tâches. Dans ce cas, la
classe en question est responsable de l'implémentation du comportement des nœuds
inclus dans ladite partition.
Graphiquement, les partitions sont délimitées par des lignes continues. Il s'agit
généralement de lignes verticales, mais elles peuvent être horizontales ou même
courbes. Dans le cas d'un diagramme d'activités partitionné, les nœuds d'activités
appartiennent forcément à une et une seule partition. Les transitions peuvent, bien
entendu, traverser les frontières des partitions
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
II.12. Avantage des diagrammes d'activités:
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
En outre, comme indiqué ci-dessus, les diagrammes d'activité permettent à un
analyste d'afficher de multiples conditions et acteurs dans un flux de travail à
l'aide
de nageoires. Swimlanes, cependant, sont facultatifs en tant que condition unique
ou l'acteur est normalement affiché sans eux.
Le langage de modélisation UML inclut que ces diagrammes ont le potentiel de devenir
trop complexes car leur nature conviviale peut se prêter à une description tout compris.
En d'autres termes, étant donné qu'il est si simple d'afficher les informations relatives au
projet, pourquoi ne pas inclure tout cela? Lorsqu'un analyste possède un projet
important, la création d'un diagramme unique et trop complexe peut être une tentation.
Cependant, comme le souligne un auteur, "si vous utilisez des diagrammes d'activité
pour définir la structure d'un flux de travail, vous ne devrait pas tenter d'explorer
plusieurs niveaux de graphiques d'activité jusqu'à leur niveau «atomique» le plus élevé
». Au lieu de cela, un analyste devrait essayer de présenter un nouveau diagramme pour
chaque flux de travail, ou s'il est plus applicable, pour utiliser des lignes de navigation
pour présenter différents acteurs dans le même flux de travail.
Un autre aspect de ces diagrammes est qu'ils ne peuvent pas être utilisé au lieu d'un
diagramme d'état ou d'un schéma de séquence car "les diagrammes d'activité ne donnent
pas de détails sur la façon dont les objets se comportent ou comment les objets
collaborent". Ce n'est pas un inconvénient en soi, mais il est important pour un analyste
de garder à l'esprit lors de l'application de diagrammes à leur travail.
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
III. Conclusion
En conclusion, les diagrammes d'activité sont assez faciles à accrocher et seront utiles
pour la plupart des projets parce qu'ils démontrent clairement et de manière modérée
clairement comment fonctionnent les choses. "Contrairement à de nombreuses
techniques de diagramme, ces diagrammes permettent également la représentation de
multiples choix et acteurs dans un flux de travail, et ils sont faciles à suivre même pour
les utilisateurs non techniques
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
Exercice 1
Quand un distributeur a un projet d’aménagement ou d’extension de ses
équipements, il doit obtenir l’aval du siège, qui se traduit par sa participation
au financement de l’opération. Une fois établi, le dossier de projet est donc
soumis simultanément à la banque et au siège, qui répond très rapidement. Si
le siège est défavorable, le projet est abandonné et la banque est prévenue. Si
le siège accepte de co-financer le projet, on attend la réponse de la banque
pour décider de poursuivre ou de réétudier le dossier. Quand les deux
réponses sont positives, un dossier de financement définitif est établi puis le
projet est lancé.
Établir de diagramme d’activités correspondant au processus de
financement et de lancement d’un projet.
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
: Cafetière
Exercice 2
Construire un diagramme d’activité représentant l’utilisation d’une cafetière
électrique: premier état: chercher du café
dernier état: Servir du café
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
Exercice 2: Commander un produit Exercice
3
Construire un diagramme d’activité pour modéliser le processus de
commander d’un produit. Le processus concerne les acteurs suivants: Client:
qui commande un produit et qui paie la facture
Caisse: qui encaisse l’argent du client
Vente: qui s’occupe de traiter et de facturer la commande du client
Entrepôt: qui est responsable de sortir les articles et d’expédier la commande.
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
: Use C
Exercice 4. Créer un diagramme d’activité pour tout le traitement d’une
réparation.
Le logiciel de gestion des réparations est destiné en priorité au chef d'atelier,
il devra lui permettre de saisir les fiches de réparations et le travail effectué
par les divers employés de l'atelier. Pour effectuer leur travail, les
mécaniciens et autres employés de l'atelier vont chercher des pièces de
rechange au magasin. Lorsque le logiciel sera installé, les magasiniers ne
fourniront des pièces que pour les véhicules pour lesquels une fiche de
réparation est ouverte; ils saisiront directement les pièces fournies depuis un
terminal installé au magasin. Lorsqu'une réparation est terminée, le chef
d'atelier va essayer la voiture. Si tout est en ordre, il met la voiture sur le parc
clientèle et bouclera la fiche de réparation informatisée. Les fiches de
réparations bouclées par le chef d'atelier devront pouvoir être importées par
le comptable dans le logiciel comptable.
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
Exercice 4. Créer un diagramme d’activité pour le use case « Créer une
fiche de réparation »
Créer un diagramme d’activité pour le use case « Créer une fiche de
réparation
» Pour créer une fiche de réparation, le chef d’atelier saisit les critères de
recherche de voitures dans le système. Le logiciel de gestion des réparations
lui donne la liste des voitures correspondant aux critères entrés. Si la voiture
existe, le chef d’atelier va sélectionner la voiture. Le logiciel va, ensuite,
fournir les informations sur le véhicule. Si la voiture est sous garantie, le chef
devra saisir la date de demande de réparation. Si la voiture n’existe pas, le
chef va saisir les informations concernant ce nouveau véhicule. Dans tous les
cas, le chef d’atelier devra saisir la date de réception et de restitution. Si le
dommage de la voiture est payé par l’assurance, le logiciel va fournir une
liste d’assurances au chef d’atelier. Ce dernier sélectionnera l’assurance
adéquate. Enfin, le logiciel enregistre la fiche de réparation.
1
Réalisé par le Prof : AGBO ENGELBERT 96615712
1
Réalisé par le Prof : AGBO ENGELBERT 96615712