Académique Documents
Professionnel Documents
Culture Documents
- Le diagramme de squence est plac dans un rectangle qui dispose dune tiquette sd en haut gauche (qui signifie sequence diagramm) Le diagramme de squence est suivi du nom du diagramme.
2-2) Lobjet :
- Dans un diagramme de squence, lobjet la mme reprsentation que dans le diagramme des objets. C'est-dire un rectangle dans lequel figure le nom de lobjet. Reprsente un objet quelconque Le nom de lobjet est soulign et peut prendre lune des quatre formes suivantes : de la classe Nomclasse.
nomObjet : NomClasse roleObjet :Nom Classe nomObjet : : NomClasse
- Les diagrammes de squences reprsentant les changes entre les objets mais aussi les changes avec les acteurs, nous trouverons aussi la reprsentation du stickman (qui peut tre considr comme un objet).
Rle :
2-4-2) Reprsentation graphique : Dans le diagramme de squence, les envois de messages sont reprsents par des flches horizontales qui vont de la ligne de vie de lobjet metteur vers la ligne de vie de lobjet rcepteur du message. Les message synchrone : (flche avec un triangle plein son extrmit).
objet1 : objet2 : objet3 :
message1 message2
message1 message2
Messages synchrones
Messages asynchrones
Les message de retour (rponse) : (simple flche en pointills). o Si une mthode qui a t active (par un message) doit retourner des valeurs la fin de son activation, cela se fait par un message retour. o Le message de retour nest donc pas un appel de mthode (il ne provoque donc pas lactivation dun objet) o Le message retour porte souvent le nom de llment retourn.
objet2 :
Message de retour
Exemple :
sd diagramme 1
Message asynchrone (ex : le message 5 est lanc alors que lexcution du message 1 nest pas termine) (message6 est son retour implicite) Message synchrone (ex : on attend que lexcution du message 2 soit termine avant de lancer le message 4) (message6 est son retour implicite)
objet2 :
objet3 :
objet3 :
message6
2-4-3) Cration et destruction dobjets : Une squence peut aussi contenir la cration ou la destruction dun objet : o La cration dun objet est matrialise par un message spcifique, appel dun constructeur, gnralement accompagn du strotype create qui pointe sur le dbut (le sommet) de la ligne de vie de lobjet cr (Le rectangle de linstance de la classe est alors surbaisse). o La destruction dun objet est reprsente par une croix la fin de sa ligne de vie. Souvent lobjet est dtruit suite la rception dun message mais ce nest pas obligatoire. Dans ce cas l, il porte le strotype destroy .
objet1 :
create Objet2(valeur)
objet2 :
destroy
2-4-4) Syntaxe des messages synchrones et asynchrones: Dans la plupart des cas, la rception dun message est suivie de lexcution de la mthode de la classe cible. Cette mthode peut recevoir des arguments et la syntaxe des messages permet de transmettre ces arguments. La plupart du temps, dans un diagramme de squence, nous pouvons nous contenter de dfinir un message par : - Son nom (qui est le nom de la mthode appele ou du signal envoy). Nous pouvons lui adjoindre facultativement : - Une numrotation devant le nom message (spar du nom du message par 2 point " : "). La numrotation seffectue squentiellement partir de 1. - Les paramtres passs la mthode ou au signal (entre parenthses aprs le nom du message).
Numrotation :
nomMessage
(Paramtres)
:Telephone
appel :
2-4-5) Syntaxe des rponses (messages retour) : Comme pour les messages synchrones ou asynchrones, nous pouvons nous contenter de donner au message retour un simple nom, mais nous pouvons aussi les caractriser plus prcisment en utilisant la syntaxe suivante :
Numero : attribut=
nomMessage
(Paramtres)
:valeurDeRetour
Exemples :
sd diagramme 1 Acteur1 1 : calculerDistance(depart,arrivee) 2 : distance sd diagramme 1
mappy:
sd diagramme 1
2-4-6) Remarque sur la syntaxe des messages dans les diagrammes de squence : La syntaxe que nous venons de voir est simple et trs souvent largement suffisante pour dcrire les messages des diagrammes de squence.
objet2 :
objet3 :
objet1 : 1 : demanderAge(nom)
objet2 :
objet3 :
2 : afficherAge(age)
Le message afficherAge() nattend pas de message retour car si ctait le cas il faudrait obligatoirement le reprsenter (afficherAge() est un message synchrone et le retour, sil existe, doit tre explicite).
objet1 :
objet1 :
objet2 :
objet3 :
x y z t t
message3
message4
- Le message trouv est un message dont nous connaissons le destinataire mais pas lmetteur. Il est reprsent par une flche partant dun disque noir vers la ligne de vie dun lment. Ce message peut tre utilis pour modliser le comportement dun lment suite la rception dun message dexception.
4)
Un fragment dinteractions est une partie du Etiquette message1 diagramme de squence (dlimite par un rectangle) associe une tiquette (dans le coin Oprateur suprieur gauche). message2 Ltiquette contient un oprateur dinteraction qui permet de dcrire des modalits dexcution des message3 messages lintrieur du cadre. Les oprandes dun oprateur dinteraction sont Fragment spars par une ligne pointille. Les conditions de dinteractions choix des oprandes (ventuels) sont donnes par des expressions boolennes entre crochets ([ ]). Les principales modalits sont les boucles, les branchements conditionnels, les alternatives, les envois simultans, etc. 5
objet1 :
objet2 :
objet3 :
objet1 : message1
objet2 :
message2
message3
objet1 : message1
objet2 :
objet3 :
message2
[condition1]
[condition2]
message3
else
message4 Message5
objet1 :
objet2 :
message1 Loprateur de boucle (loop) excute une itrative dont la squence quelle contient est excute tant que la garde qui lui est associe est vraie. loop [min,max,condition] message2 - La garde scrit de la faon suivante : loop [min,max,condition] message3 o Le contenu du cadre est excut min fois, puis continue sexcuter tant que la condition et que le nombre dexcution de la boucle ne dpasse pas max fois. Chaque paramtre (min, max et condition) est optionnel. - Exemple de gardes : loop[3]La squence sexcute 3 fois. loop[1,3,code=faux] La squence sexcute 1 fois puis un maximun de 2 autre fois si code=faux.
objet1 : message1
objet2 :
par
message2
message3
Deuxime sous-fragment
5)
Strotypes de Jacobson on :
A lintrieur dun systme, il existe trs souvent des classes qui possdent possdent un rle bien particulier qui serait intressant de visualiser dune faon non quivoque dans votre diagramme de squence. Cest le cas notamment : o o o Pour les classes qui reprsentent entent des composants de lIHM. Pour la classe qui contrle globalement le systme avec la prise en compte de la gestion vnementielle. Pour les classes qui implmentent la persistance des attributs (assosies une base de donnes).
t les trois strotypes suivants : Jackobson distinguent o boundary : classes qui servent modliser les interactions entre le systme et ses acteurs. acteurs o control : classes utilises pour reprsenter la coordination, lenchanement lenchanement et le contrle dautres objets. objets o entity : classes qui servent modliser des informations durables et souvent persistantes.
: PorteurDeCarte
Le diagramme de squence ci-dessus ne correspond quau scnario nominal du cas dutilisation. Des notes (optionnelles) permettent dindiquer les scnarii alternatifs et dexceptions. Chaque scnario nominal ou dexception peut tre document par son propre diagramme de squence.
Grce aux fragments dinteractions, il est possible de documenter un scnario alternatif (ou dexception) dans le diagramme de squence du scnario nominale. Par exemple, le diagramme de squence ci-dessous correspond la description du scnario nominal et du scnario alternatif SA4 (porteur de carte client banque).
: PorteurDeCarte