Professional Documents
Culture Documents
Advokatska Kancelarija SHL 1
Advokatska Kancelarija SHL 1
2. MODEL OBJEKTI-VEZE....................................................................................................................3
3. RELACIONI MODEL........................................................................................................................8
3.1 UVOD........................................................................................................................................8
3.2 PREVOĐENJE MODELA OBJEKTI-VEZE U RELACIONI MODEL.......................................................9
3.2.1 PRVI KORAK..................................................................................................................................9
3.2.2 DRUGI KORAK.............................................................................................................................10
4. Relaciona šema................................................................................................................................. 12
1
2
1. Analiza potreba
Advokatska kancelarija Snobić, Hapić i Lafinaš (SHL) zabilježila je nagli porast u
poslovanju tokom zadnje decenije i razmatra potrebu za automatizovanim sistemom
naplate, tj. pravljenjem računa za učinjene usluge kako bi ih naplatili od svojih
klijenata. Za svaki slučaj koji advokatska kancelarija zastupa pred sudom žele
evidentirati podatke čiji opis slijedi.
Za svakog advokata koji radi u firmi evidentira se 5-cifreni jedinstven broj radnika i
cijena koja mu se plača za jedan sat rada. Postoji mnogo slučajeva (u advokaturi se
bave „slučajevima“, npr. ako želimo tužiti prodavnicu koja nam je isporučila pokvaren
dvd uređaj, za advokatsku kancelariju to je „slučaj“). Na jednom slučaju mogu raditi i
drugi advokati iz kancelarije, npr na nekim privremenim poslovima za koje je stručan
radi određen broj sati, ili u slučaju da je odgovorni advokat spriječen.
Svaki slučaj povezan je za jednog klijenta, a jedan klijent može imati više
slučajeva. Svaki slučaj može ima samo jednog odgovornog advokata, jedan advokat
može biti odgovorni advokat za više slučajeva.
Za većinu klijenata, SHL čuva slijedeće podatke: prezime, ime, adresu, telefon.
Za neke klijente SHL radi besplatno „pro bono“.
Neki od advokata zaposlenih u SHL imaju status „partnera“. Ostali advokati imaju
supervizora koji nadzire njihov rad. Supervizor za te advokata je također jedan od
advokata iz iste kancelarije u statusu partnera. Baza podataka treba da evidentira i
ove releacije, kako bi se mogli praviti izvještaji kao npr: ispisati sve slučajeve u
kojima je odgovorni advokat nadziran od strane supervizora Advokat Nr1.
3
2. Model objekti-veze
2.1 Modeliranje podataka model objekti – veze (teoretske osnove)
4
slabi objekti. Između jakog i slabog objekta postoji i dentifikaciona i egzistencijalna
zavisnost.
Veze (Eng. Relationshipss) u najvažniji dio DOV, jer definišu načine na kojima
su objekti uzajamno povezani. Veze se imenuju i njihovi nazivi odslikavaju sematniku
povezanosti između objekata. Predstavljaju asocijacije između entiteta klasa. Broj
objekata u vezi definiše stepen (degree) veze.
5
Kardinalnost predstavlja odnos broja objekata koji se povezuju. Određivanje
kardinalnosti se uglavnom vrši proučavanjem veza i odnosa između posmatranih
objekata.
Tipovi kardinalnosti:
• Jedan prema jedan (1:1) – na primjer jedna uplata dobavljaču se vrši po
tačno jednoj fakturi dobavljača
• Jedan prema više (1:N) – na primjer jedna narudžbenica sadrži više stavki
narudžbenice
• Više prema više (N:M) – više dobavljača ima ugovore sa više špeditera.
Verzije ER modela:
– Information Engineering (IE) (James Martin, 1990)
– Integrated Definition for Information Modeling (IDEF1X)
– Unified Modeling Language (UML)
Softveri za modeliranje:
– Microsoft Visio
– ERwin
– DB Designer 4
– MySQL Workbench
Veza u kojoj jedan entitet učestvuje više puta u različitim ulogama naziva se
rekurzivna ili unarna veza. Pored osnovnog, postoji i prošireni model objekti veze,
koji omogućava detaljnije definisanje veza između objekata. Pored asocijativnih veza
koje oslikaju semantiku udruživanja objekata u sistemu, postoje i specifične veze
kojima se izražava hijerarhija i komponovanje objekata. Postoje dvije reprezentativne
vrste ovakvih veza:
– Specijalizacija/generalizacija
– Agregacija
6
2.2 Dijagram objekti-veze
ER Dijagram
Objekat KANCELARIJA
7
Objekat ADVOKAT
Objekat SLUČAJ
Objekat KLIJENT
8
3. Relacioni model
3.1 Uvod
Osnovni pojmovi relacionog modela koje je Codd preuzeo iz matematičke teorije skupova su:
Domen;
Relacija i
Atribut.
Relaciona tabela se još naziva i relaciona šema,a nju karakterišu sljedeća svojstva:
U relacionoj šemi može postojati samo jedan tip slogova,odnosno n-torki;
Svaki red,odnosno slog ili n-torka uključuje tačno određen broj pola podataka,tj.
atributa i svaki od njih je eksplicitno imenovan;
Relaciona šema ne sadrži dva jednaka naziva atributa,odnosno relacija ne sadrži
dvije jednake kolone;
Redosljed kolkona,odnosno atributa je nebitan;
Redosljed n-torki je nebitan i
Nove se tabele mogu stvarati povezivanjem preko vrijednosti polja podataka iz
istog domena iz dvije postojeće tabele.
9
3.2 Prevođenje modela objekti-veze u relacioni model
Objekat KANCELARIJA
Objekat ADVOKAT
Objekat SLUČAJ
10
Objekat KLIJENT
Veze 1:N prevodimo tako što primarni ključ iz tabele objekta na strani jedan dodajemo kao
atribut i strani ključ u tabelu objekta na strani N.
Veze M:N prevodimo tako što pravimo novu tabelu koja će imati strane ključeve iz obje
tabele i iz tabele objekta na strani M i iz tabele objekta na strani N. Takođe sama ova veza
može sadržavati svoje atribute.
11
Veza Advokat – Slučaj je M:N pa tabela izgleda ovako:
Ova tabela ima i dva nova atributa koja obilježavaju datume otvaranja i zatvaranja slučaja.
Dodajemo atribut šef koji ustvari predstavlja samog advokata koji može biti šef za više
advokata u kancelariji.
12
4. Relaciona šema
Objekat KANCELARIJA
Objekat ADVOKAT
Objekat SLUČAJ
Naziv atributa Tip podataka Obavezno Primarni Opis
polje ključ
Id INTEGER Da Da Primarni ključ
Broj slučaja VARCHAR(6) Da Ne
Ime klijenta VARCHAR(40) Da Ne
Adresa VARCHAR(50) Da Ne
Telefon VARCHAR(10) Da Ne
Osoba za kontakt VARCHAR(50) Da Ne
Datum otvaranja DATE Da Ne
slučaja
Datum zatvaranja DATE Da Ne
slučaja
Opis VARCHAR(200) Da Ne
Advokat VARCHAR(50) Da Ne
Sati za naplatu FLOAT(5,2) Da Ne
Klijent_id INTEGER Da Ne Strani ključ
13
Objekat KLIJENT
Veza ADVOKAT-SLUČAJ
14