«Aplicatie pentru gestionarea unei»
«agentii de turism»
- CUPRINS -
Limbajul UML - prezentare generala
Diagrame UML - tipuri de diagrame
Prezentarea si descrierea aplicatiei pentru gestionarea unei agentii de turism
Reprezentarea activitatilor unei agentii de turism cu ajutorul limbajului UML
UML (The Unified Modeling Language)
Limbajul UML
UML nu este un simplu limbaj de modelare orientat pe obiecte, ci in prezent, este limbajul universal standard pentru dezvoltatorii software din toata lumea. UML este succesorul propriu-zis al celor mai bune trei limbaje de modelare anterioare orientate pe obiecte (Booch, OMT, OOSE). UML se constituie din unirea acestor limbaje de modelare si in plus detine o expresivitate care ajuta la rezolvarea problemelor de modelare pe care vechile limbaje nu o aveau.
Limbajul de modelare modificat (UML - The Unified Modeling Language)
ofera arhitecturi de sisteme ce functioneaza pe analiza si
proiectarea obiectelor cu un limbaj corespunzator pentru specificarea,
vizualizarea, construirea si documentarea artefactelor sistemelor software si
de asemenea pentru modelarea in intreprinderi. UML este un limbaj de modelare care
ofera o exprimare grafica a structurii si comportamentului software.
Pentru aceasta exprimare grafica se utilizeaza notatiile UML.
Notatiile UML constituie un element esential al limbajului pentru
realizarea propriu-zisa a modelarii si anume partea reprezentarii
grafice pe care se bazeaza orice limbaj de modelare. Modelarea in acest
limbaj se realizeaza prin combinarea notatiilor UML in cadrul
elementelor principale ale acestora denumite diagrame.
In cadrul limbajului UML descoperim 9 tipuri de diagrame:
v diagrama cazurilor de utilizare
v diagrama de secventa
v diagrama de colaborare,
v diagrama de clase (cea mai utilizata)
v diagrama de stari
v diagrama de componente
v diagrama de constructie
v diagrama de obiecte
v diagrama de activitati
In cele ce urmeaza vor fi prezentate notatiile UML care vor fi grupate dupa diagramele corespunzatoare fiecarei notatii in parte.
Analiza unei aplicatii implica realizarea mai multor categorii de modele, dintre care cele mai importante sunt:
Modelul de utilizare: realizeaza modelarea problemelor si a solutiilor acestora in maniera in care le percepe utilizatorul final al aplicatiei. Diagrama asociata: diagrama de cazuri de utilizare
Modelul structural: se realizeaza pe baza analizei statice a problemei si descrie proprietatile statice ale entitatilor care compun domeniul problemei. Diagrame asociate: diagrama de module, diagrama de clase
Modelul comportamental: priveste descrierea functionalitatilor si a succesiunii in timp a actiunilor realizate de entitatile domeniului problemei. Diagrame asociate: diagrama (harta) de stari, diagrama de colaborare, diagrama de interactiune
Diagramele UML
O diagrama ofera utilizatorului un mijloc de vizualizare si de manevrare a elementelor de Modelare. Majoritatea diagramelor se prezinta sub forma unor grafuri, compuse din elemente si arce.
Diagramele pot arata o parte sau toate caracteristicile elementelor de modelare, conform nivelului de detaliu util in contextul unei diagrame date. Diagramele pot grupa informatii interdependente, pentru a arata, de exemplu caracteristicile mostenite de o clasa. Diagramele UML sunt:
diagramele cazurilor de utilizare, care prezinta functiile sistemului din punct de vedere al utilizatorului; acestea sunt grafuri de actori si cazuri de utilizare, avand ca arce relatiile dintre ele: asociatiile intre actori si cazuri de utilizare, generalizarea intre actori, incluziunea, extinderea si generalizarea intre cazuri de utilizare;
diagrame de clasa, care prezinta structura statica in termeni de clase si asocieri (relatii); diagramele de clase sunt grafuri, avand ca noduri in general clase, dar putand contine si pachete, interfete sau chiar obiecte, iar ca arce relatiile dintre aceste elemente. aceste diagrame sunt organizate in pachete, ele putand depinde de alte pachete sau constituind baza pentru construirea unor pachete. O clasa trebuie sa aiba un nume unic in cadrul pachetului din care face parte, ea putand fi referita sub forma NumePachet::NumeClasa.
diagrame de colaborare, care sunt reprezentari spatiale ale obiectelor, legaturilor si interactiunilor; diagramele din aceasta categorie sunt organizate in jurul rolurilor jucate de obiecte in cadrul unei interactiuni, cuprinzand astfel si relatiile dintre obiecte;
exista doua niveluri de reprezentare pentru diagramele de colaborare:
nivelul instantelor - diagrama de colaborare la nivelul instantelor este un graf, avand ca noduri obiectele participante la colaborare si ca arce legaturile dintre ele, insotite de stimulii transmisi prin intermediul acestora; obiectele sunt reprezentate prin dreptunghiuri ce contin numele obiectului subliniat; se poate prezenta si rolul obiectului in colaborare, folosind notatia generala:
NumeObiect'/'NumeRolClasificator':'NumeClasificator['.'NumeClasificator]*
nivelul specificatiei - diagrama de colaborare la nivelul rolurilor este formata din roluri ale clasificarilor si ale asociatiilor dintre acestia, precum si din mesajele transmise intre ele; rolul unui clasificator se prezinta intr-un dreptunghi, avand un nume de tipul:
'/'NumeRolClasificatir':'NumeClasificator['.'NumeClasificator]*
diagrame de secventa, care prezinta temporal obiectele si interactiunile lor; diagramele din aceasta categorie categorii cuprind obiectele care fac parte dint-o anumita colaborare si descriu secventa de stimuli transmisi intre obiecte in cadrul unei interactiuni; ele cuprind si o dimensiune temporala, deoarece fiecarui obiect ii corespunde o linie de viata, trasata vertical sub dreptunghiul ce contine numele obiectului; timpul se scurge de sus in jos, iar stimulii sunt reprezentati prin sageti etichetate, de la linia de viata a obiectului transmitator catre linia de viata a celui receptor;
diagrame de componente, care prezinta componentele fizice ale unei aplicatii; componentele pot fi executabile, biblioteci dinamice, tabele, fisiere de cod sursa, fisiere de date, documente, elemente din modele orientate pe obiecte clasice; durata de viata a componentelor difera, unele existand numai in timpul compilarii, altele la editarea de legaturi, iar altele la momentul rularii; diagramele de componente sunt grafuri de componente si interfete ale acestora, interconectate prin relatii de dependenta, generalizare, asociatie, agregare si realizare;
diagrame de constructie, care prezinta constructia componentelor pe dispozitivele hardware; acestea sunt grafuri de noduri, in interiorul carora se reprezinta instante ale componentelor, rezidente la momentul rularii; nodurile sunt folosite pentru a modela suportul material al sistemului, ele fiind elemente fizice reprezentand resurse de prelucrare, precum procesoare sau periferice; reprezentarea UML se efectueaza printr-un cub tridimensional, avand in interior numele tipului de nod, sau numele subliniat al instantei unui nod; relatia intre noduri este de asociatie;
diagrame de stari-tranzitii, care prezinta comportamentul unei clase in termeni de stari; diagramele de stari au la baza doua concepte importante: starile, ce caracterizeaza valori sau seturi de valori ale obiectelor, si evenimentele, ce constau din stimuli externi, ce actioneaza asupra obiectelor si determina o tranzitie de la o stare la alta;
diagrame de obiecte, care prezinta obiectele si relatiile lor, fiind niste diagrame de colaborare simplificate, fara reprezentarea mesajelor trimise intre obiecte; obiectele sunt instante ale claselor, caracterizate printr-un nume si valori specifice atributelor. ele se prezinta in UML in mod similar claselor, in dreptunghiuri ce pot avea unul sau doua compartimente. Primul compartiment contine numele obiectului si numele clasei, precedat de ":", ambele fiind subliniate; cel de-al doilea compartiment contine atributele, cu tipul lor de date si valorile specifice obiectului.
diagrame de activitati, care reprezinta comportamentul unei operatii in termeni de actiuni; ele sunt cazuri particulare ale diagramelor de stare, care nu descriu insa un flux de control bazat pe evenimente, ci un procedural, in care toate sau majoritatea tranzitiilor se efectueaza automat, la terminarea actiunilor efectuate in interiorul starilor;
diagramele de colaborare impreuna cu cele de secventa se numesc diagrame de interactiune pe cand diagramele de stare mai sunt denumite masini cu stari finite, automate, etc.
Relatiile care se stabilesc intre doua elemente din cadrul unei diagrame pot fi:
actor-functionalitate - relatie de asociere
actor actor - relatie de generalizare
functionalitate-functionalitate - relatie de asociere, de generalizare si de dependenta
Relatia de asociere - modeleaza o comunicare intre elementele pe care le conecteaza. Aceste tip de relatie apare intre un actor si o functionalitatea sau intre doua functionalitati (transfer de date, trimitere de mesaje sau date).
Relatia de generalizare - se realizeaza intre elemente de acelasi tip si modeleaza situatii in care un element este un caz particular al unui alt element. Elementul particular mosteneste relatiile in care este implicat elementul general.
Relatia de dependenta - apare intre doua functionalitati si modeleaza situatii in care o functionalitate foloseste comportamentul definit in alta functionalitate (include) sau in cazul in care comportamentul unei functionalitati poate fi extins catre o alta functionalitate.
Prezentarea si descrierea aplicatiei
Aceasta aplicatie isi propune gestionarea unei agentii de turism. Accesul se face pe baza unei proceduri de identificare. Exista doua tipuri de utilizatori:
Aplicatia pune la dispozitia clientilor o modalitate de a vizualiza lista de oferte turistice disponibile si posibilitatea de a selecta o oferta din lista respectiva. Clientul isi poate rezerva o destinatie insa, dupa alegerea destinatiei X, el are posibilitatea sa se razgandeasca. Pentru a alege o alta oferta, clientul trebuie sa renunte in prealabil la oferta initiala X. Clientul are posibilitatea de a propune o oferta turistica. In acest sens, clientul trebuie sa faca o descriere a destinatiei dorite si sa specifice in ce categorie se incadreaza. In cadrul listei de categorii, fiecare destinatie se incadreaza intr-o singura categorie existenta.
O oferta devine vizibila in lista de preturi numai dupa ce a fost aprobata de catre un angajat al agentiei.
Ofertele pot fii listate toate sau pot fi grupate pe categorii. Lista de oferte este dinamica, in sensul ca se poate modifica pe parcursul unui an (pot fi introduse noi oferte in lista sau se pot sterge oferte in cazul in care nu sunt alese de niciun client). Clientul poate vizualiza ofertele pe tot parcursul anului.
Aplicatia ofera posibilitatea angajatilor de a vizualiza ce oferte si-au ales clientii, iar in cazul unui anumit produs, exista posibilitatea de a vedea de catre cine a fost ales.
Destinatia este aleasa dintr-o lista in care pot fi vazute toate circuitele care au fost selectate de cel putin un client. Deoarece pot exista foarte multe destinatii, este necesara posibilitatea vizualizarii acestora grupate pe categorii. Angajatul are posibilitatea de a vedea care sunt destinatiile propuse de catre clienti, mai mult, el are dreptul de a aproba sau respinge o astfel de propunere. In momentul in care o destinatie este aprobata, ea devine vizibila in lista de circuite disponibile. In cazul respingerii unei destinatii, aceasta nu este stearsa imediat din baza de date, angajatul putandu-se razgandi (in cazul in care considera ca destinatia propusa poate aduce un venit consistent agentiei), urmand a o accepta ulterior.
Aplicatia trebuie sa puna la dispozitia angajatului posibilitatea de a sterge definitiv din baza de date un anumit circuit. Angajatul poate vedea lista tuturor circuitelor existente, lista sejururilor alese de cel putin un client si oferta biletelor de avion.
Conturile create sunt gestionate de catre angajati. Ei trebuie sa aiba posibilitatea crearii/editarii unui cont. Prin conceptul editare se intelege posibilitatea modificarii tuturor informatiilor referitoare la un anumit client. Toti utilizatorii trebuie sa aiba posibilitatea modificarii parolei proprii. Pentru rezolvarea situatiilor in care un anumit client isi uita parola, angajatii vor avea dreptul sa seteze/genereze parole pentru fiecare client. De fiecare data cand parola unui utilizator este modificata (de utilizatorul si sau de catre un angajat), utilizatorul va fi instiintat de acest lucru prin e-mail.
Diagrame de clase:
Bibliografie
Politica de confidentialitate |
.com | Copyright ©
2024 - Toate drepturile rezervate. Toate documentele au caracter informativ cu scop educational. |
Personaje din literatura |
Baltagul – caracterizarea personajelor |
Caracterizare Alexandru Lapusneanul |
Caracterizarea lui Gavilescu |
Caracterizarea personajelor negative din basmul |
Tehnica si mecanica |
Cuplaje - definitii. notatii. exemple. repere istorice. |
Actionare macara |
Reprezentarea si cotarea filetelor |
Geografie |
Turismul pe terra |
Vulcanii Și mediul |
Padurile pe terra si industrializarea lemnului |
Termeni si conditii |
Contact |
Creeaza si tu |