nedelja, 23. maj 2010

18.maj_NAČRTOVANJE PB


Pb se ponavadi oblikuje dvonivojsko.

2 pristopa:
-iz vrha navzdol:
n      primeren za večje baze
n      predstavlja uporabo tehnike Entiteta – Razmerje (E-R).



-od spodaj navzgor
n      Pristop od spodaj navzgor primeren za enostavne podatkovne baze z majhnim številom atributov.

Sprva zajame prav vse atribute. Nato z normalizacijo označimo potrebne atribute.

Normalizacija = identifikacija potrebnih atributov in njihovih
agregacij v normalizirane relacije na osnovi funkcionalnih
odvisnosti.


- od znotraj navzven
najprej določimo nekaj najpomembnejših atributov nato dodajamo novembe

- po delih
V praksi najbolj uporabna strategija!
razdelimo si področja – načrtovanje lahko poteka vzporedno
nekateri koncepti lahko nastopijo v večih sklopih zato se najprej nardi gobalno shemo

Shema pristopa po delih:
Glej prosojnice!

3 nivoji načrtovaja PB:
-Konceptualni / semantični
-Logični
-Fizična shema BP (Kako kreirat PB?)



Vizualni model à lažje nadzarovaje, kot če zgolj podatki na disku

Konceptualno načrtovanje:
-se ne ukvarjamo s tehnologijo
- zahteva sodelovanje uporabnikov
- potrebno dosti časa
Gre za prenos semantike v model


Umestitev konceptualnega načrtovanja:
-realni svet
-mentalni model
-konceptualni model
-stvari, ki so za razvoj programa pomembne

Največkrat se uporablja tehnika entiteta-razmerje včasih pa tudi razredni seznami.

Gradniki entitetnega modela:
-Entitetni tip
-Atribut
-Razmerje
-Enolični identifikator
Entiteni tip predstavlja množico objektov, ki so istega tipa.
Entitete so konkretni primeri.
Entiete imajo neke lastnosti ...
Entiete imajo različne vrednosti za te lastnosti.
Velja časovna spremenljivost
Grafična predstavitev: glej prosojnice!
Atributi so lastnosti npr. entitetna imena, prave entitetne lastnosti, ki jih določimo za potrebe poslovnih procesov....

Glede na kardinalnost atributov ločimo:
n      Totalne    (1,n), kjer je n >= 1
n      Parcialni atribut                       (0,n), kjer je n >= 1
n      Enovrednostni atribut   (m,1), kjer je m € {0,1}
n      Večvrednostni atribut   (m,n), kjer je m € {0,1} in n>1

n      Minimalna števnost 0 pomeni, da je atribut lahko brez vrednosti (ni obvezen).
n      Atribut pripada določenemu tipu: numerični, znakovni,…
n      Za večino tipov je potrebno  določiti tudi dolžino.



Razmerja med entitetami:
n      Predstavitev razmerja v modelu entiteta-razmerje je povezava.
n      Med opazovanim parom (v splošnem podmnožici) entitet je lahko več razmerij: OSEBA, KRAJ – stalno bivališče, začasno bivališče

Kardinalnost razmerja:
S koliko primerki entite na eni strani je povezan ta primer entite na drugi strani.
n      Kardinalnost (števnost) predstavlja število entitet entitetnega tipa, ki so v razmerju glede na pomen razmerja.
n      Vsaka entiteta ima svojo kardinalnost v razmerju – kardinalnost glede na vlogo. Entiteti OSEBA, POŠTA:
n      Ena (naključno izbrana) oseba ima stalno bivališče v enem kraju
n      V enem (naključno izbranem) kraju ima stalno bivališče več oseb


Minimalna/maksimalna kardinalnost...
Razmerja:
1 : 1
1 : mnogo
mnogo : mnogo

Ali je razmerje obvezno ali ne?
Uvedemo števnost 0.

Samo razmerje lahko ima atributiven značaj.
Npr. Entitetni tip ŠTUDENT + entiteni tip PREDMET

Enolični identifikator:
Vsak entitetni tip mora biti vsaj v nečem drugačen od drugega.
n      Imamo lahko več enoličnih identifikatorjev, vendar moramo enega izbrati – določiti
n      Izbrani – določeni enolični identifikator je podlaga za ključ v relacijskem modelu

Več vrst:
Umetni
Naravni

Močni entitetni tip
n      Enolični identifikator sestavljajo le atributi entitete (identifikacijski atributi)
n      {a1, … ak} je enolični identifikator entitete A, če ustreza naslednjim pogojem:
a)      a1, … ak so vsi totalni enovrednostni atributi, kar zagotavlja, da imajo vsi identifikacijski atributi definirano natanko eno vrednost (eno dimenzijo)
b)      T: V1 x …x Vk à ET je totalna ali parcialna enovrednostna funkcija, kar zagotavlja, da se vsak element kartezijskega produkta vrednostnih množic, ki so območja identifikacijskih atributov, preslika v največ eno entiteto tipa A
c)      Je minimalna podmnožica, ne obstaja prava podmnožica, za katero bi tudi veljal pogoj b)




Šibke entitete: uporabljajo atribute, ki jih dobijo od drugje.

n      Enolični identifikator ni sestavljen le iz lastnih atributov, temveč tudi iz razmerij oz. drugih entitet v razmerju oz. njenih identifikatorjev.
n      {a1, … ak} È IT1 È .. È ITn je enolični identifikator entitete A, če ustreza naslednjim pogojem:
a)      a1, … ak so vsi totalni enovrednostni atributi, I pa identifikatorji entitetnih tipov
b)      T: V1 x …x Vkx ET1 x .. X ETn à ET je totalna ali parcialna enovrednostna funkcija, kar zagotavlja, da se vsak element kartezijskega produkta vrednostnih množic, ki so območja identifikacijskih atributov, preslika v največ eno entiteto tipa A
c)      Je minimalna podmnožica, ne obstaja prava podmnožica, za katero bi tudi veljal pogoj b)

Generalizacija in specializacija:
Primer. Če želimo razlikovati med rednimi in izrednimi študenti.
Študijskimi programi UNI / VSŠ.

Če imajo entitetni tipi, ki imajo podobne lastnosti gre za generalizacijo.
Npr. asistent in predavatelj sta oba pedagoška delavca.

Razmerja:
Totalno in ekskluzivno (oseba: moški ali ženska)
Delno in prekrivno  (oseba: študent in/ali športnik)

n      Entitetni tip A s podtipoma B in C
n      B in C pokrivata A totalno in ekskluzivno, če velja: EB È EC = EA in EB Ç EC = {}
n      B in C pokrivata A totalno in prekrivno, če velja: EB È EC = EA in EB Ç EC {}
n      B in C pokrivata A delno in ekskluzivno, če velja: EB È EC Ì EA in EB Ç EC = {}
n      B in C pokrivata A delno in prekrivno, če velja: EB È EC Ì EA in EB Ç EC ≠ {}


Podpora konceptualnega načrtovanja:

Možni koraki:
Identificiramo entitene tipe
Identificiramo popvezave
Identificiramo  atribute
za atribute določimo domene
določimo ključ
preverimo, če lahko uporabimo elemente razširjenega diagrama (entitea-razmerje)
ali obstajajo odvečni elementi
preveri, če model zdrži transakcije !!!
preveri model z uporabnikom

Podroben opis korakov: glej prosojnice!

Domena je množica vrednosti, ki jih atribut lahko zavzame.

Npr: Starost -> (0...20)
EMSO -> number 13

Uporaba razširjenih elementov:
Specializacija
Generalizija

Agregacija
Kompozicija (del ne more obstajati brez celote)

Kdaj uporabimo te elemente?
-če bo bolj breljivo
-ponavadi zgolj povečajo kompleksnost

Odvečne povezave: povezave 1-1, jih zdržimo v en entitetni tip

Poveza je odvečna, ko je možno priti do iste informacije /podatka po drugih povezavah.

Logično načrtovanje:

Se odločimo v katerem SUPBju bomo bazo kreirali.
Vzadje je jezik, ki ga razume SUPB.
Velika večina CASE orodji omogoča, da iz konceptualnega modela generiramo logični model.
Prehod iz konceptualnega v  logični model: shema: glej prosojnice!


Šifra/ključ se vedno prenaša iz smeri ena proti mnogo !
Povezava ena proti mnogo. -> tuji kluči

Funkcionalne odvisnosti:
Odvisnosti med atributi
Iz enega atributa, katerega vrednost poznamo, lahko sklepamo na vrednost ostalih atributov.
S pomočjo funkcionalnih odvisnosti ugotovimo ključ.
Ključ funkcionalno določa vse ostale atribute.
Primer relacijske sheme:
Izpit (VpŠt, Priimek, Ime, ŠifraPredmeta, DatumIzpita, OcenaPisno, OcenaUstno)
Kašne so tu funkcionalne odvisnosti? Odg: VpŠt -> določa Ime in Priimek, skupaj z DatumomIzpita bo določala /verjetno/ tudi vse ostale atribute.

Vrste ključev:
Kandidati za ključ
Primarni ključ
Super ključ ( vse množice atributov, ki v sebi skrivajp ključ)
Tuji ključ

n      Kandidat za ključ je vsaka podmnožica atributov relacije, ki relacijo enolično določa.
n      Primarni ključ je tisti kandidat za ključ, ki ga izberemo za shranjevanje relacij v fizični podatkovni bazi.
n      Superključ je vsaka množica atributov, v kateri je vsebovan ključ à ključ je podmnožica superključa.
n      Tuji ključ je množica atributov, v okviru ene relacije, ki je enaka kandidatu za ključ neke druge ali iste relacije.


Primeri: glej prosojnice!


NORMALIZACJA (naslednjič)
Postopek s katerim ugotavljamo če smo relacije pravilno oblikovali.
Če ja:
Ni redundance podatke
Ne bo prišlo do težav pri brisanju, vnašanju podatkov v bazo
4 stopnje normalizacije

n      Kaj si bomo pogledali?
n      Namen normalizacije.
n      Uporaba normalizacije pri načrtovanju relacijske podatkovne baze.
n      Problemi zaradi redundance podatkov v osnovnih relacijah.
n      Postopek normalizacije.
n      Osnovne normalne oblike:
n      I. normalna oblika,
n      II. Normalna oblika,
n      III. Normalna oblika
n      IV. Poslovna normalna oblika


Primeri težav : glej prosojnice!



Ni komentarjev:

Objavite komentar

Tu lahko podate svoje mnenje.
Če ste zapis označili kot pomanjkljiv, povejte kaj bi dodali.