Entity-Relationship (ER) Dijagram Dijagrami sadrže …Entity-Relationship (ER) Dijagram ›...
Transcript of Entity-Relationship (ER) Dijagram Dijagrami sadrže …Entity-Relationship (ER) Dijagram ›...
Entity-Relationship (ER) Dijagram› Detaljan logički prikaz entiteta veza i › Detaljan logički prikaz entiteta, veza i
podataka radi organizacije poslovanja› MOV – model objekti-veze› MOV model objekti veze
Dijagrami sadrže tri osnovne konstrukcije› Entitete› Entitete› Veze› Atribute› Atribute
2
Modelovanjem se realni svet svodi na određeni broj podataka broj podataka › Podaci su apstrakcija realnosti› Važno je izdvojiti bitne objektej j j
Svaki model podataka treba da čine osnovne komponente:p› Struktura podataka – statički opis stanja realnog
sveta› Operacije – izražavaju dinamiku iz realnog sveta› Ograničenja (constraints) – ograničenja u modelu
k j l di ič j i l tkoja su posledica ograničenja iz realnog sveta
3
Entitet› Osoba, mesto, objekat, događaj ili koncept u j g j p
korisničkom okruženju o kojima želimo da beležimo i čuvamo podatke
› Predstavljeni su kao pravougaonik u ER dijagramimaj p g j g Tip entiteta
› Kolekcija entiteta koji dele neke zajedničke osobineAt ib t Atribut› Imenovana osobina ili karakteristika koja je od
značaja za poslovanje organizacijej p j g j› Predstavljeni su kao ovali u ER dijagramima
4
Opšti pojam (objekat, proces, pojava) koji možemo jednoznačno odrediti a o kojemu u možemo jednoznačno odrediti, a o kojemu u bazi podataka čuvamo podatke
Naziv entiteta zajedno sa svojim atributima čini Naziv entiteta zajedno sa svojim atributima čini tip entiteta unutar kojega može postojati više instanci (pojava) entitetainstanci (pojava) entiteta
Predstavljaju se imenicama
6
U grafičkom prikazu se prikazuje pravougaonikom unutar kojega je upisan naziv pravougaonikom unutar kojega je upisan naziv tipa entiteta
Primer:
Automobil
Osoba Projekat
Kuća
Osoba Projekat
7
Karakteristika (svojstvo) koje pobliže opisuje entitete e
Može poprimiti vrednost iz određenog skupa vrednosti koji predstavlja domen (tip vrednosti) j j ( )tog atributa
Atribut ili skup atributa koji jednoznačno d đ j k j tit t i klj čodređuje svaku pojavu entiteta se naziva ključ
tipa entiteta
8
Grafički se prikazuje elipsom unutar koje je upisan naziv atributaupisan naziv atributa› Ključni atibuti se podvlače
Naziv Veličina
Ime Cena
JMBG
9
Poveznik› Odnos ili veza između pojava jednog ili više › Odnos ili veza između pojava jednog ili više
tipova entiteta koji je od značaja za poslovanje› Veza kazuje da se pojavio događaj ili da postoji › Veza kazuje da se pojavio događaj ili da postoji
prirodna veze između tipa entiteta› Veze se uvek označavaju glagolima› Veze se uvek označavaju glagolima› Grafički se prikazuju rombom
10
Opisuje odnos među entitetima Stepen veze broj entiteta koje promatrana Stepen veze - broj entiteta koje promatrana
veza povezuje› binarna ternarna itd› binarna, ternarna, itd.› refleksivna - kada jedan entitet u vezi ima dve
različite ulogeg Naziv poveznika je predstavljen glagolom Definicija treba da objasni prirodu veze i zašto Definicija treba da objasni prirodu veze i zašto
je važna
11
Kardinalitet veze - opisuje ograničenja preslikavanja pojedinačnih entiteta koji p es a a ja pojed ač e e a oj učestvuju u posmatranoj vezi› 1:1, 1:N, N:1, N:M opšte govoreći moguće je i da u nekoj vezi pojedine
instance nekog entiteta ne učestvuju (1:0, 0:N) Tip veze - skup veza iste vrste Tip veze - skup veza iste vrste Grafički se prikazuje rombom unutar kojega
piše naziv tipa veze piše naziv tipa veze
13
Među entitetima može postojati paralelna vezaveza
Paralelna veza može biti dvostruka, trostr ka itdtrostruka, itd.
14
Ključevi i jedinstveni identifikatori› Svaki tip entiteta mora imati neki atribut ili skup p p
atributa koji pravi razliku između pojedinačnih pojava istog tipa entiteta
› Ključj Atribut (ili skup atributa) koji jedinstveno identifikuju
svaku pojedinačnu pojavu tipa entiteta› Pravila za izbor ključaj
1.Odabrati atribut koji neće menjati svoju vrednost2.Odabrati atribut koji nikada neće imati null vrednost
15
Broj pojava entiteta B koji mogu biti povezani sa svakom pojavom entiteta A
Minimalni kardinalitet› Minimalni broj pojava entiteta B koji mogu biti › Minimalni broj pojava entiteta B koji mogu biti
povezani sa svakom pojavom entiteta A
Maksimalni kardinalitet Maksimalni kardinalitet› Maksimalni kardinalitet pojava entiteta B koji
mogu biti povezani sa svakom pojavom entiteta AA
16
Strukture sa kardinalitetima grupe M:N
(0 M) (0 N)Radnik ProjekatRadi
(0,M) (0,N)
Ivo (Ivo Lido) LidoIvo
Ana
E
(Ivo,Lido)
(Ivo,Faktura)
(A Skl dišt j )
LidoFaktura
SkladištenjeEva
Aca
(Ana,Skladištenje)
(Ana,Lido)
SkladištenjeNabavka
17
Strukture sa kardinalitetima grupe M:N
Radnik ProjekatRadi(0,M) (1,N)
Ivo Lido(Ivo,Lido)
Ana
Eva
FakturaSkladištenje
( , )
(Ivo,Faktura)
(Ana Skladištenje)Eva
Aca
SkladištenjeNabavka
(Ana,Skladištenje)
(Ana,Lido)
18
(Eva,Nabavka)
Strukture sa kardinalitetima grupe M:N (1 M) (1 N)
Radnik ProjekatRadi(1,M) (1,N)
Ivo
Ana
LidoFaktura
(Ivo,Lido)
(I o Fakt a)Ana
Eva
FakturaSkladištenje
(Ivo,Faktura)
(Ana,Skladištenje)
Aca Nabavka(Ana,Lido)
(Eva,Nabavka)
19
(Eva,Nabavka)
(Aco,Nabavka)
Strukture sa kardinalitetima grupe N:1(0 1) (0 N)
Radnik Radno mestoRaspoređen(0,1) (0,N)
Ivo Projektant(Ivo projektant)Ivo
Ana
E
ProjektantProgramerSek eta ica
(Ivo,projektant)
(Ana,projektant)
(E S k t i )Eva
Aca
SekretaricaDirektor
(Eva,Sekretarica)
20
Strukture sa kardinalitetima grupe N:1
Radnik Radno mestoRaspoređen(1,1) (0,N)
Ivo Projektant(Ivo projektant)Ivo
Ana
ProjektantProgramer
(Ivo,projektant)
(Ana,projektant)
Eva
Aca
SekretaricaDirektor
(Eva,Sekretarica)
(Aco,Projektant)
21
( , j )
Strukture sa kardinalitetima grupe N:1(0 1) (1 N)
Radnik Radno mestoRaspoređen(0,1) (1,N)
Ivo
Ana
ProjektantProgramer
(Ivo,projektant)
(Ana p ojektant)Ana
Eva
ProgramerSekretarica
(Ana,projektant)
(Eva,Sekretarica)
Aca
Pera
Direktor(Aco,Programer)
(Pera,Direktor)
22
Pera
Mira
(Pera,Direktor)
Strukture sa kardinalitetima grupe N:1(1 1) (1 N)
Radnik Radno mestoRaspoređen(1,1) (1,N)
Ivo
Ana
ProjektantProgramer
(Ivo,programer)
(Ana projektant)Ana
Eva
ProgramerSekretarica
(Ana,projektant)
(Eva,Sekretarica)
Aca
Pera
Direktor(Aco,Projektant)
(Pera,Direktor)
23Mira
( , )
(Mira,Direktor)
Strukture sa kardinalitetima grupe 1:1
Radnik Osiguranikje(0,1) (0,1)
Ivo Polisa1(Ivo Polisa2)Ivo
Ana
E
Polisa1Polisa2Polisa3
(Ivo,Polisa2)
(Ana,Polisa1)
(E P li 3)Eva
Aca
Polisa3 Polisa4
(Eva,Polisa3)
24
Strukture sa kardinalitetima grupe 1:1
Radnik Osiguranikje(1,1) (0,1)
Ivo Polisa1(Ivo Polisa2)Ivo
Ana
Polisa1Polisa2
(Ivo,Polisa2)
(Ana,Polisa1)
Eva Polisa3 Polisa4
(Eva,Polisa3)
25
Strukture sa kardinalitetima grupe 1:1
Radnik Osiguranikje(1,1) (1,1)
Ivo Polisa1(Ivo Polisa2)Ivo
Ana
E
Polisa1Polisa2Polisa3
(Ivo,Polisa2)
(Ana,Polisa1)
(E P li 3)Eva
Aco
Polisa3 Polisa4
(Eva,Polisa3)
(Aco,polisa4)
26
Rekurzivne vezerukovodi
Radnik rukovodi(0,1)
(0,N)
A
Radnik rukovodi
A (A E )
sluzi
Ana
Eva
Ana
Eva
(Ana,Eva)
(Ana,Aco)
Aco
Ivo
Aco
Ivo
(Eva,Ivo)
Ivo
27
Ivo
Rekurzivne vezeJe deo
Proizvod Sastavnica(0,M)
(0,N)
Proizvod Sastavnica
101 (101 M t )
Sastoji se od
101Y45
101
Y45
(101,Motor)
(101,Karoserija)
MotorKaroserija
Motor
Karoserija
(Motor,Klip)
(Y45, Motor) KaroserijaKlip
28
Karoserija
Klip
(Y45, Motor)
(Y45, Karoserija)
Tip poveznika reda većeg od dva
Student NastavnikIzvodjenje_nastave
(0,N) (0,N)nastave
(1,N)
Predmet
29
Slabi entiteti nemaju atribut koji bi mogao bitisopstveni ključ.
Slabi entiteti ne mogu da egzistiraju bez drugerelacije ka drugom entitetu.
Parcijalni ključ je deo ključa koji dolazi iz slabog Parcijalni ključ je deo ključa koji dolazi iz slabogentiteta. Ostatak ključa dolazi od drugogentitea u relaciji.j
Slabi entiteti uvek imaju totalno participiranje ine mogu da egzistiraju bez identifikujućerelacijerelacije.
30
Slabi tip entitetaTi tit t d t j id tifik i i t Tip entiteta dete je identifikaciono zavistan
Roditelj DeteR DN 1
ID
j _
31
Specijalizacija› Proces uzimanja entiteta i kreiranje nekoliko › Proces uzimanja entiteta i kreiranje nekoliko
specijaliziranih podklasa Generalizacija Generalizacija
› Proces uzimanja nekoliko srodnih entiteta i kreiranje generalne superklase
Uglavnom govorimo o specijalizaciji, ali najveći broj informacija se odnosi i na generalizaciju.
32
Generalizacija je apstrakcija u kojoj se skup sličnih tipova objekata pretstavlja opštijim generičkim tipom (nadtipom).
Pod sličnim tipovima objekata ovde se mogu i i i i j ji i j j j i itretirati tipovi objekata koji imaju jedan broj istih
(zajedničkih) atributa, tipova veza sa drugim objektima i operacijaobjektima i operacija.
Generalizacija› Studenti Nastavnici Političari Pevači su Osobe › Studenti, Nastavnici, Političari, Pevači su Osobe
33
Preslikavanje može biti:› Totalno (ako svakoj pojavi nadklase odgovara bar jedna
pojava podklase)pojava podklase) Minimalni kardinalitet je jedan
› Parcijalno (ako bar jednoj pojavi nadklase ne odgovara nijedna pojava podklase)nijedna pojava podklase) Minimalni kardinalitet je nula
Takođe može biti:› Disjunktno (ako je svakoj pojavi nadklase pridružena
pojava iz najviše jedne podklase) Maximalni kardinalitet je jedanj j
› Presečno (ako bar jednoj pojavi nadklase odgovaraju pojave iz više od jedne podklase) Maximalni kardinalitet je NMaximalni kardinalitet je N
36
Kardinaliteti IS_A hijerarhijeStanovnik
(1,1)
IS_A
( , )
(1,1)(1,1)(1,1)
Zaposlen PenzionerNezaposlen
37
Pretvara tip poveznika u tip entitetaK d t b ti d ti ik › Kada treba povezati dva tipa poveznika (tada oni postaju gerund)K d t b ti ti ik ti › Kada treba povezati tip poveznika sa tipom entiteta (tada tip poveznika postaje gerund)
39
Gerund (glagolska imenica)
Radnik MašinaOsposobljen
Proizvodi Može_Proizvodi _proizvesti
Deo
Potrebna nam je veza proizvodi
41
Imenice ukazuju na potrebu uvođenja tipova entiteta Glagolski oblici ukazuju na potrebu uvođenja tipova g j p j p
poveznika ili gerunda Fraze oblika “bar jedan”, “najmanje jedan”, “više” i
slične ukazuju na kardinalitete tipova poveznika ili slične, ukazuju na kardinalitete tipova poveznika ili gerunda
Postojanje različitih uloga eniteta jednog skupa u tit ti d ih k k j vezama sa entitetima drugih skupova, ukazuje na
potrebu uvođenje više tipova poveznika između odgovarajućih tipova entitetag j
Veze između entiteta jednog skupa ukazuju na potrebu uvođenja rekurzivnog tipa poveznika. Kod rekurzivnih veza je preporučljivo da se uloge entiteta eksplicitno veza je preporučljivo da se uloge entiteta eksplicitno navedu
43
Vremensko prethođenje entiteta jednog skupa u odnosu na entitete nekog drugog skupa, ukazuje
i t ij l i t tit t d k na egzistencijalnu zavisnost entiteta drugog skupa od entiteta prvog skupa i potrebu uvođenja minimalnog kardinaliteta
Potreba takvog selektivnog povezivanja entiteta tri ili više skupova, kod kojeg u vezi mogu učestvovati samo entiteti koji su već u nekakvoj drugoj vezi sa j j g jentitetima jednog (ili više) drugih skupova, ukazuje na neophodnost korišćenja gerunda, kao modela tih vezatih veza
Postojanje entiteta, jednog skupa, sa specifičnim osobinama ili sa specifičnim vezama sa entitetima drugih skupova ukazuje na potrebu uvođenja I SA drugih skupova, ukazuje na potrebu uvođenja I_SA hijerarhije
44
Svako obeležje može pripadati samo jednom tipu entiteta ili samo jednom tipu poveznika (tek u j p p (ekstenziji: pojave tipa poveznika nasleđuju ključeve povezanih pojava tipova entiteta, pojave slabog tipa entiteta nasleđuju ključ pojave regularnog tipa tipa entiteta nasleđuju ključ pojave regularnog tipa entiteta, pojave potklase nasleđuju ključ i osobine superklase)
Tip entiteta ili tip poveznika sadrži samo ona obeležja supa entiteta ili skupa poveznika, koja su bitna za realizaciju ciljeva postavljenih pred bitna za realizaciju ciljeva postavljenih pred automatizovani informacioni sistem
45