Modeliranje podataka
description
Transcript of Modeliranje podataka
![Page 1: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/1.jpg)
Modeliranje podataka
definisanjestrategije
snimanje postojećeg
stanja
projektovanje
aplikativno modeliranje
implementacija
održ avanje
![Page 2: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/2.jpg)
2
Model podataka – osnovni pojmovi Podatak je kodirana činjenica iz realnog sistema. Podatak - uređena četvorka (Entitet, Obeležje, Vreme, Vrednost) – Entitet • identifikator (oznaka) entiteta – Obeležje • oznaka (mnemonik) obeležja – Vreme • vremenska odrednica – Vrednost • jedna vrednost iz dom(A)
Podatak je nosilac informacije.
Model podataka opisuje strukturu nekog sistema (skup objekata, njihovih
atributa i njihovih međusobnih veza) i
njegovu dinamiku (skup operacija).
![Page 3: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/3.jpg)
Vreme, kao komponenta podatka, može seizostaviti, ako se– uvede konvencija da se podatak, u tom slučaju,odnosi na vremenski trenutak u kojem se timpodatkom manipuliše, ili– identifikuje posebno obeležje, čija vrednostpredstavlja vremensku odrednicu posmatranogpodatka.
3
![Page 4: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/4.jpg)
Kontekst podatka– semantička (smisaona) komponenta podatka– predstavlja trojku: (Entitet, Obeležje, Vreme)• Ako se eksplicitno navede samo vrednost, a obeležje, entitet, ili vreme nije ni implicitno zadato, to nije podatak, jer smisao nije određen
4
![Page 5: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/5.jpg)
Tip entiteta (TE)– Model klase realnih entiteta u IS– Gradi se od obeležja bitnih za realizaciju ciljeva IS– Poseduje:• naziv: N• skup obeležja: Q = {A1,…, An}– Skup obeležja TE predstavlja podskup skupaobeležja klase realnih entiteta
Tip entiteta• Primer: Radnik({Mbr, Ime, Prz, Zan, JMBG}) Radnik
5
![Page 6: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/6.jpg)
Pojava tipa entiteta– model jednog realnog entiteta u IS• Tip entiteta – formalno, reprezentuje skup pojava: SP(N) = {pi | P(pi)Svaka pojava pi SP(N) reprezentuje tačno∈ jedan realni entitet ei E∈Pojava tipa entiteta• Dat je tip entiteta– s nazivom N i skupom obeležja Q = {A1,..., An}• Pojava tipa entiteta– u zadatom trenutku vremena, p(N, Vreme), ili– samo p(N), ako se vremenska odrednica ne navodi,– predstavlja skup podataka:p(N) = {(A1, a1),..., (An, an)}– Za svaki Ai Q važi da je ai dom(Ai)∈ ∈
6
![Page 7: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/7.jpg)
Ukoliko se u skup atributa tipa entiteta uvederedosled (A1,..., An),– tada se pojava p(N) posmatra kao n-torka (torka):(a1,..., an)• Uređenje vrednosti podataka u pojavi jediktirano uređenjem obeležja u tipu entitetaBP - Osnovni pojmovi 26 / 66• Primer:Radnik (Mbr, Ime, Prz, Zan, JMBG)Pojava tipa entitetaRadnik(1040, Eva, Tot, Programer, 1201971720014)
7
![Page 8: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/8.jpg)
8
Vrste modela Model podataka opisuje strukturu nekog sistema
(skup objekata, njihovih atributa i njihovih međusobnih veza) i njegovu dinamiku (skup operacija).
Model Objekti - Veze Relacioni model
Istorija–Hijerarhijski model
–Mrežni (CODASYL) model
![Page 9: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/9.jpg)
9
Model podataka - osnovne komponente
(1) Struktura modela - objekti, atributi, veze
POSLOVNA PRAVILA INTEGRITETA:
(2) Ograničenja - semantička ograničenja na vrednosti podataka koja se ne mogu predstaviti samom strukturom modela.
(3) Operacije nad konceptima strukture, preko kojih je moguće prikazati i menjati vrednosti podataka u modelu;
![Page 10: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/10.jpg)
10
Model Objekti-Veze (MOV) Entity-Relationship Model
Objekat (entitet) - grupa (skup) sadržaja sa karakteristikama koje su bitne za celinu.
kandidati za objekte: Fizički objekti (vozila, mašine,...) Osobe Lokacije (mesta, adrese, koordinate...) Organizacije Grupe/klase/tipovi (proizvoda, poslova...) Dokumenta Pridruženja (zadatak-osoba, vozilo-vožnja) Pripadnost/članstvo
![Page 11: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/11.jpg)
11
MOV – vrste objekata Nezavisan objekat ima osobinu koja ga može
jednoznačno identifikovati (ne zavisi od drugih objekata).
Zavisan objekat je onaj čija egzistencija i identifikacija zavise od drugog (ili drugih) objekata.
prima / je primio ZARADA RADNIK Karakteristični
objekat
vazi / odnosi se
je dat / poseduje STUDENT JEZIK
SERTIFIKAT Asocijativni objekat
Postoje• karakterističan objekat (slab objekat) – onaj koji se ponavlja više puta za određeni nezavisni objekat;
• asocijativni objekat, koji predstavlja vezu više objekata;
![Page 12: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/12.jpg)
12
MOV - atributi Atributi su karakteristike ili osobine
iskazane kao jedna ili više vrednosti koje opisuju objekat. Svaki atribut ima svoje ime.
PRIMER: u objektu Student atributi mogu biti
• ime, • prezime, • ime roditelja• adresa,• broj indeksa
![Page 13: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/13.jpg)
13
# br. indeksa# br. indeksaime prezimeime roditeljamesto stanovanjaulicabroj
KLJUČ
Student
atributi
• Ključ je vrsta atributa koji jedinstveno identifikuje svaki primerak objekta.
• Od atributa - kandidata za ključeve bira se jedan koji postaje primarni ključ.
• Nijedan deo primarnog ključa ne može biti prazan ili nedostajući.
Ključ objekta
![Page 14: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/14.jpg)
14
Ključevi
Ako ključ čini samo jedan atribut, onda je to prost ključ;
u suprotnom je složen.
Alternativni ključ predstavlja atribut ili grupa atributa
koji jedinstveno identifikuju primerke entiteta, ali postoje
objekti za koje taj atribut nije definisan
Preneseni ključ (Foreign Key) je atribut koji povezuje
objekat 'dete' sa objektom 'roditelj'
![Page 15: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/15.jpg)
15
VezeVeze (Relationship)
identifikujuće (dete - roditelj) neidentifikujuće
obavezne neobavezne
rekurzivne (na sebe samog)- primer : radnik - šef
![Page 16: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/16.jpg)
16
Kardinalnost *
Kardinalnost veza roditelj - dete• nula, jedan ili više • jedan ili više • nula ili jedan• tačno n (primer : godišnja doba, broj semestara)
Kardinalnost veza dete - roditelj
• dozvoljena nula • nije dozvoljena nula
Veza “više prema više”* kardinalnost – broj pojavljivanja jednog objekta u vezi sa drugim
![Page 17: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/17.jpg)
Poslovna pravila integriteta
![Page 18: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/18.jpg)
18
Ograničenja (statička pravila integriteta)
Nad strukturom Integritet entiteta Nad standardnim domenom Tip, dužina podataka
Nad vrednošću domena Dozvoljene vrednosti
Na kardinalnost (0,1,n), (1,n), (0,1), (Exactly)
![Page 19: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/19.jpg)
19
Operacije (dinamička pravila integriteta)
Operacije održavanja baze podataka - ubaci, izbaci,promeni,poveži,razveži i preveži
Navigacione operacije koje pomažu kretanju kroz bazu podataka.
osnovne operacije:INSERT (ubacivanje)REPLEACE (ključ, deo ključa)DELETE (objekat, veza, roditelj)
Definišu se nad konceptima strukture, po ograničenjima
![Page 20: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/20.jpg)
Postupak normalizacije
“jedna činjenica na jednom mestu”
![Page 21: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/21.jpg)
21
Postupak normalizacije- uklanjanje redundanse*! redundansa – višestruko ponavljanje istog podatka u bazi
Prva normalna forma (1NF) Svaki od atributa ima jedno značenje i ne više od
jedne vrednosti za svaki primerak (instancu)
Druga normalna forma (2NF) Svaki atribut koji nije ključ potpuno zavisi od
primarnog ključa
Treća normalna forma (3NF) Svaki atribut koji nije ključ mora da zavisi jedino od
primarnog ključa
![Page 22: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/22.jpg)
22
1NF - primer
Šifra radnikaPrezimeImeKvalifikacijaDat.zaposl. ili dat.odlaska
RADNIK
123 Petar Perić Programer 01.11.1998124 Ana Ilić Projektant 20.05.2005125 Milan Milić Operater 15.09.2004
1NF : Jednoznačna upotreba atributa;Svaki od atributa ima jedno značenje i ne više od jedne vrednosti za svaki primerak (instancu)
![Page 23: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/23.jpg)
23
2NF - Primer
Šifra radnikaBr. isplateDatum zaposlenjaIsplata
ISPLATA
123 1 01.10.1997 20000123 2 01.10.1997 22500123 3 01.10.1997 22000123 4 01.10.1997 25000
2NF : Svaki atribut koji nije ključ mora potpuno da zavisi od primarnog ključa, inače ga treba premestiti u nadređeni entitiet
![Page 24: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/24.jpg)
24
3NF - Primer
Broj listeBr. časovaCena časaIznos
Radna lista
321 10 100 1000322 2 80 160323 3 150 450
3NF : Svaki atribut koji nije ključ mora da zavisi jedino od primarnog ključa;Ne koristiti atribute čija se vrednost može izračunati
![Page 25: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/25.jpg)
25
APSTRAKCIJE U MODELU PODATAKA
KLASIFIKACIJA (tipizacija)
GENERALIZACIJA
AGREGACIJA
![Page 26: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/26.jpg)
26
PRIMER APSTRAKCIJA
PRIJAVA GRAĐANIN
NASTAVNIKSTUDENT PREDMET
generalizacija
ime
adresa
tel
agregacija
Miloš Zoran Goran
NišNovi Sad Pančevo
123123 456456 789789
klasifikacija (tipizacija)
![Page 27: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/27.jpg)
27
Osnovni koncepti MOV
REGBR
MARKA
BOJA
KOLA
BI
IME
SEM
(1,1)
(0,1)
PARKIRA
STUDENT
DATUM OCENA
[N
IMENNASTAVNIK
SP
NAZP
BC
PREDAJE
(0,1)
POLOZIO PREDMET
(0,M)
(0,M) (0,M)
(1,M)
IMA
RODITELJ
(0,M)
MLB IMER
S
Vrste (0,1)
SLUSA
ZANIMANJE
VANREDAN
(1,1)
(1,M)
(0,M)(1,M)
PRIPADA
KATEDRA
SK NAZIVK
RADI
POSAO
(0,M)
SPOS NAZPOS
(1,M) (0,M)
UCESTVUJE
SPROJ
NAZPROJ
PROJEKAT
(0,M)
(1,M)
ZADATAK
SZAD
NAZZAD
OPISZAD
![Page 28: Modeliranje podataka](https://reader033.fdocument.pub/reader033/viewer/2022061617/56815946550346895dc682c9/html5/thumbnails/28.jpg)
sledeća tema:Arhitektura IS