Cours #7 Diagramme D - Activité

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 30

Boulkrinat Samia

Samia BOULKRINAT
(Basé sur le cours de Ilhem BOUSSAID )

20/04/2022 1
Plan
Boulkrinat Samia

1 – Introduction
2 – Présentation
3 – Eléments du diagramme
4 – Nœuds de contrôle
5 – Couloirs d’activités
6 – Objets
7 – Actions liées à des signaux
8 – Activité
9 – Démarche pour tracer un diagramme d’activité
10 – Modéliser l’algorithme d’une méthode
11 – Documenter un cas d’utilisation
12- Récapitulatif des types de nœuds
13- Récapitulatif des types d'actions

20/04/2022 2
Boulkrinat Samia

1. Introduction

Utilisé pour décrire :


1. La succession des étapes qu’un système doit accomplir afin de
réaliser une certaine tâche
2. Les use-cases et la façon dont ils sont inter-reliés
3. La représentation des activités concurrentes

Similaire à un diagramme d’état où chaque transition est causée par


la terminaison d’une activité.

Souvent associé à plusieurs classes.

20/04/2022 3
Boulkrinat Samia

1. Introduction
I.1 Objectifs

Représenter les activités séquentielles d’un processus

Chaque activité est une suite d’actions

Modéliser par un graphe orienté {actions, transitions}

Remplir panier

reste des produits

assez de produits

payer produits valider produits


en ligne panier

20/04/2022 4
Boulkrinat Samia

2. Présentation
2.1 Utilisation du diagramme

Représenter un processus métier (point de vue Fonctionnel)


qui fait quoi, où, comment ?

Point de vue Fonctionnel : décrit l’ensemble des actions


réalisées par le système

Point de vue Dynamique : décrit le contenu procédurale


d’une opération d’une classe d’une manière précise

20/04/2022 5
Boulkrinat Samia

2. Présentation
2.2 Description du diagramme

Un cas d’utilisation montre ce que fait ou doit faire le système

Scénario décrit ce que fait l’acteur et le système

Scénario peut être représenté par un diagramme d’activité

Présenter "l’algorithme"

Visualiser l’aspect temporel des interactions

Décrire le sens des interactions (acteur-système)

Distinguer le cas nominal des variantes

20/04/2022 6
Boulkrinat Samia

3. Eléments du diagramme
3.1 Diagramme d'activité

Un état de départ et un état de terminaison

Ensemble d'activité (nœuds du graphe)

Transition entre activités (Contraintes de passage d'une


activité vers une autre)

Couloirs d'activité (swimlanes) : répartition d'activités


entre acteurs

20/04/2022 7
Boulkrinat Samia

3. Eléments du diagramme

Act : Nom_act
Nom de
l'activité

Nom de
l'action Nœud de
Flux
décision
Nœud
initial
Autre ...
action

Nœud
d'action
...

20/04/2022 8
Boulkrinat Samia

3. Eléments du diagramme
Activité : action (une opération élémentaire) ou traitement à un
niveau plus fin d’une activité.

Activité composite : ensemble d'activités hiérarchiquement


imbriquées.

Transition : passage d’une activité à l’autre autre.

Nom de
l'action

Nom de {Poids=n} Autre


l'action action

Autre
action 2

20/04/2022 9
Boulkrinat Samia

4. Nœuds de contrôle

Nœud(s) initial /initiaux : marquant le début d’activité(s) unique ou


des flots concurrents

Nœud final : terminant la/les activité(s)

20/04/2022 10
Boulkrinat Samia

4. Nœuds de contrôle
Nœud de décision (choix, alternative) : un branchement conditionnel
via un losange d’où partent toutes les alternatives.

[condition a]
action autre action

Nœud de [condition b]
décision
Garde

Nœud de fusion : est un nœud de contrôle rassemblant plusieurs


flots alternatifs entrants en un seul flot sortant.

... ...

Nœud de
fusion

20/04/2022 11
Boulkrinat Samia

4. Nœuds de contrôle
Synchronisation :
1. Concurrence : Début d’une exécution en parallèle (fork).
2. Synchronisation : Si tous les flots entrants sont prêts, on continue (join).

Réceptionner matériel

Fork

Contrôler Vérifier
matériel facture

Join
Inventorier matériel

20/04/2022 12
Boulkrinat Samia

4. Nœuds de contrôle
Itération : Deux manières de représenter l’itération.

1 2
Emprunter Emprunter
livres livres

* Pour chaque livre Vérifier


disponibilité
Vérifier
disponibilité [ livre disponible ]

[ livre disponible ]
Réaliser
emprunt
Réaliser
emprunt

[ reste livre à emprunter ]


[plus de livre]

20/04/2022 13
Boulkrinat Samia

4. Nœuds de contrôle
Nœud initial 1

Condition de garde 3

Activité 2
Nœud de
4
décision
Bifurcation ou
débranchement 5
(fork)

Union ou
jointure (join)
6

Nœud de
7 fusion

Nœud final 8

20/04/2022
Boulkrinat Samia

5. Couloirs d’activités
Couloirs d’activités (Swimlanes) :
1. Chaque partitions situe les actions par rapport aux entités du système
2. Entité peut être : acteur, classe, objet, système
3. Une action ne participe qu’à une partition
Client Commercial Magasinier
Passer commande

Payer Enregistrer commande Exécuter commande

Livrer commande

Récupérer commande

1 2 3

20/04/2022
Boulkrinat Samia

6. Objets
6.1 Objectif
Un objet peut apparaître dans un diagramme d’activité, au sein
des couloirs d’activités ou en dehors

Objet
Objet 1
[état]

Utilisation des objets :


En entrée ou en sortie d’une action
Pour représenter des flux d’objets ou des changements d’état

Représentation des flux d’objets :

Action Objet Action


{effet de {effet
sortie} 2 d'entrée}

Connecteur Connecteur
3
Objet Objet
Action Objet Action
{effet de {effet
sortie} d'entrée}
20/04/2022
Boulkrinat Samia

6. Objets
6.2 Exemple

20/04/2022 17
Boulkrinat Samia

7. Actions liées à des signaux


7.1 Objectif

Un signal est une information provenant d’une action


externe à l’activité en cours : "arrivée d’une commande"

Un signal temporel exprime le passage du temps :


"attendre 10 seconde", "fin du mois", . . .

Réception action
action Action d’envoi
d’un signal
d’un signal

1 2

Réception
d’un signal
temporel

20/04/2022 18
Boulkrinat Samia

7. Actions liées à des signaux


7.2 Exemple

Fin du Envoyer le
1 rapport mensuel Demande
mois
d'annulation

Annuler la
3 commande
Attendre 2 heures

Traiter la Demander Réception du Envoyer la


4 commande paiement commande
paiement

20/04/2022 19
Boulkrinat Samia

8. Activité
8.1 Objectif

Encapsulation du flux des actions qui la réalisent

Paramétrée par les objets entrant

Résultat de
Paramètres sortie
d'entrées Ensemble
d'actions

1 3 4

2 3

20/04/2022 20
Boulkrinat Samia

8. Activité
8.2 Exemple

20/04/2022 21
Boulkrinat Samia

8. Activité
8.3 Exemple

20/04/2022 22
Boulkrinat Samia

8. Activité
8.4 Exemple

20/04/2022 23
Boulkrinat Samia

Identifier le processus à représenter.


1. S’agit-il d’un UC ? Un processus métier englobant plusieurs UC? Une
méthode d’une classe ?
2. Ajouter au diagramme une note avec le nom et une description du
processus
Ajouter les nœuds initial et final
Ajouter les activités /actions
1. Une activité pour chaque étape majeur du UC ou du processus
2. Les actions pour chaque activité et les actions individuelles du processus
Ajouter les transitions entre les activités / actions
Ajouter les branchements
1. Les décisions à prendre (décision / fusion)
2. Les activités à réaliser en parallèle (fork / join)

20/04/2022 24
Boulkrinat Samia

10.1 Exemple
Une chaîne en langage C, est codée comme un tableau de caractères
non nuls, terminé par un caractère spécial. Exemple : s=hello! est
codée s[0] =’h’, s[1]= ’e’, s[2]=’l’, s[3]=’l’, s[4]=’o’, s[5]=’ !’, s[6]=’\0’

La fonction strlen prend en entrée un tableau de caractères et rend en


sortie un entier relatif à la taille de la chaîne

1 Paramètre 2
en entrée

Programme C de
la fonction strlen
Paramètre
en sortie Diagramme d’activité de
la fonction strlen
20/04/2022 25
11. Documenter un cas d’utilisation
Boulkrinat Samia

11.1 Exemple

Pour s’inscrire dans une formation, le candidat doit :


Remplir les formulaires.
Vérifier les formulaires. S’ils sont incorrects, demander de l’aide
avant de les remplir à nouveau.
Soumettre l’inscription, si les formulaires sont corrects.
Payer les taxes (droits d’inscription) d’une part et comparaître à la
journée d’accueil d’autre part, si l’inscription est acceptée.

20/04/2022 26
11. Documenter un cas d’utilisation
Boulkrinat Samia

11.2 Démarche
1. Processus à représenter :
Demande d’inscription
2. Activités :
Remplir le formulaire
Vérifier le formulaire
Demander de l’aide
Soumettre inscription
Payer les taxes
Comparaître journée d’accueil
3. Décisions :
Si les formulaires sont corrects
Si l’inscription est acceptée
4. Activités parallèles :
Payer taxes
Comparaître journée d’accueil

20/04/2022 27
11. Documenter un cas d’utilisation
Boulkrinat Samia

11.3 Diagramme d'activité


Demande d’inscription

Activités

Processus
à représenter

Décision
Nœud
de fusion

Synchronisation

Nœud
alternative

Activités
parallèles

20/04/2022 28
12. Récapitulatif des types de nœuds
Boulkrinat Samia

Type de nœud Symbole Description


Point de démarrage Début du diagramme.

Point d'arrêt Fin du diagramme

Alternative Pour choisir entre plusieurs flots sortants. Il a un arc entrant et plusieurs
arcs sortants, avec une conditions de garde.
Fusion Nœud rassemblant plusieurs flots alternatifs entrants en un seul flot sortant

Synchronisation Réalisation de Branchement (fork) : concurrence ou parallèle et Jonction


(join) : réaliser plusieurs actions pour réaliser une action en-dessous
Fin de flot Fin d'un flot d'activité
Action Opérations et traitement à réaliser

Lot d'action Actions du cas d’utilisation correspond à l’appel d’un cas d’utilisation
interne (lié par « include » ou « extend »).
Transition Passage d'une activité vers une autre
Couloirs Ils indiquent qui (l’utilisateur ou le système) réalise les actions
(Swimlanes)

Activité structurée Représentant une partie structurée d'une activité. Trois types de nœud
d'activité structurée: conditionnel, boucle et séquentiel.

20/04/2022 29
13. Récapitulatif des types d'actions
Boulkrinat Samia

Action Symbole Description


Appeler (Call Operation) Invocation d'une opération sur un objet
Comportement Invocation d'une activité
(Call Behaviour)
Envoyer (Send) Création d'un un message et transmission à un objet cible
Accepter événement (Accept Cette action bloque l'exécution en cours jusqu'à la réception
Event) du type d'événement spécifié,
Accepter appel (Accept Call) Il s'agit d'une variante de l'action Accept event pour les
appels synchrones.
Répondre (Reply) Transmettre un message en réponse à la réception d'une
action de type Accept call.
Créer (Create) Instanciation d'un objet

Détruire (destroy) Destruction d'un objet.


Lever exception (raise Lever explicitement une exception.
exception)

Accepter événement temps Signal temporel exprimant le passage du temps.


(Accept Time Event)
Encapsulation Encapsulation d'un flux d'activités.

Pin d'entrée ou de sortie Spécifier les valeurs passées en argument à une activité et
d'une activité les valeurs de retour

20/04/2022 30

Vous aimerez peut-être aussi