Kako pametno načrtovati zbirko podatkov v 3 korakih
Konstruiranje zbirke podatkov je eden pomembnejših delov izgradnje aplikacije, če ne kar najpomembnejši. Tudi manjša sprememba v modelu podatkovne baze lahko prinese potrebo po večji modifikaciji višje ležečih slojev, zato je zelo pomembno, da se priprave le-tega lotimo z veliko mero previdnosti. Standarden proces oblikovanja zbirke podatkov izvedemo v več korakih.
1. korak: zajem osnovnih potreb naročnika in čiščenje podatkov
Načrtovanje zbirke podatkov se začne tako kot katerokoli drugo. Najprej je pomembno, da se zavedamo, kaj naročnik želi in kako bodo aplikacijo uporabljali končni uporabniki. Prepoznati moramo entitete in kako so le-te medsebojno povezane. Glede na zbrane informacije pripravimo osnovo za E-R diagram, ki bo v tem momentu izgledal kot med sabo povezani pravokotniki (entitete). Priporočljivo je, da že v tem koraku začnemo s popisovanjem lastnosti zbranih entitet. V kolikor odkrijemo, da je podmnožica lastnosti iste entitete neodvisna od ostalih, izvedemo normalizacijo entitete in s tem pridobimo več tesneje povezanih entitet.
2. korak: pregled zaporedja vnosa podatkov – ali lahko povezava manjka?
S tem ko pripravimo osnovo za E-R diagram, si nastavimo vse potrebno za izvedbo naslednjega koraka – pregled obveznosti podatkov in s tem zaporedje vnosa le-teh. Za vsako povezavo med entitetama se vprašamo, kako jo vnesti (istočasno, v določenem ali v nedoločenem vrstnem redu). Na primer: imamo entiteto Študent, o vsakem študentu pa držimo tudi več zapisov v entiteti Ocena. Na uporabniškem vmesniku pričakujemo, da bomo ob vnosu prve ocene lahko izbrali že prej vnesenega študenta. To pomeni, da moramo entiteto Študent napolniti, preden vnesemo prvo oceno. Prav tako moramo imeti v mislih, da ocena vedno pripada nekemu zapisu entitete Študent. Študent po drugi strani ne potrebuje nobene ocene, če je sveže vnesen ali ni prisostvoval nobenemu izpitu.
3. korak: pregled maksimalne števnosti – ali lahko obstaja več povezav?
Ko smo določili vrstni red vnosa entitet (in s tem tudi obveznost povezanih zapisov), se moramo vprašati po obratni omejitvi: ima en Študent lahko več kot eno oceno? Lahko ena ocena pripada več kot enemu študentu? Ta zgornja meja števnosti nam bo pri konstruiranju zbirke podatkov povedala, katera entiteta drži referenco na drugo entiteto. Ker je Študent lahko vezan na več zapisov v Oceni, bomo pri kreiranju logičnega modela v relacijo Ocena dodali atribut, ki nam bo povedal, za kateri zapis iz relacije Študent je ocena mišljena. V primeru Študent – Predmet, ko je razmerje N:M (en študent obiskuje več predmetov, en predmet pa ima vpisanih več študentov), rešimo zapis z umetno relacijo, ki nosi ključe obeh relacij in predstavlja povezavo med posameznimi elementi Študent – Predmet.
Dodatna priporočila 1
Pri načrtovanju zbirke podatkov je vedno dobro imeti v mislih, kakšen bo izgledal uporabniški vmesnik in kakšen bo UX celotne aplikacije. Poleg tega je vedno pametno biti pozoren na vse »skrite« potrebe (revizijska sled, pravice dostopa, varnost zbirke podatkov in seveda tudi zanesljivost podatkov). Vedno se splača premisliti, kako se bo zbirka uporabljala in vzdrževala ter kako se bodo podatki arhivirali (torej celoten življenjski cikel podatkov).
Članek je pripravil Andraž Žagar, univ. dipl. inž. računalništva in matematike, predavatelj na Višji strokovni šoli DOBA. Študentom Informatike predaja znanje s področja zbirke podatkov.
Dodatna priporočila 2
Če imate že veliko znanja s področja informatike in ga želite potrditi z diplomo ali pa to področje šele spoznavate, se odločite za študij. Višješolski študijski program Informatika, ki ga izvajajo na Dobi, je zasnovan tako, da v samo dveh letih pridobite oziroma nadgradite svoje znanje. Primeren je tako za tiste, ki želijo svoje znanje zgolj poglobiti in pridobiti diplomo kot za tiste, ki bi šele želeli vstopiti v IT svet.
Več informacij o študijskem programu Informatika lahko preberete na www.doba.si.
Prijavi napako v članku