0% au considerat acest document util (0 voturi)
3 vizualizări8 pagini

Proiect Final

Acest document descrie un proiect final pentru un curs de programare orientată pe obiect în Java. Proiectul constă în dezvoltarea unei aplicații care să genereze statistici pe baza unui fișier de date seismice. Aplicația trebuie să încarce datele, să ofere opțiuni de generare a rapoartelor statistice și să exporte rapoartele în fișiere text.

Tradus de

ScribdTranslations
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd
0% au considerat acest document util (0 voturi)
3 vizualizări8 pagini

Proiect Final

Acest document descrie un proiect final pentru un curs de programare orientată pe obiect în Java. Proiectul constă în dezvoltarea unei aplicații care să genereze statistici pe baza unui fișier de date seismice. Aplicația trebuie să încarce datele, să ofere opțiuni de generare a rapoartelor statistice și să exporte rapoartele în fișiere text.

Tradus de

ScribdTranslations
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd

Curs: Atelier de Consigna a

Programare Proiect Final

Nume de familie și prenume (adresă de email)

(Evaluare flexibilă)
Această evaluare este flexibilă, așa că o poți realiza de
manera grupal sau individual.

Obiectiv
Dezvoltarea unei aplicații utilizând limbajul de programare Java și paradigma
de orientare la obiecte.

Consideraț ii generale
Fiecare echipă va fi formată din trei (3) membri.
2. Fiecare echipă trebuie să desemneze un lider.
3. Lucrarea finală va fi predată de liderii echipei pe platforma virtuală
de învățare.
4. Se va livra codul sursă al proiectului într-un fișier ZIP.

Consideraț ii tehnice
1. Proiectul va fi dezvoltat folosind un IDE Java, Maven și Java JDK 17, ca
minimum.
2. Tipul de aplicație care trebuie dezvoltat este o aplicație de consolă.
3. Temele tratate în curs trebuie aplicate în proiect: programare
orientată către obiecte, structuri de date, manipularea fișierelor, etc.
4. Codul sursă trebuie să fie comentat corespunzător.
5. Trebuie inclus în comentariile fiecărei piese de software autorul.

Livrabile

Raport de muncă final.


Proiect Java (zip)

1
Diapozitive de prezentare (.ppt, .pptx)

Prezentare
1. Susținerea va avea loc în Săptămâna 18.
2. Parte 1. Expozitie: va dura 15 minute (toți integranții
del grup expun. Nota de expunere este individuală)
3. Parte 2. Întrebări ale cadrelor didactice: durată variabilă. Cadrele didactice vor întreba despre
codul sursă și logica programului.

Structura raportului
I. Carátula
(trebuie să arate facultatea, specializarea, cursul, titlul lucrării, ciclul, membri
del echipei, didactic, sediu, an și logo-ul UTP la început).
II. Indice.
III. Capitolul 1. Aspecte generale.
a. Descrierea problemei.
b. Obiectivele sistemului.
IV. Capitolul 2. Designul aplicației.
a. Descrierea modulelor.

(tablă în care sunt descrise funcț ionalităț ile pe care le realizează fiecare modul)

# Numele modulului Funcționalitățile modulului


1
2

tabelă în care sunt descrise opț iunile meniului principal ș i ceea ce realizează
fiecare dintre ele. La fel ș i cu celelalte meniuri)

# Opțiune din meniu Descrierea meniului


1
2

b. Designul claselor.

(diagrama de clase și descrierea funcționalităților metodelor sale)

Schema:

2
<numele pachetului>
<numele clasei>
Atribute:

Atribut Descriere

Metode:

Metodă Descriere

V. Concluzii.
VI. Recomandări.
VII. Bibliografie.

3
Proiect: Generator de Statistici

Platforma de date deschise a guvernului Peru


(Link not translatable.) pune la dispoziția cetățenilor diverse baze
de date de interes public. Aceste baze de date sunt de acces liber si se gasesc
în general în formate ușor de procesat (.xls, .xlsx, .txt, .csv, etc.)
Din această sursă de date a fost obținută baza de date „Catologul Seismic al Peruului”
care conține informații despre evenimente seismice din anul 1960 până în 2021.

Deoarece aceste date nu sunt procesate, este necesar dezvoltarea de


o aplicație în Java care să efectueze procesarea sa pentru a genera statistici utile
care permit îmbunătățirea modului în care datele sunt vizualizate.
Fișierul furnizat este în format .csv și conține 22712 înregistrări.

Datele fiecărui registru sunt:

ID: număr întreg correlativ.


data fără format (exemplu: 19600113 → 13/01/1960)
ora fără format (exemplu: 154034 → 15:40:34)
valoare zecimală, pozitivă sau negativă.
LONGITUD: valoare zecimală, pozitivă sau negativă.
număr întreg.
MAGNITUD: valoare zecimală.

4
Aplicația va încărca datele din fișierul furnizat și va trebui să ofere
următoarele opțiuni de procesare statistică utilizatorului:
A. Tabel cu numărul de evenimente seismice pe an, dat fiind un interval de ani.
B. Tabelul cu numărul de evenimente seismice pe lună pentru un an dat.
C. Tabel cu numărul de evenimente seismice pe lună dat un interval de
magnitudini și un an.
D. Tabelul cu numărul de evenimente seismice în fiecare oră într-un an.

Toate listele afișate utilizatorului pe ecran vor fi rapoarte ASCII corespunzătoare


formatați.
După prezentarea raportului solicitat, trebuie să se întrebe utilizatorul dacă dorește să-l exporte.

Exportul va trebui să creeze un fișier cu aceleași date afișate pe ecran, și


dispuși cu același format. De asemenea, titlul trebuie inclus în fișier.
rapoarte.

Exemplu de raport ASCII:


Raport B: Tabel cu numărul de evenimente seismice pe lună pentru un an dat.

(în acest caz, datele se referă la anul 2020)


Nº MES CARNITE DE PORC

===============================

01 IANUARIE 73 9,03%

02 FEBRUARIE 67 8.29%

03 MARTIE 68 8.42%

04 APRILIE 90 11.14%

05 MAI 99 12,25%

06 IUNIE 49 6.06%

07 JULIO 51 6.31%

08 AUGUST 60 7.43%

09 SEPTEMBRIE 48 5,94%

10 OCTOMBRIE 66 8,17%

11 NOIEMBRIE 70 8,66%

5
12 DECEMBRIE 67 8.29%

==============================

TOTAL 808 100.00%

Acces la sistem
Utilizatorul trebuie să își introducă acreditivele pentru a avea acces la aplicație. Utilizatorul
ai trei încercări pentru a te conecta. O încercare de conectare eșuată trebuie să afișeze un
mesaj de eroare și numărul încercării.
Credencialesle (utlilizatori și parole) vor fi citite dintr-un fișier de text simplu
[Link]

Meniuri de opț iuni

Meniu principal: este ecranul principal de la care se poate accesa la celelalte


module.
--------------------------------------------------------

MENIU PRINCIPAL

--------------------------------------------------------

1. Numărul de evenimente seismice pe an dat fiind un interval de ani.

2. Numărul de evenimente seismice pe lună pentru un an dat.

3. Numărul de evenimente seismice pe lună date un interval de magnitudini ș i un an

4. Numărul de evenimente seismice pe oră într-un an.

0. SFÂRȘ ITUL PROGRAMULUI

--------------------------------------------------------

Introduceț i opț iunea [1 – 4]

În plus, fiecare modul trebuie să aibă propriul său meniu de opțiuni:


--------------------------------------------------------

6
MODULUL 01 – EVENIMENTE PE RANGURI DE ANI

--------------------------------------------------------

1. Imprimă pe ecran.

2. Exporta în fiș ier text.

0. Înapoi la Meniul Principal

--------------------------------------------------------
Introduceț i opț iunea [1-2]

Arhive de audit
Având în vedere că programul trebuie să controleze excepțiile, va trebui să includă funcționalitate pentru
capturarea excepțiilor și înregistrarea acestora în fișierul „[Link]”.

Pentru fiecare excepție trebuie să se înregistreze: data și ora erorii, numele utilizatorului, tipul
de eroare și mesaj de eroare.

7
Sugestie pentru cadru didactic:

Platforma de date deschise conține multiple baze de date în diverse


categorías (economía, transporte, salud, educación, energía, etc.)
O opțiune pentru cadru didactic este să aloce același tip de proiect descris aici tuturor
grupurile, dar cu o sursă de date diferită pentru fiecare grup, și prin urmare, cu
diverse tipuri de raport.
Acest lucru se face cu scopul de a menține uniformitatea în ceea ce privește tipul de proiect între toate
grupurile și a preveni ca grupurile să își transmită codul între ele.

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