Osnovu IS čini dobro projektovana baza podataka jer ona predstavlja fundamentalne, stabilne, karakteristike sistema, objekte u sistemu, njihove atribute i njihove međusobne veze. Sistem se najopširnije definiše kao skup objekata (entiteta) i njihovih međusobnih veza, a objekti u sustemu mogu da budu neki fizički objekti, koncepti, događaji i drugo, sve što neko ko modeluje realni sistem proglasi za objekat. Kod definisanja sistema najvažnije je definisati granice sistema, odnosno skup objekata koji predstavlaju posmatrani sistem. Sve izvan granica sistema naziva se okolina sistema.
Dejstvo okoline opisuje se preko ulaza u sistem, a odgovarajući odziv sistema, odnosno dejstvo sistema na okolinu preko njegovih izlaza. Stanje sistema se definiše kao skup informacija o prošlosti i sadašnjosti sistema koji je potreban da bi se, pod dejstvom budućih poznatih ulaza, mogli odrediti budući izlazi. Stanje sistema opisuje fundamentalne karakteristike sistema u jednom trenutku vremena. Ono predstavlja skup njihovih međusobnih veza i skup vrednosti njihovih atributa u tom trenutku vremena. Pošto je IS model realnog sistema u kome deluje, postupak projektovanja IS se svodi na neku vrstu modelovanja realnog sistema. Intelektualni alati pomoću kojih se opisuje (modeluje) sistem kao skup objekata, njihovih atributa i njihovih međusobnih veza, se nazivaju modeli podataka. Model podataka je osnov za izgradnju SUBP.
Ako se podsetimo da je podatak nosilac informacije, a da je informacija protumačeni podatak, možemo reći da krajnju interpretaciju podataka iz baze podataka daje korisnik IS koristeći odgovarajuće programe ili upite.
Svaki model podataka treba da čine sledeće komponente:
Dinamičko pravilo integriteta se može predstaviti kao <Operacija, Ograničenje, Akcija>
Slika 1: Veza okoline sa realnim i informacionim sistemom
Osnovni problem u modelovanju realnih sistema je složenost sistema. U realnom sistemu postoje milioni objekata, njihovih složenih veza i njihovih atributa. Opšti metodološki postupak za savlađivanje složenosti u opisu sistema je apstrakcija.
Apstrakcija je kontrolisano i postepeno uključivanje detalja u opis sistema, odnosno „sakrivanje” detalja u opisivanju sistema.
U modelima podataka koriste se sledeće apstrakcije:
Modele podataka čine sledeći modeli:
O ovim modelima će detaljno, kasnije biti još reči.
Osnovni koncepti za modeliranje po metodologiji model objekti i veze su preuzeti iz opšte definicije sistema. Sistem se posmatra kao skup objekata, njihovih međusobnih veza i njihovih atributa.
0Slika 2: Primer MOV
Objekti imaju svoja svojstva koja se iskazuju preko atributa i veza prema drugim objektima.
Da objasnimo: predmet ima svoje atribute Naziv i BrojCas i veze Predaje sa Objektom Nastavnik i Slusa sa objektom Student. Pored toga veza Prijava ovog objekta i objekta Student apstrahovana je u agregaciju Prijava. Svaku vezu čine dva preslikavanja: vezu Slusa čine preslikavanja A:Student → Predmet i B:Predmet → Student. Kardinalnost ovih preslikavanja detaljnije opisuje vezu: jedan Student sluša najmanje 0, a najviše M (više) predmeta, a 1 Predmet sluša najmanje 0 a najviše M studenata.
Naravno, sada se samo upoznajemo u načelu sa ovom metodologijom, a detaljna razmatranja će doći u narednim nastavnim jedinicama.
U Relacionom modelu (RM) sistem se predstavlja preko skupa tabela (relacija).
Tabele predstavljaju prvenstveno tipove objekata, a zatim i neke veze u modelu. Kolone predstavljaju atribute objekata. Vrste predstavljaju pojavljivanje objekta, odnosno veza. Jedan ili više atributa jedinstveno identifikuju jednu vrstu tabele i taj atribut se naziva ključ relacije. U opisu strukture modela naziv tabele se piše ispred zagrade, atributi tabele u zagradi, a primarni ključ tabele se podvlači.
Slika 3: Interpretacija MOV u relacioni model
U objektnom modelu objekat se definiše kao entitet koji je sposoban da čuva svoja stanja i koji okolini stavlja na raspolaganje skup operacija preko kojih se tim stanjem pristupa.
Stanje objekta predstavlja se vrednostima svojih osobina: atributa objekata i njegovih veza sa drugim objektima u sistemu.
U modelu Objekti i Veze, u Relacionom Modelu i njihovim prethodnicima baza podataka je u osnovi statički koncept koji predstavlja stanje celokupnog sistema u jednom trenutku vremena.
U objektnom modelu stanje je karakteristika pojedinih objekata. Stanje se „učauruje” u objekte koji drugim objektima u sistemu i okolini stavlja na raspolaganje tzv. „interfejs”, odnosno podskup svojih operacija koja ta stanja menjaju i transformišu u odziv objekta.
Osnovni koncepti OM prikazuju se na već poznatom primeru sa prethodnih slika:
Slika 4: Primer klase u OM
Deo za specifikaciju naziva klase (Class Student, na primer), naziva se skup pojavljivanja objekata klase koji će se čuvati u bazi (Extend studenti) i ključa preko koga se identifikuje jedno pojavljivanje u posmatranom skupu pojavljivanja (Key BrojInd).
U ovom delu šematskog prikaza klase definiše se i nadtip date klase, ako postoji.
Specifikaciju atributa čine ključna reč attribute, tip atributa (Short, String, Enum, Date...) i naziv atributa (BrojInd, Ime...). Veze se specifikuju preko preslikavanja koja ih čine.
Operacije se specifikuju preko tipa rezultata koje daju i naziva operacije (na primer Boolean izostavljen) i argumenata koji mogu biti ulazni (in), izlazni (out) ili ulazno- izlazni (inout) i za koje se zadaje tip i naziv (in short ŠifPred). Pored toga, uz operaciju se (preko ključne reči Raises) mogu zadati i „izuzeci” koji se okidaju kada u izvršenju operacije dođe do neke greške.
Model objekti-veze je semantički bogat model, prvenstveno namenjen za specifikovanje statičke strukture baze podataka i osnovnih (strukturnih) dinamičkih ograničenja. Za njega ne postoje komercijalno raspoloživi SUBP. Koristi se za projektovanje baze podataka.
Relacioni model je, zbog svoje strukture i jednostavnog jezika baze podataka (SQL), još uvek najpopularniji model podataka. Jednostavna struktura modela i jednostavne operacije nad njom pogodni su samo za sisteme sa jednostavnim objektima. Na relacionom modelu je zasnovan najveći broj komercijalnih sistema.
Objektni modeli podržavaju modelovanje bilo kakvih, pa i veoma složenih struktura. Apstrakcije koje podržava čine ga veoma pogodnim za modelovanja realnih sistema. Apstrakcije učaurenja, potpuno odvajaju specifikaciju od implementacije objekata i omogućavaju znatno jednostavnije održavanje softvera i ponovno korišćenje već izrađenih softverskih komponenti.