Studijski primer - Dijagrami toka podataka

Studijski primer - Dijagrami toka podataka Studijski primer - Dijagrami toka podataka

<strong>Studijski</strong> <strong>primer</strong> -<br />

<strong>Dijagrami</strong> <strong>toka</strong> <strong>podataka</strong><br />

Softverski inženjering<br />

1


<strong>Studijski</strong> <strong>primer</strong><br />

� Kada projektujemo sistem za obradu <strong>podataka</strong> sa<br />

brzim odzivom, možemo uočiti dve ključne grupe<br />

funkcija koje se opisuju dijagramima <strong>toka</strong> <strong>podataka</strong>:<br />

� Funkcije kojima se kreira i održava baza <strong>podataka</strong> (na<br />

osnovu projektovanih ulaza formiramo i održavamo bazu<br />

<strong>podataka</strong>, poštujući pri tome pravila njenog integriteta).<br />

� Funkcije pomoću kojih vršimo upite i formiramo preglede<br />

na osnovu <strong>podataka</strong> u bazi (formira projektovane izlaze<br />

pri čemu pretražuje i prikazuje projektovanu bazu<br />

<strong>podataka</strong>).<br />

2


<strong>Studijski</strong> <strong>primer</strong><br />

� Kako unete podatke treba održavati, potrebno je za<br />

svaki od njih obezbediti osnovne funkcije:<br />

� Unos, brisanje, prikaz i pregled<br />

� Da bi se očuvao integritet aplikacije, neophodno je<br />

imati u vidu sledeće činjenice:<br />

� Prilikom čitanja baze <strong>podataka</strong> ili tabela sa datim ključem,<br />

treba proveriti da li postoji slog sa datim ključem.<br />

� Prilikom sekvencionalnog čitanja <strong>podataka</strong> treba voditi<br />

računa o kraju tabele.<br />

� Prilikom upisa <strong>podataka</strong> potrebno je proveriti da li već<br />

postoji upisan slog sa datim ključem.<br />

3


<strong>Studijski</strong> <strong>primer</strong><br />

� Kada upisujemo jedan slog, neophodno je prethodno<br />

proveriti da li postoje slogovi svih onih tabela na koje<br />

pokazuje ovaj slog tabele sa minimalnim kardinalitetom 1.<br />

� Kada brišemo slog iz tabele, neophodno je prethodno<br />

proveriti da li u drugim tabelama postoje slogovi koji<br />

pokazuju na ovaj slog.<br />

� Za svake dve klase <strong>podataka</strong> između kojih postoji veza sa<br />

minimalnim kardinalitetima jednakim 1, unos <strong>podataka</strong><br />

treba da bude zajednički za obe tabele.<br />

� Za klase koje su povezane vezom sa minimalnim<br />

kardinalitetima jednakim 1, prilikom brisanja sloga jedne<br />

od tabela proveriti da li je potrebno i brisanje sloga u<br />

drugoj tabeli.<br />

4


<strong>Studijski</strong> <strong>primer</strong><br />

� Izbegavati ažuriranje obeležja koja su u ključu sloga, već<br />

ovaj problem rešavati kao kombinaciju brisanja sloga i<br />

upisa novog.<br />

� Za slabe entitete neophodno je proveriti postojanje<br />

odgovarajućih entiteta od kojih oni zavise, odnosno na<br />

koje pokazuju, pa se prilikom unosa obavezno proverava<br />

njihovo postojanje, dok se prilikom brisanja slogova iz<br />

jedne tabele može postupiti dvojako:<br />

� Mogu se izabrati i slogovi koji su prema njima slabi<br />

� Onemogućava se brisanje slogova<br />

� Prilikom prijema <strong>podataka</strong> iz okruženja u softversku<br />

aplikaciju koju projektujemo, vrlo je važno sprovesti<br />

maksimalne moguće kontrole unetih <strong>podataka</strong>.<br />

5


<strong>Studijski</strong> <strong>primer</strong><br />

� Šta postižemo pridržavanjem ovih pravila?<br />

� Funkcije koje projektujemo direktno podržavaju<br />

integritet baze <strong>podataka</strong>.<br />

� Postiže se čvrsto i kvalitetno jedinstvo između<br />

organizacije <strong>podataka</strong> i funkcija koje rukuju tim<br />

podacima.<br />

� Ovo jedinstvo je od izuzetnog značaja i predstavlja<br />

suštinski najvažniji princip.<br />

6


<strong>Studijski</strong> <strong>primer</strong><br />

� U nastavku slede <strong>primer</strong>i dijagrama <strong>toka</strong> <strong>podataka</strong><br />

za sledeće funkcije:<br />

� Unos rasporeda ispita<br />

� Brisanje dodeljene nastave<br />

� Spisak diplomiranih studenata<br />

7


<strong>Studijski</strong> <strong>primer</strong><br />

� Unos rasporeda ispita zahteva prvo proveru da li je taj<br />

ispitni rok ranije unet i ako nije - upis novog roka.<br />

� Nakon toga, u oba slučaja proverava se da li postoji<br />

određeni predmet upisan u datoteku predmeta i, ako<br />

postoji, upis <strong>podataka</strong> o rasporedu ispita iz tog predmeta<br />

u datom ispitnom roku.<br />

8


<strong>Studijski</strong> <strong>primer</strong><br />

9


<strong>Studijski</strong> <strong>primer</strong><br />

� Brisanje dodeljene nastave sprovodi se tako što se prvo<br />

provere podaci o predmetu za koji se briše dodela<br />

nastave, zatim se briše slog nastavnik-predmet.<br />

� Nakon toga, proverava se da li postoji još neki slog tabele<br />

nastavnik-predmet sa datom šifrom nastavnika.<br />

� Ako ne postoji ni jedan, briše se slog tabele nastavnika sa<br />

datom šifrom nastavnika.<br />

10


<strong>Studijski</strong> <strong>primer</strong><br />

11


<strong>Studijski</strong> <strong>primer</strong><br />

� Izveštaj o diplomiranim studentima formira se tako što se<br />

čita tabela diplomiranih studenata, na osnovu broja<br />

indeksa čita se tabela student, na osnovu koje se formira<br />

izveštaj o diplomiranim studentima.<br />

12


<strong>Studijski</strong> <strong>primer</strong><br />

13


<strong>Studijski</strong> <strong>primer</strong><br />

� Rečnik <strong>podataka</strong> opisuje strukturu i sadržaj<br />

tokova i skladišta <strong>podataka</strong>.<br />

� Slede <strong>primer</strong>i opisa <strong>toka</strong> <strong>podataka</strong>, opisa elementarnog<br />

podatka, opisa tabele i opisa funkcije, koji čine rečnik<br />

<strong>podataka</strong>.<br />

14


<strong>Studijski</strong> <strong>primer</strong><br />

15


<strong>Studijski</strong> <strong>primer</strong><br />

16


<strong>Studijski</strong> <strong>primer</strong> -<br />

<strong>Dijagrami</strong> <strong>toka</strong> <strong>podataka</strong><br />

17

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!