590 likes | 1.46k Views
Model ovanje podataka ER dijagrami. Baze podataka. Model ovanje podataka. Modelovanjem se realni svet svodi na određeni apstraktan skup podataka koji ga opisuju Elementi modela su apstrakcija realnosti Važno je Uočiti granice informacionog sistema
E N D
Modelovanje podataka ER dijagrami Bazepodataka
Modelovanje podataka • Modelovanjem se realni svet svodi na određeni apstraktan skup podataka koji ga opisuju • Elementi modela su apstrakcija realnosti • Važno je • Uočiti granice informacionog sistema • Izdvojiti bitne objekte za informacioni sistem
Model podataka • Osnovne komponente modela podataka: • Struktura podataka – statički opis stanja realnog sveta • Operacije – izražavaju dinamiku iz realnog sveta • Ograničenja(constraints) – posledica su ograničenja iz realnog sveta
ER model • Entity-Relationship (ER)model ili model objekti-veze (MOV) • Detaljan logički prikaz entiteta, njihovih atributa i međusobnih veza • Formiran kao osnova za projektovanje IS, sagledavanje skupa podataka, realizovanje pristupa i manipulacije na skupu podataka • ER dijagram sadrži tri osnovna tipa komponenti • Entitete (objekte) • Veze • Atribute
ER model – osnovni pojmovi • Entitet • Osoba, mesto, objekat, događaj ili koncept u korisničkom okruženju o kojima želimo da beležimo i čuvamo podatke • Pravougaonici u ER dijagramima • Tip entiteta • Kolekcija entiteta koji imaju zajedničke osobine • Atribut • Imenovana osobina ili karakteristika koja je od značaja za informacioni sistem • Ovali (elipse) u ER dijagramima
Osnovni elementi ER dijagrama atribut entitet slabi entitet poveznik (veza) gerund (glagolska imenica)
Entitet (objekat) • Opšti pojam (objekat, proces, pojava) koji možemo jednoznačno odrediti, a o kome u bazi podataka čuvamo podatke • Naziv entiteta zajedno sa svojim atributima čini tip entiteta unutar koga može postojati više instanci (pojava) entiteta • U modelu su predstavljeniimenicama
Entitet (objekat) • grafički prikaz - pravougaonik unutar koga je upisan naziv tipa entiteta • Primer: Automobil Kuća Osoba Projekat
Atribut • Karakteristika (svojstvo) koje bliže opisuje entitet • Može dobiti vrednost iz određenog skupa vrednosti koji predstavlja domenatributa (tip vrednostiatributa) • Atribut ili skup atributa koji jednoznačno određuje svaku pojavu tipa entiteta se naziva primarni ključ tipa entiteta
Atribut • Grafički prikaz - elipsa unutar koje je upisan naziv atributa • Ključni atibuti se podvlače Naziv Veličina Ime Cena JMBG
Poveznik (veza) • Odnos ili veza između pojava jednog ili više tipova entiteta koji je od značaja za informacioni sistem • Veza kazuje da se pojavio događaj ili da postoji prirodna veza između tipova entiteta • Definicija treba da objasni prirodu veze i zašto je važna
Poveznik(veza) • Tip veze - skup veza iste vrste • Veze se uvek označavaju glagolima • Grafičkise prikazuju rombom unutar koga piše naziv tipa veze • Stepen veze - broj entiteta koje posmatrana veza povezuje • binarna, ternarna, itd. • refleksivna (rekurzivna)- kada jedan entitet u vezi ima dve različite uloge
Stepen veze • binarna veza: • ternarna veza: • refleksivna (rekurzivna) veza:
Paralelna veza • Među entitetima može postojati paralelna veza • Ona može biti dvostruka, trostruka, itd.
Ključ (jedinstveni identifikator) • Svaki tip entiteta mora imati neki atribut ili skup atributa na osnovu koga razlikujemo svaku pojedinačnu pojavu tog tipa entiteta • Definicija ključa • Atribut (iliskup atributa) koji jedinstveno identifikuju svaku pojedinačnu pojavu tipa entiteta • Pravila za izbor ključa • Odabrati atribut koji neće menjati svoju vrednost • Odabrati atribut koji nikada neće imati null vrednost
Kardinalitet veze • Broj pojava entiteta B koji mogu biti povezani sa svakom pojavom entiteta A • Kardinalitet veze - opisuje ograničenja preslikavanja pojedinačnih entiteta koji učestvuju u posmatranoj vezi • 1:1, 1:N, N:M • moguće je da u nekoj vezi pojedine instance nekog entiteta ne učestvuju (1:0, 0:N)
Kardinalitet • Minimalni kardinalitet • Minimalni broj pojava entiteta B koji mogu biti povezani sa svakom pojavom entiteta A • Maksimalnikardinalitet • Maksimalni broj pojava pojava entiteta B koji mogu biti povezani sa svakom pojavom entiteta A • Oznaka: (min, max)
Primeri • Kardinalitet tipa 1:1 (1,1) (1,1) Radnik je Osiguranik
Primeri • Kardinalitet tipa 1:1 (1,1) (0,1) Radnik je Osiguranik
Primeri • Kardinalitet tipa 1:1 (0,1) (0,1) Radnik je Osiguranik
Primeri • Kardinalitet tipa 1:N (1,1) (1,N) Radnik Raspoređen Radno mesto
Primeri • Kardinalitet tipa 1:N (1,1) (0,N) Radnik Raspoređen Radno mesto
Primeri Kardinalitet tipa 1:N (0,1) (1,N) Radnik Raspoređen Radno mesto
Primeri • Kardinalitet tipa 1:N (0,1) (0,N) Radnik Raspoređen Radno mesto
Primeri • Kardinalitet tipa M:N (1,M) (1,N) Radnik Radi Projekat
Primeri • Kardinalitet tipa M:N (0,M) (1,N) Radnik Radi Projekat
Primeri • Kardinalitet tipa M:N (0,M) (0,N) Radnik Radi Projekat
Primeri • Rekurzivnaveza rukovodi (0,N) (0,1) Radnik rukovodi sluzi
Primeri • Rekurzivna veza Je deo (0,N) (0,M) Proizvod Sastavnica Sastoji se od
Primeri • Veza reda većeg od dva Izvodjenje_ nastave (0,N) Student Nastavnik (0,N) (1,N) Predmet
Slabi entiteti • Slabi entiteti nemaju atribut koji bi mogao biti sopstveni ključ. • Slabi entiteti ne mogu da egzistiraju bez identifikujuće relacije ka drugom entitetu. • Parcijalni ključ je deo ključa koji dolazi iz slabog entiteta. Ostatak ključa potiče od drugog entiteta u relaciji.
Primeri • Slabi tip entiteta • Tip entiteta dete je identifikaciono zavistan ID N 1 Roditelj R_D Dete
Apstrakcija podataka • Specijalizacija • Proces kreiranja nekoliko entiteta (specijaliziranih podklasa) iz jednog entiteta • Generalizacija • Proces kreiranja jednog opšteg entiteta (generalnesuperklase) iz nekoliko srodnih entiteta • Uglavnom govorimo o specijalizaciji, ali najveći broj informacija nastaje generalizacijom.
Apstrakcija podatakaGeneralizacija • Generalizacija je apstrakcija u kojoj se skup sličnih tipova objekata predstavlja opštijim generičkim tipom (nadtipom). • Pod sličnim tipovima objekata ovde se mogu tretirati tipovi objekata koji imaju jedan broj istih (zajedničkih) atributa, tipova veza sa drugim objektima i operacija. • Generalizacija - primer • Studenti, Nastavnici, Političari, Pevači su OSOBE
Primeri • Generalizacija (IS_A hijerarhija) Vozilo IS_A Autobus Kamion Limuzina
Primeri • Generalizacija (IS_A hijerarhija) Stanovnik IS_A Zaposlen Nezaposlen Penzioner
Kardinaliteti IS_A hijerarhije • Preslikavanje može biti: • Totalno (ako svakoj pojavi nadklase odgovara bar jedna pojava podklase) • Minimalni kardinalitet je jedan • Parcijalno (ako bar jednoj pojavi nadklase ne odgovara 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 jedan • Presečno (ako bar jednoj pojavi nadklase odgovaraju pojave iz više od jedne podklase) • Maximalni kardinalitet je N
Primeri • Kardinaliteti IS_A hijerarhije • totalno • disjunktno Stanovnik (1,1) IS_A (1,1) (1,1) (1,1) Zaposlen Nezaposlen Penzioner
Primeri • Kardinaliteti IS_A hijerarhije • parcijalno • presečno Nezaposlen (0,N) IS_A Dete Učenik Student Invalid
Gerund • Pretvara tip poveznika u tip entiteta • Kada treba povezati dva tipa poveznika (tada oni postaju gerund) • Kada treba povezati tip poveznika sa tipom entiteta (tada tip poveznika postaje gerund)
Gerund • Gerund (glagolska imenica) X XY Y XYVW V VW W
Primeri • Gerund (glagolska imenica) Radnik osposobljen Mašina može_ proizvesti proizvodi Potrebna nam je veza proizvodi Deo
Heuristika • Obuhvata metode i tehnike rešavanja problema, učenja i otkrivanja znanja koje su bazirane na iskustvu. • Obuhvata korišćenje raznih uopštenih pravila, intuicije, ‘informisanog’ nagađanjaizdravog razuma. • Heuristički metodi mogu da ubrzaju proces nalaženja dovoljno dobrog rešenja.
Heuristička uputstva • Imenice ukazuju na potrebu uvođenja tipova entiteta. • Glagolski oblici ukazuju na potrebu uvođenja tipova poveznika ili gerunda. • Fraze oblika “bar jedan”, “najmanje jedan”, “više” i slične, ukazuju na kardinalitete tipova poveznika ili gerunda. • Postojanje različitih uloga eniteta jednog skupa u vezama sa entitetima drugih skupova, ukazuje na potrebu uvođenje više tipova poveznika između odgovarajućih tipova entiteta.
Heuristička uputstva • 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 navedu. • Vremensko prethođenje entiteta jednog skupa u odnosu na entitete nekog drugog skupa, ukazuje na egzistencijalnu zavisnost entiteta drugog skupa od entiteta prvog skupa i potrebu uvođenja minimalnog kardinaliteta.
Heuristička uputstva • Potreba povezivanja tri ili više tipova entiteta, gde u vezi mogu učestvovati samo entiteti koji su već u vezi sa entitetima jednog (ili više) drugih skupova, ukazuje na neophodnost korišćenja gerunda, kao modela tih 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 hijerarhije.
Heuristička uputstva • Svako obeležje može pripadati samo jednom tipu entiteta ili samo jednom tipu poveznika. • Pojave tipa poveznika nasleđuju ključeve povezanih pojava tipova entiteta. • Pojave slabog tipa entiteta nasleđuju ključ pojave regularnog tipa entiteta. • Pojave podklase nasleđuju ključ i osobine superklase. • Tip entiteta ili tip poveznika trebadasadrži samo ona obeležja skupa entiteta ili skupa poveznikaizrealnogsveta, koja su bitna za realizaciju ciljeva postavljenih pred automatizovani informacioni sistem.
Primer 1. ime ids naziv prezime jmbg (0,1) (1,1) Radnik Rukovodi sektor
Primer 2. Naziv SifO naziv brStan idOpst (1,1) (1,N) Opstina pripada Okrug
Primer 3. Je supruga (0,1) (0,1) Osoba U braku Je muz