Documente Academic
Documente Profesional
Documente Cultură
Proiect de an
La disciplina
Chișinău 2019
0
Cuprins
Sarcină
Introducere 3
1 Proiectarea sistemelor informatice 4
1.1Program ciclu de viață 4
1.2 Limbajul UML 4
1.3 Diagrame de comportament 5
1.1.1 Diagrama Usecase 6
1.1.2 Diagrama secvențelor ......................................................................................... 6
1.1.3 Diagrama de colaborare ..................................................................................... 7
1.1.4 Diagrama de stare ............................................................................................... 8
1.1.5 Diagrama de activitate........................................................................................ 9
1.1.6 Diagrame structurale ......................................................................................... 9
1.1.7 Diagrama claselor ............................................................................................... 9
1.1.8 Diagrama componentelor ................................................................................. 10
1.1.9 Diagrama de amplasare ................................................................................... 10
2 Diagrame UML 11
2.1 Diagrama Usecase ............................................................................................... 11
2.2 Diagrama de secvență.......................................................................................... 13
2.3 Diagrama de cooperare........................................................................................ 15
2.4 Diagrama claselor ................................................................................................ 16
2.5 Diagrama de stare ................................................................................................ 18
2.6 Diagrama de activitate......................................... Error! Bookmark not defined.
2.7 Diagrama componentelor .................................................................................... 19
2.8 Diagrama de amplasare ....................................................................................... 20
Concluzie 22
Bibliografie 23
1
Sarcină
Scopul cursului:
Studiul tipurilor de diagrame UML, caracteristicile lor, elementele principale, aplicațiile și regulile
de construcție.
2
Introducere
Această lucrare va explora principiile care stau la baza analizei și modelarea orientate pe obiecte,
vor analiza și implementa cunoștințele despre diagramele UML - reprezentări din diferite perspective ale
proceselor care apar în aplicație, care ne permit să înțelegem mai bine funcționarea programului, modul în
care acesta este realizat și, în cazul originea problemei este sursa ei.
Înainte de a proiecta un sistem de orice scară, orice inginer trebuie să efectueze un studiu al
problemei, apoi să transfere problema practică la un model matematic și apoi să construiască un model al
sistemului real folosind acest model. În această lucrare, cea mai mare prioritate nu este o descriere detaliată
a întregului sistem, ci studiul metodelor de analiză și proiectare a sistemelor.
Pentru cele mai vizuale și modele simplificate și modele, există un limbaj unificat de modelare UML
2.0. Numărul relativ mare de tipuri de diagrame UML ne oferă diferite posibilități de reprezentare a
sistemului selectat, creând spațiu liber și liber pentru crearea unei diagrame.
Unul dintre instrumentele care acceptă specificația limbajului UML 2.0 este software-ul de
modelare Enterprise Architect. Acest instrument va fi folosit, în comparație cu alte instrumente care suportă
specificațiile limbii UML 2.0, Enterprise Architect are o interfață mai intuitivă și mai convenabilă.
3
1 Proiectarea sistemelor informatice
Procesul de creare a aplicațiilor software complexe este imposibil de imaginat fără a împărți ciclul de
viață al software-ului în etape. Ciclul de viață al programului este următoarea totalitate a etapelor
existenței sale:
- Analiza domeniului și crearea specificațiilor tehnice (TK) - în acest stadiu proiectul există doar "pe
hârtie";
- Proiectarea structurii programului - stadiul creării documentației (diagramei) care descrie interacțiunile
din cadrul și cu sistemul;
- introducerea programului - stadiul în care produsul finit este transferat clientului, ieșirea produsului pe
piață;
Scopul nostru este de a lua în considerare procesul de proiectare în detaliu. În timpul proiectării, un
arhitect sau un programator experimentat creează documentația proiectului, inclusiv descrieri de text,
diagrame și modele pentru viitorul program. Cel mai comun instrument pentru acest lucru este limba
UML.
Luați în considerare tipurile de diagramă cele mai utilizate pentru vizualizarea modelului:
Graficele, prin programare, sunt împărțite în două tipuri principale: diagramele de comportament și
diagramele structurale.
Cele cinci diagrame comportamentale de bază din UML sunt utilizate pentru a reprezenta, preciza,
construi și documenta aspectele dinamice ale unui sistem. Putem presupune că aspectele dinamice ale
sistemului sunt componentele sale în schimbare. De exemplu, aspectele dinamice ale unei case de locuit
sunt mișcarea aerului și a oamenilor prin camere. Aspectele dinamice ale unui sistem software cuprind
elemente precum fluxul de mesaje în timp și mișcarea fizică a componentelor dintr-o rețea. După cum sa
menționat deja, diagramele comportamentale din UML sunt împărțite convențional în cinci tipuri, în
conformitate cu principalele metode de modelare a dinamicii sistemului:
5
1.1.1 Diagrama Usecase
Sistemul proiectat este reprezentat ca un set de entități sau actori care interacționează cu sistemul
cu ajutorul așa-numitelor precedente. Cu alte cuvinte, fiecare caz de utilizare definește un set de acțiuni
efectuate de sistem în timpul unui dialog (interacțiune) cu un actor. În același timp, nu sunt specificate
detalii despre organizarea și implementarea interacțiunii dintre actor și sistem. Pur și simplu, descriem "ce
poate face un actor", dar nu spuneți "cum reacționează sistemul".
Un actor (actor, actor) este orice entitate care interacționează cu sistemul din exterior. Poate fi o
persoană, un dispozitiv tehnic, un program sau orice alt sistem care poate servi drept sursă de influență
asupra sistemului simulat.
Un caz de utilizare este un element folosit pentru a descrie capacitățile pe care sistemul le oferă
unui actor. Cu alte cuvinte, fiecare caz de utilizare definește un anumit set de acțiuni efectuate de sistem
în timpul unui dialog cu un actor.Interfața este utilizată pentru a specifica parametrii modelului care sunt
vizibili din exterior fără a specifica structura lor internă. Interfața nu numai că separă specificațiile
operațiilor sistemului de la implementarea lor, ci definește și limitele generale ale sistemului proiectat.
- Asociația (asociere) servește pentru a indica rolul specific al actorului într-un caz de utilizare separată.
Cu alte cuvinte, această relație stabilește rolul specific pe care îl joacă un actor atunci când
interacționează cu o instanță a unui caz de utilizare;
- extinderea relației definește relația instanțelor unui caz de o singură utilizare cu o versiune mai generală,
ale cărei proprietăți sunt determinate pe baza metodei de asociere comună a acestor instanțe;
- Generalizarea (relația de generalizare) indică faptul că un caz de utilizare A poate fi generalizat pentru a
folosi cazul B. În acest caz, opțiunea A va fi o specializare a opțiunii B. În acest caz, B este numit strămoș
sau părinte A, iar opțiunea A este descendent în ceea ce privește cazul de utilizare B;
- Include relația - indică faptul că un comportament specificat pentru un caz de utilizare este inclus ca o
componentă integrală în secvența de comportament a unui alt caz de utilizare.
Pentru reprezentarea grafică a obiectelor în diagrama de cooperare, același simbol dreptunghi este utilizat
ca și pentru clase.
Un obiect este o instanță separată a unei clase care este creată în stadiul de execuție a programului. Poate
avea propriul nume și valori specifice ale atributelor. Pentru obiecte, formatul de formatare al șirului de
clasificatori este completat de numele obiectului și are următoarea formă:
Un multiobiect este un întreg set de obiecte la unul dintre capetele unei asociații. În diagrama de
cooperare, un Multi-Object este utilizat pentru a afișa operațiile și semnalele care sunt adresate întregului
set de obiecte, și nu doar unul.
Un obiect compozit sau un obiect container este destinat să reprezinte un obiect care are structura proprie
și firele interne de control. Un obiect compus este o instanță a unei clase compozite (clasa container) care
este legată de o relație de agregare sau compoziție cu părțile sale.
O legătură este o instanță sau un exemplu de asociere arbitrară. Comunicarea ca element al limbajului
UML poate avea loc între două sau mai multe obiecte. O conexiune poate avea unele stereotipuri care
sunt scrise lângă unul dintre capetele sale și indică particularitatea implementării acestei conexiuni.
Următoarele stereotipuri pot fi utilizate în UML în acest scop:
7
- "asociere" este o asociere (asumată implicit, prin urmare acest stereotip poate fi omis);
- "Parametru" - parametru de metodă. Obiectul corespunzător poate fi doar un parametru al unei anumite
metode;
- "local" - variabilă a metodei locale. Domeniul său de aplicare este limitat la obiectul vecin;
- "global" este o variabilă globală. Domeniul său de aplicare se extinde la întreaga diagramă a cooperării;
- "auto" - o conexiune reflexivă a unui obiect cu el însuși, care permite obiectului să transmită un mesaj la
sine. În diagrama de cooperare, relația reflexivă este reprezentată de o buclă în partea superioară a
dreptunghiului obiectului.
Conceptul de colaborare (colaborare) este folosit pentru a desemna setul de obiecte care interacționează
cu un scop specific în contextul general al sistemului simulat. Scopul cooperării în sine este de a specifica
caracteristicile implementării unor operațiuni individuale cele mai semnificative din sistem.
Un stat este o metaclasă abstractă utilizată pentru a modela o situație particulară în timpul căreia este
îndeplinită o anumită condiție.
O tranziție simplă este o relație între două state succesive, ceea ce indică faptul că o stare se schimbă în
alta.
Un eveniment (eveniment), formal, este o precizare a unui fapt care are loc în spațiu și în timp. Despre
evenimente se spune că "se întâmplă", în timp ce evenimentele individuale trebuie ordonate la timp. După
apariția unui anumit eveniment, nu se poate reveni la evenimentele anterioare, cu excepția cazului în care
această posibilitate este prevăzută în mod explicit în model. În limba UML, evenimentele joacă rolul de
stimuli care inițiază tranziții de la un stat la altul. Semnalele, apelurile, sfârșitul perioadelor fixe sau
momentele de încheiere a anumitor acțiuni pot fi considerate evenimente.
Condiția de pază, dacă există, este întotdeauna scrisă în paranteze drepte după evenimentul declanșator și
este o expresie booleană. Introducerea condiției watchdog vă permite să specificați în mod explicit
semantica declanșării acesteia.
O expresie de acțiune este executată dacă și numai dacă se declanșează tranziția. Este o operație simplă
care se efectuează imediat după declanșarea tranziției corespunzătoare înainte de începerea oricăror
acțiuni în starea țintă.
8
1.1.5 Diagrama de activitate
O diagramă de activitate este o diagramă, al cărei scop principal este simularea procesului de
efectuare a operațiunilor. Diferența față de diagrama de stare constă în semantica statelor, care sunt
folosite pentru a reprezenta nu activitățile, ci acțiunile și absența semnăturilor evenimentelor la tranziții.
Fiecare stare din schema de activitate corespunde performanței unei anumite operații elementare, iar
trecerea la starea următoare funcționează numai atunci când această operație este finalizată în starea
anterioară.
Statul de acțiune este un caz special de stat. Starea acțiunii nu poate avea tranziții interne, deoarece este
elementară. Utilizarea obișnuită a unei stări de acțiune este aceea de a simula o singură etapă de executare
a unui algoritm (procedură) sau a unui flux de control.
O tranziție simplă este o relație între două state succesive, ceea ce indică faptul că o stare se schimbă în
alta.
Trasee (benzi de înot) - concepute pentru a simula procesele de afaceri. Aceasta permite împărțirea
comportamentului unui obiect în module.
Numele diagramelor structurale ale UML corespund denumirilor grupurilor principale de entități
utilizate în modelarea sistemului:
Clasa (clasa) în limba UML este utilizată pentru a desemna un set de obiecte care au aceeași structură,
comportament și relații cu obiectele din alte clase. Relațiile de bază sau legăturile din UML sunt:
9
- relația de dependență (relația de dependență) - este utilizată într-o astfel de situație atunci când o
anumită modificare a unui element de model poate necesita o schimbare a unui alt element model
dependent de el;
Interfețele sunt elemente ale unei diagrame a cazurilor de utilizare. Cu toate acestea, atunci când
construim o diagramă de clasă, interfețele individuale pot fi rafinate și în acest caz, un simbol grafic
special este folosit pentru a le descrie - un dreptunghi de clasă cu un cuvânt cheie sau un stereotip de
interfață.
10
2 Diagrame UML
11
În diagrama dată se reflectă clasificarea utilizatorilor în calitate de nivelul de acces al acestora la
date.
Sistemul Informațional “CMS” reprezintă adaptarea electronica a platformei de vinzari. Acest sistem
permite cumpararea si vinzarea produselor doar cu ajutorul calculatorului și conecțiunii la Internet.
Au fost create 3 nivele de acces: Utilizator, CumparatorVinzator. Utilizatorul poate fi atit
cumparatorul cit si vinzatorul.
Administratorul are cel mai îalt nivel de acces, în lista posibilităților acestuia se include următoarele:
oferirea accesului pentru noi utilizatori, intocmirea legaturilor dintre vinzator si comparator,solutionarea
conflictelor etc.
În schema dată este reprodus procesul de autorizare în cadrul sistemului. Acest proces decurge în 12 pași.
Datele introduse trec un proces de verificare în decursul căruia se verifică dacă asa utilizator există în
sistem și daca coincid parolele introdusă la moment și acea din baza de date.
13
Fig 4. Logarea în sistem Diagrama de secventă pentru logarea in sistem
In diagrama de mai sus este reprezentată introducerea datelor de către utilizator intr-o interfață
grafică, apoi datele sunt trimise sistemului de logare care verifică in baza de date, dacă există asa utilizator,
apoi daca răspunsul este ok atunci utilizatorul este conectat la sistem.
Următoarea diagramă de secvență este diagrama care reprezintă setul de interacțiuni dintre sistem,
interfețele de adăugare, sistemul de control, și baza de date.
14
2.3 Diagrama de cooperare
Fig.6 Logarea
În figura 4 este reprezentată diagrama de colaborare, nivelul de exemple pentru cazul în care utilizatorul
acceseaza platforma prin intermediul logarii.
Spre deosebire de diagrama de secvențe, numai relațiile dintre obiectele care joacă anumite roluri în
interacțiune sunt reprezentate în diagrama de colaborare. Pe de altă parte, această diagramă nu indică timpul
ca măsură separată.
15
2.4 Diagrama claselor
În figura următoare este reprezentată ierarhia utilizatorilor sistemuli. Aici sunt prezente campurile
si metodele cât comune atât si personificate. Diferența dintre utilizator și administrator constă în
prioritățile administratorului în comparație cu utilizatorul. Clasele descendente de la moderator diferă prin
nivelul de acces la date. Administratorul are un spectru de posibilități mai vast.
În prima diagrama de clasa se descrie modelarea actiunilor administratorului unui site web și anume
Blocarea Contului, Adaugarea unui nou administrator, Stergerea utilizatorilor si adaugare lor (Figura 1).
În Figura 9 sunt reprezentate clasele de baza care comunica intre ele și realizează componentele de
interfață. Totodată sunt descrie relațiile de comunicare și specificare rolurilor.
În Figura 18 sunt reprezentate clasele de baza care funcționează pe servere separate si care împreuna
cu rolurile dintre ele realizează comunicarea dintre servere si realizarea funcționalitate de baza.
17
2.5 Diagrama de stare
Spre deosebire de alte diagrame, diagrama de stare descrie procesul de schimbare a stărilor unei
singure clase sau mai degrabă o instanță a unei anumite clase, adică modelează toate modificările posibile
ale stării unui anumit obiect, după cum se arată în figura 11 și firgura 12.
În Figura 11 se descrie procesul de restabilire a parolii în ca că utilizatorul nu și-o poate aminti sau
în caz ca o persoană neautorizată are acces la contul său.
În Figura 12 este reprezentat una din funcțiile de bază a site-ului și anume logarea.
18
2.7 Diagrama componentelor
19
Fig. 14. Interactiunea utilizator-site-server
20
Fig.15-Legătura dintre client-aplicație-server
21
Concluzie
Scopul acestei lucrări a fost analiza și modelarea unui astfel de sistem ca o aplicație "CMS".
Analiza ideii permitea să se determine cum ar arăta implementarea acesteia în caietul de sarcini. În
conformitate cu principiile modelării, a fost creată o ierarhie și, după caz, au fost descrise aspecte mai
importante ale sistemului. În prima etapă, au fost modelate cele mai importante funcții ale sistemului pentru
utilizatori, descriind astfel toate funcționalitățile necesare și posibile.
Apoi a fost luată în considerare interacțiunea obiectelor în timp, în acest stadiu au apărut diagrame
ale unei secvențe.Următorul pas a fost de a rafina proprietățile, componentele individuale ale aplicațiilor -
au fost create diagrame de clasă. Aceste diagrame arată relațiile dintre clase, atributele lor și proprietățile.
Mai mult, s-au evidențiat diferite procese care au apărut în timpul funcționării aplicației. Acestea au
fost mapate folosind o mașină de stare finită în diagramele de stare. Procesele algoritmice au fost
reprezentate pe diagrame de activitate. În acest stadiu, comportamentul sistemului a fost determinat,
descrierea structurii sale logice a fost finalizată.
Ultima etapă este modelarea din punct de vedere fizic. A fost făcută o diagramă a componentei care
arată dependența componentelor și o diagramă de amplasare.
Pentru modelare, sa folosit limbajul UML - un limbaj descriptiv pentru modelarea obiectului în
dezvoltarea de software, modelarea proceselor de afaceri, proiectarea sistemului și afișarea structurilor
organizaționale.
În procesul de implementare a acestei lucrări, sa dovedit că limbajul UML este un limbaj de
vizualizare și design cu adevărat simplu și accesibil, care permite, după un scurt training, să îndeplinească
cu succes diferite sarcini de proiectare. UML facilitează utilizarea acesteia pentru a determina cu ușurință
și fără ambiguitate direcția de lucru. Acest lucru este necesar în special atunci când lucrăm la un proiect de
specialiști din diferite domenii care lucrează cu diferite concepte. UML oferă un singur standard pentru toți,
asigurându-se că, respectând standardul, chiar și specialiștii din diferite domenii pot înțelege structura și
comportamentul sistemului proiectat.
22
Bibliografie
23