Sunteți pe pagina 1din 23

1 Proiectarea sistemului 1.

1 Descrierea succint a inteniei i responsabilitii asignate sistemului Sistemul Informaional care urmeaz s fie creat are mai multe responsabiliti, de baz fiind cea de a propune utilizatorilor o interfa simpl prin intermediul creia s poat gestiona fiierele i grupurile de utilizatori. Este foarte important ca sistemul s poat face fa datelor invalide care pot ajunge n cazul modificarii permanente a fiierelor de diferiti utilizatori, s nu ajung ca doua persoane s redacteze acelai document astfel creind nentelegeri ntre utilizatori. Ca un mod de soluionare a acestei probleme poate fi ducerea evidenei redactrii fiierului cu ajutorul unui buton care v-a permite nceperea redactrii fiierului astfel actualiznd un cmp din baza de date, care ar informa faptul c fiierul este redactat in acest moment i ca are drepturi doar de citire. De asemenea, lund n considerare obligaiunile pe care i le asum sistemul, trebuie evitate cazurile de indisponibilitate a serverului pe care este instalat baza de date, asigurndu-se o conexiune stabil la internet i un server de rezerv pentru orice eventualitate. Pentru a evita suprasolicitarea serverului cu cereri fictive trebuie s fie instalat o aplicaie anti-DDoS care s opun rezisten atacurilor de tipul Distributed Denial of Service.

1.2 Determinarea cerinelor funcionale ale sistemului Cerinele funcionale ale unui Sistem Informaional sunt servicii pe care sistemul trebuie s le ofere. Ele precizeaz cum trebuie SI s reacioneze la anumite intrri i cum trebuie s se comporte n anumite situaii particulare. De asemenea, din cerinele funcionale ale sistemului nostru vor face parte att business cerinele, ct i cerine ale utilizatorului. n continuare vom specifica cerinele funcionale care au stat la baza elaborrii proiectului: Crearea unui fiier; Redactarea fiierului: a) Editarea textului; b) Partajarea fiierului; Vizualizarea listei fiierelor care au fost create de utilizatorul in cauz, plus fiierele care au fost partajate cu el; Crearea grupurilor de utilizotori; Posibilitatea partajrii fiierului unui singur utilizator sau unui grup intreg de utilizatori;

posibilitatea de a invita prietenii s se nregistreze n aceast aplicie, prin intermediul indicrii unei adrese de e-mail; 1.3 Determinarea cerinelor nefuncionale ale sistemului Cerinele nefuncionale reprezint restricii asupra serviciilor sau funciilor oferite de Sistemul Informaional. Ele includ restricii de timp, restricii privind dezvoltarea proceselor i standarde aplicabile. n continuare v-om specifica cerinele nefuncionale ale Sistemului Informaional dezvoltat: interfa prietenoas pentru utilizator; timp mic de rspuns, datorit optimizrii serverului i mririi benzii de transfer date odat cu creterea numrului de utilizatori; capacitate mare de stocare date pe server, cu posibilitatea mririi ei pe parcurs; securitatea transmiterii datelor de la utilizator la server i invers prin implementarea tehnologiei SSL i a algoritmilor de criptare; portabilitatea sistemului. Disponibilitatea rulrii aplicaiei pe orice tip de dispozitiv care ruleaz sistemul de operare Android; extensibilitate adugarea unor noi funcionaliti fr a fi nevoie de modificat ntreg codul surs al proiectului.

1.4 Diagramele cazurilor de utilizare Efectund procesul de analiz a cerinelor funcionale i nefuncionale vom trece la etapa urmtoare unde ele vor fi proiectate. Pentru a reda o form mai clar a proiectului nostru vom folosi limbajul UML . Deci, iniial pentru evidenierea posibilitilor sistemului vom crea mai nti de toate diagrama cazurilor de utilizare. Proiectarea unei diagrame a cazurilor de utilizare pentru aplicaia noastr urmrete scopurile urmtoare: determinarea limitelor comune i a contextului de modelare la etapele iniiale de proiectare a aplicaiei; formularea cerinelor comune ctre comportare funcional a sistemului proiectat; elaborarea modelului iniial conceptual al unui sistem pentru detalierea de mai trziu n forma modelelor logice i fizice;

pregtirea documentaiei iniiale pentru interaciunea elaboratorilor unui sistem cu clienii i utilizatorii.

Principalul scop al acestei diagrame const n faptul c sistemul proiectat se reprezint ca o colecie de entiti i actori care colaboreaz cu sistemul cu ajutorul aa numitor cazuri de utilizare. Totodat, orice entitate care colaboreaz cu sistemul din afar poate fi numit actor. Aceasta poate fi un om, o instalare tehnic, un program sau oricare alt sistem care poate fi surs de aciune pentru sistemul proiectat n aa mod, cum l determin colaboratorul. La rndul su, use case-ul este creat pentru descrierea serviciilor pe care sistemul le ofer actorului. Deci, fiecare caz de utilizare definete o colecie de aciuni executate de sistem n timpul dialogului cu actorul. Totodat, nimic nu este spus despre aceea n ce mod va fi realizat colaborarea ntre actori i sistem. nsui cazul de utilizare reprezint un model de comportament al sistemului ca urmare a dialogului cu un actor, descris printr-o secven de tranzacii ce au loc n sistem. n acest sens, cazurile de utilizare se disting prin cteva caracteristici generale: sunt uniti de sine stttoare, bine delimitate (nceputul i sfritul unui caz de utilizare sunt cuprinse n acesta); e necesar ca ele s fie iniiate de un actor i finalizarea lor s fie vzut de un actor; trebuie s ndeplineasc anumite scopuri de logic a problemei (dac nu se poate gsi un astfel de obiectiv atunci cazul de utilizare trebuie regndit); realizarea cazului, trebuie s ofere sistemului o stare stabil (nu poate fi ndeplinit doar pe jumtate). n continuare sunt prezentate cteva diagrame use case ale sistemului proiectat ce includ funcionalitile de baz ale sistemului.

uc Use case Main

Register

Login Manage Files

User

Manage Groups

Manage Users

Figura 2.4.1 Funciile sistemului

uc Use Case Login

Insert Login

Insert Passw ord

include

include

Login

invokes

include

Connect DataBase

Check Cridentials

Figura 2.4.2 Logarea n sistem n diagrama din figura 2.4.2 este prezentat procesul de logare n sistem ce presupune introducerea datelor personale, conectarea sistemului la baza de date pentru verificarea validitaii lor.

uc Use Case Register

Insert Login

Insert Passw ord

include

include Register

include invokes

Connect DataBase

Check Cridentials for Dublicates

Figura 2.4.3 nregistrarea in sistem Figura 2.4.3 reprezint procesul de nregistrare n sistem n urma introducerii datelor care vor fi utilizate in viitor pentru logare si verificarea validitatii lor.

uc Use Case Manage USers

Search Users

include

Manage Users include include Remov e From Group Add to Group

Figura 2.4.4 Administrarea utilizatorilor

n figura 2.4.4 s-au prezentat aciunile folosite pentru lucrul cu utilizatori aa cum sunt cautarea lor n ntregul sistem, adugarea i tergerea lor din grupe.

uc Use Case Manage UserGroups

Search Groups

Remov e Group

include

include

Delete User

include

Manage User Groups

include

Create Group

include

include

Add Users

View Group

Figura 2.4.5 Administrarea grupelor de utilizatori Utilizatorii n sistema noastra vor fi grupai, deci diagrama din figura 2.4.5 reprezint aciunile ntreprinse att pentru crearea i stergerea grupelor ct i pentru adaugarea i tergerea utilizatorilor din aceste grupe.

uc Use Case File Manager

Read File

Delete File

include include Manage FIles

Edit File

include

include include

Search Files

Share File

Figura 2.4.6 Administrarea fiierelor Figura 2.4.6 reprezint aciunile pe care utilizatorul le v-a indeplini pentru a opera cu fiiere: crearea, tergerea, citirea, redactarea, partajarea i cautarea fiierelor.

1.5 Diagramele claselor Modelul structural al sistemului reprezint un model de nivel nalt concentrat pe abstractizare i ncapsulare, modeleaz elementele i mecanismele principale ale sistemului. El identific elementele domeniului, respectiv relaiile i interaciunile dintre aceste elemente. Elementele domeniului sunt organizate dup criterii strict logice n categorii pentru a putea repartiza sarcinile echipelor, a regrupa ceea ce poate fi generic, a izola ceea ce este propriu unei versiuni existente etc. nsui termenul de structur desemneaz aici ansamblul claselor de obiecte, atributele i operaiile fiecreia dintre acestea, relaiile de asociere i generalizare dintre clase. Pentru reprezentarea modelului structural al sistemului se folosete strict diagrama claselor. Obiectele corespunztoare acestor clase pot impune uneori reprezentri distincte, utile n aprofundarea abordrii sau pentru o mai bun nelegere sau comunicare. n consecin, se va regsi aici un al doilea tip de diagram diagrama obiectelor.

n figura 2.5.1, sunt prezentate clasele aplicaiei pe sistemul de operare Android. La lansarea aplicaiei vizualizm LoginActivity, LoginActivity clasa cu ajutorul cruia utilizatorul se logeaza n sistem, cu ajutorul ei datele se trimit la server i dac datele sunt incorecte, se repet ncercarea sau se poate de logat cu ajutorul unui api; RegisterActivity clasa cu ajutorul cruia utilizatorul se nregistreaz n sistem, cu ajutorul ei datele se trimit la server i dac aa date deja exist, se repet ncercarea; MainActivity clasa care manipuleaz cu clasele de LoginActivity i RegisterActivity, n sensul c ea se foloseshte pentru a afia utilizatorului forma pentru logare sau nregistrare; DbConnect clasa utilizata pentru conectarea la baza de date; UserLoginTask i UserRegisterTask sunt utilizate pentru adresarea asincrona ctre baza de date, deci ele i sunt ca generalizarea clasei AsyncTask; Clasa FragmentActivity i Activity sunt clase standarte al APIului sistemului android care se folosesc pentru afiarea partilor grafice a aplicaiei.
class Login/Register

LoginActiv ity + + + # + DUMMY_CREDENTIALS: string[] = new String[] {"... EXTRA_EMAIL: string = "com.example.an... mAuthTask: UserLoginTask = null; mEmail: string mEmailView: EditText mLoginFormView: View mLoginStatusMessageView: TextView mLoginStatusView: View mPassword: string mPasswordView: EditText attemptLogin() : void getContext() : LoginActivity onCreate(Bundle) : void onCreateOptionsMenu(Menu) : boolean showProgress(boolean) : void Activ ity AsyncTask

FragmentActiv ity

UserLoginTask # # # doInBackground() : boolean onCancelled() : void onPostExecute(Boolean) : void

use MainActiv ity # + + onCreate(Bundle) : void onDocumentSelected(int) : void openDocumentList() : void

RegisterActiv ity use use + + + # + DUMMY_CREDENTIALS: String[] = new String[] {"... EXTRA_EMAIL: String = "com.example.an... mAuthTask: UserLoginTask mEmail: String mEmailView: EditText mLoginFormView: View mLoginStatusMessageView: TextView mLoginStatusView: View mPassword: String mPasswordView: EditText attemptRegister() : void getContext() : RegisterActivity onCreate(Bundle) : void onCreateOptionsMenu(Menu) : boolean showProgress(boolean) : void

UserRegisterTask # # # doInBackground() : boolean onCancelled() : void onPostExecute() : void

DbConnect + + + + closeDBConnection() : void connectDB() : void DbConnect() : void getDbInstance() : void

Fugura 2.5.1 Diagrama clasei pentru procesul de logare i nregistrare n sistem Diagrama din figura 2.5.2 reprezint clasele folosite pentru pentru administrarea grupelor de utilizatori i utilizatorii nsi. Explicarea folosirii fiecarei clase: GroupList afisheaz lista grupelor; GroupContent este clasa care se folsoete pentur afiarea listei utilizatorilor din grupa; GroupUserManager clasa utilizat pentru a realiza toate manipularile cu grupele i utilizatorii acesteea; Interfata onGroupSelectedListener - se folosete pentru transmiterea datelor la alta activitate care va afia lista utilizatorilor din grupa care v-a fi aleasa din lista; MainActivity - dirijeaz cu afiarea listei grupelor i continutul lor(utilizatorii adaugai in ele); ListFragment i Fragment sunt utilizate pentru afiarea i manipularea interfeei grafice pe dispozitive cu ecran cu diagonala mai mare - adica tablete.

class Document Editor

GrouptList + + + + use mCallback: onDocumentSelectedListener onAttach(Activity) : void onCreate(Bundle) : void onListItemClick(ListView, View, int, long) : void onStart() : void +

interface onGroupSelectedListener onDocumentSelected(int) : void

FragmentActivity MainActiv ity

use ListFragment + + + + + + + +

DocumentManager addDocument(String) : void deleteDocument(int) : void getDocumentContent(int) : String getDoucmentList() : String[] searchDocument(String) : void shareDocument(int, int) : void updateDocument(String) : void updateDocumentName(String) : void

# + +

onCreate(Bundle) : void onDocumentSelected(int) : void openDocumentList() : void

use use GroupContent + + + + + + ARG_POSITION: String = "position"; mCurrentPosition: int = -1; onCreateView(Bundle, ViewGroup, LayoutInflater) : View onSaveInstanceState(Bundle) : void onStart() : void updateDocView(int) : void

Fragment

Figura 2.5.2 Diagrama clasei pentru administrarea utilizatorilor i grupelor de utilizatori Diagrama din figura 2.5.3 reprezint clasele folosite pentru pentru administrarea fiierelor. Explicarea folosirii fiecarei clase:

DocumentList afisheaz lista fiierelor; DocumentContent este clasa care se folsoete pentur afiarea coninutului fiierului; DocumentManager clasa utilizat pentru a realiza toate manipularile cu fiierele ca tergere, creare, partajare, etc.; Interfata onDocumentSelectedListener - se folosete pentru transmiterea datelor la alta activitate care v-a afia coninutul fiierelor de la activitatea care conine lista fiierelor; MainActivity - dirijeaz cu afiarea listei fiierelor i continutul lor(textul); ListFragment i Fragment sunt utilizate pentru afiarea i manipularea interfeei grafice pe dispozitive cu ecran cu diagonala mai mare - adica tablete.

class Document Editor

DocumentList + + + + use mCallback: onDocumentSelectedListener onAttach(Activity) : void onCreate(Bundle) : void onListItemClick(ListView, View, int, long) : void onStart() : void +

interface onDocumentSelectedListener onDocumentSelected(int) : void

FragmentActivity MainActiv ity

use ListFragment + + + + + + + +

DocumentManager addDocument(String) : void deleteDocument(int) : void getDocumentContent(int) : String getDoucmentList() : String[] searchDocument(String) : void shareDocument(int, int) : void updateDocument(String) : void updateDocumentName(String) : void

# + +

onCreate(Bundle) : void onDocumentSelected(int) : void openDocumentList() : void

use use DocumentContent + + + + + + ARG_POSITION: String = "position"; mCurrentPosition: int = -1; onCreateView(Bundle, ViewGroup, LayoutInflater) : View onSaveInstanceState(Bundle) : void onStart() : void updateDocView(int) : void

Fragment

Figura 2.5.3 Diagrama clasei pentru administrarea fiierelor 1.6 Diagramele de secven n limbajul UML colaborarea ntre elemente se cerceteaz n aspectul informativ al comunicaiilor lor, adic obiectele care interacioneaz fac schimb de informaie anumit. Pentru modelarea colaborrii ntre obiecte n limbajul UML se utilizeaz diagramele de secven. Vorbind despre aceste diagrame se iau n consideraie dou aspecte. Mai nti, colaborarea ntre obiecte poate fi cercetat n timp i atunci pentru reprezentarea particularitilor temporale i modului de acceptare a mesajelor se utilizeaz diagrama de

secven. n al doilea rnd, pot fi cercetate particularitile structurale ale colaborrii ntre obiecte. Pentru reprezentarea particularitilor de transmitere i acceptare a mesajelor ntre obiecte se utilizeaz diagrama de colaborare. Dup cum vedem n figurile 2.6.1 i 2.6.2 sunt diagmale utilizate pentru reprezentarea procesului i succesiunii de aciuni ntreprinse de utilizator i sistem pentru a efectua nregistrarea i logarea n sistem. Deci dupa introducerea datelor are loc verificarea la existena la astfel de date, sau n cazul nregistrarii la lipsa lor i dac este n regula are loc nregistrarea sau logarea in sistem.
sd Login Diagram LoginActivity User DbConnect Document Manager

loop Loop of Entering Cridentials if attempt fails 1. Enter Login()

2. Enter PAssword()

3. Connect and Verify Cridentials()

4. False()

5. TRUE() 6. Run Document Manager()

Figura 2.6.1 Diagrama de secven pentru logare n sistem

sd Register Diagram RegisterActivity User DbConnect DocumentManager

loop Loop for Register if login exists 1. Enter Login()

2. Enter Password()

3. Verify Cridentials()

4. Fasle()

5. TRUE() 6. Run Document manager()

Figura 2.6.2 Diagrama de secven pentru nregistrare n sistem

sd Groups/users Manager Diagram GroupList User opt View Group Users 1. selectGroup() 2. getGroupContent() 3. returnGroupContent() 4. showGroupUsers() GroupUserManager GroupContent

opt Add User to Group 5. selectGroup() 6. findUser() 7. searchUser() 8. showUsers() 9. selectUser() 10. addUser() 11. addUser() 12. returnSuccess()

opt Delete User From Group 13. selectGroup() 14. selectUser() 15. deleteUser() 16. deleteUser() 17. returnSuccess()

Figura 2.6.3 Diagrama de secven de reprezentare a manipularii cu utilizatorii i grupele de utilizatori

Figura 2.6.3 red secvena de actiuni folosite pentru a manipula cu grupele de utilizatori: cererea la afiarea listei de utilizatori, adaugarea utilizatorilor n grupa i stergerea lor din grupa. Procesul, deci reprezinta, alegerea utilizatorilor din lista i faci actiunea pe care a-i dori s o faci: tergerea sau adaugarea.

sd Document Manager DocumentList User opt Read/Edit Document 1. selectDocument() 2. getDocumentContent(int id) 3. returnDocumentContent() 4. showDocumentContent() 5. Edit Document() 6. Save Edited Document() 7. saveDocument() 8. returnSuccess() DocumentManager DocumentContent GroupUserManager GroupList GroupContent

opt Delete Document 9. selectDocument() 10. deleteDocument() 11. deleteDocument() 12. getDocumentList() 13. returnDocumentList()

opt Share/Unshare to Group 14. selectDocument() 15. showGroups() 16. getGroups() 17. return Groups() 18. showGroups() 19. selectGroup() 20. shareToGroups() 21. share/unshareToGroup() 22. returnSuccess()

opt Share/Unshare To User 23. selectDocument() 24. findGroupsUsers() 26. getGroups() 27. returnGroups() 28. showGroups() 29. getGroupUsers() 30. returnUsers() 31. showUsers() 32. selectUsers() 33. share/unshare ToUser() 34. share/unshare() 35. returnSuccess()

Figura 2.6.4 Diagrama de secven care reprezint manipularea cu fiierele

Diagrama din figura 2.6.4 demonstreaza procesul de lucru cu fiiere aa cum sunt: editarea documentului, stergerea lui i partajarea ctre alti utilizatori sau grupei de utilizatori.

1.7 Diagrama de Activitate O diagram de activitate prezint fluxul secvenelor de activiti i este de obicei folosit pentru a descrie activitile realizate n cadrul unei operaii, folosind dac este cazul decizii i condiii. Diagrama conine stri de aciune (action states), i mesaje care vor fi trimise sau recepionate ca parte a aciunii realizate.

act Group/Users Editor ActivityInitial

Open Group Manager

Choose action [Edit Group] Select Group

Yes Enter Group Name [Edit Group Name] [Add User] [Delete Group]

[Add User To Group] if name exists

Find User

Delete Group

No Create Group [Find another user] Select User

[Add Users]

Find or Select

[Add from existent found list]

[Add User]

[Delete user]

Add User

Delete user

[Yes] Need More Users

[No] [Save Changes] [No] [Save Changes] [Add More Users] Sav e Changes

[Create Group] [Yes]

[Edit Group]

if Edit Groups

[No]

ActivityFinal

Figura 2.7.1 Activitatile ntreprinse la crearea sau stergerea grupelor precum i adaugarea i tergerea utilizatorilor din acestea

Diagrama din figura 2.7.1 reprezinta schema bloc de functionare a sitemului de lucru cu grupele i utilizatorii acestora. Deci are loc crearea grupei,cautarea utilizatorilor care v-or fi adaugai n ea sau care urmeaza a fi terse, se realizeaz aciunea dorit, dupa ce se decide daca mai e nevoie de redactat coninutul grupei sau nu, n caz de nu mai e nevoie activitatea se finiseaz in caz contrar revenim la nceput si din nou alegem actiunea dorit: crearea, stergerea sau redactarea unei alte grupe.

act Document Editor

ActivityInitial

Create/Edit Document [Yes]

Create Document CHoose Action

Choose File

Do Smth

Share File Enter Document Name What to do [Edit File] [Sare File] [Yes] if Exists [Enter Text] Share File Edit File [No] Press to Create File [Find User]

[Delete File]

Delete File

[Find Group]

Find User [Chose More Users] [Find User to Share]

Find Group [Choose More Groups]

[Save Changes]

Choose User [Save Changes]

Choose Group [Save Changes]

Save Changes

Sav e Changes

ActivityFinal

Figura 2.7.2 Diagrama de activitai care reprezint redactarea fiierelor Avnd la ndemiin diagram din figura 2.7.2 putem urmari procesul de creare a fiierului cu un nume

care nu mai exist n sistem pentru utilizatorul dat, aoi se alege optiunea care urmeaz a fi efectuat cu acest fiier: redactare a textului sau partajarea lui cu o gup de utilizatori sau l-a utilizatori n parte. 1.8 Diagrama de Stare O stare este de obicei un complement al descrierii unei clase. O diagram de stare prezint toate strile prin care trece un obiect al clasei precum i evenimentele care-i cauzeaz modificrile de stare. Modificarea strii se numete tranziie.
stm Login/Register Diagram Registered

[Register] Unregistered/Not Logged In [Login] Logged In [Login] Final

[User] Initial

Figura 2.8.1 Diagrama de stare prin care trece un utilizator al sistemului proiectat

n diagrama din figura 2.8.1 este artat n ce mod se petrece logarea sau nregistrarea in sistem. Deci n caz de utilizatorul este nregistrat deja atunci el introduce datele pentru a se loga, iar in cazul n care el dorete sa se nregistreze introduce datele pentru nregistrare i dupa ce aceste date au fost salvate n baza de date are loc logarea automat.

stm User/Groups Editor Edited

[Edit Group] Empty [Groups] Initial [Add User]

[Delete User] With/Without Users [Save Changes] Final

Figura 2.8.2 Diagrama de stare prin care trece o grupa de utilizatori

Figura 2.8.2 ne permite s nelegem modul de redactare a grupelor de utilizatori. La deschiderea grupei observam c nu are nici un utilizator, sau deja are, atunci alegem aciunea dorit de adugare sau tergere a utilizatorului din grup. Cnd am finisat cu redactarea grupei procesul se nchide.

stm Document Editor Diagram [Save Changes] Unshared [unshare] Shared

[Share]

[Edit]

[Share]

[Save Changes]

New File

Edited Final

Initial [Save Changes] [Edit] [Edit] [Edit]

Empty [Edit]

Not Empty

[Save Changes]

Figura 2.8.3 Diagrama de stri pentru editor de fiiere

n figura 2.8.3 putem vedea cum are loc editarea fiierului i anume deschiderea fiierului gol, editarea coninutului acestuia sau partajarea lui cu ali utilizatori. n urma la toate aciunile date are loc finisarea, la dorina, de redactare a fiierului curent i se trece la urmatorul. 1.9 Diagramele de componente

Proiectul complet al unui sistem al programului reprezint o totalitate de modele ale reprezentrii logice i fizice care sunt coordonate ntre ele. n limbajul UML pentru reprezentarea fizic a unui model al sistemului sunt utilizate diagramele de realizare (implementation diagrams) care includ dou diagrame canonice: diagrama de componente i diagrama de plasare.

Diagrama de componente, spre deosebire de diagramele cercetate, descrie particularitile reprezentrii fizice a unui sistem. Diagrama de componente permite determinarea arhitecturii sistemului elaborat prin stabilirea dependenei ntre componentele de program n calitate de care poate fi codul iniial, binar i executabil. n mai multe domenii de elaborare modul i componenta corespund fiierului. Sgeile punctate care leag modulele arat relaiile de dependen analogice celor ce au loc la compilarea codurilor

sursei iniiale. Elementul grafic de baz al diagramei de componente sunt componentele, interfeele i dependenele ntre ele. Diagrama de componente se elaboreaz pentru urmtoarele scopuri: vizualizarea structurii comune a codului surs a unui sistem de program; specificarea variantei executabile a unui sistem de program; asigurarea utilizrii repetate a unor fragmente ale codului surs; reprezentarea conceptual i fizic a schemelor bazei de date.

n elaborarea diagramei de componente particip analitii de sistem, arhitectorii, i programitii. Diagrama de componente asigur trecere coordonat de la reprezentare logic spre o realizare a unui proiect n form de cod surs. Unele componente pot exista numai la etapa compilrii codului sursei, altele la etapa realizrii lui. Diagrama de componente reflect dependenele ntre componente la cercetarea componentelor n calitate de clasificatori.

cmp Component Diagram interface onDoucmentSelectedListener DocumentList use

use DocumentContent

use

use DocumentManager use GroupList use GroupUserManager

use use interface onGroupSelectedListener use GroupContent

use

Figura 2.9.1 Diagrama de componente n figura 2.9.1 este reprezentat modul de interaciune dintre componentele sistemului proiectat. 1.10 Diagramele de plasare Diagrama de plasare este specific pentru vizualizarea elementelor i componentelor programului, ce exist numai la etapa executrii. n urma cruia sunt prezentate numai componente exemplare ale programului, care sunt fiiere de executare sau librriile dinamice. Acele componente, care nu sunt utilizate la etapa executrii, n diagrama de plasare nu sunt indicate. Componente cu texte iniiale a progra mului pot fi numai n diagrama de componente. n diagrama de plasare nu sunt indicate. Diagrama de plasare conine reprezentarea grafic a procesoarelor, echipamentelor, proceselor i legturilor dintre ele. Spre deosebire de diagrama reprezentrii logice, diagrama de plasare este un sistem unic, deoarece trebuie s desfoare toate particularitile realizrii ei. Aceast diagram finalizeaz procesul pentru un sistem concret de programare i elaborarea ei este ultima etap de specificare a modelului.

deployment Deployment Diagram

device Android Dev ice

device Serv er

Android System

Serv erScripts

WWW use use

CloudNotepad

DataBase

Figura 2.10.1 Diagrama de plasare a componentelor sistemei n aceast diagram am modelat nivelul fizic al sistemului, artnd cum interactioneaz aplicaia cu server. Atunci cnd utilizatorul ntreprinde o aciune care impune adresarea sistemului la serverul cu date are loc conectarea la intenet, trimiterea interogarii la server unde este prelucrat de catre scripturile locale care se adreseaz la baza de date MySql. Odata cu obinerea rezultatului acesta este ntors aplicaiei pentru a fi informat utlizatorul despre rezultatul ndeplinirii comenzii trimise.

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