Vous êtes sur la page 1sur 4

USTHB / FEI / Département Informatique Année 2019-2020

L2 ISIL / Section : B Module : Génie Logiciel 1

Série d’exercices N° 04
(Diagrammes de Séquences)
Exercice 1 :
Soit un robot qui dispose d’un bras articulé se terminant par une pince. Le fonctionnement du robot est le
suivant : le robot déplie son bras, attrape une pièce, replie son bras puis relâche la pièce.
Représenter à l’aide d’un diagramme de séquences, l’échange des messages entre les objets « Robot »,
« BrasArticulé », « Pince » et « Pièce ».

Diagramme de séquences associé :

sd manip : Robot : Bras : Pince : Pièce


Bras
Planificateur
DéplacerPièce(P)
déplier(x)

état1
alt [état1 = erreur]
Erreur : bras
non déplié
[état1 = ok] AttraperPièce(p)
état2select (x)

alt [état2 = erreur]


Erreur : Pince
non opérée
[état2 = ok] setEtatPièce(attrapée)

plier()
état3

alt [état3 = erreur]


Erreur : bras
non plié
[état3 = ok] RelâcherPièce(p)
état4
[état4 = erreur]
Erreur : Pince
non opérée
[état4 = ok]
setEtatPièce(Relâchée)

1
Exercice 2 :

Une entreprise souhaite modéliser avec UML le processus de formation de ses employés afin d’informatiser
certaines tâches.
Le processus de formation est initialisé quand le responsable de formation reçoit une demande de
formation d’un employé. Cet employé peut éventuellement consulter le catalogue des formations offertes
par les organismes agréés par l’entreprise. Cette demande est instruite par le responsable de formation qui
transmet son accord ou son refus à l’employé concerné.
En cas d’accord, le responsable cherche la formation adéquate dans le catalogue des formations agréées
qu’il tient à jour. Il informe l’employé du contenu de la formation et lui soumet la liste des prochaines
sessions prévues. Lorsque l’employé a fait son choix, le responsable inscrit l’employé à la session retenue
auprès de l’organisme de formation concerné.
En cas d’empêchement, l’employé doit avertir au plus vite le responsable de formation pour que celui-ci
demande l’annulation de l’inscription.
A la fin de la formation, l’employé transmet une appréciation sur le stage suivi et un document attestant sa
présence.
Le responsable de formation contrôle la facture envoyée par l’organisme de formation.

Question : Proposer un diagramme de séquences associé à la demande initiale de l’employé décrite dans le
deuxième paragraphe de l’énoncé.

Fragment du Diagramme de classes :

Employé 1..1 faire * Demande * concerner * Formation 1..* 1..1 Organisme


Formation Formation
1..* * 1..1
diriger traiter 1..1
1 1..1 1..*
Responsable Inscription Session
1..1 0..1 * 1..1 Formation
créer
1..1
concerner
0..1
Stage effectué / Facture
Compte Rendu 1..* 1..1

2
Diagramme de Séquences 1 : l’authentification est un présupposé dans ce cas d’utilisation.

sd créer : UI Employé Formation Demande : Demande SGBD


demande
Employé

loop [exist = false]

Matricule ?
searchById(x)
x Requête SQL select
exist (x)
resultSet

loop [refDemande = null]


getListFormationsEn Requête SQL select
SélectionnerUne Cours()
resultSet
Formation(liste) liste
form
searchByName(x,form)
Requête SQL select
réponse
resultSet

opt [réponse1 = non] new Demande(x, form)


refDemande

valider la création ?

réponse2

alt [réponse2 = oui]


Save (refDemande)
Requête SQL insert

[sinon]
Détruire refAbonné

3
Diagramme de Séquences 2 :

sd traiter : UI Formation Demande : Demande SGBD


demande
Responsable
getListDemandesEnCours Requête SQL select
(x)
liste resultSet

loop [Not Quitter and encore une


demande non traitée ?]
ChoisirUneDemande(Liste)
dem
Load(dem) Requête SQL select
resultSet

New Demande(dem, data)

refDemande
refDemande
Accepter/refuser ?
Réponse1
setEtatAccept(réponse1)

Valider l’opération ?

réponse2

opt [réponse2 = oui]


update (refDemande)
Requête SQL update