Download as pdf or txt
Download as pdf or txt
You are on page 1of 11

ER MODEL PODATAKA [Entity-Relationship Atribute Data Model]

Konkretni sistemi za upravljanje bazama podataka zasnovan na ER modelu podataka (č esto nazivan i
prošireni model objekti-veze tj. PMOV) ne postoji, nego se vrši prevođenje iz ovog semantič ki bogatijeg u
semantič ki siromašniji relacioni model. Za geometrijsku reprezentaciju koncepata modela koriste se grafovi
(intenzija) i tabele (ekstenzija modela).

Iako je ER model podataka kompletan (postoje opisi sve tri komponente modela podataka), sam model je
pre svega namenjen projektovanju statič kog modela –zbog dijagramskog prikaza i bogate semantike.
Model je smisaono (semantič ki) bogat ako se njegovim konceptima mogu modelirati praktič no svi realni
sistemi.

Elementi ER modela podataka

Obelež je koje se dalje ne mož e (ili ne ž eli) dekomponovati zove se elementarno obelež je. Skup, niz
ovakvih obelež ja je slož eno obelež je.
• Primer:
o elementarno obelež je –nosivost, boja (kamiona)
o slož eno obelež je –ADRESA = {mesto, ul, broj}; DATUM = {dan, mesec, godina}
Svakom obelež ju odgovara jedan skup svih moguć ih vrednosti koje to obelež je u konkretnom sluč aju mož e
imati. Taj skup zovemo domen obelež ja (dom(obelezje)). Domen mož e posedovati sopstveno ime, i
mož emo ga pridruž iti već em broju obelež ja.
• Primer:
o obelež je BOJA_AUTOMOBILA: dom(BOJA_AUTOMOBILA) = {crvena, ž uta,
plava...}

Sa tač ke gledišta zadataka informacionog sistema, nisu sva obelež ja klase entiteta podjednako važ na. Od
obelež ja bitnih za realizaciju zadataka informacionog sistema gradi se MODEL realne klase entiteta –TIP
ENTITETA. Kao i svaki model, i tip entiteta je samo približ na slika klase entiteta realnog sistema.
• Primer:
o STUDENT (BRI, IME, PREZIME, NAZFAKUL)

Skup poveznika je relacija između dva ili više skupova entiteta. Između dva ista skupa entiteta mož e
postojati više različ itih skupova poveznika. Ako poveznik povezuje entitete jednog skupa, onda je
rekurzivan.

Dijagrami tipova entiteta i tipova poveznika

Model statič ke strukture realnog sistema se po pravilu predstavlja tzv. ER dijagramima. Tip entiteta:
pravougaonik sa upisanim nazivom tipa entiteta; Tip poveznika: romb sa upisanim nazivom tipa poveznika.
Veze se crtaju neusmerenim potezima. Skupovi vrednosti (domeni) se prikazuju kao ovali sa upisanim
nazivom domena i povezuju orijentisanim potegom sa odgovarajuć im tipom entiteta/poveznika.
Orijentacija potega je prema ovalu. Naziv obelež ja se upisuje na na potegu samo ako se ime obelež ja
razlikuje od imena domena.

Dijagrami se crtaju do dva nivoa detaljnosti: nivo detaljnosti naziva i nivo detaljnosti obelež ja. Prvi su
pregledniji, drugi informativniji. Ukoliko između dva tipa entiteta postoji više poveznika, moguć e uloge
pojedinih pojava tipa entiteta ispisujemo uz odgovarajuć e potege.

Ekstenzija ER modela podataka

Ekstenzija se predstavlja putem tabela, slič no kao u relacionom modelu podataka. Svakom tipu entiteta ili
poveznika odgovara jedna tabela sa svim obelež jima u zaglavlju i podacima o entitetima u vrstama tabele.

Integritetna komponenta ER modela podataka


U ogranič enja spadaju:
• integritet domena
• kardinalnost tipa poveznika
• slabi tip entiteta
Integritet domena je ogranič enje svojstveno svim modelima podataka. Obič no je trojka oblika: (tip podatka,
duž ina podatka, uslov)
• Primer:
o dom(ocena) = (integer, (2), <11)
o dom(ocena) = (integer, (2), >5 AND <11)

Nula-vrednost je specijalno ogranič enje domena –specificira se da li obelež je mož e imati nedefinisanu
vrednost. Nula-vrednost ima jedno od sledeć a dva znač enja:
• postojeć a, ali nepoznata vrednost,
• neprimereno svojstvo.

Kardinalnost tipa poveznika nastala je iz razloga što se od modela realnog sistema č esto zahteva da pruž i
informaciju ne samo o vezama između klasa entiteta, već i o prirodi tih odnosa. Kardinalnost se obelež ava
na potezima, navođenjem gornje i donje granice. Postoji i nač in obelež avanja navođenjem samo gornje
granice kardinaliteta, kada se restriktivnost donje granice kardinaliteta naglašava upotrebom slabog tipa
entiteta.

ER dijagrami - kardinalitet i proš irenja modela objekti-veze

Strukture sa kardinalitetima grupe M:N - primeri

(0,M) (1,N)
radnik radi projekat
(0,M) (0,N)
radnik radi projekat

Ekstenzija modela:

Ekstenzija modela:
Ivo (Ivo, Lido) Lido

Ivo (Ivo, Lido) Lido Ana (Ivo, Faktura) Faktura

Ana (Ivo, Faktura) Faktura Eva (Ana, Skladiš tenje) Skladiš tenje

Eva (Ana, Skladiš tenje) Skladiš tenje Aca (Ana, Lido) Nabavka

Aca (Ana, Lido) Nabavka (Eva, Nabavka)

(1,M) (1,N)
radnik radi projekat

Ekstenzija modela:

Ivo (Ivo, Lido) Lido

Ana (Ivo, Faktura) Faktura

Eva (Ana, Skladiš tenje) Skladiš tenje

Aca (Ana, Lido) Nabavka

(Eva, Skladiš tenje)

(Aca, Nabavka)
Strukture sa kardinalitetima grupe 1:M - primeri

(0,1) (0,N)
radnik rasporedjen radnoMesto (1,1) (0,N)
radnik rasporedjen radnoMesto

Ekstenzija modela: Ekstenzija modela:

Ivo (Ivo, Projektant) Projektant Ivo (Ivo, Projektant) Projektant

Ana (Ana, Projektant) Programer Ana (Ana, Projektant) Programer

Eva (Eva, Sekretarica) Sekretarica Eva (Eva, Sekretarica) Sekretarica

Aca Direktor Aca (Aca, Projektant) Direktor

(0,1) (1,N) (1,1) (1,N)


radnik rasporedjen radnoMesto radnik rasporedjen radnoMesto

Ekstenzija modela: Ekstenzija modela:

Ivo (Ivo, Projektant) Projektant Ivo (Ivo, Projektant) Projektant

Ana (Ana, Projektant) Programer Ana (Ana, Projektant) Programer

Eva (Eva, Sekretarica) Sekretarica Eva (Eva, Sekretarica) Sekretarica

Aca (Aca, Programer) Direktor Aca (Aca, Programer) Direktor

Pera (Pera, Direktor) Pera (Pera, Direktor)

Mira Mira (Mira, Direktor)

Strukture sa kardinalitetima grupe 1:1 - primeri

(0,1) (0,1) (1,1) (0,1)


radnik je osiguranik radnik je osiguranik

Ekstenzija modela: Ekstenzija modela:

Ivo (Ivo, Polisa 2) Polisa 1 Ivo (Ivo, Polisa 2) Polisa 1

Ana (Ana, Polisa 1) Polisa 2 Ana (Ana, Polisa 1) Polisa 2

Eva (Eva, Polisa 3) Polisa 3 Eva (Eva, Polisa 3) Polisa 3

Aca Polisa 4 Polisa 4

(1,1) (1,1)
radnik je osiguranik

Ekstenzija modela:

Ivo (Ivo, Polisa 2) Polisa 1

Ana (Ana, Polisa 1) Polisa 2

Eva (Eva, Polisa 3) Polisa 3

Aca (Aca, Polisa 4) Polisa 4


Rekurzivne veze

Predstavlja model relacije u jednom skupu, povezuje entitete jedne klase. Isti tip entiteta predstavlja i prvu i
drugu klasu realnih entiteta.

(0,N)

(0,N)
(0,M)
proizvod sastavnica
(0,1)
radnik rukovodi

Ekstenzija modela:

Ekstenzija modela:

Scala (Scala, Motor) Scala

Ana (Ana, Eva) Ana


Tempo (Scala, Karoserija) Tempo

Eva (Ana, Aca) Eva Motor (Tempo, Motor) Motor

Aca (Eva, Iva) Aca Karoserija (Tempo, Karoserija) Karoserija

Iva Iva Klip (Motor, Klip) Klip

Tip poveznika reda većeg od dva

Tip poveznika mož e povezati i više od dva tipa entiteta. U tom sluč aju kardinalitet takvog poveznika
određujemo uopštenjem postupka za određivanje kardinaliteta tipa poveznika reda n=2. Postoje nač elno
dva postupka za određivanje kardinaliteta, a njihova primena mož e dovesti do toga da različ itim
intenzijama odgovara ista ekstenzija modela. Zbog kasnijih proširenja ER modela, nova koncepcija poznata
pod imenom GERUND predstavlja č esto bolje rešenje za uspostavljanje ovakvih vrsta zavisnosti.

Slabi tip entiteta –egzistencijalna zavisnost

Postoji nač in crtanja ERD u kojem se ne označ avaju donje, već samo gornje granice kardinaliteta. U
takvom sluč aju, problem zadavanja egzistencijalne zavisnosti (“Ne postoji radnik u organizaciji koji nije
raspoređen na neko radno mesto”) rešava se uvođenjem pojma slabog tipa entiteta i posebnim grafič kim
simbolom kojim takve tipove entiteta obelež avamo.

N 1
radnoMesto rasporedjen radnik
Slabi tip entiteta –identifikaciona zavisnost

Tip poveznika koji povezuje neki slabi tip entiteta jeste slabi tip poveznika. Ostale tipove entiteta i
poveznika (koji nisu slabi) nazivamo regularnim. Tip entiteta koji ne poseduje ključ takođe je slab, ali je u
ovom sluč aju zavisnost identifikaciona. Entiteti takvog skupa se ne identifikuju vrednošć u nekog
sopstvenog obelež ja, nego povezanošć u sa entitetima drugih skupova. Identifikaciona zavisnost automatski
povlač i egzistencijalnu, obrnuto ne važ i!

N 1
radnik rd radnik
dete

god grd
mbr god

prz ime imd


ime

radnik dete
mbr ime prz god mbr imd grd
88 Eva Pap 1960 88 Goran 1985
50 Ivo Ban 1960 88 Ivana 1980
01 Ana Ras 1971 01 Olga 1982
81 Ana Tot 1973 50 Ana 1982

Torke slabe relacije sadrž e vrednosti obelež ja MBR kao svoje komponente, tako da je I = {MBR, IMD}.
Pojave slabog, identifikaciono zavisnog tipa entiteta Dete određene su matič nim brojem radnika svog
roditelja i sopstvenim imenom.

ID

N 1
preduzece ps radnik
sektor

ID

so

odeljenje
radnik
Proš irenja ERM

Krajem sedamdesetih godina prošlog veka došlo je do potrebe za konceptima i postupcima koji nisu bili
deo prvobitnog ER modela podataka. Razlog za proširivanje ER modela podataka: već a moć izraž avanja
semantike. Uvedena su č etiri nova koncepta:
• podklasa
• superklasa
• gerund
• kategorija

i pet novih postupaka (apstrakcija):


• specijalizacija
• generalizacija
• kategorizacija
• agregacija
• asocijacija

Za sve ove pojmove tesno je vezan mehanizam nasleđivanja (osobina)

Podklasa i superklasa

Tipom entiteta se u ER modelu podataka predstavlja skup slič nih realnih entiteta. Postoje i pravi
podskupovi entiteta sa specifič nim osobinama ili ulogama – nameć e se potreba njihovog eksplicitnog
predstavljanja u modelu realnog sistema. To se u ER modelu podataka radi na sledeć i nač in:
• zajednič ke osobine svih entiteta grupišemo u superklasu;
• specifič na obelež ja, shodno različ itim ulogama entiteta, grupišemo u podklase. Takva
obelež ja su za ostale entitete, koji ne pripadaju datoj podklasi, neprimerena svojstva.

Relacija koja povezuje superklasu i podklase naziva se IS_A hijerarhija.

Nasleđ ivanje osobina

Podklasa nasleđuje sve osobine (sva obelež ja) svoje superklase, i ne mož e se posmatrati izdvojeno, bez nje.
Mehanizam nasleđivanja je posredan: realizuje se putem iste vrednosti ključ a pojave superklase i pojave
podklase (u realnom softveru ya upravljanje bazama podataka –poveznici kardinaliteta 1:1)
Predstavljanje IS_A hijerarhije

ime
mbr prezime

radnik

zanimanje

IS_A

daktilograf programer projektant

klasa progjez spec

Ekvivalentni ključ evi

IS_A hijerarhija se uvodi kada pravi podskupovi skupova entiteta imaju posebne uloge u realnom sistemu.
Ali, šta ako svi entiteti posmatranog skupa imaju više uloga? U tom sluč aju uvodimo pojam ekvivalentnog
ključ a. Svaki ključ nosi informaciju o posebnoj ulozi svih entiteta posmatranog skupa.
• Primer: zaposleni u preduzeć u imaju dve uloge –ulogu radnika i socijalnog osiguranika. U
tom sluč aju, da bi se naglasile te dve uloge, u tip entiteta RADNIK uvodimo dva ključ a: MBR
i IDSO.

Postupci za definisanje IS_A hijerarhija

Specijalizacija: kreć emo od tipa entiteta, buduć e superklase, iz kojeg se, saglasno klasifikacionom
obelež ju, izdvajaju podklase sa specifič nim obelež jima. Isti polazni tip se mož e podvrgnuti
specijalizacijama na osnovu više klasifikacionih obelež ja. Svaka podklasa mož e biti superklasa za novu
podklasu.

Generalizacija: suprotno specijalizaciji –od različ itih tipova entiteta, zanemarivanjem razlika i
identifikacijom zajednič kih osobina gradi se zajednič ka superklasa. Polazni tipovi entiteta postaju podklase,
i oni zadrž avaju samo specifič na obelež ja.
Kardinalitet IS_A hijerarhije

Kardinalnost preslikavanja sa skupa pojava podklasa na skup pojava superklase je uvek 1:1 –svakoj pojavi
bilo koje podklase odgovara jedna i samo jedna pojava superklase. Zato se ne navodi. Obrnuto,
preslikavanje mož e biti totalno ili parcijalno. Ako svakoj pojavi superklase odgovara bar jedna pojava neke
od podklasa, IS_A hijerarhija je totalna, minimalni kardinalitet preslikavanja je jedan. Ako pak bar jednoj
pojavi superklase ne odgovara ni jedna pojava bilo koje podklase, IS_A je parcijalna; minimalni
kardinalitet je tada nula. Disjunktnost ekstenzije govori o broju različ itih podklasa koje odgovaraju jednoj
pojavi superklase. Prema tom kriterijumu, IS_A mož e da bude:
a) DISJUNKTNA –maksimalni kardinalitet je jedan;
b) PRESEČ NA –maksimalni kardinalitet je više (N).

stanovnik

(1,1)
status

IS_A

zaposlen nezaposlen penzioner

(0,N)
status_n

IS_A

dete ucenik student naBerziRada


Kategorija i kategorizacija

Postoji potreba za modelima gde podklasa objedinjuje pojave potpuno razli č itih tipova entiteta. Tada je
podklasa kategorija.

stanovnik preduzece

(0,1) (0,1)

je

(0,1)

vlasnik

(1,1)

poseduje

(0,N)

vozilo

Gerund

Gerund (glagolska imenica) u ERD dobijamo transformacijom tipa poveznika. Uvodi se radi poveć anja
bogatstva semantike modela. Uvođenjem gerunda rešavamo problem direktnog povezivanja dva tipa
poveznika. Koristi se za modeliranje situacija kod kojih su (ne nuž no sve) pojave jednog tipa poveznika
povezane sa pojavama nekog drugog tipa poveznika. Tada se povezani tipovi poveznika transformišu u
gerunde. Moguć e je primeniti gerund i kada treba povezati neki tip poveznika sa nekim tipom entiteta, a
direktno povezivanje je neadekvatno.
Primer modeliranja pre pojave gerunda

osposobljen

radnik proizvodi masina

deo mozeProizvesti

Problem?

radnik masina deo


Jovan M1 D1
Miroslav M2 D2
Goran M3 D3
Miljana M4

osposobljen mozeProizvesti
Jovan M1 M1 D1
Jovan M2 M1 D2
Miroslav M1 M2 D2
Goran M3 M3 D3
M4 D3

proizvodi
Miljana M4 D1
... ... ...

Ne uzimaju se u obzir ogranič enja iz realnog sistema!

U primeru: radnik Miljana ne mož e na mašini M4 da proizvodi deo D1, jer se na mač ini M4 mogu
proizvesti samo delovi D3!?
Primena gerunda

radnik osposobljen masina

proizvodi mozeProizvesti

deo

radnik masina deo


Jovan M1 D1
Miroslav M2 D2
Goran M3 D3
Miljana M4

osposobljen mozeProizvesti
Jovan M1 M1 D1
Jovan M2 M1 D2
Miroslav M1 M2 D2
Goran M3 M3 D3
M4 D3

proizvodi
Jovan M1 D1
Jovan M2 D2
Miroslav M1 D2
... ... ...

You might also like