Načrtovanje

Ta stopnja je sestavljena iz treh delov:

  1. konceptualne ali idejne zasnove,
  2. logične zasnove in
  3. fizične zasnove.

Za načrtovanje podatkovne baze običajno uporabljamo entitetno-relacijski model oziroma model E-R, ki običajno vsebuje tri vrste elementov: entitete, atribute in relacije. Model E-R običajno predstavimo z diagramom E-R, s katerim prikažemo, kako so entitete povezane z relacijami.

Entiteta (ang. Entity) je lahko oseba, kraj, dogodek ali predmet, ki je pomemben za dani sistem. Na primer, šolski sistem lahko vključuje učence oziroma dijake, učitelje, predmete, šolnine in druge postavke. Entitete so v diagramih E-R predstavljene s pravokotnikom in poimenovane z uporabo samostalnikov v ednini.

Šibka entiteta (ang. Weak entity) je odvisna od druge entitete. V diagramu E-R je predstavljena s pravokotnikom z dvojnim robom. Nima primarnega ključa in v diagramu brez starševske entitete nima pomena.

Entitetna množica (ang. Entity set) je množica primerkov neke entitete.

Atribut (ang. Attribute) je lastnost ali značilnost entitete, relacije ali drugega atributa. Entiteta ima lahko poljubno število atributov. Vsi atributi imajo neko vrednost. Nekateri diagrami E-R najvišje ravni (to so diagrami konceptualne ali idejne zasnove) zaradi enostavnosti ne prikazujejo atributov. V diagramih, ki atribute imajo, pa so atributi predstavljeni z ovalno obliko.

Atribut z več vrednostmi (ang. Multivalued attribute) je atribut, ki ima lahko več vrednosti in je predstavljen z ovalno obliko z dvojnim robom. Na primer entiteta Oseba ima lahko atribut E-pošta, ki ima lahko več vrednosti, saj ima lahko oseba več e-poštnih naslovov.

Izpeljani atribut (ang. Derived attribute) je atribut, katerega vrednost lahko izračunamo iz vrednosti drugih atributov in ga zato ne shranjujemo v podatkovni bazi. Predstavljen je z ovalno obliko s črtkanim robom. Primer izpeljanega atributa je Starost, ki jo lahko izračunamo iz datuma rojstva.


Relacija (ang. Relationship) opisuje, kako so entitete medsebojno povezane. Relacije so predstavljene z diamantno obliko in so poimenovane z uprabo glagolov. Ločimo več vrst relacij (ena-proti-ena, ena-proti-mnogo in mnogo-proti-mnogo), ki so lahko obvezne ali neobvezne.

Šibka relacija (ang. Weak relationship) je relacija med šibko entiteto in njeno starševsko entiteto. Šibko relacijo predstavimo z diamantno obliko z dvojnim robom.

Entiteta je lahko tudi v relaciji sama s seboj. Takšna entiteta se imenuje rekurzivna entiteta (ang. recursive entity). Oglejmo si entiteto Oseba. Če nas zanima shranjevanje podatkov o tem, kateri ljudje so bratje, bomo uporabili relacijo »je brat«. Števnost relacije je M:N.

Gradniki diagrama E-R

Konceptualna ali idejna zasnova

Prvi korak – imenujemo ga tudi konceptualna ali idejna zasnova – pri razvoju diagrama E-R je identifikacija vseh entitet v sistemu. V začetni fazi ni treba določiti atributov, vendar lahko to pomaga razjasniti zadeve, če nismo prepričani o nekaterih entitetah. Ko določimo vse entitete, moramo določiti njihove medsebojne relacije in jih modelirati glede na vrsto: ena-proti-mnogo, izbirno in tako naprej.

Ko je začetni diagram E-R dokončan oziroma narisan, ga pogosto pokažemo vodstvu organizacije oziroma stranki, za katero razvijamo podatkovno bazo. Diagrame E-R zlahka razumejo tudi ljudje, ki niso strokovnjaki, še posebej, če jih vodimo skozi postopek branja oziroma razumevanja diagrama E-R. To lahko pomaga pri prepoznavanju napak, ki so se morda prikradle v konceptualni model.

Razlog za modeliranje je, da je diagram modela veliko lažje razumeti kot besedilo z opisom modela. Zato je veliko bolj verjetno, da si bodo stranke ogledale diagram E-R, kar zmanjša možnosti, da bi napake spregledali in bi jih odkrili šele kasneje, ko jih bo morda veliko težje popraviti.

Namen idejne zasnove je zgraditi konceptualni model podatkovne baze na podlagi predhodno opredeljenih zahtev. Poudarek idejne zasnove je, da pravilno identificira in določi vse entitete ter njihove medseboje relacije – podrobnejša opredelitev posameznih entitet z njihovimi atributi sledi kasneje.