Tutorial diagramă secvență – Ghid complet cu exemple
Publicat: 2017-01-27Acest tutorial cu diagrame de secvență este pentru a vă ajuta să înțelegeți mai bine diagramele de secvență; pentru a explica tot ce trebuie să știți, de la cum să desenați o diagramă secvență până la greșelile comune pe care ar trebui să le evitați când desenați una.
Există 3 tipuri de diagrame de interacțiune; Diagrame de secvențe, diagrame de comunicare și diagrame de timp. Aceste diagrame sunt folosite pentru a ilustra interacțiunile dintre părțile dintr-un sistem. Dintre cele trei, diagramele de secvență sunt preferate atât de dezvoltatori, cât și de cititori pentru simplitatea lor.
În acest tutorial cu diagrama de secvență veți afla despre;
- Ce este o diagramă de secvență
- Notații de diagramă de secvență
- Cele mai bune practici pentru diagrama secvenței
- Cum să desenezi o diagramă de secvență
- Diagrama secvenței Greșeli frecvente
- Șabloane și exemple de diagrame de secvență
- Diagrama secvenței SlideShare Prezentare
- Feedback cu privire la Ghidul diagramei secvențe
Ce este o diagramă de secvență?
Diagramele de secvență, utilizate în mod obișnuit de dezvoltatori, modelează interacțiunile dintre obiecte într-un singur caz de utilizare. Ele ilustrează modul în care diferitele părți ale unui sistem interacționează între ele pentru a îndeplini o funcție și ordinea în care interacțiunile apar atunci când este executat un anumit caz de utilizare.
Cu cuvinte mai simple, o diagramă de secvență arată diferite părți ale unui sistem care lucrează într-o „secvență” pentru a face ceva.
arată diferite părți ale unui sistem care lucrează într-o „secvență” pentru a face ceva.
Notații de diagramă de secvență
O diagramă de secvență este structurată în așa fel încât să reprezinte o linie temporală care începe din partea de sus și coboară treptat pentru a marca succesiunea interacțiunilor. Fiecare obiect are o coloană iar mesajele schimbate între ele sunt reprezentate prin săgeți.
O prezentare rapidă a diferitelor părți ale unei diagrame secvențe
Notație Lifeline
O diagramă de secvență este alcătuită din mai multe dintre aceste notații care ar trebui să fie aranjate orizontal în partea de sus a diagramei. Nu ar trebui să se suprapună două notații de salvare. Ele reprezintă diferitele obiecte sau părți care interacționează între ele în sistem în timpul secvenței.
O notație de salvare cu un simbol de element actor este utilizată atunci când diagrama de secvență particulară este deținută de un caz de utilizare.
O linie de salvare cu un element de entitate reprezintă datele sistemului. De exemplu, într-o aplicație de serviciu pentru clienți, entitatea Client ar gestiona toate datele legate de un client.
O linie de salvare cu un element de limită indică o limită de sistem/element software într-un sistem; de exemplu, ecranele interfeței cu utilizatorul, gateway-urile bazei de date sau meniurile cu care utilizatorii interacționează sunt limite.
Și o linie de salvare cu un element de control indică o entitate de control sau un manager. Acesta organizează și programează interacțiunile dintre granițe și entități și servește ca mediator între ele.
Bare de activare
Bara de activare este cutia plasată pe linia de salvare. Este folosit pentru a indica faptul că un obiect este activ (sau instanțiat) în timpul unei interacțiuni între două obiecte. Lungimea dreptunghiului indică durata în care obiectele rămân active.
Într-o diagramă de secvență, o interacțiune între două obiecte are loc atunci când un obiect trimite un mesaj altuia. Utilizarea barei de activare pe liniile de salvare ale Apelantului de mesaje (obiectul care trimite mesajul) și a receptorului de mesaje (obiectul care primește mesajul) indică faptul că ambele sunt active/este instanțiate în timpul schimbului de mesaj.
Săgeți pentru mesaje
O săgeată de la apelantul mesajului la receptorul de mesaje specifică un mesaj într-o diagramă de secvență. Un mesaj poate curge în orice direcție; de la stânga la dreapta, de la dreapta la stânga sau înapoi la Apelantul mesajului însuși. În timp ce puteți descrie mesajul trimis de la un obiect la altul pe săgeată, cu diferite vârfuri de săgeată puteți indica tipul de mesaj trimis sau primit.
Săgeata mesaj vine cu o descriere, care este cunoscută sub numele de semnătură de mesaj, pe ea. Formatul pentru semnătura acestui mesaj este mai jos. Toate părțile, cu excepția numelui_mesajului, sunt opționale.
atribut = nume_mesaj (argumente): tip_return
- Mesaj sincron
După cum se arată în exemplul barelor de activare, un mesaj sincron este utilizat atunci când expeditorul așteaptă ca receptorul să proceseze mesajul și să revină înainte de a continua cu un alt mesaj. Capul de săgeată folosit pentru a indica acest tip de mesaj este unul solid, ca cel de mai jos.
- Mesaj asincron
Un mesaj asincron este utilizat atunci când apelantul mesajului nu așteaptă ca receptorul să proceseze mesajul și să revină înainte de a trimite alte mesaje către alte obiecte din sistem. Capul de săgeată folosit pentru a afișa acest tip de mesaj este o săgeată de linie, așa cum se arată în exemplul de mai jos.
- Retur mesaj
Un mesaj de retur este folosit pentru a indica faptul că receptorul mesajului a terminat de procesat mesajul și îi revine controlul asupra apelantului mesajului. Mesajele de retur sunt piese de notare opționale, pentru o bară de activare care este declanșată de un mesaj sincron implică întotdeauna un mesaj de retur.
Sfat: Puteți evita aglomerarea diagramelor prin minimizarea utilizării mesajelor returnate, deoarece valoarea returnată poate fi specificată chiar în săgeata mesajului inițial.
- Mesaj de creare a participanților
Obiectele nu trăiesc neapărat pe întreaga durată a secvenței de evenimente. Obiectele sau participanții pot fi creați în funcție de mesajul care este trimis.
Notarea casetei participantului abandonat poate fi folosită atunci când trebuie să arătați că respectivul participant nu a existat până când a fost trimis apelul de creare. Dacă participantul creat face ceva imediat după crearea sa, ar trebui să adăugați o casetă de activare chiar sub caseta de participant.
- Mesaj de distrugere a participanților
De asemenea, participanții, atunci când nu mai sunt necesari, pot fi, de asemenea, șterși dintr-o diagramă de secvență. Acest lucru se face prin adăugarea unui „X” la sfârșitul liniei de viață a participantului menționat.
- Mesaj reflexiv
Când un obiect își trimite un mesaj, se numește mesaj reflexiv. Este indicat cu o săgeată cu mesaj care începe și se termină la aceeași linie de salvare, așa cum este prezentat în exemplul de mai jos.
cometariu
Diagramele UML permit, în general, adnotarea comentariilor în toate tipurile de diagrame UML. Obiectul de comentariu este un dreptunghi cu un colț îndoit, așa cum se arată mai jos. Comentariul poate fi legat de obiectul asociat cu o linie întreruptă.
Notă: Vizualizați cele mai bune practici pentru diagrama secvenței pentru a afla despre fragmentele de secvență.
Cele mai bune practici pentru diagrama secvenței
- Gestionați interacțiunile complexe cu fragmente de secvență
Un fragment de secvență este reprezentat ca o casetă care încadrează o secțiune de interacțiuni între obiecte (așa cum se arată în exemplele de mai jos) într-o diagramă de secvență.
Este folosit pentru a afișa interacțiuni complexe, cum ar fi fluxuri și bucle alternative, într-un mod mai structurat. În colțul din stânga sus al fragmentului se află un operator. Acesta – operatorul fragment – specifică ce fel de fragment este.
Alternative
Fragmentul de combinație alternativă este utilizat atunci când trebuie făcută o alegere între două sau mai multe secvențe de mesaje. Modelează logica „dacă atunci altfel”.
Fragmentul alternativ este reprezentat printr-un dreptunghi mare sau un cadru; este specificat prin menționarea „alt” în interiorul casetei de nume a cadrului (aka operator fragment).
Pentru a afișa două sau mai multe alternative, dreptunghiul mai mare este apoi împărțit în ceea ce se numește operanzi de interacțiune folosind o linie întreruptă, așa cum se arată în exemplul de diagramă de secvență de mai sus. Fiecare operand are o protecție împotriva căruia să fie testat și este plasat în colțul din stânga sus al operandului.
Opțiuni
Fragmentul de combinație de opțiuni este folosit pentru a indica o secvență care va apărea numai într-o anumită condiție, altfel, secvența nu va apărea. Modelează afirmația „dacă atunci”.
Similar cu fragmentul alternativ, fragmentul de opțiune este reprezentat și cu un cadru dreptunghiular unde „opt” este plasat în interiorul casetei de nume.
Spre deosebire de fragmentul alternativ, un fragment de opțiune nu este împărțit în doi sau mai mulți operanzi. Apărătorul opțiunii este plasat în colțul din stânga sus.
(Găsiți un exemplu de diagramă de secvență cu un fragment de opțiune în secțiunea Șabloane și exemple de diagrame de secvență).
Bucle
Fragmentul de buclă este folosit pentru a reprezenta o secvență repetitivă. Puneți cuvintele „buclă” în caseta de nume și starea de protecție lângă colțul din stânga sus al cadrului.
Pe lângă testul boolean, garda dintr-un fragment de buclă poate avea alte două condiții speciale testate. Acestea sunt iterații minime (scrise ca minint = [numărul] și iterații maxime (scrise ca maxint = [numărul]).
Dacă este o gardă de iterații minime, bucla trebuie să se execute nu mai puțin decât numărul menționat, iar dacă este o gardă de iterații maxime, bucla nu trebuie să execute mai mult decât numărul indicat.
(Găsiți un exemplu de fragment de buclă mai jos în șabloanele diagramei de secvență și secțiunea de exemple)
Fragment de referință
Puteți utiliza fragmentul de referință pentru a gestiona dimensiunea diagramelor secvențe mari. Vă permite să reutilizați o parte dintr-o diagramă de secvență în alta sau, cu alte cuvinte, puteți face referire la o parte a unei diagrame într-o altă diagramă folosind fragmentul de referință.
Pentru a specifica fragmentul de referință, trebuie să menționați „ref” în caseta de nume a cadrului și numele diagramei de secvență la care se face referire în interiorul cadrului.
Pentru mai multe fragmente de secvență, consultați Dincolo de elementele de bază ale diagramelor de secvență: Partea 1 , Partea 2 și Partea 3 .
- Desenați diagrame de secvențe mai mici care surprind esența cazului de utilizare
În loc să vă aglomerați diagrama de secvență cu mai multe obiecte și grupuri de mesaje care vor deruta cititorul, desenați câteva diagrame de secvență mai mici care să explice în mod adecvat ceea ce face sistemul dumneavoastră. Asigurați-vă că diagrama se potrivește pe o singură pagină și că lasă spațiu și pentru note explicative.
De asemenea, în loc să desenezi zeci de diagrame de secvență, află ce este comun între scenarii și concentrează-te pe asta. Și dacă codul este expresiv și poate sta pe cont propriu, nu este nevoie să desenați o diagramă de secvență în primul rând.
Cum să desenezi o diagramă de secvență
O diagramă de secvență reprezintă scenariul sau fluxul de evenimente într-un singur caz de utilizare. Fluxul de mesaje al diagramei secvențe se bazează pe narațiunea cazului de utilizare particular.
Apoi, înainte de a începe să desenați diagrama de secvență sau să decideți ce interacțiuni ar trebui incluse în ea, trebuie să desenați diagrama cazului de utilizare și să pregătiți o descriere cuprinzătoare a ceea ce face cazul particular de utilizare.
Din exemplul de diagramă de caz de utilizare de mai sus „Creează un nou cont de bibliotecă online”, ne vom concentra pe cazul de utilizare numit „Creează un cont de utilizator nou” pentru a desena exemplul nostru de diagramă de secvență.
Înainte de a desena diagrama de secvență, este necesar să se identifice obiectele sau actorii care ar fi implicați în crearea unui nou cont de utilizator. Acestea ar fi;
- Bibliotecar
- Sistem de management al bibliotecii online
- Baza de date cu acreditările utilizatorului
- Sistemul de e-mail
Odată ce identificați obiectele, este important să scrieți o descriere detaliată despre ceea ce face cazul de utilizare. Din această descriere, vă puteți da seama cu ușurință de interacțiunile (care ar trebui să meargă în diagrama de secvență) care ar avea loc între obiectele de mai sus, odată ce cazul de utilizare este executat.
Iată pașii care au loc în cazul de utilizare numit „Creare New Library User Account”.
- Bibliotecarul solicită sistemului să creeze un nou cont de bibliotecă online
- Bibliotecarul selectează apoi tipul de cont de utilizator al bibliotecii
- Bibliotecarul introduce datele utilizatorului
- Detaliile utilizatorului sunt verificate folosind baza de date de acreditări a utilizatorului
- Este creat noul cont de utilizator al bibliotecii
- Un rezumat al detaliilor noului cont este apoi trimis utilizatorului prin e-mail
Din fiecare dintre acești pași, puteți specifica cu ușurință ce mesaje trebuie schimbate între obiectele din diagrama de secvență. Odată ce este clar, puteți continua și începe să desenați diagrama secvenței.
Diagrama de secvență de mai jos arată modul în care obiectele din sistemul de management al bibliotecii online interacționează între ele pentru a îndeplini funcția „Creează un nou cont de utilizator al bibliotecii”.
Diagrama secvenței Greșeli frecvente
Atunci când desenează diagrame de secvență, designerii tind să facă aceste greșeli comune. Evitând aceste greșeli, puteți asigura calitatea diagramei dvs.
- Adăugând prea multe detalii. Acest lucru aglomera diagrama și o face dificil de citit.
- Diagrame de secvențe învechite și depășite care sunt irelevante în comparație cu interfețele, arhitecturile actuale etc. ale sistemului. Nu uitați să le înlocuiți sau să le modificați.
- Nu lăsați spațiu liber între textul cazului de utilizare și săgeata mesajului; acest lucru face dificil pentru oricine să citească diagrama.
- Nu luați în considerare cu atenție originile săgeților mesajului.
Vedeți aceste greșeli obișnuite explicate în detaliu în Ghidul diagramei secvenței: Greșeli obișnuite de evitat la desenarea diagramelor de secvență.
Exemple și șabloane de diagrame de secvență
Mai jos sunt câteva exemple de diagrame de secvență și șabloane care sunt desenate folosind Creately. Creați diagrame de secvență online folosind instrumentul online Creately. Faceți clic pe șablon pentru a-l deschide în editor.
Diagrama secvenței unui sistem de examen online
Sistem de examinare online – Diagrama de clasă (UML)
Exemplu de diagramă de secvență a unui sistem de management școlar
Exemplu de fragment de combinație de opțiuni
Exemplu de secvență de buclă
Iată mai multe șabloane de diagrame de secvență și exemple pe care le puteți edita imediat.
Tutorial diagramă secvență – Prezentare SlideShare
Feedback cu privire la tutorialul diagramei secvenței
Acest tutorial cu diagramele de secvență acoperă tot ce trebuie să știți despre diagramele de secvență și desenarea acestora. Dacă aveți sugestii sau întrebări cu privire la tutorialul diagramei secvențe, nu ezitați să lăsați un comentariu.
Mai multe tutoriale pentru diagrame
- Tutorial de modelare a proceselor de afaceri (Ghidul BPM pentru explicarea caracteristicilor)
- Ghid final de diagramă de flux ( Tutorial complet de diagramă de flux cu exemple)
- Tutorial diagramă de caz de utilizare (ghid cu exemple)