Sunteți pe pagina 1din 32

Universitatea Tehnică a Moldovei

Facultatea Calculatoare, Informatică și Microelectronică


Departamentul Ingineria Software și Automatică

Proiect de curs
Disciplina: Analiza și modelarea orientată pe obiect

Tema: Analiza și modelarea unei Librarii online

Au efectuat: st. gr. TI-181


Vrabie Aliona
A controlat: Sava Nina
Melnic Radu

Chișinău 2020
Cuprins
Introducere...........................................................................................................................................................3

Capitolul 1. Elemente introductive în limbajul UML.........................................................................................4

1.1. Modelul UML.......................................................................................................................................4

1.2. Tipuri de reprezentări grafice în UML................................................................................................4

Capitolul 2. Analiza și modelarea sistemului......................................................................................................7

2.1. Descrierea funcționalităților sistemului................................................................................................7

2.2. Scenariile de lucru ale sistemului.......................................................................................................10

2.3. Cooperarea între obiecte.....................................................................................................................15

2.4. Reprezentarea claselor de obiecte.......................................................................................................18

2.5. Descrierea activităților obiectului.......................................................................................................22

2.6. Descrierea acțiunilor obiectului..........................................................................................................23

2.7. Elementele componente ale sistemului...............................................................................................25

2.8. Distribuirea componentelor sistemului după nodurile fizice.............................................................27

Concluzie...........................................................................................................................................................29
Introducere
Utilizarea internetului în ultimii ani a produs schimbări majore în majoritatea sferelor vieții. Aceste
schimbări au creat la rândul lor noi oportunutății pentru întreaga lume, a oferit posibilitatea de a
comunica din colțuri diferite ale lumii sau chiar de a procura produse din alt colț al lumii. Dezvoltarea
unui astfel de comerț este unul din factorii importanți care a condus la creșterea economică și
prosperare societății. Datorită dezvoltării comerțului prin intermediul internetului va influența cu
siguranță piețele pe care le știm noi astăzi , aducând schimbări majore în urmatorii ani.
Astăzi suntem prezenți la o eră digitală fiind cea mai bună inovație a tuturor timpurilor.
Comerțul electronic oferă o capacitate imensă de conectivitate prin activitățile de cumpărare și
vânzare din întreaga lume. În ultimele două decenii noile concepte de afaceri au evoluat datorită
popularității internetului, oferind noi oportunități de afaceri pentru organizațiile comerciale și sunt în
continuare influențate de activitățile utilizatorilor noilor aplicații ale Internetului. Tranzacțiile de afaceri
sunt posibile printr-o combinație de procesare securizată a datelor, tehnologii de rețea și funcții de
interactivitate. Modelele de afaceri sunt, de asemenea, supuse unor forțe externe continue de evoluție
tehnologică, soluții inovatoare derivate prin concurență, crearea unor limite legale prin legislație și
schimbări sociale.
Astfel trecerea tuturor magazinelor tradiționale în mediul online , a motivat și trecerea librăriilor
în mediul online, făcînd posibilă achiziționarea celor mai recente cărți, cît și schimbul de impresii
asupra cărților procurate și respective citite. Astăzi avem posibilitatea de a avea acces oriunde și oricînd
la un nou produs din librărie pe care poate fi livrat chiar la ușa ta.
Librăria online este o revoluție a industriei de cărți. Durata de operare a librăriilor tradiționale,
adresa și spațiul este limitat, astfel încât tipurile de cărți pe care le poți găsi au un grad de restricție. Dar
librăria online a modificat modul de administrare al librăriei tradiționale, astfel, atât timp cât ai un
dispozitiv electronic, poți cumpăra cartea oriunde, economisind timp și efort, scurtând timpul de
selecție a cărților în mod eficient. Sistemul de librării online este bazat pe principiul furnizării de
comoditate și servicii oameni.

Acest sistem informațional este unul actual și foarte necesar creșterii unei societăți educată și
informată cît la la dezvoltarea ei universală.Cu siguranță mirosul cărților scoase din editură nu poate fi
transmis de librăria online, dar procurînd o carte din oricare din librăriile online vei primi o parte din
acel miros.
Capitolul 1. Elemente introductive în limbajul UML
1.1. Modelul UML
Unified Modeling Language (prescurtat UML) este un limbaj standard pentru descrierea de
modele și specificații pentru software. Limbajul a fost creat de către consorțiul Object Management
Group (OMG) care a mai produs printre altele și standardul de schimb de mesaje între sisteme
CORBA. UML a fost la bază dezvoltat pentru reprezentarea complexității programelor orientate pe
obiect, al căror fundament este structurarea programelor pe clase, și instanțele acestora (numite și
obiecte). Cu toate acestea, datorită eficienței și clarității în reprezentarea unor elemente abstracte, UML
este utilizat dincolo de domeniul IT. Așa se face că există aplicații ale UML-ului pentru management
de proiecte, pentru business Process Design etc. [CITATION Yun \l 1033 ]

În esență principalele elemente care au stat la baza construirii limbajului de modelare UML au
fost următoarele:

 Să furniizeze un limbaj vizual deosebit de expresiv pentru dezvoltarea de modele ale


unei aplicații, bazat pe o notație formală
 Să pună la dispozitia utilizatorilor mecanisme pentru a extinde conceptele de bază ale
limbajului dacă se dorește acest lucru
 Să furnizeze suport pentru implementarea conceptelor avansate de modelare ca exemplu
șabloane(patter-uri) obiectuale
 Să permită modelarea aplicației într-o manieră independentă față de limbajul de
programare particular
 Să încurajeze dezvoltarea uneltelor de proiectare obiectuală.

1.2. Tipuri de reprezentări grafice în UML


În urma informațiilor asimilate la lecțiile de curs, cunoaștem următoarele diagrame utilizate
în UML, care vor fi mai apoi prezentate în proiect:

1. Diagrama cazurilor de utilizare (use case diagram) prezinta o colecție de cazuri de


utilizare și actori care:
• ofera o descriere generală a modului în care va fi utilizat sistemul
• furnizeaza o privire de ansamblu a functionalităților ce se doresc a fi oferite de sistem
• arată cum interacționează sistemului cu unul sau mai mulți actori
• asigură faptul că sistemul va produce ceea ce s-a dorit. [CITATION Cre \l 1033 ]
2. Diagrama de secvență (Sequence Diagram) este o diagramă de interacţiune formată din
obiecte, mesajele care se schimbă între acestea şi dimensiunea temporală reprezentată
progresiv pe verticală.
 Subliniază ordinea mesajelor în funcţie de timp.
 Obiectele sunt plasate în marginea de sus a diagramei, de-a lungul axei OX, de la
stânga la dreapta.
 Ele sunt aranjate în orice ordine care permite simplificarea diagramei.
 De obicei, obiectele care încep interacţiunea se aşează la stânga iar obiectele care
urmează în partea dreaptă.
 Existenţa obiectelor este reprezentată prin liniile de viaţă ale acestora.
3. Diagrama de colaborare (Collaboration Diagram) este o diagramă de interacţiune care
subliniază organizarea structurală a obiectelor care trimit şi primesc mesaje.
 Grafic, o diagramă de colaborare este o colecţie de vârfuri şi arce.
 Reprezintă aceleaşi informaţii ca şi diagrama de secvenţă, dar subliniază
organizarea obiectelor care participă la interacţiune.
 Obiectele sunt plasate primele, ca vârfuri ale unui graf, se trasează legăturile care
conectează obiecte, ca arcuri în acest graf, apoi se adaugă acestor legături mesajele
pe care obiectele le primesc sau le trimit.
 Pentru a indica ordinea, mesajul trebuie prefixat cu un număr începând de la 1 şi
crescând.
- Diagrama de colaborare, nivelul de specificare, unde se prezintă colaborarea
la general, și se implementează moștenirea.
- Diagrama de colaborare, nivelul de exemplu, unde este descris fiecare pas al
colaborării.
4. Diagrama claselor (Class Diagram)
Clasa UML modelează componentele (entităţile) de interes ale unui sistem. Clasa are instanţe,
sau realizări. Aceste instanţe sunt obiectele clasei. Prin conceptul de clasă se descriu structura
şi comportarea obiectelor clasei. Structura conţine atributele fiecărui obiect din clasă.
Comportarea include operaţiunile ce pot fi executate (efectuate) pe (asupra) o instanţă
specifică de obiect.
5. Diagrama de stare (State Diagram) - prezintă toate stările prin care trece un obiect al
clasei, precum şi evenimentele care-i cauzează modificările de stare.
Diagramele de stare au la bază două concepte importante: stările ce caracterizează valori sau
seturi de valori ale obiectelor, și evenimete ce constau din stimuliexterni, ce acționează asupra
obiectelor și determină o tranziție de la o stare la alta. Diagramele de stare sunt grafuri, în care
nodurile sunt stări și arcele direcționate sunt tranziții, avînd ca etichete numele evenimentelor
care le-au provocat. Se precizează acțiunile rezultate din aceste schimbări. [ CITATION Uni \l
1033 ]
6. Diagrama de activitate (Activity Diagram)
Diagramele de activități sunt cazuri particulare ale diagramelor de stare care nu descriu
însă un flux de control bazat pe evenimente, ci unul procedural, în care toate sau
majoriatea tranzițiilor se efectuează automat, la terminarea acțiunilor efectuate în interiorul
stărilor. Diagramele de activități se pot reprezenta pentru a descrie un caz de utilizare, un
pachet sau implementarea unei operații.
În diagramele de activitate pot apărea două tipuri particulare de stări: stări acțiune și
stări subactivitate. O stare acțiune, spre deosebire de stările obișnuite, nu poate avea
tranziții internesau tranziții de ieșire bazate pe evenimente; ea reprezintă o etapă din
execuția unui algoritm sau a unui flux de lucru, avînd asociată o acțiune de intrare, la
teminarea căreia se generează automat o tranziție de iețire din stare.
În locul dreptunghiului cu colțuri rotungite, standartul UML folosește pentru starea
acțiune arce convexe în ambele părțica. Expresia acțiunii se scrie în mijlocul acestui
simbol, nefiind necesar ca ea să fie unică în cadrul diagramei.
O stare subactivitate constituie invocarea unui graf de activități , care este reprezentat
într-o altă diagramă. Apare astfel o imbricare, care are asociată o pictogramă formată din
două stări acțiune și o tranziție asemănătoare celei utilizate pentru reprezentarea stărilor
compozite ascunse din diagramele de stare și plasată în parte din dreapta jos. Nici numele
subactivității nu trebuie să fie unic în cadrul diagramei.
7. Diagrama componentelor (Component Diagram) - prezintă structura fizică a codului în
termenii componentelor de cod. Se folosește pentru a ilustra vederea statică de
implementare a unui sistem.
8. Diagrama de plasare - conține nodurile și relațiile dintre ele, ilustrând vederea statică de
amplasare a unei arhitecturi. [4]
Capitolul 2. Analiza și modelarea sistemului
2.1. Descrierea funcționalităților sistemului
Realizarea cazurilor de utilizare pentru librarie online

Figura:2.1 Tipuri de utilizatori

Generalizare între actori arată că un actor moștenește structura și comportamentul unuia sau a mai
multor actori.În cazul unei librarii online utilizator al acestui sistem poate fi clientul care accesează
acest sistem cît și administratorul care gestionează libraria online.În acest caz putem observa că atît
administratorul cît și clientul el pot să comunice cu aceleasi cazuri de utilizare ale sistemului ca și
parintele său.
Figura 2.2 Structura sistemului librarie online

În cazul sistemului dat observăm că clientul poate avea mai multe cazuri de utilizare (vezi figura 2.2)
care îi permit să realizeze anumite acțiuni în cadrul sistemului. Cazurile de utilizare se folosesc pentru
a captura comportamentul pe care trebuie sa-l ia sistemul fara a specifica modul in care acest
comportament este implementat; un caz de utilizare nu trebuie sa specifice si modul de implementare
al acestuia; un caz de utilizare arata care este comportamentul sistemului, nu si cum este realizat
acesta. Cazurile de utilizare permit analistului sa comunice cu utilizatorii si dezvoltatorii (care
construiesc sistemul ce trebuie sa satisfaca cerintele); la acest nivel detaliile sunt ignorate, ele vor fi
luate in considerare mai tarziu.
Figura 2.3 Logare

În figura 2.3 este reprezentat cazurile de utilizare pentru logare într-o librarie online. Atfel observăm că
salvrea parolei este reprezentată prin relația de extindere deoarece nu este obligatorie în cazul în care
clientul nu își dorește să salveze parola acest lucru nu este obligatoriu.

Figura 2.4 Creare cont

În cazul creării contului relatia « include » arata ca secventa de evenimente descrisa in cazul de
utilizare inclus se gaseste si in secventa de evenimente a cazului de utilizare de baza. Sageata este
orientata catre cazul de utilizare care este folosit si este etichetata cu numele stereotipului « include ».
Aceasta notatie este facuta prin analogie cu notatia pentru apelul unei subrutine (sageata de
dependenta).

Pentru mai multă claritate, putem spune că scenariile care reprezintă instanțe ale cazului de utilizare de
bază conțin subscenarii ce sunt instanțe ale cazului de utilizare inclus.

Figura 2.5 Căutare cărți

În figura 2.5 am reprezentat cautare carți prin generalizare pentru că clientul poate efectua căutarea
doar după una din aceste clasificări în cazul în care am putea efectua aceste căutări după filter această
diagram ar fi reprezentată diferit.

2.2. Scenariile de lucru ale sistemului


Diagramele de secvenţe sunt utilizate pentru:

 Descrierea scenariilor de utilizare a aplicaţiei. Pentru fiecare diagramă a cazurilor de utilizare


definită în cadrul procesului de analiză se pot defini unul sau mai multe scenarii de utilizare prin
care se evidenţiază fluxurile de mesaje între sistem şi utilizator sau intre componentele
sistemului;
 Descrierea logicii metodelor – diagramele de secvenţe pot fi folosite pentru a descrie logica de
funcţionare a funcţiilor sau proceselor complexe;
 Descrierea logicii unui serviciu sau proces – pentru a implementa o funcţie complexă la nivelul
sistemului este nevoie ca două sau mai multe componente să interacţioneze. Diagramele de
secvenţe permit reprezentarea fluxurilor de mesaje între componentele sistemului, evidenţiind şi
constrângerile temporare (ordine de execuţie, durate de execuţie, termene limită). [ CITATION
UML \l 1033 ]
sd mdis

Librarie online Baza de date

:Client

1.Logare
()

2.Afisare aplicație
()

3.Selectare filtru de cautare carți ()

4.Afișare modalitați de căutare()

5.Căutare după autor()

6.Cautare carti după autor()

7.Cautare carte după autor()

8.Transmitere carți gasite()

9.Afișare cărți găsite()

10.Adăugare carte la coș()

11.Adaugare carte dorită la coș()

12. Adaugare carte dorită la coș()

13.Afișare carte adaugata()

14.Afișare carte dorită în coș()

15.Ieșre din aplicație()

Figura 2.6 Cautare cărții și adăugare la coș

În figura 2.6 este reprezentată diagrama de segvență acțiunile realizate de către user Client în cadrul
sistemului librărie online. Clientul se loghează în librărie invocînd returnarea aplicațieii librăriei.El
poate realiza o serie de acțiuni în cadrul sistemului, acesta alege să caute cărți după autor , se caută cărți
în baza de date și prin return se trimite datele la sistem după care se afișează lista gasită în aplicație.
sd Package1

Librărie online Baza de date

:Admi nistrator

1.Logare ca administrator()

2.Afișare aplicație()

3.Adăugare cărți noi()

4.Adaugare cărți noi()

5.Adaugare carte noua()

6.Adaugare carți noi()

7Afișare carți noi adaugate()

8.Stabilire preț pentru carțile noi()

9.Trimitere preț pentru carți()

10.Adaugare preț pentru carțile noi()

11.Afișare preț
()

11.Afișare lista carți adaugate cu preț()

12.Îchidere aplicație()

Figura 2.7 Adăugare cărți de către administrator


În figura 2.7 admisistratorul efectuează următoarele acțiuni în cadrul librăriei online:

1.Logare ca administrator;

2. Adăugare cărți noi;

3.Adăugare preț pentru cărțile noi;

4.Delogare din aplicație.


sd Package1

Li brări e online Baza de date

:Admi ni strator

1.Logare ca admi ni strator()

2.Afi șare apl i cați e()

3.Adăugare cărți noi()

4.Adaugare cărți noi()

5.Adaugare carte noua()

6.Adaugare carți noi()

7Afi șare carți noi adaugate()

8.Stabil i re preț pentru carți l e noi ()

9.T rim itere preț pentru carți ()

10.Adaugare preț pentru carți l e noi()

11.Afi șare preț


()

11.Afi șare l i sta carți adaugate cu preț()

12.Îchi dere apl icație()

Figura 2.8 Căutare cărți după recomandări


2.3. Cooperarea între obiecte
Diagramele de colaborare arată interacţiunea dintre obiecte intr-o situaţie concretă. Spre deosebire
de diagramele de secvență care pun accent pe interacţiunea exprimată în timp, diagramele de
colaborare arată legăturile logice intre obiecte. Obiectele sunt elementele de bază sau primitivele
grafice din care constă diagrama de colaborare.

Colaborarea este interacțiunea dintr-o totalitate de elemente care produc un efect corporativ. Legătura
dintre obiecte este exemplarul sau exemplul asocierii arbitrare. Legătura ca element al limbajului UML
poate fi între două sau mai multe obiecte. Tipuri de legături:

• "association" – asociere (se presupune implicit, de aceea acest tip poate să nu fie indicat).

• "parameter" – parametrul metodei. Obiectul respectiv poate să fie doar paramentru al unei metode.

• "local" – variabila locală a metodei. Domeniul ei de vizibilitate este limitat de către obiectul vecin.

• "global" – variabila globală. Domeniul ei de vizibilitate este toată diagrama de colaborare.

• "self" – legătura reflexivă a obiectului care presupune transferul mesajelor către sine.

Diagrama de colaborare poate fi de două nivele:

a. nivel de exemplu

Pentru realizarea acestui tip de diagramă s-a implimentat noțiunea de obiect, colaborare și legături între
entități în diagrame de colaborare făcute pe baza sistemului ales anterior „Librarie online”. Respectiv
în figura 2.9 de mai jos s-a reprezentat diagrama de colaborare pentru afisare carți din catalog de către
actorul administrator.
sd Segventa Communication

Administrator

0.2: 2.Afi?are interfata aplicatiei()

0.9: 9.Afisare catalog()

0.10: 10.Inchide aplicatie()

0.3: 3.Accesare catalog carti()

0.1: 1.Logare in aplica?ie()

Librarie online

0.4: 4.Efectuare clic catalog()

0.8: 8. Afisare interfetei catalog()

Catalog carti

Fig. 2.9 Accesare catalog de către administrator


sd To_listen_music Communication

0.9: 9.Vizualizare carte ()

0.4: 4.Afisare carte selectata()

0.2: 2.Afisre apl()


Utilizator
Librarie Online
0.1: 1.Logare()

0.3: 3.Selectare carte()

0.5: 5.Adaugare carte la cos()

0.10: 10.Inchidere aplicatie() 0.6: 6.Efectuare adaugare la cos()

0.8: 8.Afisare carte adaugata()

Cos de cumparaturi

0.7: 7.Adaugare la cos()

Fig. 2.10 Adăugare carte la coș de către utilizator

b. nivel de specificare

Pentru efectuarea livrarii s-a realizat și diagrama de colaborare prezentată în figura 2.11 de mai jos.
class Colaborare

Livrare carte

Utilizator
Curier

Livrare gresita

Curier departamentul B
Utilizator logat

Fig. 2.11 Livrare greșătă a cărții de către curier


În acest tip de diagramă se pune mai mult accent pe rolurile entităților și asocierilor în cadrul
colaborării date. Așadar, nu este necesar că specificăm toate legăturile dintre obiecte, la fel ca în cazul
diagramelor de colaborare pe nivel de exemple, ci rolul pe care le îndeplinesc. În cazul meu am ilustrat
procesul de livrare a unei cărți de către curier clientului. În acest caz s-a livrat greșit cartea și astfel
curierul se adresează departamentului responsabil de pregătirea cărților pentru livrare..

class Colaborare

Adaugare carte la
cos

Utilizator
Administrator

Imposibilitate de
adaugare carte

Administrator A1
Utilizator logat

Fig. 2.12 Adaugare carte la coș de către utilizator


În această diagramă se prezintă situația când un utilizator obișnuit accesează site-ul librăriei și
este redirecționat spre pagina principală a sistemului. Întrucât nu este conectat în cont, poate doar să
vizualizeze pagina, precum și să caute diferite informații. Însă utilizatorul autentificat are mai multe
posibilități de acțiune. De exemplu, poate să acceseze pagina cărții și să adauge în coș cartea dorită.

2.4. Reprezentarea claselor de obiecte


O clasă de obiecte reprezintă un grup de obiecte care au:

• proprietăți similare (atribute),


• un comportament comun (operații),
• relații comune cu alte obiecte și
• aceeași semantică.
In UML, o clasă este reprezentată printr-un dreptunghi alcatuit din trei compartimente care
conțin: numele clasei, atributele, operațiile. Compartimentul atributelor și cel al operațiilor pot fi
omise.

Respectiv în figura 2.13 de mai jos s-a reprezentat diagrama de clase în care putem observa că sistemul
se află în relația de realizare cu interfața sa. Sistemul nu poate exista fără carți (relația de compoziție)
și utilizatorul se află în relația de asociere cu interfața sistemului.
class Package1

Librarie online
«interface» Utilizator
+ lista_carti: string I_Librarie
- email: string
+ recomandari: string
- nume: string
+ reduceri: int
+ adauga_email()
# carti adaugate la cos()
+ adauga_nume()

0..1
0..1

Dictionar explicativ

+ nr_cuvinte: string
0..* 0..* + titlul: string

Dictionare + introduce_cuvinte()
Carti
+ introduce_nume()
+ pret_carte: string - pret: int
+ titlul_cartii: string + titlul: string
Dictionar de sinonime
+ set_pret() + set_pret(): int
+ set_titlul cartii() + set_titlul() + nr_cuvinte: int
+ titlul: int

+ introduce nr_cuvinte()
+ introduce_titlul()

Manuale
Dictionar limba fraceza
+ nume: string
+ pret: int - nr_cuvinte: string
+ titlul: string
+ set_nume()
+ set_pret() + introduce nr_cuvinte()
+ introduce_titlul()

Fgura 2.13Selectarea dictionarelor după categorii de catre utilizator

În figura 2.14 putem observa că clientul se află în relația de asociere cu clasa cărți cît și cu clasa
înregistrare. Clasa realizare comandă se distruge dacă nu există clasa client prin urmare există relația de
compoziție între aceste două clase. Între clasa carți și clasa coșul meu există relația de agregare prin
urmare coșul poate exista fără a fi adaugat vreo carte în el.
class Registrare

Inregistrare Realizare comanda


Client
- Email: string - IDclient: int - Achitare_card: int
- Nr_telefon: string - Nume_client: string
- Nume_client: string
- Nume_client: string - Telefon: int - Sector: string
0..* 0..1 -
- Nume_utilizator: string Telefon: int
- parola: string - Cautare_client()
- EditareClient() + Editare_comanda()
- Inregistrare_client() + RealizareComanda()

Carti Cosul meu

- Nume: string - Nr_carti: int


- Pret: int - Titlul_carte: string
0..* 0..*
- Adaugare carte() - Cumparare carte()
- Modificare carte() - Modificare carte()

Figura 2.14 Realizarea comenzii in sistemul dat


Relația de generalizare se poate observa atît în figura 2.13 cîi și 2.15, astfel această relație are loc
între clasa generalizată și clasa specializată. În figura 5 clasa generalizată este clasa utilizator iar cea
specializată este client și administrator.
class System

Librarie online
Baza de date
+ Lista_carti: string
# CreareCont() + Pret: int
# StergeCont()
+ Introduce pret(): int
+ Introduce_nume()

Utilizator

- Email: int
- Nume: int
- Telefon: int

- Introduce nume()

Client Administrator
- Nume: string + Administrare librarie()
- Telefon: int

+ Introduce nume()
+ Introduce telefon()

Figura 2.15 Efectuarea operațiilor în sistem de către utilizator


class Librarius

Carte Catalog carti «interface»


Autor I_Librarie
+ Autor: string + Lista: string
- Date_personale: string + ISBN: string 0..1 0..* + Nume_autor: string
+ Nume: String 1..* 1..* + Nume: string
+ afisare carti()
+ afisare()
0..1
0..1 0..1

0..1
0..1
Descriere
Librarie online
+ Autor: string Administrator
+ Cod produs: int 0..*
+ Adressa: string
+ Editura: string - nume: string
+ Nume: string
+ ISBN: int + Administrare sistem(): int
+ Afisare descriere()

Figura 2.16 Operațiile efectuate de către administrator în sistem


În figura 2.16 observăm că sistemul cît și interfața aplicației depinde administratorul aplicației. Astfel
acest lucru se datorează posibilității administratorului de a gestiona sistemul informațional dat.
2.5. Descrierea activităților obiectului
stm Stare1

Creare cont

Introducere date

Introduce nume

exit / incheiere
entry / introduce

Indroduce parola

exit / finalizare
entry / introducere [Succes] Cont realizat

Introduce email

exit / incheiere
entry / introducere

Introduce date de
contact

exit / finalizare
entry / introduce

[Eroare]

Figura 2.17 Creare cont în sistem de către utilizator


În figura de mai sus în diagrama de stare utilizatorul crează cont, unde utilizatorul trebuie să
realizeze activitățile: introduce nume, introduce parola, introduce parola, introduce date de contact,
dacă datele au fost introduse corect contul s-a realizat în caz contrar se introduc datele din nou, evident
că se introduc datele introduse incorect.
stm Stare 2

Adaugare carti noi


Conectare ca
administrator Introduce date de [Date introduse corect] Selectare carte
logare pentru adugare

[Eroare]
Carte adaugata cu Introduce pret Introduce nume carte
succes

[Date introduse corect]


[Date introduse gresit]

Figura 2.18 Operațiile efectuate de către administrator în sistem


În figura 2.18 observăm că administratorul poate realiza cîteva acțiuni în cadrul sistemului. În
diagrama de stare de mai sus administratorul dacă realizează toate activitățile corect trece în styarea
finală, dacă apar erori în realizarea unor activități se întoarce la pasul precedent pentru a se putea
conecta în sistem sau pentru a indroduce datele corect despre cartea adăugată.

2.6. Descrierea acțiunilor obiectului


Putem observa că utilizatorul poate gasi carte cautată, iar pentru a o găsi introduce nume carte și
preț, selectează cartea pe care a găsito și adaugă cartea la coș.În cazul în care produsul nu a fost găsit
utilizatorul nu mai efectuează nici o acțiune.
act Activiti_1

Cautare carte de colorat

Produsul nu a fost
[nu] gasit
[da]

Pune pret
Pune virsta

Click pe cautatre

Adaugare carte de
colorat la cos

Fgura 2.19 Căutare carte de colorat de către utilizator


act Topology

Efectuare comanda carte

Eroare in realizare
[nu] comanda
[DA]

Indoduce date personale Introduce date pentru


Efectuare achitare cu livrare
card

Finalizare comanda

Figura 2.20 Efectuare comandă


În figura 2.20 este reprezentată a doua diagramă de activitate în care utilizatorul efectuează o
comandă. Pentru a efectua comanda trebuie să realizeze cîteva acțiuni: să introducă date personale, sa
efectueze achitare cu cardul, săintroducă adresa unde se va livra produsul. Astfel comanda poate fi
realizată cu succes.În cauzul în care apare vreo eroare în realizarea comenzii, activitațile utilizatorului
se termin.

2.7. Elementele componente ale sistemului


O diagramă de componente prezintă dependențele existente între diverse componente
software (cod sursă, cod binar, fișiere executabile, librării cu legătură dinamică etc) ce compun un
sistem informatic. Aceste dependențe sunt statice (au loc în etapele de compilare sau link-editare) sau
dinamice (au loc în timpul execuției). O componentă este un modul soft (cod sursă, cod binar, dol,
executabil etc) cu o interfață bine definită. Un tip de componentă reprezintă o parte distinctă,
realocabilă, a implementării unui sistem. Instanța unei componente este o unitate de implementare în
execuție și poate fi utilizată pentru reprezentarea unităților de implementare care au o identitate în
momentul execuției.

În Figura 1 este reprezentata diagrama de componente pentru reprezentarea legăturii între client și cont
cît și componentele cu care poate interacționa clientul și anume: coș de cumparături și lista de carți.

cmp component_1

«interface»
ILibrarie

Cos de cumparaturi
Cont

Client Lista de carti

Fgura 2.21. Componentele librariei online

cmp component_2

Librarie online Baza de date Lista de carti

Client
Figura 2.22 Relația dintre baza de date și librăria online

Diagrama din Figura 2.22 libraria online interactionează cu component baza de date și client, baza de
date realizează o listă de carti pe care le conține sistemul, clientul deasemenea utilizează lista de carti
realizată de baza de date.

cmp component_3

Utilizator

«interface»
ILibrarie
Aplicatia Baza de date

Tabel de date
carti

Figura 2.23 Relația dintre utilizator și aplicație


În figura de mai sus în diagrama de componente observăm relația de realizare între interfața
aplicației și aplicație, relația de asociere între utilizator și aplicație, iar aplicația are ca componentă baza
de date care utilizează datele din tabelul de date .

2.8. Distribuirea componentelor sistemului după nodurile fizice


Diagramele amplasărilor prezintă configurația elementelor de procesare din timpul execuției
și componentele, procesele și obiectele care le conțin. Fiecare model al unui sistem informatic are
asociată o singură diagramă de exploatare. Instanțele componentelor soft reprezintă manifestări a unor
unități de cod în cadrul execuției. Componentele care nu există ca entități de execuție nu apar în aceste
diagrame, ci doar în diagramele de componente.

aplicației și aplicație, relația de asociere între utilizator și aplicație, iar aplicația are ca
componentă baza de date care utilizează datele din tabelul de date .
deployment plasare

Serverul aplicatiei

Baza de date a
aplicatiei
Server Web

SQL Server

Figura 2.24 Relația între server și baza de date

În Figura 2.24 este reprezentată diagrama de desfășurare pentru relațiile între server și baza de
date. Baza de date este alcătuită din componentele baza de date a aplicației și SQL Server, aceste două
component se află în relația de dependent.
Concluzie
Pe parcursul elaborării acestui proiect de curs, s-a analizat și proiectat un sistem informațional
și anume – o librărie online. De aceea, a trebuit să se cerceteze și familiarizeze mai aprofundat acest
sistem pentru elaborarea proiectului.

Astfel, s-au studiat principiile de bază ale limbajului UML, structura lui generală și s-au
creat deprinderi de lucru cu acest limbaj cu ajutorul instrumentului Enterprise Architect. O mare
importanță în însușirea celor mai importante principii de modelare a unui sistem pot fi anume
aplicându-le în practică prin intermediul diagramelor, referitor la o anumită temă. Diagramele
elaborate sunt: diagramele caz de utilizare, diagrame de secvență, diagrame de colaborare,
diagrama claselor, diagrame de stare, de activități, de component si de plasare. În acest mod, au
putut fi înțelese temele la un nivel mai profund.

Limbajul UML ușurează elaborarea, vizualizarea și documentarea modelelor, ceea ce


permite o proiectare rapidă a sistemelor, prin accentuarea atenției aspra aspectelor necesare
proiectării. Datorită diagramelor utilizate modelul poate fi ilustrat din mai multe puncte de vedere și
înțeles mai bine.

În concluzie, toate aceste cunoștințe acumulate în mod practic, formează o bază bine pusă în
limbajul UML, care este prezent în orice companie contemporană, la formarea oricărui proiect
grandios. De aceea, se poate afirma cu certitudine că deprinderile acumulate în urma elaborării
proiectului vor fi utile și pe viitor.
Bibliografie

[1] Capitolul II Limbajul UML [resursă electronică] .Available:

https://www.scribd.com/document/207275507/Capitolul-II-Limbajul-UML
[2] „Unified Modeling Language,” [resursă electronică]. Available:
https://en.wikipedia.org/wiki/Unified_Modeling_Language.
[3] „UML,” [resursă electronică]. Available: http://uml.org/ .
[4] „ANALIZA SI PROIECTAREA SISTEMULUI INFORMATIC UTILIZAND UML,” [resursă
electronică]. Available: https://www.scritub.com/stiinta/informatica/ANALIZA-SI-
PROIECTAREA-SISTEMU92386.php.
[5] „Sequence Diagram,” [resursă electronică]. Available:
https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/sequencediagram.h
tml.

S-ar putea să vă placă și

  • Vasilachi Igor Lab 5 BDC v1
    Vasilachi Igor Lab 5 BDC v1
    Document8 pagini
    Vasilachi Igor Lab 5 BDC v1
    Fil Gorea
    Încă nu există evaluări
  • AMSI
    AMSI
    Document46 pagini
    AMSI
    Andrei Florea
    Încă nu există evaluări
  • AMOO
    AMOO
    Document24 pagini
    AMOO
    Fil Gorea
    Încă nu există evaluări
  • Proiect de An AMOO
    Proiect de An AMOO
    Document39 pagini
    Proiect de An AMOO
    Raducan Alina
    100% (1)
  • Diagrame in UML
    Diagrame in UML
    Document36 pagini
    Diagrame in UML
    Ada Andra
    Încă nu există evaluări
  • Lab 1 Somipp
    Lab 1 Somipp
    Document7 pagini
    Lab 1 Somipp
    TîmburŞtefan
    Încă nu există evaluări
  • Lucrare de Laborator nr.4 Florea Cristina
    Lucrare de Laborator nr.4 Florea Cristina
    Document9 pagini
    Lucrare de Laborator nr.4 Florea Cristina
    Cristina Florea
    Încă nu există evaluări
  • Amoo 5
    Amoo 5
    Document5 pagini
    Amoo 5
    AlionaCrigan
    Încă nu există evaluări
  • LL8 Mereuta Ana TI-192
    LL8 Mereuta Ana TI-192
    Document6 pagini
    LL8 Mereuta Ana TI-192
    Anya Mr
    Încă nu există evaluări
  • BDC Lab8
    BDC Lab8
    Document36 pagini
    BDC Lab8
    Tudor Munteanu
    Încă nu există evaluări
  • BDC 9b
    BDC 9b
    Document5 pagini
    BDC 9b
    Victor Noroc
    Încă nu există evaluări
  • Amoo 4
    Amoo 4
    Document5 pagini
    Amoo 4
    AlionaCrigan
    Încă nu există evaluări
  • Amoo 4
    Amoo 4
    Document5 pagini
    Amoo 4
    AlionaCrigan
    Încă nu există evaluări
  • PSI Lab 3
    PSI Lab 3
    Document10 pagini
    PSI Lab 3
    Nicolae
    Încă nu există evaluări
  • Enterprise Architect
    Enterprise Architect
    Document8 pagini
    Enterprise Architect
    Dani Lungu
    Încă nu există evaluări
  • TW Lab3
    TW Lab3
    Document6 pagini
    TW Lab3
    Dan
    Încă nu există evaluări
  • Capitolul II Limbajul UML
    Capitolul II Limbajul UML
    Document34 pagini
    Capitolul II Limbajul UML
    torjocf
    Încă nu există evaluări
  • Lab3 AMOO - Diagrama de Secventa
    Lab3 AMOO - Diagrama de Secventa
    Document8 pagini
    Lab3 AMOO - Diagrama de Secventa
    Dan
    Încă nu există evaluări
  • SOMIPP Lab6
    SOMIPP Lab6
    Document9 pagini
    SOMIPP Lab6
    X3 KTO
    Încă nu există evaluări
  • Lab3 AMOO
    Lab3 AMOO
    Document7 pagini
    Lab3 AMOO
    Сергей Борта
    Încă nu există evaluări
  • Raspunsuri AMSI
    Raspunsuri AMSI
    Document11 pagini
    Raspunsuri AMSI
    Cristina Florea
    Încă nu există evaluări
  • RC Examen
    RC Examen
    Document50 pagini
    RC Examen
    Belinschi Andrei
    Încă nu există evaluări
  • Examen PW
    Examen PW
    Document71 pagini
    Examen PW
    DorinRotaru
    Încă nu există evaluări
  • LL4 BD
    LL4 BD
    Document6 pagini
    LL4 BD
    Anya Mr
    Încă nu există evaluări
  • Raspunsuri AC
    Raspunsuri AC
    Document10 pagini
    Raspunsuri AC
    Anastasia
    Încă nu există evaluări
  • Lab 4 BDC PDF
    Lab 4 BDC PDF
    Document8 pagini
    Lab 4 BDC PDF
    Fil Gorea
    Încă nu există evaluări
  • Proiect IMFES
    Proiect IMFES
    Document15 pagini
    Proiect IMFES
    Raluca Mihai
    Încă nu există evaluări
  • Probleme Haskell
    Probleme Haskell
    Document5 pagini
    Probleme Haskell
    Ciprian
    Încă nu există evaluări
  • Lab2 Somipp
    Lab2 Somipp
    Document6 pagini
    Lab2 Somipp
    Iov Albu
    Încă nu există evaluări
  • SOMIPP Labs
    SOMIPP Labs
    Document107 pagini
    SOMIPP Labs
    Ionel Boaghe
    Încă nu există evaluări
  • BDC Cotovici
    BDC Cotovici
    Document15 pagini
    BDC Cotovici
    Alexey Dariev
    Încă nu există evaluări
  • BDC 9
    BDC 9
    Document6 pagini
    BDC 9
    Ion Boika
    Încă nu există evaluări
  • Laborator 9 Baze de Date
    Laborator 9 Baze de Date
    Document5 pagini
    Laborator 9 Baze de Date
    Stanescu Yonut
    Încă nu există evaluări
  • Lab4 TSA
    Lab4 TSA
    Document5 pagini
    Lab4 TSA
    Renat Rusu
    Încă nu există evaluări
  • Vasilachi Igor Lab.5 BDC v1
    Vasilachi Igor Lab.5 BDC v1
    Document8 pagini
    Vasilachi Igor Lab.5 BDC v1
    VadimPlasiciuc
    Încă nu există evaluări
  • SI Nadejda Constantinescu Lab 1
    SI Nadejda Constantinescu Lab 1
    Document7 pagini
    SI Nadejda Constantinescu Lab 1
    Nadia
    Încă nu există evaluări
  • BDC Lab2
    BDC Lab2
    Document15 pagini
    BDC Lab2
    Dumitru Plamadeala
    100% (2)
  • Teoria Sistemelor Nr2
    Teoria Sistemelor Nr2
    Document10 pagini
    Teoria Sistemelor Nr2
    liveplayer
    Încă nu există evaluări
  • Laboratorul Nr1 La Grafica Pe Calculator Gc.
    Laboratorul Nr1 La Grafica Pe Calculator Gc.
    Document4 pagini
    Laboratorul Nr1 La Grafica Pe Calculator Gc.
    Ion Damaschin
    Încă nu există evaluări
  • Examen Tehnologii Web
    Examen Tehnologii Web
    Document1 pagină
    Examen Tehnologii Web
    Teodor Olteanu
    Încă nu există evaluări
  • Lab. 1. BDC Utm Fcim
    Lab. 1. BDC Utm Fcim
    Document15 pagini
    Lab. 1. BDC Utm Fcim
    Fernando Epic Costa
    0% (1)
  • Despre UML
    Despre UML
    Document51 pagini
    Despre UML
    Danu Botnari
    Încă nu există evaluări
  • BDC Lab6en
    BDC Lab6en
    Document6 pagini
    BDC Lab6en
    Catherine Nemerenco
    Încă nu există evaluări
  • Lab 1
    Lab 1
    Document14 pagini
    Lab 1
    Aliona
    Încă nu există evaluări
  • Algoritmii Grafurilor Lab2-3 MV
    Algoritmii Grafurilor Lab2-3 MV
    Document15 pagini
    Algoritmii Grafurilor Lab2-3 MV
    Dan Celac
    Încă nu există evaluări
  • Lab 3 Rom
    Lab 3 Rom
    Document6 pagini
    Lab 3 Rom
    Jorca Ţuţuianu
    Încă nu există evaluări
  • LL3 (Amoo)
    LL3 (Amoo)
    Document6 pagini
    LL3 (Amoo)
    Eric Semeniuc
    Încă nu există evaluări
  • Lucrare de Curs BDC
    Lucrare de Curs BDC
    Document17 pagini
    Lucrare de Curs BDC
    Petru Voloceai
    Încă nu există evaluări
  • Lab2 Grafica
    Lab2 Grafica
    Document10 pagini
    Lab2 Grafica
    Valeria Ţînţaru
    Încă nu există evaluări
  • Fisa PP
    Fisa PP
    Document131 pagini
    Fisa PP
    Alexandra Chirita
    Încă nu există evaluări
  • Laborator 1 Cucu Eugeniu
    Laborator 1 Cucu Eugeniu
    Document5 pagini
    Laborator 1 Cucu Eugeniu
    Cucu Eugen
    Încă nu există evaluări
  • AMOO3 Morcotilo Nichita FINAL
    AMOO3 Morcotilo Nichita FINAL
    Document11 pagini
    AMOO3 Morcotilo Nichita FINAL
    Никита Мк.
    Încă nu există evaluări
  • AMOO Lab6
    AMOO Lab6
    Document7 pagini
    AMOO Lab6
    sergiu
    Încă nu există evaluări
  • Grafica Pe Calculator - Indrumar de Laborator
    Grafica Pe Calculator - Indrumar de Laborator
    Document13 pagini
    Grafica Pe Calculator - Indrumar de Laborator
    Constantin Bejenaru
    Încă nu există evaluări
  • AMOO Lab2.Use Case
    AMOO Lab2.Use Case
    Document5 pagini
    AMOO Lab2.Use Case
    Dorin Gribincea
    Încă nu există evaluări
  • Operatori Access
    Operatori Access
    Document9 pagini
    Operatori Access
    oboghiu
    Încă nu există evaluări
  • SecrieruAndrei Amoo Lab5
    SecrieruAndrei Amoo Lab5
    Document6 pagini
    SecrieruAndrei Amoo Lab5
    andy secrieru
    Încă nu există evaluări
  • Lab2 La Programare in Windows
    Lab2 La Programare in Windows
    Document12 pagini
    Lab2 La Programare in Windows
    Andrei Barbalat
    Încă nu există evaluări
  • Programarea Paralela Si Concurenta
    Programarea Paralela Si Concurenta
    Document24 pagini
    Programarea Paralela Si Concurenta
    Beșliu Nicu
    Încă nu există evaluări
  • UML Diagrams
    UML Diagrams
    Document9 pagini
    UML Diagrams
    Razvan Simionescu
    Încă nu există evaluări
  • Ams Lab 4
    Ams Lab 4
    Document7 pagini
    Ams Lab 4
    Marin Gojan
    Încă nu există evaluări
  • Proiect An 2020
    Proiect An 2020
    Document9 pagini
    Proiect An 2020
    Fil Gorea
    0% (1)
  • Practica În Producție
    Practica În Producție
    Document19 pagini
    Practica În Producție
    AlionaCrigan
    Încă nu există evaluări
  • Caietul de Sarcini (Producție)
    Caietul de Sarcini (Producție)
    Document4 pagini
    Caietul de Sarcini (Producție)
    AlionaCrigan
    100% (1)
  • Ferestre de Dialog
    Ferestre de Dialog
    Document58 pagini
    Ferestre de Dialog
    AlionaCrigan
    Încă nu există evaluări
  • Raport Practica
    Raport Practica
    Document27 pagini
    Raport Practica
    AlionaCrigan
    Încă nu există evaluări
  • Raspuns Lab 1
    Raspuns Lab 1
    Document4 pagini
    Raspuns Lab 1
    AlionaCrigan
    Încă nu există evaluări
  • Lab 1
    Lab 1
    Document2 pagini
    Lab 1
    AlionaCrigan
    Încă nu există evaluări
  • Somipp 1
    Somipp 1
    Document6 pagini
    Somipp 1
    AlionaCrigan
    Încă nu există evaluări
  • Amoo 1
    Amoo 1
    Document8 pagini
    Amoo 1
    AlionaCrigan
    Încă nu există evaluări
  • Amoo 2
    Amoo 2
    Document8 pagini
    Amoo 2
    AlionaCrigan
    Încă nu există evaluări