Sunteți pe pagina 1din 2

Proiect 1: Rezervare bilete avion

Folosind limbajul Java, implementai o aplicaie numit "Rezervare bilete avion" care s rezolve problema descris n continuare. Descriere problema O companie ofera zboruri saptamanale intre doua aeroporturi situate in orase diferite. Un zbor are un aeroport de plecare si unul de destinatie si face sau nu escale in alte aeroporturi. Un zbor este realizat de o echipa de piloti si una de insotitori de zbor. Zborul are un cod, o data de plecare si ofera un numar de locuri pe care calatorii fac rezervari. Rezervarile se realizeaza cu ajutorul unei aplicatii a carei ferestre principale afiseaza date despre compania aeronautica si in fereastra asociata rezervarilor, o lista a zborurilor deschise. Un zbor devine deschis pentru rezervari daca a fost planificat si mai sunt 60 de zile pana la efectuarea zborului. In aceasta perioada, sistemul adauga sau sterge pasageri alocati zborului, dar de indata ce ultimul loc a fost vandut, zborul este inchis. Daca o rezervare este anulata, zborul devine din nou deschis. Rezervarile pot fi facute cel tarziu cu zece minute inainte de decolare, cand zborul devine inchis. Dupa aceea, daca numarul de pasageri este mai mic de 50, atunci zborul este anulat si compania va gasi un alt zbor pentru pasageri. Pentru a face o rezervare si a cumpara un bilet, clientul acceseaza fereastra prinicipala a aplicatiei. Aceasta fereastra afiseaza informatii generale despre companie. Apoi, cel interesat selecteaza optiunea de a vedea informatii despre zborurile avioanelor. Aceste informatii contin orasele de plecare si destinatie, precum si date de plecare si intoarcere, in care compania realizeaza zboruri. Cel interesat introduce orasul de plecare si de destinatie, data de plecare si de intoarcere si sistemul afiseaza o lista de zboruri disponibile. Daca nu mai exista nici un zbor deschis, atunci aplicatia afiseaza un mesaj ca nu exista zboruri disponibile pentru orasul de plecare si cel destinatie, precum si datele introduse. Cel interesat confirma mesajul si va reapare fereastra anterioara ce afiseaza orasele de plecare si destinatie, precum si date de plecare si intoarcere ale companiei. Din lista zborurilor disponibile, clientul selectioneaza pe cel la care vrea sa faca rezervarea. Atunci aplicatia afiseaza pentru acel zbor toate categoriile de bilete. In acest punct, cel interesat are doua optiuni: sa faca rezervarea in vederea cumpararii biletului prin alegerea categoriei biletului sau sa ceara furnizarea unui bilet in contul abonamentului personal. In ambele cazuri, aplicatia va afisa costul biletului. Dupa acceptarea costului, in cazul cumpararii biletului, aplicatia cere introducerea tipului de card, numar si data expirarii cardului. Pentru a verifica corectitudinea acestor informatii, aplicatia apeleaza la un sistem de credit care verifica existenta contului bancar si a fondului suficient platirii biletului. Daca este OK, aplicatia rezerva pasagerului un loc in avion si genereaza si afiseaza un cod de confirmare a rezervarii. Acest cod trebuie sa fie acceptat de pasager. Daca viitorul pasager alege furnizarea unui bilet in contul abonamentului sau, aplicatia cere introducerea numarului de abonament, il valideaza si verifica daca numarul de kilometri inclusi in abonament sunt suficienti pentru a furniza biletul. In caz afirmativ, aplicatia seteaza costul biletului la zero, rezerva un loc in avion, genereaza si afiseaza codul de confirmare a rezervarii ce va trebui sa fie acceptat de pasager. O rezervare poate fi modificata de un pasager, daca acesta acceseaza optiunea de Modificare rezervari zboruri si introduce codul rezervarii, ce va fi cerut de aplicatie. Daca acest cod este

valid, aplicatia afiseaza informatii despre rezervarea facuta: numele clientului, orasele de plecare si destinatie, data si ora de plecare si intoarcere. Vom presupune ca pasagerul poate modifica orasul de destinatie. In acest caz, aplicatia afiseaza zborul disponibil la data si ora de plecare memorate, pentru noul oras. Daca nu exista nici un zbor disponibil, atunci aplicatia reafiseaza informatiile despre rezervarea facuta: numele pasagerului, orasele de plecare si destinatie, data si ora de plecare si intoarcere. Cand pasagerul confirma alegerea zborului, aplicatia cere confirmarea c se pastreaza categoria in care a fost cumparat biletul. Daca aceasta nu este modificata de pasager, se rezerva un loc in avion si se genereaza un alt cod al rezervarii. Acesta va fi afisat si confirmat de catre pasager. Un pasager isi poate anula rezervarea alegand optiunea Anuleaza Rezervare. In acest moment, aplicatia cere introducerea codului rezervarii, il verifica si daca este valid, afiseaza informatii despre rezervarea si vanzarea biletului. Apoi, aplicatia primeste confirmarea anularii rezervarii si returneaza costul biletului, cerand sistemului de credit sa actualizeze contul pasagerului. In final, aplicaia va afisa un mesaj de confirmare ca rezervarea a fost anulata si banii au fost restituiti.
Cerintele proiectului: 1. Aplicatia trebuie sa indeplineasca principiile programarii orientate spre obiecte. 2. Aplicatia trebuie sa indeplineasca toate functiunile specificate in descrierea problemei. 3. Aplicatia memoreaza pe suport extern (fisiere) toate datele necesare functionarii sale astfel incat existenta datelor nu depinde de oprirea temporara (accidentala sau nu) a calculatoarelor pe care ruleaza. 4. Pentru realizarea interfetelor grafice ale aplicatiei va fi folosita tehnologia Swing. 5. Pentru realizarea interfetelor grafice ale aplicatie i nu vor fi folosite programe software care faciliteaza acest lucru. 6. Pentru gestiunea evenimentelor generate de utilizatorii aplicatiei vor fi folosite clase interne. 7. Pentru gestiunea rezervarilor, etc. vor fi folosite colectii dinamice de obiecte.

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