Professional Documents
Culture Documents
Knjiga Ispravak PAUS1
Knjiga Ispravak PAUS1
yu1
alempije@beotel.yu 2
alempije@beotel.yu 3
alempije@beotel.yu 4
SADR@AJ
Uvod.....................................................................9
Aktivnost 1. Funkcionalno modeliranje................19
Aktivnost 2. Informaciono modeliranje................2
Aktivnost !. A"likativno modeliranje.................1#
Aktivnost $. Im"lementacija.............................2%!
&rilo' 1. (eoretske "ostavke relacioni) modela. 2*!
&rilo' 2. Alati +a "rojektovanje informacioni)
sistema
i SU,& -.AS/ alati0..............................!11
2iteratura..........................................................!19
alempije@beotel.yu 5
alempije@beotel.yu 6
"Nesebi~na pomo} potencijalnom kvalitetu po~etnika da se
doka`e, vredi vi{e od svih mogu}ih li~nih uzleta".
prof. dr ladimir !. "olaja, dipl.ing.
alempije@beotel.yu 7
Uvod
U vreme eks"an+ije +a)teva +a 3to ra+novrsnijim "odacima sve je
"otre4nije i do4ijanje kvalitetni) informacija. 5vu "otre4u tre4a da
+adovolji ra+voj informacioni) sistema i od'ovaraju6i) sistema +a
u"ravljanje "odacima -SU,&0. 5ni 4i tre4alo da inte'ri3u teoretske
"ostavke ve+ane +a kori36enje metodolo'ije odozgo nadole #$op%
&o'n( sa im"lementacijom koja se i+vodi metodolo'ijom odozdo
nagore #!ottom%)p(.
7etodolo'ija odo+'o nadole se i+vodi sa stanovi3ta rukovode6e'
menad8menta "redu+e6a9 kori36enjem metode intervjua. :a taj
na;in se de<ni3u ciljevi9 "rocesi9 resursi i dr. 54rnutim "utem9
metodolo'ijama odo+do na'ore -anali+om dokumenata0 i+vodi se
'enerisanje 4a+a "odataka. =irinu u "ristu"u daje metodolo'ija
odo+'o nadole9 a "reci+nost metodolo'ija odo+do na'ore.
>a us"e3no i+vodenje aktivnosti ve+ani) +a ra+voj informacioni)
sistema "otre4no je na samom "o;etku raskrstiti sa +a4ludama9
de<nisati o'rani;enja i dati od'ovaraju6e "ret"ostavke.
:aj;e36e +a4lude su?
da neko dru'i mo8e o4aviti ovaj "osao9 "o "rinci"u @klju; u
ruke@A
da se naru;ivanjem "rojekta mo8e 4r8e +avr3iti "osaoA
da se "reslikavanjem "ostoje6i) a"likacija u novo
)ardversko i softversko okru8enje mo8e do6i do novo' sistema.
Bada se raskrsti sa +a4ludama9 na slede6em koraku javljaju se
ograni~enja koja9 "ak9 mo'u sa svoje strane us"oriti ra+voj
informacioni) sistema9 imaju6i u vidu?
ste"en or'ani+ovanosti sistema koji se anali+ira i koji +avisi
od ra+raCenosti standardni) dokumenta i "rocedura +a nji)ovu
alempije@beotel.yu 8
o4radu i distri4uiranjeA
o'rani;enja ve+ana +a korisnike9 koja su u ve+i sa
od4ojno36u "rema ideji uvoCenja novo' sistemaA
+nanje "rojektno' tima9 nji)ovu metodolo'iju rada i
iskustvo +a sli;ne sisteme koji mo'u 4iti od "resudno' +na;aja.
Imaju6i u vidu o'rani;enja9 tre4a is"uniti tri osnovne pretpostavke ?
&rva "ret"ostavka je ve+ana +a jedinstven sistem
ozna~avanja i "odra+umeva de<nisanje naj;e36e t+v. "aralelno'
sistema o+na;avanja. &aralelnim sistemom o+na;avanja se
de<ni3u? jedinstven identi<kacioni 4roj9 standardi+ovan na+iv i
od'ovaraju6i klasi<kacioni 4roj. Jedinstven identi<kacioni 4roj ili
ID/:( ,R5J je neimenovani redni 4roj -naj;e36e od 3est cifara0.
:a+iv je de<nisan "o standardu JUS A.A1.11% i ima ta;no
"ro"isanu strukturu. Blasi<kacioni 4roj de<ni3e 'ru"e &R/D7/(A
&5S25DA:JA i svako mesto ima od'ovaraju6e +na;enje -do "et
cifara0.
Dru'a "ret"ostavka odnosi se na jedinstvenost modela
procesa i podataka, 'de se "odra+umeva9 o4i;no9 "rimena
jedinstvene metodolo'ije ve+ane +a "rojektovanje informaciono'
sistema kori36enjem .AS/ alata -.om"uter Aidid SoftEare
/n'ineerin'0. Bori36enje metodolo'ije "rojektovanja
informaciono' sistema ID/F1 i ID/F1F9 tj. .AS/ alata ,&Ein i /rEin
"redmet je ra+matranja ove knji'e.
(re6a "ret"ostavka je ve+ana +a jedinstvenost sistema za
upravljanje bazama podataka #*)!+(. U ovoj knji+i je usvojen9
odnosno 4i6e ra+matran SU,& 7S A../SS.
&reva+ila8enjem +a4luda i o'rani;enja9 u+ "o3tovanje de<nisani)
"ret"ostavki9 mo'u6an je ra+voj informaciono' sistema koji 6e
omo'u6iti de<nisanje nove strate'ije voCenja "redu+e6a. (a strate'ija
o4e+4eCuje inte'raciju svi) informacioni) tokova u "redu+e6u9 a na
osnovu to'a i u"ravljanje "rocesima.
alempije@beotel.yu 9
Modeliranje kao osnova razvoja
informacionog sistema
Ra+vojem informaciono' sistema -IS0 tre4a de<nisati 3to o4jektivniju
sliku realno' sveta9 nje'ovi) 4iv3i) i sada3nji) stanja9 kao "odlo'u +a
"rocenu 4udu6e' "ona3anja i naravno9 "odlo'u +a dalji ra+voj i
"rimenu informati;ke te)nolo'ije.
>a o"is rada "oslovno' sistema veliki je "ro4lem to 3to ne mo'u da
se koriste "rirodni je+ici9 +4o' mno'i) je+i;ki) dvosmislenosti. S
dru'e strane9 "reci+an o"is "reko formalni) je+ika je nera+umljiv +a
ve6inu ljudi.
Sto'a je "otre4na te)nika koja 6e or'ani+ovati "rirodne je+ike na taj
na;in da elimini3e dvosmislenost i omo'u6i e<kasnu komunikaciju i
ra+umevanje. &oka+alo se da je "ostu"ak modeliranja jedna od
najefektivniji) te)nika +a ra+umevanje i jedno+na;nu komunikaciju
i+meCu "rojektanata i korisnika.
U "rocesu modeliranja9 elimini3u se detalji9 ;ime se umanjuje vidljiva
kom"leksnost sistema koji se "rou;ava. Gra<;ke "re+entacije
-u'lavnom "ravou'aonici i linije0 koriste se da 4i o4e+4edile da
ve6ina ljudi ra+mi3lja o "rocesu modeliranja kao o slikovitoj
"re+entaciji -jedna slika +amenjuje 1111 re;i0. &ored 'ra<;ko'
"rika+a9 "otre4no je dati i "reci+ne de<nicije "redmeta koji se
"ojavljuju u modelu9 kao i "ro"ratni tekst9 koji je kriti;an "rema
modelu koji ima svoju ulo'u9 kao sredstvo komunikacije.
5vakav "ristu" nametnuo je "otre4u +a a"strakcijom9 kojom se i+vodi
kontrolisano isklju;ivanje detalja9 tj. i+vla;e se +ajedni;ke
karakteristike u o"isivanju neko' sistema. (ako je na vi3im nivoima
a"strakcije sistem o"isan jasnije9 a na ni8im detaljnije.
S dru'e strane9 jo3 uvek u velikim <rmama "ostoje )ardverske
kon<'uracije 'de je korisni;ki softver ra+vijen9 o4i;no9 u je+iku tre6e
'eneracije -naj;e36e .5,5209 4e+ od'ovaraju6e "rate6e
dokumentacije9 mada "redu+e6a 8ele da "reCu na relativno jeftin i
alempije@beotel.yu 10
mo6an kom"juterski sistem9 o4i;no je to mre8a &.9 de<nisana "o
"rinci"ima klijentHserver ar)itekture.
S o4+irom na to9 modeliranje tre4a da?
4ude @je+ik@ +a komunikaciju i+meCu korisnika i analiti;ara i
omo'u6i "reci+nu i formali+ovanu @s"eci<kaciju +a)teva@.
(re4a9 dakle9 jo3 jednom "ose4no ista6i "ostu"ak modeliranja realno'
sistema9 koji +avisi od sposobnosti, znanja i iskustva projektnog tima,
jer se ne mo'u dati stro'a formalna "ravila modeliranja koja 4i vodila
do jedinstveno' modela slo8eno' realno' sistema9 4e+ o4+ira na to ko
vr3i modeliranje. 7o'u se dati samo o"3te metodolo3ke "re"oruke9
o"3ti metodolo3ki "ristu"i9 kao "omo6 u tom slo8enom "oslu.
alempije@beotel.yu 11
tandardi
kao !odr"ka modeliranj#
&ostu"ak ra+voja informacioni) sistema o"isan u ovoj knji+i ima +a
osnovu standarde ID/F1 i ID/F1F9 koji "odr8avaju modeliranje.
Istorijski 'ledano9 tokom %1Ii) i #1Ii) 'odina Dou'las (. Ross je ra+vio
te)niku modeliranja "o+natu kao SAD( -Structured AnalJsis K Desi'n
(ec)niLue0. &ri)vataju6i SAD( te)niku9 avijacija SAD ra+vila je SAD(
kao deo I.A7 -Inte'rated .om"uter Aided 7anufacturin'0 "ro'rama
tokom kasni) #1Ii)9 koji je do4ilo na+iv ID/F te)nika -$nte'ation
%&'inition0. .ilj I.A7 "ro'rama je 4io da se "o4olj3a "roi+vodna
"roduktivnost "rimenjivanjem kom"juterske te)nolo'ije. U;esnici u
i+'radnji I.A7 "ro'rama su uvideli sve "rednosti kori36enja ID/F
te)nike9 jer tekstualni o"is ne "redstavlja e<kasan na;in +a
dokumentovanje "rocesa i "odataka.
U ranim 91Iim9 ID/F Users Grou"9 u koo"eraciji sa :ational Institutes
for Standards and (ec)nolo'J -:IS(09 "redu+ela je odreCene "ostu"ke
+a stvaranje standarda ,&-./ +a funkcionalno modeliranje i ,&-.01
#e1tend(, kao te)niku +a informaciono modeliranje -semanti;ko
modeliranje "odataka09 "u4likuju6i i) 199!. 'odine -U.S. Government
standards documents0. 5vi standardi su "od "okroviteljstvom Institute
of /lectrical and /lectronics /n'ineers -I///09 a "ri)vatila i) je i
International 5r'ani+ation of Standards -IS50.
.ilj modeliranja je da se ra+viju te)nolo'ije koje 6e omo'u6iti lo'i;ku
i <+i;ku inte'raciju mre8a )ardverski i softverski veoma ra+li;iti)
kon<'uracija. (e)nika ID/F modeliranja je "ri)va6ena kao osnova +a
s"rovoCenje "ostu"ka rein8enjerin'a "oslovni) "rocesa.
Imaju6i u vidu sve ove ;injenice9 funkcionalno modeliranje ID/F1
omo'u6uje?
i+vr3enje funkcionalne dekom"o+icije i di+ajna na svim
nivoima9 +a sistem sastavljen od ljudi9 ma3ina9 materijala9
ra;unara i informacijaA
alempije@beotel.yu 12
stvaranje dokumentacije9 "aralelno sa rein8enjerin'om
"oslovni) "rocesaA
4olju komunikaciju i+meCu "rojektno' tima9 korisnika i
menad8eraA
diskusiju u "rojektnom timu da 4i se "osti'lo meCuso4no
ra+umevanjeA
u"ravljanje velikim i slo8enim "rojektimaA
o4e+4eCenje elemenata "otre4ni) +a informaciono
modeliranje -ID/F1F metodolo'ija0.
Softverska reali+acija ID/F1 standarda je ,&Ein -,ussines &rocess
EindoEs0 <rme 2o'icMorks -20 koji se koristi u ovoj knji+i.
Dru'i standard koji je ID/F Users Grou" de<nisala je ,&-.01 te)nika
+a informaciono modeliranje. ,nformaciono modeliranje #,&-.01(
"redstavlja a"straktno viCenje realno' sistema9 tj. to je
"ojednostavljeno "redstavljanje realno' sistema "reko sku"a
o4jekata -entiteta09 ve+a i+meCu o4jekata i atri4uta o4jekata.
Informaciono modeliranje je "ojam koji je de<nisan u okviru ID/F1F
metodolo'ije i de<ni3e od'ovaraju6i model "odataka.
>a"ravo9 ID/F1F je semanti;ki 4o'at modelar "odataka tre6e
'eneracije koji je reali+ovan u okviru softvera /REin -/ntitJ
Relations)i"s for EindoEs0 .AS/ alata -!0. /REin .AS/ alat
omo'u6uje 'enerisanje u neki od sistema +a u"ravljanje 4a+ama
"odataka -SU,&0. 7ora se na'lasiti "ojam generisanje, a ne
"ro'ramiranje9 jer /REin omo'u6uje da se direktno kreiraju ta4ele9
ve+e9 atri4uti i sva o'rani;enja koja su se nekada "ro'ramirala.
alempije@beotel.yu 13
(ost#!ak
razvoja informacionog sistema
Imaju6i u vidu "ostavke ve+ane +a ID/F1 i ID/F1F metodolo'iju9 kao i
"otre4e +a rein8enjerin'om "oslovni) "rocesa9 mo8e se re6i da se
ra+voj informaciono' sistema -RIS0 i+vodi kro+ ;etiri slede6e fa+e
-slika 10?
Aktivnost 1. Funkcionalno modeliranje9
Aktivnost 2. Informaciono modeliranje9
Aktivnost !. A"likativno modeliranje i
Aktivnost $. Im"lementacija.
US/D A(? AU(N5R? Alem"ije Deljovic DA(/?
R/D? &R5J/.(? 7odel 2
1#.1%.199#
11.1!.2111
:5(/S? 1 2 ! $ % # * 9 11
M5RBI:G
DRAF(
R/.577/:D/D
&U,2I.A(I5:
R/AD/R DA(/ .5:(/F(?
AI1
(5&
:5D/? (I(2/? :U7,/R? RA>D5J I:F5R7A.I5:5G SIS(/7A
A1
1
RA>D5J
I:F5R7A.I5:5G
SIS(/7A
1
FU:B.I5:A2:5
75D/2IRA:J/
FU:B.I5:A2:A
D/B57&5>I.IJA
D/FI:ISA:J/
>AN(/DA
B5RIS:IBA
(/N:IOBI
&R/DUS25DI
2
I:F5R7A.I5:5
75D/2IRA:J/
D/FI:ISA:J/
D/(A2J:IN
>AN(/DA
BR/IRA:J/ /R
DIJAGRA7A
BR/IRA:J/
A(RI,U(A
D/FI:ISA:J/
&5S25D:IN
&RADI2A
!
A&2IBA(ID:5
75D/2IRA:J/
D/FI:ISA:J/
FI>IOB5G
DI>AJ:A
G/:/RISA:J/
=/7/ ,A>/
&5DA(ABA
I>RADA
A&2IBA.IJ/
$
I7&2/7/:(A.IJA
UD5P/:J/
(/S(IRA:J/
5DR@ADA:J/
*lika 0. *tablo aktivnosti postupka razvoja informacionog sistema
alempije@beotel.yu 14
S o4+irom na to da se sve ;etiri aktivnosti detaljno ra+matraju u
"ose4nim "o'lavljima9 ovde 6e 4iti dat samo kratak o"is.
&rva aktivnost "0. .unkcionalno modeliranje" tre4a da omo'u6i
"ostavljanje modela9 tj. de<nisanje studije koja konci"ira rein8enjerin'
"oslovni) "rocesa u 3irinu.
5va aktivnost se de<ni3e kro+ tri "odaktivnosti9 kao?
Aktivnost 1.1. Funkcionalna dekom"o+icija9
Aktivnost 1.2. De<nisanje +a)teva korisnika9
Aktivnost 1.!. (e)ni;ki "reduslovi.
U okviru "odaktivnosti "0.0. .unkcionalna dekompozicija" "ola+i se od
svesti o !otre)i razvoja informacionog sistema* i to "ove+ane9
"re sve'a9 sa dono3enjem strate'ijske odluke rukovode6e'
menad8menta o s"rovoCenju rein8enjerin'a "oslovni) "rocesa. Bao
re+ultat tre4a do4iti sta4lo "oslovni) "rocesa kako i) vidi vode6i
menad8ment.
&odaktivnost "0.2. &e3nisanje zahteva korisnika" tre4a da omo'u6i
da se anali+om dokumenata i s"rovoCenjem intervjua mo8e
identi+kovati okvir rein,enjeringa !oslovni- !rocesa. &otre4no
je "rona6i i do4ro osmotriti ne"ot"une -"rekinute9 is"rekidane09
ne"ers"ektivne "rocese koji 'u3e ostvarivanje "lanirani) -8eljeni)0
re+ultata. Blju; @le8i@ u od'ovoru na "itanje? @=ta tre4a "romenitiQ@.
Dru'im re;ima9 u ovoj fa+i se "rou;avaju i "rocenjuju "ostoje6i
"rocesi9 anali+iraju se re+ultati koje daje "roces sada i kakvi se
re+ultati mo'u o;ekivati u 4udu6nosti. Dakle9 snimkom trenutni)
"rocesa omo'u6uje da se uo;e uska 'rla -'de se nala+e0 i
"ro4lemati;ne ta;ke.
(akoCe9 u ovoj aktivnosti tre4a "redvideti i alternativne !rilaze.
Bada se de<ni3e "ro4lem9 timovi koji s"rovode rein8enjerin' isti;u
novi strate3ki "ravac +a reali+aciju "rocesa i "ridru8ena merila9 a
ujedno vr3e i "rocenu novi) "oslovni) alternativa. Dakle9 naro;ita
"a8nja se o4ra6a na to da ;lanovi tima tre4a da ra+umeju "roces9 tj .
da imaju ra+ja3njene od'ovore na "itanja 3ta se 8eli "osti6i9 +a3to je
"otre4an redi+ajn i kako tre4a da i+'leda "roces u 4udu6nosti.
Funkcionalno modeliranje +a)teva i od'ovaraju6e te-ni/ke
!red#slove koji se de<ni3u kro+ od'ovaraju6i )ardver i softver9
kadrovske "otre4e i dinamiku reali+acije9 3to tre4a de<nisati u okviru
"odaktivnosti "0.4. $ehni~ki preduslovi". Re+ultat ove fa+e rada je
@studija @ ili @idejni "rojekat@ kao dokument +a aktivnost @2.
,nformaciono modeliranje@.
alempije@beotel.yu 15
Aktivnost "2. ,nformaciono modeliranje" je klju;ni momenat 'de do
i+ra8aja dola+e s"oso4nost i +nanje visokostru;no' kadra i+ o4lasti
menad8menta i informatike. U ovoj fa+i "o8eljno je an'a8ovanje i
s"oljni) eks"erata.
5va aktivnost se de<ni3e kro+ slede6e ;etiri "odaktivnosti?
Aktivnost 2.1. De<nisanje detaljni) +a)teva9
Aktivnost 2.2. Breiranje /R modela9
Aktivnost 2.!. Breiranje atri4uta i
Aktivnost 2.$. De<nisanje "oslovni) "ravila.
U okviru aktivnosti "2.0. &e3nisanje detaljnih zahteva" de<ni3u se
"rocesi redi+ajniranja. (o +avisi od kriterijuma va8nosti "rocesa i njene
naru3enosti9 kao i od mo'u6nosti s"rovoCenja i+mena. U ovoj fa+i
tre4a utvrditi koja stara "ravila ostaju i koji se novi "rocesi "ojavljuju9
+atim i+vr3iti s"ajanje od'ovaraju6i) o"eracija ili eliminisati
ne"otre4ne i utvrditi lo'i;an redosled koraka u "rocesu. Bao re+ultat
ovo' rada tre4a da 4ude de<nisano detaljno sta4lo aktivnosti sa
od'ovaraju6im detaljnim dekom"o+icionim dija'ramima -"o ID/F1
metodolo'iji0 i veri<kacijom to"Imenad8menta "redu+e6a.
Aktivnost "2.2. 5reiranje -6 modela", kori36enjem ID/F1F
metodolo'ije9 "redstavlja kvalitetno novi skok9 jer tre4a da 4ude
kreacija "rojektanata informaciono' sistema. Do ovo' trenutka9
kori36enjem ID/F1 metodolo'ije9 o"isivana je dinamika rada9 3to je
"risutno kao iskustvo i tradicija u svakom "redu+e6u i 3to je
de<nisano kro+ aktivnost @1.Funkcionalno modeliranje@.
5va aktivnost otvara @crnu kutiju@9 koja je 4udu6im korisnicima uvek
4ila ne"o+nata9 jer nisu mo'li da "rate ra+mi3ljanja "rojektanata
informaciono' sistema. &rvi "ut korisnici u+imaju aktivno u;e36e i u
ovom delu i "rvi "ut "rojektanti informaciono' sistema crtaju ono 3to
"redstavlja nji)ovo iskustvo i sa+nanje o "oslovanju konkretno'
"redu+e6a i 3to su oni osmislili u svojoj 'lavi.
Bro+ identi<kaciju entiteta9 odnosno kro+ de<nisanje o4jekata od
interesa +a "osmatranje i de<nisanje ve+a de<ni3e se /R model9
"ostu"kom odozgo nadole, tj. intervjuom sa 4udu6im korisnicima.
Slede6a aktivnost "2.4. 5reiranje atributa" tre4a da da o"is oso4ina u
"ret)odno de<nisanim entitetima. 5so4ine entiteta se de<ni3u kro+
identi<kaciju atri4uta +a svaki entitet9 de<nisanje od'ovaraju6i)
klju;eva i s"rovoCenja "ostu"ka normali+acije. 5va aktivnost se i+vodi
"ostu"kom odozdo nagore, tj. anali+om dokumenata.
Aktivnost "2.7. &e3nisanje poslovnih pravila" "redstavlja sinte+u
alempije@beotel.yu 16
"ret)odne dve aktivnosti i tre4a da de<ni3e "oslovna o'rani;enja i
"ravila "ona3anja.
(re6a aktivnost? "4. 8plikativno modeliranje" "osmatra se sa
stanovi3ta i+a4rano' sistema +a u"ravljanje 4a+ama "odataka
-SU,&0.
5va aktivnost se "osmatra kro+ slede6e tri "odaktivnosti?
Aktivnost !.1. De<nisanje <+i;ko' di+ajna9
Aktivnost !.2. Generisanje 3eme 4a+e "odataka9
Aktivnost !.!. I+rada a"likacije.
Aktivnost "4.0. &e3nisanje 3zi~kog dizajna" ra+matra "ro4lematiku
ve+anu +a i+'radnju sistema +a u"ravljanje 4a+ama "odataka -SU,&0.
Aktivnost "4.2. 9enerisanje {eme baze podataka" de<ni3e se +a
i+a4ranu ciljnu "latformu9 'de se de<ni3u <+i;ke ta4ele9 kolone i
relacije.
Aktivno36u "4.4. ,zrada aplikacije" tre4a da se reali+uje korisni;ki
"o'led na "odatke9 tj. da se de<ni3u meniji9 forme9 u"iti i i+ve3taji.
I na kraju9 aktivnost "7. ,mplementacija" omo'u6uje i+voCenje
"romena ve+ani) +a na;in rukovoCenja i "rimene informacioni)
te)nolo'ija.
5va aktivnost se "osmatra kro+ slede6e tri "odaktivnosti?
Aktivnost $.1. UvoCenje9
Aktivnost $.2. (estiranje9
Aktivnost $.!. 5dr8avanje.
Aktivnost "7.0. )vo:enje" tre4a da da ocenu uraCene korisni;ke
a"likacije9 omo'u6i i+mene u toku uvoCenja9 i+radi u"utstva +a
korisnike i o4u;i same korisnike.
Aktivnost "7.2. $estiranje" tre4a da omo'u6i testiranje s"rovedeni)
aktivnosti u okviru "ostavljeno' SU,& 'de se ocenjuju "erformanse
to' sistema.
Aktivnost "7.4. ;dr`avanje" se i+vodi kad se "reCe u fa+u eks"loatacije
novo"ostavljeno' sistema. 5vde se drasti;no "oka+uju sve
manjkavosti i nere'ularnosti ve+ane +a s"rovedeni rein8enjerin'
"oslovni) "rocesa i de<ni3u od'ovaraju6e korektivne akcije.
5no 3to omo'u6uje Reksi4ilno i+voCenje svi) aktivnosti "rika+ani) na
slici 1.1. i 3to +aokru8uje ceo ovaj "osao je .AS/ alat9 kojim se
omo'u6uju automatsko re'istrovanje svi) i+mena i a8urno odr8avanje
alempije@beotel.yu 17
"rojektne dokumentacije.
alempije@beotel.yu 18
0ktivnost
1. '#nkcionalno
modeliranje
0ktivnost 1.1. '#nkcionalna
dekom!ozicija
0ktivnost 1.2. %e+nisanje
za-teva korisnika
0ktivnost 1.3. 1e-ni/ki
!red#slovi
alempije@beotel.yu 19
alempije@beotel.yu 20
Aktivnost "0. .unkcionalno modeliranje" omo'u6uje dekom"onovanje
"oslovni) funkcija i "laniranje "otre4ni) resursa +a reali+aciju
funkcija. Funkcionalno modeliranje je ve+ano +a kori36enje ID/F1
te)nike. ID/F1 je te)nika modeliranja aktivnosti 4a+irani) na
kom4inaciji 'ra<ke i teksta9 koji su "redstavljeni na or'ani+ovan i
sistemati;an na;in da 4i se "ove6ala ra+umljivost9 koja "odr8ava
anali+u9 o4e+4eCuje lo'iku +a "otencijalne i+mene9 s"eci<cira +a)teve9
ili9 re;eno na dru'i na;in9 "odr8ava anali+u sistema "o nivoima i
inte'ri3e aktivnosti.
ID/F1 funkcionalni model se sastoji od )ijerar)ijsko' ni+a dija'rama
koji "oste"eno "rika+uju sve vi3e detalja o funkcijama i nji)ovoj meC
uve+i -interface0 sa ostalim delovima sistema. ID/F1 modeliranje
omo'u6uje anali+u oso4ina odreCeno' "oslovno' "rocesa radi
nje'ovo' maksimalno' una"reCenja.
Ra+lo+i koji su motivisali nastanak ID/F1 funkcionalno' modeliranja
su?
&rvo9 slu8i kao dokumentacija i u"utstvo +a o"is kom"leksni)
"oslovni) "rocesa. &o+nata je ;injenica da 3to je dokumentacija ve6a
I to se manje ;ita. (a;nije9 dokument od jedne ili dve strane sa
'ra<;kim "rika+om 4i6e najverovatnije "re'ledan. Dokument od !1
strana ima sve i+'lede da mesecima ne 4ude "ro;itan.
Dru'o9 omo'u6ava 4r+e or'ani+acione "romene9 jer model "rocesa
dokumentuje va8ne aktivnosti i omo'u6ava uvid u kriti;ne aktivnosti
koje tre4a i+vesti sa od'ovaraju6im resusima9 3to je 4itan element u
odr8avanju rein8enjerin'om de<nisani) "oslovni) "rocesa.
(re6e9 3to je i najva8nije9 koristi kao "rototi"ski "ristu" funkcionalnom
modeliranju 'de se na 4r+ i jednostavan na;in "roveravaju
alternativne ideje. 7no'o je jednostavnije i jeftinije nacrtati model i
"roveriti 'a na @"a"iru@9 ne'o i+vr3iti reor'ani+aciju sektora. (o je
veoma 4itna oso4ina9 jer 4r+i ra+voj informacioni) te)nolo'ija
uslovljava "otre4u +a rein8enjerin'om "oslovni) "rocesa.
:a slici 2.1. "rika+ana je aktivnost "0. .unkcionalno modeliranje"
kojom se de<ni3u tri "odreCene aktivnosti?
Aktivnost 1.1. Funkcionalna dekom"o+icija9
Aktivnost 1.2. De<nisanje +a)teva korisnika9
alempije@beotel.yu 21
Aktivnost 1.!. (e)ni;ki "reduslovi.
US/D A(? AU(N5R? Alem"ije Deljovic DA(/?
R/D? &R5J/.(? 7odel 2
21.1$.199*
11.1!.2111
:5(/S? 1 2 ! $ % # * 9 11
M5RBI:G
DRAF(
R/.577/:D/D
&U,2I.A(I5:
R/AD/R DA(/ .5:(/F(?
A1
1
FU:B.I5:A2:5
75D/2IRA:J/
1.1
FU:B.I5:A2:A
D/B57&5>I.IJA
D/FI:ISA:J/
GRA:I.A
SIS(/7A
D/FI:ISA:J/
S(A,2A
AB(ID:5S(I
D/RIFIBA.IJA
S(A,2A
AB(ID:5S(I
1.2
D/FI:ISA:J/
>AN(/DA
B5RIS:IBA
D/FI:ISA:J/
>AN(/DA I>
D5BU7/:A(A
D/FI:ISA:J/
>AN(/DA
I:(/RDJU57
D/FI:ISA:J/
7A(RI./
5D:5SA
A:A2I>A
>AN(/DA
B5RIS:IBA
1.!
(/N:IOBI
&R/DUS25DI
D/FI:ISA:J/
ARNI(/B(UR/
SIS(/7A
BADR5DSB/
&5(R/,/
DI:A7IBA
R/A2I>A.IJ/
*lika 2.0. 8ktivnost 0. .unkcionalno modeliranje
U daljem tekstu detaljno 6e 4iti o4ra+lo8ene aktivnosti "rika+ane na
slici 2.1.
alempije@beotel.yu 22
0ktivnost
1.1. '#nkcionalna
dekom!ozicija
&rilikom reali+acije aktivnosti "0.0. .unkcionalna dekompozicija"
"ose4na "a8nja se "oklanja +a)tevima to"Imenad8menta* jer se9
+4o' 4r+i) "romena u novim tr8i3nim uslovima9 i+ osnova menjaju
konce"t9 "rinci"i9 ar)itektura9 funkcije9 "rioriteti i dr. U !red#ze2#*
"rakti;no9 tre4a da se reRektuje viCenje "oslovanja vode6e'
menad8menta i da us"e) rein8enjerin'a "oslovni) "rocesa +avisi od
nji)ovi) "ostavki dati) u o4liku vi+ija9 misija i de<nisani) ciljeva.
Aktivnost "0.0. .unkcionalna dekompozicija" i+vodi se kro+ tri "odreC
ene aktivnosti?
Aktivnost 1.1.1. De<nisanje 'ranica sistema9
Aktivnost 1.1.2. De<nisanje sta4la aktivnosti9
Aktivnost 1.1.!. Deri<kacija sta4la aktivnosti.
U daljem tekstu detaljno 6e 4iti o4ra+lo8ene de<nisane aktivnosti.
0ktivnost
1.1.1. %e+nisanje granica
sistema
Aktivnost "0.0.0. &e3nisanje granica sistema" je ve+ana +a na4rajanje
o4jekata koji 6e u slede6em koraku 4iti "o )ijerar)iji "ove+ani u
sta4lo aktivnosti.
U okviru utvrCivanja 'ranica sistema tre4a jasno de<nisati ciljeve koji
moraju da sadr8e slede6e elemente?
alempije@beotel.yu 23
+a3to se "roces modeliraA
3ta 6e "roces da "rika8eA
3ta 6e korisnik modela na"raviti sa njimA
;emu slu8i model.
5d'ovori na ova "itanja tre4a da "omo'nu u fokusiranju "ostavljene
"ro4lematike. Slede6a "itanja na koja tre4a dati od'ovor su?
koji su +adaci na datom radnom mestuA
koji je redosled i+voCenja korakaA
kako se i+vodi kontrolaA
koji se resursi koriste.
Dakle9 tre4a identi<kovati +adatke svako' +a"osleno' i s)vatiti
odnose i+meCu +adataka. >a i+voCenje ovi) aktivnosti koristi se
'ra<;ki je+ik ID/F1. ID/F1 te)nika je svojevrsan 'ra<;ki je+ik koji
omo'u6uje komunikaciju9 ra+umljivu svim u;esnicima u "ostu"ku
rein8enjerin'a "oslovni) "rocesa.
Da 4i se reali+ovale naredne aktivnosti9 u daljem tekstu detaljno 6e
4iti o4ra+lo8ena struktura 'ra<;ko' je+ika ID/F1.
Struktura 'ra<;ko' je+ika ID/F1
Gra<;ki je+ik ID/F1 o"isuje metodu funkcionalne dekom"o+icije
"reko sku"a dija'rama9 od koji) svaki "redstavlja o'rani;enu
koli;inu detalja de<nisani) od'ovaraju6om sintaksom i semantikom.
Dija'rami su meCuso4no "ove+ani tako da o"isuju sistem9
)ijerar)ijski9 sa vr)a nani8e. Dija'rami se sastoje od "ravou'aonika
koji "redstavljaju neki deo celine. &ove+ani su meCuso4no usmerenim
linijama koje "redstavljaju ve+e i+meCu delova.
&ostoje tri vrste ID/F1 "rika+a? 'ra<;ki9 tekstualni i re;nik -'lossarJ0.
Gra<;ki "rika+ de<ni3e funkcije i ve+e funkcija "reko "ravou'aonika i
strelica i od'ovaraju6e sintakse i semantike. (ekst i re;nik "ru8aju
dodatne informacije i "odr8avaju 'ra<;ke dija'rame.
*intaksa gra3~kog jezika ,&-./
Sintaksu 'ra<;ko' je+ika ID/F1 ;ine "ravou'aonici -4oSes09 strelice
-arroEs0 i "ravila -rules0.
alempije@beotel.yu 24
+ravougaonik
&ravou'aonici "redstavljaju aktivnosti9 de<nisane kao funkcije9
"rocesi i transformacije -slika 2.20. Svaki "ravou'aonik ima na+iv i
4roj u okviru 'ranica "ravou'aonika. >a na+iv aktivnosti se koristi
aktivan 'la'ol ili 'la'olska fra+a koja o"isuje funkciju. ,roj se koristi
da 4i 4io "re"o+nat "redmet o"isa "ravou'aonika u "ridru8enom
tekstu.
NAZIV
AKTIVNOSTI
1
*lika 2.2. *intaksa pravougaonika #!o<(
Aktivnost de<nisana u okviru "ravou'aonika ima tri karakteristike?
na+iv9
vremensku dimen+iju9
re+ultat rada.
&rvo9 aktivnost mora imati naziv, tj. da ime aktivnosti ima9 o4i;no9
strukturu formata ti"a P'la'olPsu4jektP. >a svaki na+iv mo'u se dati
de<nicije koje ne smeju 4iti du'e9 ali 4i tre4ale u "ot"unosti da
o4jasne svaku aktivnost.
Dru'o9 aktivnost ima vremensku dimenziju, tj. odreCeno vreme koje
mora "ro6i i+meCu "o;etka i kraja aktivnosti. &re ne'o 3to se de<ni3e
ne3to kao aktivnost9 mora se imati u vidu da se u trenutku trajanja
aktivnosti tro3i ener'ija9 koja mo8e 4iti <+i;ka9 me)ani;ka ili
elektri;na.
(re6e9 sve aktivnosti moraju dati rezultat, tj. od'ovaraju6i i+la+.
Aktivnosti koje ne "roi+vode od'ovaraju6i re+ultat mo'u se de<nisati
kao aktivnosti9 ali samo +4o' o"isa9 onakvo' kakav je on u stvarnosti.
7eCutim9 takve aktivnosti naj"re 6e 4iti eliminisane.
Slede6i element sintakse 'ra<;ko' je+ika ID/F1 je strelica.
*trelice #8rro's(
Strelica se sastoji od jedne ili vi3e linija9 sa vr)om strelice na jednom
kraju. Strelice mo'u 4iti "ravolinijske ili savijene "od u'lom od 91
ste"eni i mo'u se ra;vati ili s"ajati -slika 2.!0.
alempije@beotel.yu 25
&ravolinijske
strelice
Strelica
+akrenuta +a 91
ste"eni
Ra;vanje
strelica
S"ajanje
strelica
90
o
*lika 2.4. *intaksa strelica
Strelice "redstavljaju "odatke ili o4jekte ve+ane +a aktivnosti. 5ne ne
+na;e samo tok ili sekvencu9 kao u tradicionalnom modelu dija'rama
toka "odataka9 ve6 "renose "odatke ili o4jekte ve+ane +a "osmatranu
aktivnost.
Svaka strelica je de<nisana na+ivom -imenicom0. >a o"is na+iva
strelice se de<ni3e i od'ovaraju6i tekstualni o"is.
U daljem tekstu detaljno 6e 4iti o"isana semantika 'ra<;ko' je+ika
ID/F1.
*emantika gra3~kog jezika ,&-./
*emantika gra3~kog jezika ,&-./ uka+uje na +na;enje sintaksne
kom"onente je+ika i olak3ava korektnost inter"retacije kojom se
o"isuje notacija +a aktivnosti i strelice.
5dnos i+meCu aktivnosti i strelica je odreCen "omo6u strane
"ravou'aonika -aktivnosti0 na koji je strelica naslonjena -slika 2.$0.
K o n t r o l a
M e h a n i z a m
P o z i v
N A Z I V
A K T I V N O S T I
I z l a z U l a z
*lika 2.7. +ozicija strelica i uloge
alempije@beotel.yu 26
*trelice sa leve strane "ravou'aonika se de<ni3u kao ula+i -In"ut0.
*trelice koje ulaze u pravougaonik odozgo se de<ni3u kao kontrole
-.ontrol0. *trelice koje izlaze i+ "ravou'aonika na desnoj strani
"redstavljaju i+la+e -5ut"ut0. I+la+i su "odaci ili o4jekti9 odnosno
"roi+vodi aktivnosti.
Dakle9 elementi "rika+ani na slici 2.$. mo'u se o"isati re;enicom?
@Ula+i se "reko aktivnosti transformi3u u od'ovaraju6i i+la+9 dok
kontrole s"eci<ciraju uslove "od kojima aktivnost daje korektan i+la+@.
trelice na donjoj strani "ravou'aonika "redstavljaju me)ani+me.
Strelice okrenute "rema 'ore identi<kuju +na;enje koje "odr8ava
i+vr3enje aktivnosti. Strelice me)ani+ma koje su okrenute nadole
de<ni3u se kao strelice "o+iva -.all arroEs0.
Imaju6i u vidu en'lesku notaciju9 dija'rami se +ovu i I.A7 dija'rami9
jer je to skra6enica od?
$ I In"ut9 ne3to 3to se u"otre4ljava u aktivnostiA
3 I .ontrol9 kontrole ili uslovi i+voCenja aktivnostiA
4 I 5ut"ut9 re+ultat i+voCenja aktivnostiA
M I 7e)ani+am9 ne3to 3to se koristi u aktivnosti ali se ne
menja.
Imaju6i u vidu navedene "ostavke9 "ostavlja se "itanje? koje resurse
nose "ojedini ti"ovi strelica.
)lazna #,nput( strelica "redstavlja materijal ili informaciju koja se
koristi ili transformi3e radi de<nisanja i+la+a -5ut"ut0. Do+voljava se
mo'u6nost da odreCene aktivnosti ne moraju imati ula+ne strelice.
5ontrolne #=ontrol( strelice re'uli3u9 odnosno od'ovorne su +a to
kako9 kada i da li 6e se aktivnost i+vesti9 odnosno kakvi 6e 4iti i+la+i
-5ut"ut0. Svaka aktivnost mora imati najmanje jednu kontrolnu
strelicu.
Bontrole su ;esto u o4liku "ravila9 "olitika9 "rocedura9 ili standarda.
5ne uti;u na aktivnost9 ali ne mo'u da 4udu transformisane ili
u"otre4ljene. U slu;aju da je cilj aktivnosti da "romeni "ravilo9
"olitiku9 "roceduru ili standard9 tre4a o;ekivati da 6e strelice koje
sadr8e tu informaciju9 u stvari9 4iti ula+.
,zlazne #;utput( strelice su materijali ili informacije stvorene
aktivno36u. Svaka aktivnost mora imati najmanje jednu i+la+nu
alempije@beotel.yu 27
-5ut"ut0 strelicu. :e tre4a modelirati aktivnost koja ne stvara i+la+.
*trelice mehanizama su i+vori koji i+vode aktivnosti9 a sami se ne
@tro3e@. 7e)ani+mi mo'u 4iti ljudi9 ma3ine iHili o"rema9 tj. o4jekti koji
o4e+4eCuju ener'iju "otre4nu +a i+voCenje aktivnosti. &o slo4odnoj
volji "rojektanta9 strelice me)ani+ama mo'u 4iti i i+ostavljene i+
aktivnosti.
*trelica poziv #=all( s"eci<;ni je slu;aj strelice me)ani+ma i ona
o+na;ava da "o+ivaju6i "ravou'aonik nema vlastiti detaljniji
dija'ram9 ve6 daje detaljniji "rika+ i+veden na nekom dru'om
"ravou'aoniku u istom ili nekom dru'om modelu. Di3e "o+ivaju6i)
"ravou'aonika mo'u "o+ivati isti "ravou'aonik na nekom dru'om ili
istom modelu. Imenuju se 4rojem dekom"o+iciono' dija'rama9 koji
sadr8i "o+vani "ravou'aonik +ajedno sa 4rojem "o+ivno'
"ravou'aonika.
Bao 3kolski "rimer9 koji tre4a da "oslu8i +a "rika+ ID/F1 metoda
modeliranja9 de<nisan je testI"rimer dokumenta @Barton is"lata@9
"rika+an na slici 2..
+rimer dokumenta "5arton isplata"
:a slici 2.. "rika+an je "ojednostavljen "rimer ru;no' dokumenta
@Barton is"lata@ koji 6e dalje slu8iti +a o"isivanje ID/F1 metodolo'ije.
506147 $(8010
*,.68
68&N,58
,>- , +6-?,>- S(RA:I J/>IB 5D/2J/:J/
@4AB ?oran *tarcevic /n'leski9
Ruski
Ra+voj
RAD:5 7/S(5? (e)nolo' Francuski
R.,R. IS&2A(/ I>:5S IS&2A(/ DA(U7
IS&2A(/
&RI7/D,/
11 11911 1*.12.199%
12 $1911 21.12.199#
1! *11911 !1.19.199#
*lika 2.A. 6u~ni dokument "5arton isplata"
alempije@beotel.yu 28
&redu+e6e koje se ra+matra9 4avilo se uvo+noIi+vo+nim "oslovima9 ali
se +4o' "otre4a na tr8i3tu "o;elo 4aviti "revodila;kim "oslom. >a
ovu novu aktivnost 4ilo je "otre4no na"raviti dokument koji 4i
omo'u6io pra}enje vanrednih isplata prevodilaca -slika 2.0.
Dokument @Barton is"late@ je klasi;an "rimer lo3e uraCeno' ru;no'
dokumenta -koji se sastoji od +a'lavlja i stavki0 i tre4a da "oslu8i kao
"rimer kako se od ru;no' dokumenta dola+i do 'otove a"likacije. :a
ovom jednostavnom "rimeru tre4a "oka+ati kako se i+vodi "revoCenje
klasi;ni) ru;ni) dokumenata -"a i dokumenata sistema kvaliteta0 u
informati;ki ra+umljivu formu. $o je prvi korak koji treba da omogu}i
integraciju informacionog sistema i zahteva sistema kvaliteta ,*;
B///, kao polaznih elemenata vezanih za rein`enjering poslovnih
procesa.
:a "rimeru dokumenta @Barton is"lata@ 4i6e "rika+ane sve aktivnosti
de<nisane na slici 1.1.
:a osnovu de<nisane sintakse i semantike 'ra<;ko' je+ika ID/F19
"ristu"a se "rvom koraku9 tj. de<nisanju kontekstno' dija'rama.
Bontekstni dija'ram
&rvi korak koji se "re"oru;uje u aktivnosti "0.0.0. )tvr:ivanje op{tih
zahteva" "redstavlja i+rada kontekstno' dija'rama. :a taj se na;in
de<ni3u okviri ID/F1 modela.
Bontekstni dija'ram je de<nisan jednim "ravou'aonikom koji
"redstavlja granicu modela koji se "rou;ava. U tom sistemu i van
nje'a teku informacije "reko strelica. Bontekstni dija'ram je najvi3i
nivo a"strakcije koji se dekom"o+icionim dija'ramima "revodi u ni8i
nivo a"strakcije. :a slici 2.%. "rika+an je kontekstni dija'ram "od
imenom @&ra6enje is"lata@ +a dokument @Barton is"lata@ sa slike 2..
9ranice modela se de<ni3u da 4i se9 "re sve'a9 +nalo 'de tre4a stati
sa modeliranjem.
5vaj "ro4lem se mo8e "osmatrati sa as"ekta?
3irine -de<nisanja elemenata koji se "osmatraju0 i
du4ine -de<nisanja nivoa detaljnosti0.
"irina modela je ve+ana +a de<nisanje kontekstno' dija'rama -koji se
u ID/F1 notaciji o+na;ava sa A10 i "rvo' nivoa dekom"o+icije nosi
o+naku A1. U okviru kontekstno' dija'rama mora se voditi ra;una da
tre4a de<nisati setove ula+a9 kontrola i me)ani+ama koji "roi+vode
alempije@beotel.yu 29
set i+la+a9 tj. tre4a na ovom nivou uo"3titi "osmatranu "ro4lematiku
sa manje detalja.
&ubina modela se de<ni3e nivoima dekom"onovanja9 'de se de<ni3u
nivoi detaljnosti. Dekom"o+icija ide do mo'u6nosti de<nisanja
"ro'ramski) modula9 koji se mo'u o"isati dija'ramom toka "odataka9
t+v. Data FloE Dia'ram -DFD0. 5 tome 6e 4iti vi3e re;i u o"isu
aktivnosti "2.0.4. &e3nisanje dijagrama toka podataka".
Aktivnost A19 koja se "ojavljuje u kontekstnom dija'ramu9 o"isuje
okvire modela i mora 4iti odreCena aktivnom 'la'olskom fra+om9 kao9
n"r. @&ra6enje is"lata@ -slika 2.%0.
&re"oru;uje se da tre4a "o;eti od de<nisanja i+la+ni) strelica9 "a se
"omerati "rema ula+ima9 me)ani+mima i kontrolama. &ola+i se od
;injenice da svaka aktivnost "oseduje od'ovaraju6e i+la+e koji se
mo'u identi<kovati. &rilikom de<nisanja i+la+a tre4a voditi ra;una i o
ne'ativnim i+la+ima9 koji "rou+rokuju t+v. "ovratne -feed4ack0
strelice.
Slede6i elementi koje tre4a de<nisati su strelice ula+a9 koji se na
s"eci<;an na;in transformi3e -ili tro3i0 radi stvaranja od'ovaraju6e'
i+la+a9 "ot"omo'nut od'ovaraju6im me)ani+mima i kontrolom.
:a kraju tre4a "roveriti?
da li kontekstni dija'ram o4u)vata aktivnosti koje se
modelirajuA
da li je kontekstni dija'ram kon+istentan sa svr)om9 u'lom
"osmatranja i 'ranicamaA
da li strelice us"ostavljaju od'ovaraju6i nivo detalja -ne
sme i) 4iti vi3e od 3est "o ti"u strelice0A
da li su model "ri)vatili svi ;lanovi 'ru"e.
Imaju6i u vidu de<nisane "ret"ostavke9 u daljem tekstu 4i6e "rika+an
kontekstni dija'ram +a dokument @Barton is"lata@.
5ontekstni dijagram za dokument "5arton isplata"
>a "ojednostavljeni "rimer dokumenta @Barton is"lata@ "rika+ani su
svi elementi kontekstno' dija'rama @&ra6enje Is"lata@.
alempije@beotel.yu 30
US/D A(? AU(N5R? DA(/?
R/D? &R5J/.(? 7odel 1
1$.11.199%
22.1$.2111
:5(/S? 1 2 ! $ % # * 9 11
M5RBI:G
DRAF(
R/.577/:D/D
&U,2I.A(I5:
R/AD/R DA(/ .5:(/F(?
(5&
:5D/? (I(2/? :U7,/R? &RAT/:J/ IS&2A(A
AI1
1
(609&7:&
$(8010 >a)tev +a novu 3ifru
>a)tev +a is"latu
>a)tev +a i+ve3taj
>a)tev i+ kadrovsko'
&ostu"ak o
i+ve3tavanju
&ostu"ak o
de<nisanju
3ifarnika
&ravilnik o
is"latama
I+ve3taj knji'ovodstvu
:alo' +a is"latu
SU,& &revodioci
*lika 2.C. 5ontekstni dijagram za aktivnost "+ra}enje isplata"
Bao 3to se na slici 2.%. vidi9 sama aktivnost de<nisana je 'la'olskom
fra+om @&ra6enje is"lata@9 dok su strelice de<nisane i 'ru"isane kao?
ula+ni dokumenti?
@>a)tev i+ kadrovsko'@9 kojim se de<ni3e +a)tev +a otvaranje
novo' kartonaA
@>a)tev +a is"latu@9 kojim se de<ni3e +a)tev +a is"late
"revodiocimaA
@>a)tev +a novu 3ifru@9 kojim se u 3ifarniku de<ni3e nova 3ifraA
@2ista is"lata@9 kojom se de<ni3e lista is"lata radnikaA
@>a)tev +a i+ve3taj@9 kojim se de<ni3e ti" i+ve3tajaA
i+la+ni dokumenti?
@I+ve3taj knji'ovodstvu@9 'de se knji'ovodstveno "rate is"lateA
@:alo' +a is"latu@9 kojim se omo'u6uje is"la6ivanje "reko 8iroI
ra;una.
Bontrole su u"utstva i "ostu"ci i +a ovaj "rimer su?
"ostu"ak o i+ve3tavanjuA
"ostu"ak o de<nisanju 3ifarnikaA
alempije@beotel.yu 31
"ravilnik o is"latama.
7e)ani+mi se de<ni3u kao?
relacioni sistem +a u"ravljanje 4a+om "odataka -RSU,&0A
"revodioci.
Imaju6i u vidu ovako "ostavljeni kontekstni dija'ram9 u slede6em
koraku se de<ni3e sta4lo aktivnosti.
0ktivnost
1.1.2. %e+nisanje sta)la
aktivnosti
:a osnovu de<nisani) 'ranica sistema "rela+i se na slede6u aktivnost
"0.0.2. &e3nisanje stabla aktivnosti"9 'de se us"ostavljaju vertikalne
-)ijerar)ijske0 ve+e i+meCu aktivnosti.
Sta4lo aktivnosti se de<ni3e "rimenom metode re3avanja "ro4lema
odo+'o nadole -to"I IdoEn09 kada se slo8ena aktivnost rastavlja na
vi3e "odreCeni) aktivnosti9 a +atim se "ristu"a re3avanju
jednostavni) "odreCeni) aktivnosti.
Dru'im re;ima9 "ola+na slo8ena aktivnost ra+vija se u )ijerar)iju
"odreCeni) aktivnosti9 ;ija je struktura ti"a sta4la. Boren sta4la -to je
najvi3i ;vor sta4la0 sadr8i "ola+nu aktivnost9 dok listovi9 tj. ;vorovi
koji nemaju "otomke9 sadr8e aktivnosti ;ije je re3avanje relativno
jednostavno. Re3avanjem svi) "odreCeni) aktivnosti i+ listova re3ena
je i "ola+na slo8ena aktivnost. >a aktivnost "0.2. &e3nisanje zahteva
korisnika" ide se do tre6e' nivoa9 dok se detalji ra+matraju u okviru
aktivnosti "2.0.0. ,zrada detaljnog stabla aktivnosti".
Dakle9 sta4lo aktivnosti "redstavlja )ijerar)iju de<nisani) aktivnosti9
o;i36enu od strelica9 i omo'u6uje funkcionalnu dekom"o+iciju i uvid
u du4inu odvijanja ve+a i+meCu aktivnosti.
5vaj "ristu" je veoma va8an kada se us"ostavlja okvir rein8enjerin'a
"oslovni) "rocesa koji mo'u do6i u ra+matranje.
Aktivnost na vr)u -root0 uvek je o+na;ena sa 1. ,rojevi se koriste da
4i "rika+ali koliko detalja sadr8i aktivnost. Aktivnost A1 je
dekom"onovana -ra+dvojena0 na 19 29 ! itd. Aktivnost 1 je
dekom"onovana u 119 129 1! itd. :adreCena aktivnost se +ove
alempije@beotel.yu 32
UroditeljU -"arent09 a "odreCene aktivnosti su deca -c)ilds0.
Ra+4ijanje aktivnosti UroditeljU na svoju decu tre4a da ima od dve do
3est "odreCeni) aktivnosti. Ako je vi3e od 3est "odreCeni) aktivnosti9
to +na;i "oku3aj da se smesti "revi3e detalja na jedan nivo.
:a osnovu sve'a 3to je dosad re;eno9 tre4a de<nisati sta4lo
aktivnosti +a aktivnost @&ra6enje is"lata@.
Sta4lo aktivnosti +a aktivnost @&ra6enje is"lata@
>a "rimer dokumenta @Barton is"lata@ -"rika+ano' na slici 2.09
odnosno +a kontekstni dija'ram sa slike 2.%. "rika+ano je sta4lo
aktivnosti na slici 2.#.
US/D A(? AU(N5R? DA(/?
R/D? &R5J/.(? 7odel 1
19.11.199%
1!.1!.2111
:5(/S? 1 2 ! $ % # * 9 11
M5RBI:G
DRAF(
R/.577/:D/D
&U,2I.A(I5:
R/AD/R DA(/ .5:(/F(?
AI1
1
&RAT/:J/
IS&2A(A
1
5DR@ADA:J/
&5DA(ABA 5
&R/D5DI5.I7A
5DR@ADA:J/
5S:5D:IN
&5DA(ABA
&RAT/:J/
:ID5A >:A:JA
J/>IBA
5,RAOU:
IS&2A(/
2
5DR@ADA:J/
=IFAR:IBA
5DR@ADA:J/
=IFAR:IBA
J/>IBA
5DR@ADA:J/
=IFAR:IBA
RAD:IN
7/S(A
5DR@ADA:J/
=IFAR:IBA
5D/2J/:JA
!
I>RADA
I>D/=(AJA
I>D/=(AJ
B:JIG5D5DS(DU
I>D/=(AJ ,A:.I
*lika 2.@. *tablo aktivnosti za kontekstnu aktivnost "+ra}enje isplata"
&rilikom formiranja ovo' sta4la aktivnosti "o3lo se od o"3te ;injenice
da se ve6ina dokumenata mo8e "odeliti na?
odr8avanje "odataka9
odr8avanje 3ifarnika i
i+radu i+ve3taja.
:a osnovu anali+e dokumenta @Barton is"lata@ i s"rovedeni)
intervjua9 aktivnost "0.;dr`avanje podataka o prevodiocima" mo8e se
alempije@beotel.yu 33
"odeliti na "odreCene aktivnosti?
Aktivnost 1.1. 5dr8avanje osnovni) "odataka9 'de se
de<ni3u osnovni "odaci o "revodiocimaA
Aktivnost 1.2. &ra6enje nivoa +nanja je+ika9 'de se de<ni3u
od'ovaraju6i serti<katiA
Aktivnost 1.!. 54ra;un is"lata +a o4avljanje "revodila;ke
aktivnosti.
Aktivnost "2. ;dr`avanje {ifarnika" o4u)vata?
Aktivnost 2.1. =ifarnik je+ika9 'de se de<ni3u 3ifra i
standardni na+iv strano' je+ikaA
Aktivnost 2.2. =ifarnik radni) mesta9 'de se de<ni3u 3ifra i
standardni na+iv radni) mestaA
Aktivnost 2.!. =ifarnik odeljenja9 'de se de<ni3u 3ifra i
standardni na+iv odeljenja.
Aktivnost "4. ,zrada izve{taja" o4u)vata?
Aktivnost !.1. I+ve3taj knji'ovodstvu9 'de se i+vode
od'ovaraju6i knji'ovodstveni "osloviA
Aktivnost !.2. I+ve3taj 4anci9 kojim se i+ve3tava o u"lati na
8iroIra;un +a o4avljeni "osao.
Dalja "odela +avisi od "ostu"ka voCenja "osla. &rika+ano sta4lo
aktivnosti tre4a u slede6em koraku o4ave+no da "ri)vati i veri<kuje
veri<kaciono telo9 o ;emu 6e u daljem tekstu 4iti vi3e re;i.
0ktivnost
1.1.3. ;eri+kacija sta)la
aktivnosti
Aktivnost "0.0.4.eri3kacija stabla aktivnosti" veoma je va8na9 jer je
to strate3ki momenat9 tj. odluka rukovodstva da li je to ono 3to se 8eli
"osti6i rein8enjerin'om "oslovni) "rocesa. Bao veoma 4itna
aktivnost9 ona "rva mora 4iti usa'la3ena i veri<kovana. 5vaj
elemenat se mora ra+matrati "rilikom klasi;no' na;ina uvoCenja
dokumenata +a o4e+4eCenje kvaliteta9 "o standardu IS5 9111.
Deri<kaciono telo tre4a stalno da kontroli3e rad stru;no' tima9 u+
4la'ovremeno otklanjanje eventualni) 're3aka i nedoslednosti u
alempije@beotel.yu 34
nji)ovom radu. S dru'e strane9 +4o' "ostojanja ovo' tela9 nije
"otre4an su"ervi+or "rojekta9 jer je "rojekat kontrolisan i veri<kovan u
svim fa+ama i+rade.
Deri<kaciono telo ne mora da 4ude stalno' sastavaA u +avisnosti od
sadr8aja koji se veri<kuje9 ono mo8e da ima u8i ili 3iri sastav.
Dru'i veliki kvalitet je u;estvovanje dela rukovodstva "redu+e6a u
i+radi "rojekta9 od ;ije' an'a8ovanja isklju;ivo +avisi kasnija
us"e3na reali+acija "rojektovani) re3enja.
:akon veri<kacije sta4la aktivnosti od strane to"Imenad8menta9
"ristu"a se de<nisanju +a)teva korisnika koji 6e da "otvrde ili kori'uju
ovako "ostavljenu te+u.
alempije@beotel.yu 35
0ktivnost
1.2. %e+nisanje za-teva
korisnika
Sa stanovi3ta "rojektanta koji i+vodi rein8enjerin' "oslovni) "rocesa9
aktivnost "0.2. &e3nisanje zahteva korisnika" klju;ni je
momenat. U "itanju su informisanje i @u;enje@ "rojektanta9 odnosno
u"o+navanje sa "otre4ama i 8eljama korisnika9 kako 4i "rojektant
mo'ao da us"ostavi informacione ve+e i donese "ravilne +aklju;ke.
5va aktivnost se deli u ;etiri "odaktivnosti -slika 2.10?
Aktivnost 1.2.1. De<nisanje +a)teva i+ dokumenataA
Aktivnost 1.2.2. De<nisanje +a)teva intervjuomA
Aktivnost 1.2.!. De<nisanje matrice odnosaA
Aktivnost 1.2.$. Anali+a +a)teva korisnika.
U daljem tekstu detaljno 6e 4iti o"isane de<nisane aktivnosti.
0ktivnost
1.2.1. %e+nisanje za-teva iz
dok#menata
Aktivnost "0.2.0. &e3nisanje zahteva iz dokumenata" je "o'led
odo+do na'ore i u nadreCenoj aktivnosti "0.2. &e3nisanje zahteva
korisnika" ima 'lo4alni karakter9 jer se "riku"ljaju dokumenta i+ cele
<rme.
Ako u "redu+e6u "ostoje de<nisane od'ovaraju6e slu84e +a i+radu
or'ani+acioni) "ro"isa i interni) standarda9 "riku"ljanje informacija i+
alempije@beotel.yu 36
"ostoje6e dokumentacije je olak3anoA u su"rotnom9 3to je naj;e36i
slu;aj9 ova aktivnost mo8e veoma du'o da traje. Deliku "omo6 u i+voC
enju ove aktivnosti mo'u "ru8iti i od'ovaraju6e "rocedure i u"utstva9
de<nisani "o standardu kvaliteta IS5 91119 jer sistemati+uju klasi;nu
@ru;nu@ dokumentaciju.
Dakle9 tre4a "riku"iti?
ula+ne dokumente9
i+la+ne dokumente9
u+orke i+ve3taja9
or'ani+acione "ro"ise i dr.
:a ovom nivou "ostoji velika o"asnost da se "riku"e neta;ne
informacije kojima se o"isuje +astareli na;in rada i +ato tre4a stalno
"roveravati da li je do4ijena "oslednja ver+ija dokumentacije.
>a "riku"ljenu dokumentaciju9 "otre4no je dati od'ovore na slede6a
"itanja?
odakle "oti;u "odaciA
kako su "odaci do4ijeniA
koliki su maksimum i minimum "odataka do4ijeni) u "raksiA
da li se unose ta;ni "odaciA
da li se unose kom"letni "odaciA
kako se koristeA
koliko ;esto se koristeA
koliko je ta;an taj i+la+ danasA
u kom o4liku je "rika+anA
kada se i+raCuje i koliko ;estoA
koliki su o4im i 4roj ko"ijaA
kome se u"u6ujeA
3ta startuje i+la+A
koja se "o4olj3anja mo'u uvesti.
>a "ostu"ak rada sa dokumentima de<nisane su i od'ovaraju6e
"rocedure i or'ani+acioni "ro"isi9 koje9 ako "ostoje9 tre4a "rou;iti i
inovirati "ostoje6om "raksom9 a ako ne "ostojeI Itre4a i) na"isati9 jer
to ne"osredno uti;e na "ostoje6u or'ani+aciju rada.
alempije@beotel.yu 37
Anali+a dokumenata "oma8e analiti;aru da formira mi3ljenje o
;itkosti ti) dokumenata9 kao i da ra+ume korisnikovu terminolo'iju9
da 4i u slede6em "rocesu "0.2.2. &e3nisanje zahteva intervjuom"
"ostavio "rava "itanja "rilikom s"rovoCenja intervjua.
:a osnovu sve'a to'a u slede6em koraku tre4a i+vr3iti anali+u
dokumenta @Barton is"lata@.
Anali+a dokumenta @Barton is"lata@
Dokument @Barton is"lata@ nastao je +4o' "otre4no' evidentiranja
"revodila;ki) "oslova u okviru "redu+e6a. Dokument @Barton is"lata@
se sme3ta u istoimenu kartoteku9 u kojoj se evidentiraju sve "romene
ve+ane +a aktivnosti "revodilaca.
&odaci koji se unose u @Barton is"lata@ "oti;u i+ kadrovske kartoteke9
a na osnovu evidencije o o4avljenim "revodila;kim uslu'ama.
Bao i svi ru;ni dokumenti9 i dokument @Barton is"lata@ ima
nedore;enosti u smislu nede<nisanja svi) +a)teva koje korisnik mo8e
da +a)teva9 a ne mo8e da i) u"i3e9 jer ne "ostoje @ru4rike@. >4o'
nedore;enosti dokumenta ostavi se9 o4i;no9 jedan deo dokumenta9
naslovljen kao? @&rimed4e@ ili @ 5"is@9 3to "oka+uje da onaj koji je
"rojektovao dokument ne "o+naje "ro4lematiku i da su "odaci u
dokumentu @Barton is"lata@ nea8urni i neta;ni i da ne odra8avaju
trenutno stanje. 5vaj dokument ne omo'u6ava "ravljenje ra+li;iti)
anali+a9 jer je nedore;en i ne sadr8i sve informacije "otre4ne
rukovodstvu9 "a se sto'a ne mo8e @automati+ovati@9 ve6 se mora
s"rovesti intervju i sa+nati koje se informacije moraju de<nisati i
"rojektovati.
Autor ovo' teksta je "rimetio da je "rilikom uvoCenja sistema kvaliteta
dosta dokumenata9 u"ravo9 ovakvo' ti"a. Sa stanovi3ta
informati;ara9 koji mora da snimi ovakav dokument i omo'u6i unos
"reko ra;unara9 informacije ti"a @5"is@ su 4e+vredne. Da 4i se tekst
iskoristio9 tre4a detaljno ;itati sadr8aj teksta i na osnovu to'a
na"raviti novi dokument9 i+ ko'a 6e korisnik mo6i krsti6em da i+a4ere
jednu i+ vi3e "onuCeni) kom4inacija. Sa dru'e strane9 ovako do4ijena
informacija se mo8e statisti;ki o4raditi9 3to je jedan od +a)teva
standarda IS5 9111.
Sto'a u slede6em koraku tre4a i+vr3iti de<nisanje +a)teva
intervjuom.
alempije@beotel.yu 38
0ktivnost
1.2.2. %e+nisanje za-teva
intervj#om
Aktivnost "0.2.2. &e3nisanje zahteva intervjuom" je "ristu" odo+'o
nadole9 i tre4a da omo'u6i de<nisanje?
"otre4a +a informacijama9
ciljeva i
"ro4lema kako i) vide rukovodioci i ne"osredni i+vr3ioci.
(o je klju;ni momenat u rein8enjerin'u "oslovni) "rocesa9 jer se ovde
rukovodstvo i+ja3njava o "itanju 4udu6nosti9 odnosno daljem
"oslovanju. 5va anali+a tre4a da da i od'ovore ve+ane +a "rimenu
Interneta u "redu+e6u.
&rvi korak su o"3te "ri"reme +a i+voCenje intervjua koje su ve+ane +a
de<nisanje?
liste rukovodilaca +a intervjue9
vremensko' ras"oreda intervjua9
teme +a ra+'ovor9
"otvrde termina9
or'ani+acije 'ru"e +a intervjue9
voCenje +a"isnika9
"ri"rema "anela9
o"remanje "rostorije9
i+4or o"3ti) "itanja i
"ro4ni intervju.
:e sme se +a4oraviti da rukovodilac tre4a da "o3alje "ismo sa
o4ja3njenjem9 svr)om9 temama i "itanjima tako da 4i se dru'a strana
mo'la "ri"remiti.
&ose4no tre4a na'lasiti or'ani+aciju 'ru"e +a intervjue9 'de tre4a
de<nisati?
koji 6e ;lan tima voditi +a"isnik9
ko 6e "re+entovati dosada3nje re+ultate9
alempije@beotel.yu 39
ko 6e "ostavljati "itanja.
(eme tre4a una"red odrediti9 jer se "osle lak3e sreCuju. &re"oru;uje
se i+voCenje "ro4no' intervjua u okviru ;lanova tima9 radi 4olje
"ri"reme i uve84anosti.
.ilj svi) aktivnosti je ra+voj "re"oruka +a 4udu6e akcije. :aime9
aktivnosti tre4a da omo'u6e da se +a trenutno "ostoje6e o4jekte
"oslovanja -or'ani+acione jedinice9 "rocese i dr.09 a"likacije i datoteke
identi<kuje redundantnost "odataka9 ra+jasne od'ovornosti i9 uo"3te9
ra+ume "oslovanje.
Da 4i se ostvarile ove aktivnosti "ristu"a se "ostu"ku intervjuisanja9
"o;ev od najvi3i) rukovodilaca do ne"osredni) korisnika.
(re4a jo3 jednom na'lasiti da intervju +a)teva "re sve'a uklju;ivanje
najvi3i) rukovodilaca i sa'ledavanje "ro4lema u "oslovanju sa
nji)ovo' stanovi3ta.
5"3ta "itanja +a intervjuisanje su?
koje su nadle8nosti i od'ovornostiA
3ta su osnovni ciljevi i kakve se "romene mo'u o;ekivati u
odreCenoj o4lasti +a slede6u 'odinu i daljeA
koji su kriti;ni faktori u "o'ledu od'ovornosti u"ravljanja i
odlu;ivanjaA
kakvi su +a)tevi +a informacijamaA
koji su najve6i "ro4lemi 4ili u "oslednje vreme i 3ta je 4ilo
"otre4no +a re3avanje ti) "ro4lema -koje se informacije i koji
efekti mo'u o;ekivati0A
u kojim "rocesima se mo'u "osti6i "o4olj3anja i koje su
"otre4e +a "odacimaA
koje su "riku"ljene informacije naju"otre4ljivije.
&o +avr3etku intervjua tre4a od'ovore ra+motriti9 na"isati re+ime i
i+dvojiti uo;ene "ro4leme.
Jedan od 4itni) re+ultata intervjua je i us"ostavljanje 4olji) odnosa
i+meCu ;lanova tima i najvi3i) rukovodilaca9 3to ima ne"osredno'
uticaja na "odr3ku koju rukovodioci tre4a da "ru8e u "ostu"ku
rein8enjerin'a "oslovni) "rocesa.
54i;no se s"rovodi "et do deset intervjua sa najvi3im rukovodiocima9
u trajanju od dva do tri sata. (o je i najdu8a aktivnost u toku
rein8enjerin'a "oslovni) "rocesa.
alempije@beotel.yu 40
(akoCe9 jedan od 4itni) momenata je i anali+a "ro4lema i nji)ovo
"ove+ivanje sa "rocesima "oslovanja9 jer "redstavljaju uvodno
u"utstvo +a "ostavljanje "rioriteta ve+ani) +a redosled reali+acije
"ojedini) "oslovni) funkcija.
:a kraju se de<ni3u od'ovaraju6i +aklju;ci9 koji tre4a da "oka8u
rukovodiocima da su nji)ova 'ledi3ta s)va6ena i u'raCena u re+ultate
i +aklju;ke "rojekta.
I+vr3ioci ovo' "rocesa su?
"ose4an tim +a intervjue koji "ri"rema i o4avlja intervju9
o4raCuje od'ovore i daje anali+u intervjuaA
"ose4an tim +a katalo' a"likacija koji snima i radi
katalo'i+aciju "ostoje6i) a"likacijaA
eks"erti i+ domena "odsistema ili "rocesa koji "redla8u
or'ani+acionoIinformaciona re3enja "ojedini) "rocesa ili
"odsistemaA
korisnici koji daju informacije o informacionim "otre4ama i
+a)tevima "rocesa u koje su uklju;eni i koji ocenjuju kriti;nost
"rocesa na osnovu do'ovoreni) merilaA
koordinacioni od4or koji?
koordinira rad "ose4ni) timova9
usvaja "redlo8ena or'ani+acionoIinformaciona re3enja9
odreCuje merila +a ocenu kriti;nosti "rocesa9
usvaja anali+e "ose4ni) timova i
utvrCuje "rioritete ra+voja "odsistema.
U slede6em koraku 4i6e i+vr3eno de<nisanje +a)teva intervjuom +a
dokument @Barton is"lata@.
De<nisanje +a)teva intervjuom +a dokument
@Barton is"lata@
>a "rimer dokumenta @Barton is"lata@ uo;ene su manjkavosti koje se
do"unjuju "ostu"kom intervjua9 'de se de<ni3u do"unski +a)tevi +a
informacijama9 i to?
odeljenje 'de je "revodilac +a"oslen9
alempije@beotel.yu 41
radno mesto na koje je radnik ras"oreCen9
stru;na s"rema koju "revodilac "oseduje9
nivoi +nanja je+ika9
"rimanja ve+ana +a redovnu is"latu9
stimulacija9
uslu'e van "redu+e6a9
datum stu"anja u "redu+e6e9
ne"osredno nadreCeni rukovodilac.
Dakle9 s"rovedenim intervjuom de<nisani su +a)tevi koji ne "ostoje u
"ostoje6em ru;nom dokumentu i koje tre4a u'raditi u 4udu6e
re3enje. 5vaj veoma +na;ajan momenat i +a)teva maksimalno
an'a8ovanje +a"osleni)9 a "o'otovu vode6e' menad8menta.
:a osnovu "ret)odno i+vedeni) aktivnosti u slede6em koraku tre4a
de<nisati matricu odnosa.
0ktivnost
1.2.3. %e+nisanje matrice
odnosa
Aktivnost "0.2.4.&e3nisanje matrice odnosa" tre4a da de<ni3e
matricu ve+a i+meCu aktivnosti i dokumenata koji tre4a da "ove8u
dokumenta odreCena kao ula+ne ili i+la+ne informacije sa aktivnostima
i+ sta4la aktivnosti na 'ornjem okvirnom nivou. Dokumenta su
de<nisana od'ovaraju6im ru4rikama9 ;ijom se anali+om odreCuju
od'ovaraju6i entiteti.
/ntiteti na ovom nivou "redstavljaju o4jekat koji se mo8e o"isati
nekim oso4inama. >a ovu aktivnost 4itni su samo na+ivi entiteta9 4e+
ula8enja u de<nisanje oso4ina.
Svakom entitetu se "ridodaje na;in na koji aktivnost koristi taj
entitet9 odnosno 3ta radi sa "ojedinim instancama to' entiteta "reko
t+v. .RUD matrice.
/ntitet se u okviru neke aktivnosti? iHili kreira -.I.reate09 iHili "retra8uje
-RIRetrive0 iHili a8urira -UIU"date09 iHili 4ri3e - DIDelete09 "a otuda i
na+iv .RUD matrica -de<nisana "o;etna slova en'lesko' na+iva0.
alempije@beotel.yu 42
>a aktivnost @&ra6enje is"lata@ na slici 2.*. "rika+ana je .RUD
matrica.
:a+iv aktivnosti Naziv entiteta . R U D
5DR>ADA:J/ IS&2A(A . R U D
&5DA(ABA 5 5S5,A . R U D
&R/D5DI5.I7A J/>IB R
./R(IFIBA( . R U D
5D/2J/:J/ R
R7/S(5 R
5DR>ADA:J/ J/>IB . R U D
SIFAR:IBA 5D/2J/:J/ . R U D
R7/S(5 . R U D
I>RADA IS&2A(A R
I>D/S(AJA J/>IB R
5D/2J/:J/ R
5S5,A R
./R(IFIBA( R
*lika 2.D. =6)& matrica za primer aktivnosti "+ra}enje isplata"
>a "rimer aktivnosti @&ra6enje is"lata@ mo'u se de<nisati slede6e
aktivnosti?
odr8avanje "odataka o "revodiocima9
odr8avanje 3ifarnika i
i+rada i+ve3taja.
U okviru ovako de<nisani) aktivnosti se de<ni3u od'ovaraju6i entiteti
-5S5,A9 IS&2A(A9 ./R(IFIBA(9 J/>IB9 5D/2J/:J/9 RAD:5 7/S(50. :a
slici 2.*. "rika+ane su .RUD ve+e i+meCu aktivnosti i entiteta.
U ovoj aktivnosti se de<ni3u osnovne "ostavke dok se u okviru
aktivnosti "2.0.0.&e3nisanje detaljne matrice odnosa", detaljnije
s"eci<ciraju i atri4uti kori36enja9 t+v. IRU: matrica -o ;emu 6e
alempije@beotel.yu 43
kasnije vi3e 4iti re;i0.
:a osnovu i+vedeni)9 "ret)odno o"isani) aktivnosti u slede6em
koraku "ristu"a se anali+i +a)teva 4udu6e' korisnika softverske
a"likacije.
0ktivnost
1.2.4. 0naliza za-teva
korisnika
Aktivnost "0.2.7. 8naliza zahteva korisnika" +na;i da "ostavke
de<nisane u "ret)odnim koracima tre4a da veri<kuje od'ovaraju6i
veri<kacioni or'an "redu+e6a.
>adatak veri<kaciono' tela je da usvaja re+ultate rada stru;no' tima
u kontrolnim ta;kama koje "redstavljaju okon;anje "ojedini) fa+a na
i+radi "rojekta.
(re4a na'lasiti da sve navedene aktivnosti i "odaktivnosti moraju i6i
ovim redosledom i da de<nisanje te)ni;ki) "reduslova tek onda
dola+i u ra+matranje. U "raksi se o4i;no9 radi nao"ako.
alempije@beotel.yu 44
0ktivnost
1.3. 1e-ni/ki !red#slovi
(e)ni;ki "reduslovi "odra+umevaju9 "re sve'a9 ra;unarski sistem sa
de<nisanim?
sistemom )ardver -ne3to o"i"ljivo0A
sistemom softver -ne3to neo"i"ljivo9 tj. "reneta ljudska
+nanja i "amet0A
sistemom dokumentacije -o"is +a sistem )ardver i sistem
softver0.
Sistem hardver ;ine? radna memorija9 masovna memorija9 ula+ne
jedinice9 i+la+ne jedinice i centralna "rocesorska jedinica. Radna
memorija sadr8i o"erativnu -RA7IRandom access memorJ0 i
"ostojanu -R57IRead onlJ memorJ9 &R57I&ro'rama4le read onlJ
memorJ9 /&R57I/resa4le "ro'rama4le read onlJ memorJ0 i dr.
U masovnu memoriju s"adaju? ma'netni diskovi9 diskete9 o"ti;ki
diskovi9 ma'netne trake9 kasete9 .D.
)lazna jedinica omo'u6uje da se u ra;unar unose instrukcije9
"ro'rami9 "odaciA ;ine je? tastatura9 disketna jedinica9 mi39 skener9
o"ti;ki 3ta" i dr.
,zlazna jedinica se koristi da se "reko nje sao"3tavaju re+ultati rada
ra;unaraA ;ine je? monitor9 3tam"a;9 "loter i dr.
=entralna procesorka jedinica i+vr3ava instrukcije uskladi3tene u
o"erativnoj memoriji.
Sistem softver ;ine o"erativni sistemi9 koji mo'u 4iti
jednokorisni~ki -.&79 7SID5S0 i vi{ekorisni~ki -U:IF9 5&/:HD7S9
MindoEs 211109 +atim9 jezi~ki procesori koji se dele na inter"retere
-,ASI.0 i kom"ajlere -F5R(RA:9 &AS.A29 .VV09 kao i aplikativni
softveri u koje s"adaju tekstI"rocesori -Mord for MindoEs0 i 4a+e
alempije@beotel.yu 45
"odataka.
Sistem dokumentacije ;ine dokumentacija +a sistem )ardver9
dokumentacija +a sistem softver i ostala dokumentacija.
Imaju6i sve to u vidu9 aktivnost "0.4. $ehni~ki preduslovi" i+vodi se
kro+ tri "odreCene aktivnosti?
Aktivnost 1.!.1. De<nisanje ar)itekture sistema9
Aktivnost 1.!.2. Badrovske "otre4e9
Aktivnost 1.!.!. Dinamika reali+acije i tro3kovi.
0ktivnost
1.3.1. %e+nisanje ar-itekt#re
sistema
Aktivnost "0.4.0. &e3nisanje arhitekture sistema" tre4a da uka8e na
osnovne "ret"ostavke koje se moraju is"uniti da 4i se mo'ao
s"rovoditi "ostu"ak rein8enjerin'a "oslovni) "rocesa.
(e)nike i te)nolo'ije ra;unarstva9 komunikacija9 "o'otovu ra+voj
Interneta i Intraneta9 osnova su +a "ristu"anje slo8enom "oslu
rein8enjerin'a "oslovni) "rocesa. 5tuda rein8enjerin' "oslovni)
"rocesa tre4a +asnivati na najnovijim sa+nanjima9 te)nikama i
te)nolo'ijama9 kao i "rinci"ima distri4uirane o4rade9 kori36enja 4a+a
"odataka9 "osti+anja kom"ati4ilnosti u mre8ama ra;unara i
u"otre4ama ureCaja +a "rika+ informacija. &rila+ ra+matranja
te)ni;koIte)nolo3ki) resursa tre4a da je u sa'lasnosti sa otvorenom
ar)itekturom referentno' modela or'ani+acije +a standarde9 'de je
de<nisano sedam nivoa "ove+ivanja i komuniciranja ra;unarske i
dru'e o"reme?
:ID5 #. A&&2I.A(I5: -a"likacijski nivo0
:ID5 %. &R/S/:(A(I5: -"re+entacijski nivo0
:ID5 . S/SSI5: -nivo sesije0
:ID5 $. (RA:S&5R( -trans"ortni nivo0
:ID5 !. :/(M5RB -mre8ni nivo0
:ID5 2. DA(A 2I:B -nivo "odaci I ve+e0
alempije@beotel.yu 46
:ID5 1. &NISI.A2 -<+i;ki nivo0
&ri i+4oru o"reme tre4a imati u vidu te)ni;koIte)nolo3ke "reduslove9
koji su sa'ledavani "rema strukturi ar)itekture referentno' modela?
kvalitetan komunikacioni sistem9
visok ste"en kom"ati4ilnosti ra;unarske o"reme9
otvorenost mre8ne ar)itekture9
modularnost o"reme krajnji) korisnika9
e<kasnost sistema u"ravljanja "odacima9
kori36enje softverski) "roi+voda +a ra+voj a"likacije.
Bvalitetan komunikacioni sistem
>a "otre4e "ot"une distri4ucije i autonomnosti krajnji) korisnika u
"ristu"u rein8enjerin'a "oslovni) "rocesa9 komunikacioni sistem ima
klju;nu ulo'u kao osnovni deo inte'racije. 5tuda je jasno da
kvalitetan komunikacioni sistem mo8e mno'o da do"rinese
us"e3nosti funkcionisanja "od uslovom da ne +avisi od ra;unarske
o"reme9 da o4e+4eCuje neo'rani;eno komuniciranje meCu svim
krajnjim korisnicima i da "oseduje mo'u6nost inte'racije informacija
u o4liku "odataka9 'lasa9 teksta9 slike i crte8a. 2okalne mre8e -2A:0
"redstavljaju od'ovaraju6i komunikacioni "odsistem +a lokalna
'eo'rafska "odru;ja9 "o3to e<kasno omo'u6uju "ot"unu inte'raciju
svi) krajnji) korisnika u jedinstven sistem9 a mo'u da se "ove+uju i sa
dru'im mre8ama +a "renos "odataka i informacija -7A:9 MA: i GA:
mre8e0. >a ve6a rastojanja koriste se javne mre8e +a "renos 'ovora i
"odataka9 "rivatne mre8e i mre8e "ose4ni) namena. (akoCe9 kvalitetni
i "ou+dani modemski ureCaji i koncentratori ;ine deo ovo' sistema.
Sve to "redstavlja osnovne "ret"ostavke i +a najnovije trendove
ra+voja IntranetIsistema9 kojim tre4a da se omo'u6i "ove+ivanje u
okviru "redu+e6a.
Bom"ati4ilnost ra;unarske o"reme
Jedan od osnovni) "ro4lema +a s"rovoCenje "ostu"ka rein8enjerin'a
"oslovni) "rocesa je ostvarivanje kom"ati4ilnosti i+meCu ra;unarske
o"reme radi njeno' "ove+ivanja i meCuso4no' rada.
Bom"ati4ilnost ra;unarske o"reme je neo")odna da 4i mo'la da ;ini
alempije@beotel.yu 47
distri4uirani sistem9 "o'otovu kom"ati4ilnost centrali+ovane o"reme
sa o"remom na mestima krajnji) korisnika o4rade "odataka i
informacija.
7eCutim9 kom"ati4ilnost koja mora da "ostoji +a "otre4e <+i;ko' i
lo'i;ko' "ove+ivanja ra+li;ite o"reme nije dovoljna9 ve6 je
neo")odna i kom"ati4ilnost i +a ostale nivoe komuniciranja dva
korisnika "rema 5SI -5"en SJstem Interconnection0 referentnom
modelu9 'de je "ose4no 4itna kom"ati4ilnost a"likativno' nivoa i
nivoa "redstavljanja "odataka i informacija.
&rilikom i+4ora ra;unarske o"reme tre4a te8iti da i+meCu o"reme
"ostoji 3to ve6i ste"en kom"ati4ilnosti rada na svim nivoima
"osmatranja "rema 5SI referentnom modelu. U ve+i s tim 4itno je
na'lasiti da se i "rilikom i+4ora softvera9 tj. sistema +a u"ravljanje
4a+ama "odataka mora voditi ra;una da "ostoji softverski "roi+vod
koji se mo8e instalirati na svim ra;unarskim "latformama. (o je
strate3ka odluka rukovodstva "redu+e6a i od te odluke mo8e +avisiti
te)nolo3ki na"redak "redu+e6a.
5tvorenost sistema distri4uirane o4rade
Distri4uirani sistemi se 4a+iraju na "otre4i dis"er+ije informacija i
"redstavljaju koordinirani sku" mo'u6nosti o4rade informacija u dva
ili vi3e ne+avisna resursa. 5snovni +a)tevi distri4uiranim sistemima
sa'ledavaju se u sklo"u do"rinosa ra+voju informacioni) sistema9 i to
"rvenstveno radi?
"ru8anja novi) kvaliteta krajnjem korisniku9
mo'u6nosti kori36enja +ajedni;ki) resursa9
rastere6enja centrali+ovani) resursa9
autonomnosti delova sistema9
ve6e Reksi4ilnosti inte'racije sistema.
Savremeni sistemi distri4uirane o4rade +a)tevaju otvorenost mre8ne
ar)itekture ovi) sistema9 sa tendencijom da se formiraju "ot"uno
distri4uirane strukture i da se o4e+4edi 3to ve6a inte'racija svi)
ra;unarski) i dru'i) ureCaja.
7odularnost ra;unarske o"reme
(ro3kovi reali+acije distri4uirane o4rade su veoma 4itan i9 to
alempije@beotel.yu 48
naj;e36e9 o'rani;avaju6i faktor i+'radnje slo8eni) distri4uirani)
sistema9 koji tre4a sa'ledavati kao +4ir tro3kova ra;unarski) i dru'i)
ureCaja9 tro3kova komunikaciono' "ove+ivanja i "renosa "odataka9
tro3kova sistemski) i a"likativni) mo'u6nosti meCuso4no' rada svi)
resursa9 tro3kova ve+ani) +a kadar "otre4an +a ra+voj9 uvoCenje i
odr8avanje sistema9 kao i tro3kova krajnji) korisnika +a eks"loataciju
ovakvi) sistema.
Ra;unarska o"rema u okviru klijentHserver ar)itekture9 a +a "otre4e
distri4uirano' sistema9 mo8e se "osmatrati u dva osnovna o4lika9 i to
kao
ra;unarska o"rema +ajedni;ki) resursa -strana servera0 i
ra;unarska o"rema krajnje' korisnika -strana klijenta0.
>a reali+aciju "ostu"ka rein8enjerin'a "oslovni) "rocesa veoma je
4itno da se ostvari modularnost ra;unarske o"reme9 "ose4no o"reme
na mestima krajnji) korisnika. (akoCe9 4itno je da se o"timalno
"ostave +ajedni;ki resursi9 koji mo'u 4iti sme3teni na jednoj lokaciji
ili9 "ak9 distri4uirani na vi3e lokacija sa de<nisanim odnosima.
/<kasnost sistema u"ravljanja "odacima
&odaci "redstavljaju osnovni resurs9 "a je otuda u"ravljanje "odacima
u ovakvim sistemima od i+u+etne va8nosti9 "o'otovu kada je re; o
kori36enju i u"ravljanju distri4uiranim 4a+ama "odataka9 'de
sistemska "odr3ka tre4a da osi'ura kontrolisanu distri4uciju i
redundansu "odataka9 4r+o i "reci+no lociranje i mani"ulisanje
"odacima. 5snovni +a)tevi u"ravljanja "odacima su iska+ani kro+
"otre4u uni<cirano' or'ani+ovanja i inte'racije "odataka9 kao i
o4e+4eCivanja +a3tite i "ou+danosti "odataka. U okviru ti) +a)teva
o'leda se e<kasnost sistema +a u"ravljanje "odacima.
&rilikom reali+acije distri4uirani) sistema tre4a te8iti da se koristi
jedinstvenost sistema u"ravljanja "odacima9 i to "re sve'a +4o'
trans"arentnosti "odataka i+meCu ra;unara9 3to je "ose4no 4itno +a
slo8ene distri4uirane sisteme9 kod koji) se koriste distri4uirane i
inte'risane 4a+e "odataka9 a "rocesiranje vr3i sa vi3e ra;unara.
alempije@beotel.yu 49
Bori36enje sistemske "odr3ke
+a ra+voj a"likacija
Us"e3nost distri4uirani) sistema se "ose4no o'leda u ne+avisnosti
korisnika da 4e+ mno'o na"ora i ula'anja ra+vijaju a"likacije +a svoje
"otre4e. Ste"en ne+avisnosti9 tj. us"e3nosti distri4uirani) sistema je
utoliko ve6i ukoliko te)ni;ka sredstva "oseduju ve6u sistemsku
"odr3ku +a ra+voj a"likacija9 "rila'oCenu 3to ve6em 4roju ljudi.
Ar'umenti da se to 3to 4olje ostvari9 mo'u se sa'ledati u kori36enju
sistemske "odr3ke9 kao 3to su?
je+ici +a u"ite 4a+ama "odataka9
'eneratori i+ve3taja9
ne"roceduralni je+ici vi3e' nivoa9
'eneratori a"likacija9
"arametri+ovani namenski softverski "aketi.
Bori36enje sistemske "odr3ke +a ra+voj a"likacija je sve nu8nije9 jer
se time o4e+4eCuju kra6e vreme kreiranja a"likacije9 "ove6anje ulo'e
krajnji) korisnika i lak3e odr8avanje a"likacija. (akoCe9 ostvaruje se i
ve6a inte'racija krajnji) korisnika i +ajedni;ki) ra;unarski) resursa
na 4a+i jednostavnosti softverski) sintaksi i Reksi4ilnosti u
s"eci<kaciji u"ita i +a)teva. &ri tome tre4a imati u vidu da9 sa
stanovi3ta krajnje' korisnika9 to 4ude jedinstveno or'ani+ovano i
sveo4u)vatno namenjeno +a)tevima korisnika.
0ktivnost
1.3.2. 5adrovske !otre)e
&od kadrovskim "otre4ama "odra+umevaju se 4roj "otre4no' kadra
+a reali+aciju "rojekta rein8enjerin'a "oslovni) "rocesa i "otre4na
o4uka +a kori36enje informacioni) te)nolo'ija.
U+ o4e+4eCivanje neo")odne ra;unarske o"reme9 komunikacione i
ostale "rate6e o"reme9 od "ose4no' +na;aja su i kadrovski resursi9
odnosno kvalitetna i u dovoljnoj meri +astu"ljena kadrovska "odr3ka.
Sa'lasno tom "rila+u9 kao informati;ku osnovu u s"rovoCenju
rein8enjerin'a "oslovni) "rocesa9 tre4a imati minimum "otre4no'
kadra. &otre4ni su?
alempije@beotel.yu 50
rukovodilac9
vode6i "rojektant +a modeliranje "rocesa i "odataka9
vode6i "rojektant softverski) re3enja9
vode6i "rojektant 4a+e "odataka9
sistem in8enjer9
referent dokumentacije.
&ose4no +na;ajnu ulo'u tre4a da imaju kontinuirani "roces
o4ra+ovanja kadra i automati+acija nji)ovo' rada9 kao i adekvatni
o4lici funkcionalno' or'ani+ovanja. (o je "odjednako +na;ajno i +a
fa+u ra+voja i +a fa+u kori36enja. U"ravo +ato9 s)odno usvojenoj
metodolo'iji9 tre4a dati i "re'led slede6i) kurseva?
kom"jutersko o"ismenjavanje -MI:D5MS9 7S Mord09
inte'racija IS i +a)teva sistema kvaliteta -modeliranje
"rocesa I ,&Ein09
modeliranje "odataka I /REin9
'enerisanje "rototi"ske a"likacije u 7S A../SSIu9
rad sa ta4elama I 7S /F./29
mre8ni rad i I:(/R:/( I :J/G5DI S/RDISI.
alempije@beotel.yu 51
Bom"jutersko o"ismenjavanje
-MI:D5MS9 7S Mord0
Sadr8aj kursa?
Ra;unari i ra;unarski sistemi. Sistem )ardver. Sistem softver. Sistem
dokumentacije. &. ra;unari9 kon<'uracija9 kom"onente9 3tam"a;i.
MI:D5MS o"erativni sistem? 5snovno o MI:D5MS okru8enju i
na;inu kori36enja "ro+ora. 5r'ani+acija "odataka. &ojam
direktorijuma9 sta4la9 navi'acija. Rad sa disketom -formati9 ka"aciteti9
formati+ovanje0. (i"ovi "odataka.
7icrosoft 5Wce I funkcije i elementi.
M5RD for MI:D5MS? &o+ivanje "ro'rama M5RD for MI:D5MS.
Dokument9 font9 format stranice9 ta4ulatori9 automatski 4ackIu"9
kori36enje stilova9 "ode3avanje osnovni) "arametara stranice.
:avi'acija9 unos teksta9 4risanje9 o4ele8avanje teksta. 5"eracije sa
4lokovima teksta. U4acivanje "rekida stranica9 strani;enje9 )ederI
futer9 fusnota. U4acivanje datoteka9 okvira i slika. /ditor formula. Rad
sa makroima. =tam"anje dokumenta. Unakrsne ta4ele. ,a+e
"odataka.
NapomenaE 5"ismenjeni korisnici su korisniji sa'ovornici9 jer imaju
vi3e +a)teva i "ro3ireni su im vidici.
Inte'racija IS i +a)teva sistema kvaliteta
-7odeliranje "rocesaI,&Ein 0
Sadr8aj kursa?
>a3to vr3iti modeliranje "rocesaQ Rein8enjerin' kao element
inte'racije IS5 9111 i modeliranja "rocesa. >a3to se "roces modeliraQ
54e+4eCivanje kvaliteta softvera u skladu sa standardima IS5 9111.
=ta 6e "roces da "rika8eQ Funkcionalno modeliranje. Sintaksa i
semantika 'ra<;ko' je+ika ID/F1. Granice modela. Bontekstni
dija'ram. Dekom"o+icioni dija'ram. Sta4lo aktivnosti. Inte'racija
"rocesa i "odataka "reko re;nika "odataka. DataRoE -DFD0
modeliranje. ;buka u kori{}enju =8*- alata !+'in.
NapomenaE 54u;eni korisnici celoku"nu komunikaciju i o"isivanje
"ostu"aka ostvaruju na 'ra<;kom nivou i "oka+uju 4olje
alempije@beotel.yu 52
ra+umevanje.
7odeliranje "odatakaI/REin
Sadr8aj kursa?
=ta je to ID/F1F standardQ Identi<kacija kandidata +a entitete.
Identi<kacija ve+e. De<nisanje entiteta i relacija. :e+avisni entitet.
>avisni entitet. Asocijativni entitet. Identi<kuju6e i neidenti<kuju6e
ve+e. I+rada /R modela. Atri4uti /R modela. 2ista kandidata +a
atri4ute. De<nisanje klju;eva u modelu. Atri4uti i normali+acija.
De<nisanje "oslovni) "ravila. 5'rani;enja. &rika+ i veri<kacija
kardinalnosti ve+a. De<nisanje referencijalno' inte'riteta.
Identi<kacija "oslovno' domena. Identi<kacija o"eracija.
NapomenaE 54u;eni korisnici su korisni sa'ovornici +a modeliranje
"odataka9 jer na ovom nivou9 "re ne'o 3to se "reCe na "ro'ramiranje9
tre4a ra+re3iti 3to vi3e dilema.
Generisanje "rototi"ske a"likacije
u 7S A../SSIu
Sadr8aj kursa?
&revoCenje strukture /REinIa. Generisanje ta4ela. Generisanje
formata i validacioni) "ravila. Bori36enje Mi+ardIa. Di+ajniranje i
kor36enje formi. U"ravljanje "odacima. Dodeljivanje i odu+imanje
"rivile'ija dru'im korisnicima. U"oreCivanje AccessIa 2.1 sa AccessI
om 9# i AccessIom 2111 i ve+a sa SX2 serverom. &rika+ reali+ovano'
softvera +a de<nisan model "odataka.
NapomenaE 7S A../SS je do4ra "latforma +a "rototi"sko
"ro'ramiranje koje9 "o i+4oru od'ovaraju6e' SU,&9 mo8e da ostane
klijentIstrana u okviru klijentHserverIar)itekture.
Rad sa ta4elamaI7S /F./2
Sadr8aj kursa?
7S /F./29 vrste "odataka. Unos numeri;ki) "odataka9 nat"isa9
datuma i vremena9 lo'i;ki) i+ra+a9 formula. Unos adrese 6elije.
alempije@beotel.yu 53
A"solutna i relativna adresa 6elije. Formati+ovanje i "oravnavanje
"odataka. I+4or fonta. Dodavanje okvira ta4eli. &rika+ karakteristika
ta4ele.
&rika+ formula i funkcija. Dodeljivanje funkcija. &romena formula.
7atemati;ke i statisti;ke funkcije. Funkcije 4a+e "odataka. >nakovne
i datumske funkcije. Finansijske funkcije. Funkcije "ose4ne namene.
Breiranje 4a+e "odataka.
Dodavanje +a"isa i atri4uta. ,risanje +a"isa i atri4uta. &retra8ivanje
+a"isa i sortiranje.
I+rada i+ve3taja. Breiranje i rad sa 'ra<konima. &romena vrste
'ra<kona. 7akroi.
NapomenaE 5vaj kurs je "rela+no re3enje da 4i se omo'u6ilo da se
ve6 ku"ljeni ra;unari 3to "re na"une "odacima ta4elarno' ti"a.
7re8ni rad9 Internet i nje'ovi servisi
Sadr8aj kursa?
Bori36enje klijentHserverIa"likacija. Ra+vojno okru8enje klijentHserverI
a"likacija. Borisni;ki interfejsi u klijentIa"likacijama. 7re8a u
klijentHserverIsistemu. (o"olo'ija mre8e. &rocesi u sistemu
klijentHserver. =ta je InternetQ 5r'ani+acija Interneta. &ove+ivanje na
Internet. :a;ini "ristu"a Internetu. :ivoi "ove+anosti. =ta nudi
InternetQ /Imail I elektronska "o3ta. MMM I multimedijalni "ristu" i
dr. &ravljenje so"stvene Eorld Eide Ee4 -EEE0 "re+entacije. Struktura
EEE "re+entacije -N(72 je+ik0. &re'led na"ravljene "re+entacije sa
EEE servera "utem EEE 4roEsera.
NapomenaE Burs je namenjen svim +a"oslenima koji koriste Internet i
nje'ove servise.
&redlo8eni kursevi tre4a da o4e+4ede metodolo3ki usa'la3en na;in
rada na i+radi detaljno' "rojekta.
&ored ovi) o"3ti) kurseva9 "ri i+radi detaljno' "rojekta tre4a
o4e+4editi stru;nu i konsultativnu "omo69 naro;ito "ri re3avanju
"ro4lema modeliranja "odataka9 odnosno or'ani+acije 4a+e "odataka.
alempije@beotel.yu 54
0ktivnost
1.3.3. %inamika realizacije i
tro"kovi
Bada je re; o dinamici reali+acije i tro3kovima9 neo")odno je
kori36enje neko' od softvera +a u"ravljanje "rojektima -n"r.9 7S
&roject0.
(ro3kovi reali+acije naj;e36e se "osmatraju u okviru 'ru"a "oslova
kao?
tro3kovi ra+voja a"likacija9
tro3kovi te)ni;koIte)nolo3ki) resursa9
tro3kovi eks"loatacije.
Svaka od ovi) 'ru"a "oslova se9 takoCe9 sastoji i+ "ose4ni) tro3kova i
otuda s"eci<kaciju tro3kova tre4a da ;ini slede6a struktura?
tro3kovi ra+voja?
o4uka "rojektno' tima9
ra+voj +ajedni;ki) a"likacija9
stru;na "omo6 "ri ra+voju9
ra+voj i do"una so"stveni) a"likacija9
softverski "roi+vodi +a ra+voj a"likacijaA
tro3kovi te)ni;koIte)nolo3ki) resursa?
ra;unarska o"rema +ajedni;ki) resursa9
o"rema komunikaciono' sistema9
do"una i kom"letiranje ra;unarske o"reme9
"rate6a o"rema i ada"tacija "rostoraA
tro3kovi eks"loatacije?
odr8avanje o"reme9
"otro3nja elektri;ne ener'ije9
kori36enje komunikacioni) linija9
amorti+acija o"reme9
alempije@beotel.yu 55
"late radnika.
Bao re+ultat aktivnosti "0..unkcionalno modeliranje" tre4alo 4i da
"roi+aCe dokument "od na+ivom @Studija elemenata "otre4ni) +a
rein8enjerin' "oslovni) "rocesa@ na osnovu koje se s"rovodi slede6a
aktivnost? "2. ,nformaciono modeliranje".
alempije@beotel.yu 56
0ktivnost
2. $nformaciono
modeliranje
0ktivnost 2.1. %e+nisanje
detaljni- za-teva
0ktivnost 2.2. 5reiranje &6
dijagrama
0ktivnost 2.3. 5reiranje atri)#ta
0ktivnost 2.4. %e+nisanje
!oslovni- !ravila
alempije@beotel.yu 57
alempije@beotel.yu 58
Aktivnost "2. ,nformaciono modeliranje" se i+vodi na osnovu
de<nisani) kriti;ni) funkcija +a "ret)odno uraCenu aktivnost "0.
.unkcionalno modeliranje". Briti;ne funkcije "redstavljaju9 svaka +a
se4e9 "o jedan 'lavni "rojekat koji se ra+vija u okviru aktivnosti? "2.
,nformaciono modeliranje". Informacioni model "rika+uje u kakvom su
meCuso4nom odnosu "odaci u nekom realnom sistemu.
Informaciono modeliranje omo'u6uje?
de<nisanje sistemske dokumentacije koja se mo8e koristiti
+a 4a+u "odataka i +a ra+voj a"likacija da 4i oso4lje mo'lo da
de<ni3e sistemske +a)teveA
4olju komunikaciju meCuso4no i sa krajnjim korisnicimaA
jasnu sliku o "oslovnim "ravilima i
Ulo'i;kuU sliku 4a+e "odataka koju mo'u koristiti automatski
alati +a 'enerisanje sistema +a u"ravljanje 4a+ama "odataka
-SU,&0.
US/D A(? AU(N5R? Alem"ije Deljovic DA(/?
R/D? &R5J/.(? 7odel 2
19.11.199%
11.1!.2111
:5(/S? 1 2 ! $ % # * 9 11
M5RBI:G
DRAF(
R/.577/:D/D
&U,2I.A(I5:
R/AD/R DA(/ .5:(/F(?
A1
2
I:F5R7A.I5:5
75D/2IRA:J/
2.1
D/FI:ISA:J/
D/(A2J:IN
>AN(/DA
I>RADA D/(A2J:5G
S(A,2A AB(ID:5S(I
D/FI:ISA:J/
D/B57&5>I.I5:5G
DIJAGRA7A
D/FI:ISA:J/
D/(A2J:/ 7A(RI./
5D:5SA
D/FI:ISA:J/
DIJAGRA7A (5BA
&5DA(ABA
A:A2I>A D/(A2J:IN
>AN(/DA
2.2
BR/IRA:J/
/R DIJAGRA7A
ID/:(IFIBA.IJA
BA:DIDA(A >A
/:(I(/(/
ID/:(IFIBA.IJA
D/>A
D/FI:ISA:J/ /R
75D/2A
D/RIFIBA.IJA
/R DIJAGRA7A
2.!
BR/IRA:J/
A(RI,U(A
USDAJA:J/
2IS(A
BA:DIDA(A >A
A(RI,U(/
D/FI:ISA:J/
B2JUO/DA
&5S(U&AB
:5R7A2I>A.IJ/
D/FI:ISA:J/
A(RI,U(A
2.$
D/FI:ISA:J/
&5S25D:IN
&RADI2A
D/FI:ISA:J/
BARDI:A2:5S(I
D/>A
D/FI:ISA:J/
R/F/R/:.IJA2:IN
I:(/GRI(/(A
ID/:(IFIBA.IJA
&5S25D:5G
D57/:A
*lika 4.0 *tablo aktivnosti "2.,nformaciono modeliranje"
:a slici !.1. "rika+ano je sta4lo aktivnosti +a "2.,nformaciono
alempije@beotel.yu 59
modeliranje"9 koje se sastoji od slede6i) "odreCeni) aktivnosti?
Aktivnost 2.1. De<nisanje detaljni) +a)teva9
Aktivnost 2.2. Breiranje /R modela9
Aktivnost 2.!. Breiranje atri4uta9
Aktivnost 2.$. De<nisanje "oslovni) "ravila.
U daljem tekstu detaljno 6e 4iti o4ra+lo8ene aktivnosti "rika+ane na
slici !.1.
alempije@beotel.yu 60
0ktivnost
2.1. %e+nisanje detaljni-
za-teva
Aktivnost "2.0. &e3nisanje detaljnih zahteva" se i+vodi na osnovu
"ret)odno uraCene aktivnosti "0. .unkcionalno modeliranje"9 tj.
de<nisane studije kojom se odreCuju okviri koji se u ovoj aktivnosti +a
i+a4rane "odsisteme detaljno ra+raCuju. De<nisanje detaljni) +a)teva
tre4a da "redstavlja revi+iju "ostavljeni) elemenata i+ studije9 u+
dalje detaljno "rodu4ljivanje +a i+a4ranu funkciju +a koju se s"rovodi
rein8enjerin' "oslovni) "rocesa. De<nisanje detaljni) +a)teva se
i+vodi "osredstvom slede6i) akivnosti -slika !.10?
Aktivnost 2.1.1. I+rada detaljno' sta4la aktivnosti9
Aktivnost 2.1.2. De<nisanje dekom"o+iciono' dija'rama9
Aktivnost 2.1.!. De<nisanje detaljni) matrica odnosa9
Aktivnost 2.1.$. De<nisanje dija'rama toka "odataka9
Aktivnost 2.1.. Anali+a detaljni) +a)teva.
alempije@beotel.yu 61
US/D A(? AU(N5R? Alem"ije Deljovic DA(/?
R/D? &R5J/.(? 7odel 2
1*.1$.199%
11.1!.2111
:5(/S? 1 2 ! $ % # * 9 11
M5RBI:G
DRAF(
R/.577/:D/D
&U,2I.A(I5:
R/AD/R DA(/ .5:(/F(?
A2
:5D/? (I(2/? :U7,/R? D/FI:ISA:J/ D/(A2J:IN >AN(/DA
A2.1
2.1.1
I>RADA
D/(A2J:5G
S(A,2A
AB(ID:5S(I
2.1.2
D/FI:ISA:J/
D/B57&5>I.I5:5G
DIJAGRA7A
2.1.!
D/FI:ISA:J/
D/(A2J:/
7A(RI./
5D:5SA
2.1.$
D/FI:ISA:J/
DIJAGRA7A
(5BA
&5DA(ABA
2.1.
A:A2I>A
D/(A2J:IN
>AN(/DA
I1
51
71
.1
Sta4lo
aktivnosti
Detaljni
dekom"o+icioni
dija'ram
Informacije od
korisnika
Detaljni
+a)tevi DFD
.RUD i IRU: matrica
Radna
'ru"a
Idejni
"rojekat
*lika 4.2. &ekompozicioni dijagram za aktivnost "2.0. &e3nisanje detaljnih
zahteva"
:a slici !.2. "rika+an je dekom"o+icioni dija'ram +a aktivnost "2.0.
&e3nisanje detaljnih zahteva"9 'de je de<nisan tok informacija9
"o;ev od ula+no' dokumenta @Idejni "rojekat@9 "reko na4rojani)
aktivnosti i "rika+ani) na slici !.29 do i+la+a de<nisano' dokumentom
@Detaljni +a)tevi@.
Dekom"o+icionim dija'ramom +a aktivnost "2.0. &e3nisanje detaljnih
zahteva" de<ni3u se tokovi informacija i+meCu "odreCeni) aktivnosti.
5 dekom"o+icionom dija'ramu u daljem tekstu 4i6e vi3e re;i.
0ktivnost
2.1.1. $zrada detaljnog sta)la
aktivnosti
Ula+ u aktivnost "2.0.0. ,zrada detaljnog stabla aktivnosti" je idejni
"rojekat na osnovu do4ijene informacije od korisnika. Sama aktivnost
se i+vodi +a i+a4ranu kriti;nu funkciju9 'de se vr3i dekom"o+icija do
nivoa "rimitivni) "rocesa +a koje se reali+uju od'ovaraju6i scenariji
do'aCanja. I+la+ i+ ove aktivnosti je detaljno sta4lo aktivnosti +a
kriti;nu funkciju.
:a;in i+rade sta4la aktivnosti o"isan je u "ret)odnom "o'lavlju.
alempije@beotel.yu 62
5vde tre4a ista6i da "rimenom ,&EinIa .AS/ alata ovaj "ristu" ima
novu dimen+iju9 jer omo'u6uje da se nastavi "rojekat na onim
mestima 'de se +avr3ava navedena studija. 5vakav "ristu"
omo'u6uje stalnu a8urnost "rojekta i "ra6enje vremenske i nov;ane
dinamike9 ve+ane +a s"rovoCenje rein8enjerin'a i+a4rane "oslovne
funkcije "redu+e6a.
:a osnovu de<nisano' detaljno' sta4la aktivnosti u slede6em koraku
"rela+i se na de<nisanje dekom"o+iciono' dija'rama.
alempije@beotel.yu 63
0ktivnost
2.1.2. %e+nisanje
dekom!ozicionog dijagrama
Ula+ u aktivnost "2.0.2. &e3nisanje dekompozicionog dijagrama" su
dokumenta? @Detaljno sta4lo aktivnosti@ i @Informacije od korisnika@. U
okviru ove aktivnosti us"ostavljaju se )ori+ontalne ve+e i+meCu
"odaktivnosti koje su "ove+ane strelicama. I+la+ i+ ove aktivnosti je
@Detaljni dekom"o+icioni dija'ram@ .
U okviru de<nisanja dekom"o+iciono' dija'rama u daljem tekstu 4i6e
ra+matrani?
"ravou'aonici u dekom"o+icionom dija'ramu9
strelice u dekom"o+icionom dija'ramu9
'rananje ili udru8ivanje strelica9
u'ao "osmatranja9
"ostoje6i -asIis0 i 4udu6i -toI4e0 model9
formiranje tro3kovni) centara9
tekstualni o"is.
&ravou'aonici u dekom"o+icionom dija'ramu
Aktivnosti su9 kao 3to je ve6 re;eno9 sme3tene u "ravou'aonicima
koji se crtaju u dija'onalnom smeru9 od 'ornje' levo' u'la strane ka
donjem desnom u'lu. Svakoj aktivnosti mora se dodeliti na+iv u
o4liku 'la'olske fra+e9 te mora imati najmanje jednu kontrolnu i jednu
i+la+nu strelicu.
:a slici !.!. "rika+ana je struktura formiranja dekom"o+iciono'
dija'rama. &ola+i se od kontekstno' dija'rama -o"isan u "ret)odnom
"o'lavlju0 koji se de<ni3e na najvi3em nivou9 "a se i+vodi
dekom"onovanje u "odreCene -c)ild0 dija'rame. Svaka od
"odaktivnosti "odreCeno' dija'rama mo8e kreirati svoj dija'ram na
ni8em nivou. :a taj na;in se de<ni3u ra+li;iti nivoi a"strakcije9 tj. na
vi3im nivoima su o"3tije aktivnosti i 'ru"isane strelice9 koje se na
alempije@beotel.yu 64
ni8im nivoima dekom"onuju i detaljnije o"isuju.
$
!
2
1
!
!
2
1
2
1
A1
A$
A$2
AI1
5"3tije
Detaljnije
A$
A$2
A1
1
*lika 4.4. &ekompoziciona struktura ,&-./ metodologije
Strelice u dekom"o+icionom dija'ramu
Strelice u okviru dekom"o+iciono' dija'rama omo'u6uju t+v.
)ori+ontalno "ove+ivanje de<nisani) aktivnosti.
Bao 3to se mo8e videti9 na slici !.!. strelice de<nisane na
kontekstnom dija'ramu se "renose u "odreCeni dekom"o+icioni
dija'ram. Dakle9 strelice de<nisane u aktivnosti koja "ret)odi
-UroditeljU0 "ojavljuju se u "odreCenom dekom"o+icionom dija'ramu
alempije@beotel.yu 65
kao grani~ne strelice #boundarF arro's(, tj. kao strelice koje nastaju
van okvira "osmatrano' dija'rama -slika !.$0.
U okviru dekom"o+iciono' dija'rama de<ni3u se t+v. eksplicitne ili
interne strelice koje "ove+uju aktivnosti -slika !.$0. Dekom"o+icioni
dija'ram 4e+ unutra3nji) strelica uka+uje na or'ani+acioni "ristu"
dekom"o+iciji9 a ne funkcionalni.
Grani;ne
strelice
Grani;ne strelice
Interne strelice
*lika 4.7. 9rani~ne i interne strelice #!oundarF and ,nternal 8rro's(
Ula+ne 'rani;ne strelice koje dola+e i+ nadreCeno' dija'rama u
"odreCeni dija'ram mo'u se deliti u vi3e s"eci<;ni) strelica i
o4rnuto9 i+la+ne 'rani;ne strelice i+ "odreCeno' dekom"o+iciono'
dija'rama se 'ru"i3u i i+la+e u nadreCeni dija'ram.
Strelice u okviru dekom"o+iciono' dija'rama mo'u se de<nisati kao?
strelice koje se 'ranaju ili udru8uju9
"ovratne strelice i
skrivene strelice.
9rananje ili udru`ivanje strelica
Strelice "redstavljaju svojevrsan cevovod koji se mo8e 'ranati ili
udru8ivati9 kao 3to je "rika+ano na slici !..
U "rvom slu;aju9 "rika+anom na slici !.9 dola+i do 'rananja ula+a A
u iste sku"ove informacija9 dok se u dru'om slu;aju odvaja novi
"odsku" ,. U tre6em slu;aju se A 'rana u , i .9 a u ;etvrtom se A i ,
inte'ri3u u AK,. &re"oru;uje se da se de<ni3e na+iv svake strelice da
ne 4i do3lo do dvosmislenosti.
alempije@beotel.yu 66
&uni sku"ovi informacija u svim 'ranama.
A
A
A
&odela na "un sku" u "rvoj i "odsku"
informacija u dru'oj 'rani
A
B
A
&odela na ra+li;ite "odsku"ove informacija
A
C
B
Inte'racija strelica
A & B
B
A
*lika 4.A. *truktura ra~vanja i udru`ivanja strelica
+ovratne strelice
+ovratna #feedback( petlja je "ojava kada i+la+ i+ aktivnosti
"redstavlja ula+9 kontrolu ili me)ani+am neke ranije aktivnosti u
dekom"o+icionom dija'ramu. 5vakvi i+la+i su9 o4i;no9 neke
ne'ativne karakteristike.
I+la+ I Bontrola I+la+ I Ula+ I+la+ I 7e)ani+am
1
2
1
2
1
*lika 4.C. rste povratnih izlaza
U "rvom i dru'om slu;aju "rika+anom na slici !.%. "ovratna "etlja i
ula+na "ovratna "etlja kao kontrola "redstavljaju iteraciju ili rekur+iju9
dok u tre6em slu;aju "ovratna "etlja I+la+ I 7e)ani+am ima ulo'u
"odr3ke na nivou resursa +a i+voCenje odreCene aktivnosti.
alempije@beotel.yu 67
*krivene strelice
&ose4an ti" strelica su t+v. skrivene #tunneled( strelice koje nastaju
ako se 8eli da strelice ne 4udu viCene na nadreCenom ili "odreCenom
dekom"o+icionom dija'ramu. (o je situacija kada je dija'ram
"renatr"an9 "a se +4o' jasno6e i+4e'ava nje'ovo "rika+ivanje. Dru'a
situacija je ako se 8eli "rika+ 4udu6i) do'aCaja.
7o8e 4iti i slu;aj da strelica "redstavlja kontrolu koja se "rimenjuje
na svakoj aktivnosti u dekom"o+iciji9 a da je 4ila "ro"u3tena radi
jasno6e u ni8im nivoima. 5+naka da je strelica sakrivena su +a'rade
-slika !.#0.
:ema "rika+a u dija'ramu
UdeteUta
:ema "rika+a u dija'ramu
UroditeljU
! "
! "
!
"
!
"
C1
I1
M1
O1
! "
! "
!
"
!
"
*lika 4.@. rste skrivenih strelica
alempije@beotel.yu 68
!
2
1
A1
Roditeljski
dija'ram
dija'ram
dete
!
2
1
A12
5vaj i+la+nije "rika+anna
roditeljskoj aktivnosti
.1
.!
Strelica -"o+icija.20 nije
"rika+ananadija'ramudete
A12
I1
51
roditeljska
aktivnost
.1 .2 .!
*lika 4.D. +rimer skrivenih strelica #-<ample of $unneled 8rro's(
Da 4i se ovo "ojasnilo "oslu8i6e "rimer skriveni) strelica na slici !.*.
Ako su skrivene strelice nacrtane u UroditeljUskom dija'ramu -"o+icija
.20 onda se ne "ojavljuju u dija'ramu UdeteUta. Ukoliko su9 "ak9
skrivene strelice nacrtane u dija'ramu UdeteUta9 onda se ne vide u
dija'ramu UroditeljU.
U'ao "osmatranja
&rilikom ID/F1 modeliranja mo'u se ra+matrati ra+li;ita 'ledi3ta +a
re3avanje "ostavljeno' "ro4lema. &ri tom se mora usvojiti jedno
kom"romisno re3enje koje 6e se dalje koristiti. 7eCutim9 ra+li;ita
'ledi3ta se mo'u "redstaviti kori36enjem tako+vani) F/5 -For
/S"osition 5nlJ0 dija'rama samo +a "rika+ivanje. F/5 dija'rami se9
o4i;no9 koriste +a "re+entaciju kada se 8ele ukloniti neki detalji +4o'
lak3e' ra+umevanja "ro4lema. >a ra+liku od ID/F1 'ra<;ko'
dija'rama9 F/5 dija'ram ne mora da "o3tuje ID/F1 "ravila. 5vaj
"rila+ se naj;e36e koristi +a "re+entacije.
&ostoje6i -asIis0 i 4udu6i -toI4e0 model
&rilikom de<nisanja "ostu"ka +a rein8enjerin' "oslovni) "rocesa
alempije@beotel.yu 69
de<ni3u se dva "ristu"a? jedan koji o"isuje "ostoje6e stanje -anali+a
dokumenata9 tj. "o'led odo+do0 i dru'i kojim se de<ni3e 4udu6i
funkcionalni ID/F1 model9 koji se ra+vija "aralelno sa ID/F1F
modeliranjem "odataka -intervju9 tj. "o'led odo+'o0. Ako je velika
ra+lika i+meCu "ostoje6e' i 4udu6e' modela9 "onekad tre4a na"raviti
tre6i model9 kojim se de<ni3u dokumenta +a "otre4e "rela+a sa
"ostoje6e' na 4udu6i model. &rilikom de<nisanja "ostoje6e' stanja
"otre4no je i+4e'avati +amku ti"a @(R/,A25 ,I DA@9 jer se ne 8eli o"is
idealne situacije ve6 onakve kakva stvarno jeste.
Formiranje tro3kovni) centara
7etoda ID/F1 omo'u6ava formiranje tro3kovni) centara i ve+u
aktivnosti i tro3kovno' centra. >a svaku aktivnost se de<ni3u
frekvenca9 du8ina trajanja i cena te aktivnosti na najni8em nivou.
(ro3kovi aktivnosti na vi3em nivou sadr8e tro3kove aktivnosti ni8e'
nivoa. 7odelar "oslovni) "rocesa ,&Ein "odr8ava A,. -ActivitJ ,ased
.ostin'0 sistem i ima interfejs ka A,. alatima9 namenjenim onima koji
menad8ment strate'iju 4a+iraju na aktivnostima i 8ele da "rate
tro3kove ve+ane +a s"rovoCenje rein8enjerin'a "oslovni) "rocesa
-videti Aktivnost "0.4.2. &inamika realizacije i tro{kovi"(.
(ekstualni o"is
&ored "rika+ano' 'ra<;ko' o"isivanja9 "otre4no je9 kao do"unu9 i
tekstom o"isati aktivnosti. (ekstom se o"isuju do detalja namena i
funkcionisanje svake aktivnosti u modelu. (ekstualni o"is se ;esto
koristi da 4i se o4e+4edio kom"letan re+ime "oslovno' "rocesa9 tj.
o"isuju se relevantni detalji do tan;ina. (o je 4itno ako se s"rovode
elementi ve+ani +a internu standardi+aciju i de<nisani "ostu"ci i
u"utstva ve+ani +a seriju standarda IS5 91119 jer "ostu"ci i u"utstva
"ostaju sastavni deo 'ra<;ko' o"isa.
Imaju6i sve to u vidu9 de<nisan je dekom"o+icioni dija'ram +a
Aktivnost "+ra}enje isplata".
alempije@beotel.yu 70
Dekom"o+icioni dija'ram
+a aktivnost @&ra6enje is"lata@
:a osnovu de<nisano' kontekstno' dija'rama -"rika+ano' na slici
2.%0 i sta4la aktivnosti -sa slike 2.#0 de<ni3e se dekom"o+icioni
dija'ram "rika+an na slici !.9.
Sa "ret)odno de<nisano' kontekstno' dija'rama -"rika+ano' na slici
2.%0 automatski su "renesene 'rani;ne strelice9 a na osnovu sta4la
aktivnosti -slika 2.#0 "ojavljuju se ne"ove+ane tri aktivnosti. &otre4no
je 'rani;ne strelice "ove+ati sa od'ovaraju6im aktivnostima i
de<nisati interne strelice koje 6e "ove+ati aktivnosti i+meCu se4e.
US/D A(? AU(N5R? DA(/?
R/D? &R5J/.(? 7odel 1
1$.11.199%
22.1$.2111
:5(/S? 1 2 ! $ % # * 9 11
M5RBI:G
DRAF(
R/.577/:D/D
&U,2I.A(I5:
R/AD/R DA(/ .5:(/F(?
AI1
:5D/? (I(2/? :U7,/R? &RAT/:J/ IS&2A(A
A1
1
5DR@ADA:J/
&5DA(ABA 5
&R/D5DI5.I7A
2
5DR@ADA:J/
=IFAR:IBA
!
I>RADA
I>D/=(AJA
I1
I2
I!
51
52
I$
72
.! .2 .1
&ostu"ak o
i+ve3tavanju
2ista
is"lata
&ostu"ak o
de<nisanju
3ifarnika
&revodioci
&ravilnik o
is"latama
>a)tev i+ kadrovsko'
>a)tev +a is"latu
I+ve3taj knji'ovodstvu
>a)tev +a novu 3ifru
:alo' +a is"latu
>a)tev +a i+ve3taj
=ifarnici
*lika 4.B. &ekompozicioni dijagram za aktivnost "+ra}enje isplata"
>a aktivnost "0.;dr`avanje podataka o prevodiocima" tre4a9 na
osnovu ula+ni) dokumenata? @>a)tev i+ kadrovsko'@ i @>a)teva +a
is"latu@9 de<nisati interni i+la+ni dokument @ 2ista is"lata@9 koji sadr8i
s"isak oso4a +a is"latu "reko 8iroIra;una.
Aktivnost "2. ;dr`avanje {ifarnika" je "ret"ostavka +a us"e3nu
e<kasnost 4udu6e korisni;ke a"likacije. >a ovu aktivnost ula+ je
@>a)tev +a novu 3ifru@9 a i+la+ su @=ifarnici@9 koji su ula+ +a slede6u
aktivnost "4. ,zrada izve{taja" i "ovratna ula+na informacija +a
"ret)odnu aktivnost "0. ;dr`avanje podataka o prevodiocima". >a
"rimer o kome je dosada 4ilo 'ovora u okviru ove aktivnostu9
alempije@beotel.yu 71
odr8avaju se 3ifarnici 5D/2J/:JA9 J/>IBA i RAD:IN 7/S(A.
Sto'a se u testI"rimeru aktivnost "4. ,zrada izve{taja"9 na osnovu
ula+a @>a)tev +a i+ve3taj@ i @2ista is"lata@9 "rave dva i+la+na
dokumenta?
@I+ve3taj knji'ovodstvu@9 'de se knji'ovodstveno vodi
evidencija o o4avljenom "osluA
@:alo' +a i+"latu@9 kojim se 3alje novac +a is"latu na 8iroI
ra;un u 4anci.
:a osnovu de<nisano' dekom"o+iciono' dija'rama u slede6em
koraku je de<nisanje detaljni) matrica odnosa.
0ktivnost
2.1.3. %e+nisanje detaljni-
matrica odnosa
(okovi "odataka "rika+ani strelicama "ove+uju se sa entitetima i sa
svim ili samo sa "ojedinim atri4utima ti) entiteta. Ako se "osmatraju
na;ini na koje strelica koristi entitet9 onda se de<ni3u .RUD matrice
-slika !.1109 3to je skra6enica od?
kreirati entitete9 3to se o+na;ava sa . -.reate0A
"retra8ivati entitete9 3to se o+na;ava sa R -Retrive0A
a8urirati entitete9 3to se o+na;ava sa U -U"date0A
4risati entitete9 3to se o+na;ava sa D -Delete0.
Bada se +a svaku strelicu de<ni3e9 osim na;ina kori36enja entiteta9 i
"ove+anost entiteta sa atri4utima9 onda se de<ni3e IRU: -slika !.110
matrica9 3to je skra6enica od?
u4acivanje atri4uta9 3to se o+na;ava sa I -Insert0A
"retra8ivanje atri4uta9 3to se o+na;ava sa R -Retrive0A
a8uriranje atri4uta9 3to se o+na;ava sa U -U"date0A
dodela nula vrednosti9 3to se o+na;ava sa : -:ull <eld0.
Dakle9 mo'u se kreirati dve matrice?
.RUD matrica9 na kojoj 4i sa jedne strane 4ili entiteti9 a sa
alempije@beotel.yu 72
dru'e strane aktivnosti koje koriste te entitete i
IRU: matrica9 sa de<nicijom kori36enja svako' atri4uta u
odreCenom entitetu i odreCenoj aktivnosti.
De+a ID/F1 funkcionalno' modela i ID/F1F informaciono' modela je
omo'u6ena "reko re;nika "odataka -data dictionarJ mana'er0. :a taj
na;in -indirektnom sin)roni+acijom0 do+voljeno je sin)roni+ovanje
jedno' modela "odataka sa vi3e modela "rocesa9 3to se u "raksi ne
samo ;esto de3ava ve6 i "re"oru;uje. /REin .AS/ alat omo'u6uje
im"ortovanje re;nika "odataka i+ /REinIovo' modela "odataka u
,&Ein model "rocesa i o4rnuto.
Bao 3to se mo8e +aklju;iti9 "re4acivanje re;nika "odataka je
omo'u6eno u o4a smera9 tako da je9 sa stanovi3ta "rojektanta9
ne4itno u kom trenutku je uo;io "otre4e +a "romenama na datom
modelu. U slu;aju da se "ojavi "otre4a da se de<ni3e novi entitet ili
atri4ut9 ili da se i+meni "ostoje6i9 to se mo8e uraditi u ,&EinIu9 a
+atim nado'raditi re;nik "odataka kao ve+a sa /REinIom. 7o'u6e je9
takoCe9 u ,&EinIu de<nisati entitete ili atri4ute koji +a model "odataka
ne tre4a da 4udu vidljivi. /ntiteti i atri4uti i+ re;nika "odataka se
"ridru8uju o4jektima koji o"isuju kretanje "odataka kro+ "rocese9 kao
i na;in kreiranja9 odr8avanja i u"otre4e "odataka.
Bao jedan od va8ni) momenata je "ostu"ak @inver+no' in8enjerstva@
-reverse en'ineerin'0 kada se od 'otovo' softversko' "roi+voda9
"osredstvom /REinIa9 formira nje'ova s"eci<kacija -model
"odataka09 "a se im"ortuje u dekom"o+icioni dija'ram ,&Ein9 'de se
o"isuju entiteti i atri4uti +a kasniji9 t+v. direktni in8enjerin'9 tj.
modeliranje "odataka kori36enjem /REinIa -videti "2. 8ktivnost
,nformaciono modeliranje" 0.
@Inver+ni in8enjerin'@ je "otre4an9 jer "ostoji9 n"r.9 sku" .5,52Iski)
"ro'rama u kojima su de<nisane 'omile datoteka koje se jo3 uvek
koriste9 ali +a koje9 osim i+vorno' koda9 ne "ostoji nikakva
dokumentacija. Da 4i se ove informacije iskoristile "ostu"kom
@inver+no' in8enjerstva@9 tre4a "raviti standardnu s"eci<kaciju dela
sistema9 "a na osnovu nje nastavljati ra+voj9 tj. de<nisati re;nik
"odataka u ,&EinIu. U $. delu +a aktivnost "4. 8plikativno
modeliranje" o ovom "ostu"ku 4i6e vi3e re;i. (re4a na"omenuti da
se na ovaj na;in ne mo8e do4iti "ot"una s"eci<kacija9 jer
im"lementacija neko' softvera je semanti;ki siroma3nija od nje'ove
s"eci<kacije9 "a se ne mo8e rekonstruisati "ot"una semantika
sistema9 mada se na taj na;in i"ak "oku3ava sa kori36enjem ono'a
3to je ve6 "rojektovano kao softver i 3to ve6 radi.
Imaju6i sve to u vidu9 +a "rimer dokumenta @Barton is"lata@ 4i6e
alempije@beotel.yu 73
de<nisane detaljne .RUD i IRU: matrice.
7atrice odnosa +a dokument @Barton is"lata@
:a slici !.11. "rika+an je i+ ,&EinIa Data Usa'e /ditor9 'de se +a
aktivnost "0. ;dr`avanje podataka" o "revodiocima i +a ula+ni
dokument -I0? @>a)tev i+ kadrovsko'@9 de<ni3u entiteti? IS&2A(A9
5S5,A I ./R(IFIBA(. >a entitet 5S5,A9 koji u ovoj aktivnosti ima sve
;etiri o"eracije -.RUD09 de<ni3u se entiteti na kojima se i+vode
o"eracije -kao 3to je "rika+ano na slici !.110.
Bori36enjem na;ina o"isa "rika+ano' na slici !.11. i na slici !.11.
"rika+an je i+ve3taj u o4liku kom4inovane .RUD i IRU: matrice koja
tre4a da "reci+ira do detalja "ravila koja va8e +a entitete i atri4ute i
da omo'u6i "reci+nu i+radu entitetno' dija'rama.
Bao i u "ret)odnim fa+ama9 "otre4no je veri<kovati i+vedene
aktivnosti9 "a se kro+ aktivnost "2.0.A. 8naliza detaljnih zahteva"
o"isuje na;in veri<kacije detaljni) +a)teva.
alempije@beotel.yu 74
*lika 4.0/. +rikaz =6)& i ,6)N matrice
:a+iv aktivnosti :a+iv entiteta .RUD :a+iv atri4uta IRU:
5DR>ADA:J/ 5S5,A .RUD DA(U7> I U:
&5DA(ABA 5 I7/ I U
&R/D5DI5.I7A &2A(A I U
&R/>I7/ I U
SIFRA 5D/2J/:JA :
SIFRA R7 :
SIFRA 5S5,/ IR
S(I7U2A.IJA I U:
J7,G I U
DRS(A I R
./R(IFIBA( .RUD SIFRA J/>IBA R
SIFRA 5S5,/ R
S(/&/: >:A:JA R U
IS&2A(A .RU ,R5J IS&2A(/ IR
SIFRA 5S5,/ R
DA(U7 IS&2A(/ I U
I>:5S I U
5DR>ADA:J/ J/>IB .RUD :A>ID J/>IBA I U
SIFAR:IBA SIFRA J/>IBA IRU
5D/2J/:J/ .RUD 7/S(5 I U
:A>ID 5D/2J/:JA I U
alempije@beotel.yu 75
SIFRA 5D/2J/:JA IRU
RAD.7/S(5 .RUD SIFRA R7 IRU
:A>ID R7 I U
*lika 4.00. =6)& i ,6)N matrica za dokument "5arton isplata@
0ktivnost
2.1.4. %e+nisanje dijagrama
toka !odataka
Dija'ram toka "odataka -D(&0 'ra<;ki je o"is koji "ove+uje "rocese9
tokove "odataka -dokumenta09 skladi3ta "odataka -kartoteke0. Dru'im
re;ima9 dija'ram toka "odataka se koristi +a "rika+ na onom nivou
'de su mo'u de<nisati ula+i9 i+la+i9 tokovi9 skladi3ta i "rocesi.
Dija'ram toka "odataka ili Data FloE Dia'ram -DFD0 u'raCen je u
softverski "roi+vod ,&Ein i koristi se "ri modeliranju "rocesa.
Dija'ram toka "odataka fokusira "ro4lem tokova "odataka i+meCu
"rocesa9 a vr3i i anali+u skladi3ta "odataka radi maksimalno'
"ove6anja nji)ove ras"olo8ivosti i smanjenja vremena "retra8ivanja.
Dija'ram toka "odataka tre4a da nadomesti nedostatke koji "ostoje u
ID/F1 metodolo'iji i de<ni3u se +a ni8e nivoe dekom"o+iciono'
dija'rama.
Dakle9 D(& je sku" "rocesa koji se "aralelno i+vr3avaju i ne tre4a 'a
me3ati sa dija'ramom toka "ro'rama -RoE c)art0. Dija'ram toka
"ro'rama je akcioni dija'ram9 tj. sekvencijalni "roces9 dok je dija'ram
toka "odatakaIsku" "aralelni) "rocesa i ve+a tokova "odataka i
skladi3ta "odataka i+meCu nji).
&rimer ra+lika i+meCu dija'rama toka "odataka i dija'rama toka
"ro'rama -RoE c)art0 mo8e se o"isati na slede6i na;in?
@Ako je redosled aktivnosti u jednom "redu+e6u takav da jedan radnik
o4raCuje jedan dokument dok svi ostali ne rade ni3ta9 "a kad +avr3i
o4radu dokumenta9 aktivira se slede6i radnik a "ret)odni ;eka9 onda
je dija'ram toka "ro'rama identi;an dija'ramu toka "odataka.@
Dija'ram toka "odataka se 'ra<;ki o"isuje "reko?
"rocesa -&rocesses09
toka "odataka -Data FloE09
skladi3ta "odataka -Data stores09
alempije@beotel.yu 76
s"oljni) o4jekata -/Sternal a'ents0.
&roces -&rocesses0
&roces je ni+ o"eracija kojima se transformi3u ula+ni "odaci u i+la+ne.
Svaki "roces o4rade "odataka de<nisan je?
nekim ula+nim tokom "odataka9
"rocesom koji se o4avlja na osnovu jasno s"eci<cirane
lo'ike o4rade9 kori36enjem "odataka i+ ula+no' toka ili neko'
skladi3ta "odataka9 a ;iji je re+ultat o4rade i+la+ni tok "odataka
iHili a8urirani "odaci u skladi3tu "odataka.
&roces je o+na;en?
4rojnom o+nakom kojom je referenciran "roces i
na+ivom "rocesa.
:a;in de<nisanja 4rojne o+nake je ve+an +a o+na;avanje nivoa
dekom"onovanja u dekom"o+icionom dija'ramu.
Gra<;ki se "roces "redstavlja +ao4ljenim "ravou'aonikom9 tako da9
+a ra+liku od ID/F19 stranice "ravou'aonika nisu orijentisane "o I.57
metodolo'iji9 tj. ula+i i i+la+i se mo'u de<nisati sa 4ilo koje strane.
(ok "odataka -Data FloE0
(ok "odataka je "ut -'ra<;ki o+na;en strelicom0 kojim "roti;u 'ru"e
"odataka -dokumenta9 formulari9 o4rasci09 koji "oka+uje i+meCu koji)
elemenata se odvija tok "odataka.
(ok "odataka se "redstavlja orijentisanom "ravom i ima jedinstveno
ime9 koje odra8ava +na;enje "odataka i ve+uje se +a "roces sa 4ilo
koje strane "ravou'aonika -+a ra+liku od ID/F1 metodolo'ije 'de je
va8no sa koje strane se "rila+i "ravou'aoniku0.
Skladi3te "odataka -Data stores0
Skladi3te "odataka -kartoteka9 fascikla9 datoteka0 slu8i +a ;uvanje
"odataka9 odnosno de<ni3e se kao tok "odataka u mirovanjuA
alempije@beotel.yu 77
"ove+ano je isklju;ivo s "rocesima sistema "reko tokova "odataka.
Skladi3te "odataka tre4a da omo'u6i?
akumuliranje sadr8aja toka "odataka9
"ove+ivanje isklju;ivo sa "rocesima "reko toka "odataka9
tako da?
tok "odataka BA skladi3tu o+na;ava o"eraciju odr8avanja9 tj.
u4acivanja9 i+4acivanja i "romene sadr8ajaA
tok "odataka 5D skladi3ta o+na;ava kori36enje skladi3ta +a
i+ve3tavanje.
Gra<;ki se skladi3te "odataka "redstavlja "ravou'aonikom 4e+
desne strane.
S"oljni o4jekat -/Sternal a'ents0
S"oljni o4jekat -/Sternal a'ents ili interface0 tre4a da i+vr3i
"ove+ivanje sa o4jektima van konteksta "osmatrano' sistema i
"redstavlja "onore iHili i+vore tokova "odataka. Ina;e9 "redstavlja se
dvostrukim "ravou'aonikom9 u koji se u"isuje ime o4jekta.
Imaju6i sve to u vidu9 +a Aktivnost "0. ;dr`avanje podataka o
prevodiocima" -sa slike !.9.0 4i6e de<nisan dija'ram toka "odataka.
&ijagram toka podataka za aktivnost "0. ;dr`avanje podataka o
prevodiocima"
Ako se "osmatra testI"rimer "rika+an na slici !.12. +a nadreCenu
aktivnost "0. ;dr`avanje podataka o prevodiocima"9 de<nisani su tri
"rocesa i jedno skladi3te "odataka -@Barton is"lata@0.
alempije@beotel.yu 78
US/D A(? AU(N5R? DA(/?
R/D? &R5J/.(? 7odel 1
1$.11.199%
22.1$.2111
:5(/S? 1 2 ! $ % # * 9 11
M5RBI:G
DRAF(
R/.577/:D/D
&U,2I.A(I5:
R/AD/R DA(/ .5:(/F(?
A1
:5D/? (I(2/? :U7,/R? 5DR@ADA:J/ &5DA(ABA 5 &R/D5DI5.I7A
A1
1.1
5DR@ADA:J/
5S:5D:IN
&5DA(ABA
1.2
&RAT/:J/
:ID5A >:A:JA
J/>IBA
1.!
5,RAOU:
IS&2A(/
BAR(5:
IS&2A(A
&ravilnik o is"latama
&revodioci
>a)tev i+ kadrovsko'
2ista
is"lata
>a)tev +a is"latu
=ifarnici
5snovni "odaci
&odaci o
stavkama
is"lata
&odaci +a
kalkulaciju
Ste"en
+nanja
je+ika
*lika 4.02. &ijagram toka podataka za aktivnost "0. ;dr`avanje podataka o
prevodiocima"
Aktivnost "0.0. ;dr`avanje osnovnih podataka" tre4a9 na osnovu
ula+ne informacije @>a)teva i+ kadrovsko'@9 da omo'u6i evidentiranje
osnovni) "odataka o "revodiocima9 a kao i+la+ I da de<ni3e osnovne
"odatke o "revodiocima koji se sme3taju u skladi3te "odataka
@Barton is"lata@. 5snovni "odaci o "revodiocu se nala+e na +a'lavlju
kartona is"lata -videti sliku 2..0.
>a "otre4e "rocesa "0.2. +ra}enje nivoa znanja jezika" "rate se
elementi ste"ena +nanja strani) je+ika "ojedini) "revodilaca. >a ovaj
"roces ula+ su od'ovaraju6i 3ifarnici je+ika9 a i+la+ je ste"en +nanja
koje "oseduje "revodilac. Ste"en +nanja se evidentira u karton is"lata
i sme3ta skladi3te "odataka @Barton is"lata@.
:a osnovu ula+a @>a)tev +a is"latu@ i "odataka +a kalkulaciju i+
kartona is"lata u "rocesu "0.4. ;bra~un isplate" o4ra;unava se
is"lata +a o4avljeni "osao i "ravi se lista is"lata.
Bao i u "ret)odnim fa+ama9 "otre4no je veri<kovati i+vedene
aktivnosti9 "a se kro+ slede6u aktivnost "2.0.A. +rovera detaljnih
zahteva" o"isuje na;in veri<kacije detaljni) +a)teva.
alempije@beotel.yu 79
0ktivnost
2.1.5. 0naliza detaljni-
za-teva
Aktivnost "2.0.A. 8naliza detaljnih zahteva" tre4a da 4ude svojevrsna
reka"itulacija do sada o4avljeni) aktivnosti -slika !.1!0.
Ativnost "0. +rovera prikupljenih informacija" "redstavlja "roveru
"ret)odne fa+e9 ve+ane +a "ostavljanje modela rein8enjerin'a9 jer
"ostoji mo'u6nost da u meCuvremenu doCe do neki) i+mena.
Ula+ je de<nisana studija i+ "ret)odne fa+e i +a)tev da se i+vr3i
eks"erti+a9 a i+la+ su i+menjene ili nove ;injenice koje +adovoljavaju
"ostavljene ciljeve "rojekta i koje i+vode od'ovaraju6i eks"erti9 u+
"omo6 u;esnika u i+radi studije.
Slede6om aktivnosti "2. +rovera pojedina~nih modela"9 u svetlu
novi) ;injenica9 de<nisani) "ret)odnom aktivno36u u;esnika9 tj.
autora "ojedina;no' modela mo8e +a)tevati dodatne informacije9 a
kao re+ultat ove aktivnosti su "ojedina;ni modeli.
S o4+irom na to da se "rilikom i+voCenja aktivnosti "4. +rovera
kompletiranog modela" moraju na"raviti "ojedini kom"romisi i
odstu"anja9 to kao "ovratna informacija ide @Bomentar radno'
materijala @9 kao i model +a "re'led.
Bako su korisnici kona;ne sudije9 to oni u okviru aktivnosti "7.
alidacija modela" tre4a da "rekontroli3u valjanost modela. I+la+ i+
ove aktivnosti su komentari korisnika koji "redstavljaju ula+ +a
"ret)odnu aktivnost.
:a kraju9 "otre4no je da od'ovaraju6e veri<kaciono telo i+vr3i
"roveru modela u okviru aktivnosti "A. eri3kacija modela". Ako
"ostoje "rimed4e9 one su kao komentar modela ula+ u aktivnost "4.
+rovera kompletiranog modela"9 a ako je model veri<kovan I on se
3alje kao kontrolna informacija u aktivnost "4. +rovera kompletiranog
modela". :akon veri<kacije kao i+la+ se do4ija detaljni ID/F1 model
koji je re+ultat aktivnosti "2.0. &e3nisanje detaljnih
aktivnosti".
Dosada3njim aktivnostima modelirani su "rocesi9 tj. de<nisana je
dinamika sistema9 dok 6e u slede6em koraku 4iti i+vr3eno
modeliranje "odataka9 tj. 4i6e de<nisana statika sistema.
alempije@beotel.yu 80
*lika 4.04. 6edosled koraka provere detaljnih zahteva
alempije@beotel.yu 81
0ktivnost
2.2. 5reiranje &6 dijagrama
:a osnovu "ret)odno i+vedeni) o"se8ni) "ri"rema i de<nisani)
entiteta i atri4uta u aktivnosti @2.2. Breiranje /R dija'rama@ "ristu"a
se modeliranju "odataka9 tj. de<nisanju entitetno' dija'rama. >a
kreiranje /R dija'rama tre4a koristiti te)niku +a o"isivanje strukture
"odataka i "oslovni) "ravila "od na+ivom model podataka* kojim se
de<ni3u entiteti #entities(. &ri tom svaki entitet ima svoje oso4ine9 tj.
atri4ute #attributes(, a sve je to "ove+ano ve+ama #relationships(.
&rema ustaljenim konvencijama9 velikim slovima u jednini "i3u se
entiteti9 a atri4uti i ve+e malim slovima.
US/D A(? AU(N5R? Alem"ije Deljovic DA(/?
R/D? &R5J/.(? 7odel 2
1*.1$.199%
22.1$.2111
:5(/S? 1 2 ! $ % # * 9 11
M5RBI:G
DRAF(
R/.577/:D/D
&U,2I.A(I5:
R/AD/R DA(/ .5:(/F(?
A2
:5D/? (I(2/? :U7,/R? BR/IRA:J/ /R DIJAGRA7A
A2.2
2.2.1
ID/:(IFIBA.IJA
BA:DIDA(A >A
/:(I(/(/
2.2.2
ID/:(IFIBA.IJA
D/>A
2.2.!
D/FI:ISA:J/
/R 75D/2A
2.2.$
D/RIFIBA.IJA
/R DIJAGRA7A
I1
I2
51
71
Detaljni
+a)tevi
:e"ot"una
lista entiteta
7odelirani
entiteti
/R model sa
de<nicijama
Informacije
od korisnika
Deri<kovani
/R model
Radna
'ru"a
*lika 4.07. &ekompozicioni dijagram za aktivnost "2.2. 5reiranje -6
dijagrama"
U okviru aktivnosti "2.2. 5reiranje -6 dijagrama" de<ni3u se slede6e
"odaktivnosti?
alempije@beotel.yu 82
Aktivnost 2.2.1. Identi<kacija kandidata +a entitete9
Aktivnost 2.2.2. Identi<kacija ve+a9
Aktivnost 2.2.!. De<nisanje /R modela9
Aktivnost 2.2.$. Deri<kacija /R modela.
:a slici !.1$. "rika+an je dekom"o+icioni dija'ram kojim se "ove+uju
de<nisane aktivnosti9 koje su "redmet dalji) ra+matranja.
U daljem tekstu detaljno 6e 4iti o4ra+lo8ene aktivnosti "rika+ane na
slici !.1$.
0ktivnost
2.2.1. $denti+kacija kandidata
za entitete
S o4+irom na to da svaki slede6i korak +a)teva kontrolu i revi+iju
"ret)odno'9 to su "otre4ne i ovde "rovera i identi<kacija kandidata +a
entitete.
>a aktivnost @2.2.0. ,denti3kacija kandidata za entitete@ "ola+i se od
o4jekata "osmatranja. 54jekt "osmatranja je sve 3to se mo8e
jedno+na;no identi<kovati9 "a samim tim i i+olovati i+ okoline i
o"isati. (ako je o4jekt "osmatranja i @entitet<. /ntitet je oso4a9 stvar9
do'aCaj9 "ojam -realni ili a"straktni0 koji je od trajno' interesa +a
"redu+e6e9 tj. ne3to 3to se 8eli "ojedina;no "osmatrati.
>a "otre4e de<nisanja /R dija'rama9 na "rimer9 mo'u se "osmatrati
slede6i o4jekti9 i to?
<+i;ki o4jekti -vo+ilo9 ma3ina9...09
oso4e9
mesta -adrese9 koordinate na karti9...09
or'ani+acije -"redu+e6a9 +avod9...09
'ru"eHklaseHti"ovi -ti" "roi+voda9 klasa "oslova9...09
u'ovori9
alempije@beotel.yu 83
"otra8ivanja -narud84e9 fakture9...09
"renosH "reme3taj -stvari9 vo+ila9 novca9...09
"ridru8enje -+adatak I oso4a9 vo+ila9 vo8nja9...09
"ri"adnostH;lanstvo -kom"onente I sastavi9...0 i dr.
>a navedene mo'u6e entitete tre4a?
odrediti "rikladne radne na+iveA
na"raviti 'ru"e entiteta -ako i) je vi3e od 10A
"o 'ru"ama9 tra8iti dodatne entitete -"osmatrati najva8niji
entitet0A
"o "otre4i9 rearan8irati 'ru"e.
Bako se entiteti o"isuju "reko svoji) oso4ina9 tj. atri4uta9 to se
identi<kacija atri4uta mo8e i+vesti i na slede6i na;in.
(re4a "o6i od "ostavke da svaki atri4ut u jednom trenutku vremena
ima neku vrednost9 +atim anali+irati tu vrednost i na osnovu to'a
"ro3iriti listu entiteta na slede6i na;in?
:a osnovu "ret)odne anali+e strukture teksta9 imenicu "o
analo'iji smatrati entitetom.
:a osnovu sli;nosti A(RI,U(A koji mo'u "ri"adati entitetu9
uo;ava se +na;ajna ra+lika -sli;nost09 3to mo8e da uka8e na to
da je re; o ra+li;itim -istim0 o4jektima.
U toku identi<kovanja entiteta9 +a svaki ti" entiteta mora
"ostojati jedan atri4ut -ili 'ru"a atri4uta0 koji jedinstveno
identi<kuje konkretni entitet u okviru to' ti"a.
Atri4ut koji identi<kuje dru'i ti" entiteta je entitet.
/ntitet je i atri4ut koji je istovremeno i atri4ut dru'o'
entiteta.
:a osnovu !asivne i aktivne #loge ve+e mo'u se
de<nisati od'ovaraju6i ti"ovi entiteta -slika !.10?
U25GA D/>/ (I& /:(I(/(A
RUB5D5DI RUB5D5DI2A.
RUB5D5DJ/: 5D/2J/:J/
:ARU.UJ/ BU&A.
:ARU./: &R5I>D5D
*lika 4.0A. )ticaj uloge veze na de3nisanje entiteta
alempije@beotel.yu 84
:a osnovu atri)#ta na dok#mentima mo'u se
identi<kovati entiteti -slika !.1%0?
A(RI,U( &I(A:J/ 5DG5D5R
,5JA ,5JA ./GAQ &R5I>D5D
S(AR5S( S(AR5S( ./GAQ RAD:IB
DA(U7 DA(U7 ./GAQ :ARUD>,/
*lika 4.0C. )ticaj atributa na de3nisanje entiteta
:a osnovu interesa "osmatranja9 atri4ut mo8e 4iti entitet9 a
mo8e 4iti i atri4ut entiteta9 3to +avisi od interesovanja9 odnosno
od to'a koji se deo realno' sveta i koji "o'led na nje'a 8eli
"redstaviti. :"r.9 ako je osnovni o4jekt od interesaIku6a9 onda je
entitetIku6a9 a atri4utIulica9 a ako su od interesaIulice onda su
atri4utiIku6e. 54jekti od interesa "osmatranja "rika+ani su na
slici !.1#.
*lika 4.0@. ,nteres posmatranja
:a osnovu de<nisani) kandidata +a entitete "ristu"a se identi<kaciji
mo'u6i) ve+a i+meCu entiteta.
0ktivnost
2.2.2. $denti+kacija veza
.eloku"na dosada3nja aktivnost 4ila je usmerena na de<nisanje
entiteta i atri4uta kro+ .RUD i IRU: matrice9 dok se u okviru aktivnosti
"2.2.2. ,denti3kacija veza" "rvi "ut de<ni3u ve+e i+meCu entiteta. De+a
"redstavlja interakciju meCu o4jektima9 tj. +nanje o nji)ovoj meC
uso4noj "ove+anosti. De+ama se de<ni3u +avisnosti i+meCu entiteta9
odnosno o"isuju na;ini "ove+ivanja -u+ajamna dejstva0 entiteta.
&redmet dalji) ra+matranja "redstavlja identi<kacija ve+a9 i to?
alempije@beotel.yu 85
/ntitet @BU.A@
A
t
r
i
4
u
t
i
ulica
kucni 4roj
'odina i+'radnje
4roj s"ratova
4roj stanova
/ntitet @U2I.A@
A
t
r
i
4
u
t
i
4roj kuca levo
4roj kuca desno
du+ina kolovo+a
sirina kolovo+a
"ove+ivanje entiteta na osnovu od'ovaraju6i) interesaA
de<nisanje +avisnosti entiteta -'de se de<ni3u ne+avisni i
+avisni entiteti0A
de<nisanje +na;enja +avisnosti -de<nisanjem
referencijalno' inte'riteta0A
i+voCenje varijacija +avisnosti -nala8enjem o"timalne0A
i+4or entiteta UroditeljU i entiteta UdeteU.
De+e u re;enici su U'la'olske fra+eU koje "oka+uju kakav je odnos meC
u entitetima. &remda 'la'olske fra+e ne o"isuju "ravila "reci+no9 one
do+voljavaju oso4i koja "osmatra model da stekne osnovni ose6aj o
"ove+anosti entiteta. Do4ra je "raksa ako ;itanje modela daje
valjane re;enice -iska+e0.
:a slici !.1*. dat je "redlo' mo'u6i) fra+a kojima se de<nisu ve+e
i+meCu entiteta.
odnosi va+i koristi i+'radjuje
+a)teva "oslata "osti+e "otvrdjuje
sadr+i "oredi odredjuje "ri)vata
de<nise tra+i u"ravlja "roverava
salje od'ovora "otvrdjuje nala+i
"oseduje identi<kuje s"eci<cira "ove+uje
reali+uje "odstice na4avlja ra+dvoja
ukljucuje ima u"ucuje selektuje
*lika 4.0D. 9lagolske fraze kojima se de3ni{u veze
Imaju6i u vidu na;in de<nisanja "otencijalni) entiteta i nji)ovi) ve+a9
u slede6oj aktivnosti 4i6e de<nisani /R modeli.
0ktivnost
2.2.3. %e+nisanje &6 modela
Bao 3to je u "ret)odnom "o'lavlju istaknuto9 realan svet se sastoji i+
o4jekata -entiteta0 "osmatranja9 koji mo'u 4iti ili realni o4jekti
-oso4a9 ma3ina9 vo+ilo9 ku6a09 ili a"straktni konce"t -"redu+e6e9
radno mesto09 do'aCaj -"rekr3aj9 "revo+0 ili odnosi -studentI
I"redmet9 mu8I8ena0. /ntiteti su9 o4i;no9 imenovani imenicama9 kao
alempije@beotel.yu 86
5S5,A9 (/2/F5:9 J/>IB9 IS&2A(A.
&reci+nije9 mo8e se ra+mi3ljati o nekom entitetu kao o setu ili kolekciji
-sku"u0 individualni) o4jekata +vani) primerci ili instance #instances(.
Jedan "rimerak je jedan "ojavni o4lik dato' entiteta. Svaki "rimerak
mora imati identitet ra+li;it od svi) ostali) "rimeraka.
:"r.9 mo8e se re6i da entitet 5S5,A "redstavlja sku" svi) mo'u6i)
oso4a de<nisani) kao "rimerci entiteta -slika !.19.0.
&ostu"ak i+voCenja aktivnosti "2.2.4. &e3nisanje -6 modela" sadr8i
slede6e korake?
de<nisanje ne+avisni) entiteta9 tj. "ronala8enje UroditeljUA
de<nisanje +avisni) entitetaA
de<nisanje ve+a.
5S5,A
Sifra
oso4e
&re+ime Ime J7,G &lata
StimuI
lacija
Datum
+a"oslenja
*2#!%9 S(/DI. >5RA: 1$1192#11!!1 *111 1 1#.12.*1
*2#$99 A2AGI. 7I2A: 21!9%!$%11 1%11
1
!111 21.12.*1
*2#21 DUBI. 7I25S 1!1$9#1$!21 121
1
111 22.12.*1
*2#%% J5DI. 7ARA 1119%#11!$! 29#
1
1 12.1$.*1
*2#%$ 7AR(I. >5RA 2$1%9%!$!11 121
1
1$111 2*.19.*1
*2#%9* ,5,I. IDA: 2!1$91$!22 2*1
1
1 11.1.*1
*2##*2 ./,I. G5RA: 2!1192#11$$1 2$1
1
1 19.1%.*1
*2##** SUSI. >5RA: 111!9%!$%11 !111
1
1 19.1%.*%
*2#*!9 B2JABI. S(/DA: 1$1$9#1$!21 111
1
1 1#.11.*1
*2#*$$ (U,I. 7IRA 1%119%#11!$! 111
1
1 1*.19.*1
*2#*#% A2I7&I. &/(AR 2#1%9%!$!11 1111
1
1 19.19.*#
*2#911 JABI. D2ADA 291$91$!22 911 1 1!.12.*1
*2#912 FI2I&I. DRAGA: 1!19#1$*21 !111
1
1 1!.12.*1
*lika 4.0B. ,nstance entiteta ;*;!8
alempije@beotel.yu 87
De<nisanje ne+avisni) entiteta
:e+avisni entitet je o4jekat koji ima jednu oso4inu koja 'a mo8e
jedno+na;no identi<kovati9 tj. ne+avisni entiteti imaju vlastitu
identi<kaciju -ne +avise od dru'i) entiteta0. Gra<;ki se ne+avisni
entiteti "rika+uju "ravou'aonikom u okviru ko'a se u"isuje na+iv ti"a
entiteta u jednini -slika !.210.
OSOBA
*lika 4.2/. 9ra3~ki prikaz nezavisnog entiteta ;*;!8
Bao 3to se mo8e videti na slici !.219 entitet 5S5,A "redstavlja sku"
svi) mo'u6i) oso4a sa kojima se komunicira. Svaki "rimerak entiteta
5S5,A je jedan korisnik. Svaki entitet sastoji se od od'ovaraju6i)
"rimeraka ili instanci9 kao 3to je "rika+ano na slici !.19.
De<nisanje +avisni) entiteta
>avisni entiteti su entiteti ;ije e'+istencija i identi<kacija +avise od
dru'o' ili dru'i) entiteta. >avisni entiteti se dele u ;etiri 'ru"e9 i to?
karakteristi~ne entitete9 tj. entitete koji se "onavljaju vi3e
"uta +a odreCeni ne+avisni entitetA
asocijativne entitete9 koji "redstavljaju ve+u vi3e entitetaA
projektne entitete9 koji su sli;ni asocijativnim entitetima9
samo 3to nemaju so"stvene atri4uteA
entitete kategorije, koji "redstavljaju "otkate'oriju entiteta.
Gra<;ki se +avisni entiteti "rika+uju kao +ao4ljeni "ravou'aonici u
okviru koji) se u"isuje na+iv ti"a entiteta u jednini.
5arakteristi~ni entitet ili sla4 entitet "redstavlja 'ru"u atri4uta koji se
"onavljaju vi3e "uta +a jedan entitet i koji se identi<kuju "reko
ne+avisno' entitetaA n"r.9 entiteti 5S5,A i IS&2A(A. >a entitet IS&2A(A
se ka8e da je karakteristi;an entitet9 jer +avisi od entiteta 5S5,A
-slika !.210.
alempije@beotel.yu 88
prima / je primio
ISPLATA OSOBA
Barakteristi;ni
entitet
*lika 4.20. eza karakteristi~nog entiteta ,*+G8$8 i nezavisnog entiteta
;*;!8
8socijativni entiteti su sastavljeni od vi3e ve+a i+meCu dva ili vi3e
entiteta9 kao 3to se mo8e videti na slici !.22. :"r.9 ako 5S5,A +na
vi3e J/>IBIa i jedan J/>IB "o+naje vi3e 5S5,A9 tada je ./R(IFIBA(
asocijativni entitet koji o"isuje ve+a i+meCu entiteta? 5S5,A i J/>IB.
Dakle9 asocijativni entiteti nose informaciju o vi3e+na;noj ve+i.
va+i H
odnosi se
je dat H
"oseduje
5S5,A J />IB
./R(IFIBA(
Asocijativni
entitet
*lika 4.22. eza asocijativnog entiteta =-6$,.,58$ sa nezavisnim
entitetima ;*;!8 i H-?,5
+rojektni entitet #designative( sli;an je asocijativnom entitetu9 s tim
3to nema so"stvene atri4ute. U "ret)odnom "rimeru9 ./R(IFIBA( se
mo8e koristiti kao "rojektni entitet "od uslovom da ne nosi nikakvu
informaciju9 i+u+ev identi<kacioni) o+naka +a 5S5,U i J/>IB.
-ntitet kategorija #categorF( +avisan je entitet koji ima t+v. ve+u ti"a
"otkate'oriju -su4I Icate'orJ0. Bod entiteta ti"a kate'orija de<ni3u
se? nadreCeni entitet koji ima +ajedni;ke oso4ine -n"r.9 entitet 5S5,A0
i "odreCeni entiteti -entiteti? B5:SU2(A:( i R/D5D:I0 koji se
identi<kuju klju;em nadreCeno' i "oseduju svoje s"eci<;ne oso4ine
-slika !.2!0.
alempije@beotel.yu 89
Vrsta
KONSULTAN
T
REDOVN
I
OSOBA
Generi;ki
entitet
/ntitet
*lika 4.24. +rimer potkategorije entiteta
De<nisanje ve+a
>a ra+liku od )ijerar)ijski) i mre8ni) modela9 'de se relacije "rika+uju
na <+i;kom nivou kao "ointeri na slo'ove9 relacioni model "rika+uje
relacije na lo'i;kom nivou i te relacije se +ovu ve+e.
Bao 3to se u realnom svetu us"ostavljaju odreCene ve+e i+meCu
o4jekata9 "o istoj analo'iji se de<ni3u i ve+e i+meCu entiteta. De+a je
asocijacija i+meCu dva ili vi3e entiteta9 tj. "redstavlja odnos koji
"ostoji meCu o4jektima9 4ilo u realnosti9 ili u mislima. De+a u ID/F1F
metodolo'iji se "rika+uje kao linija koja "ove+uje dva entiteta9 sa
ta;kom na jednom kraju i 'la'olskom fra+om na"isanom du8 linije.
/ntitet od ko'a je us"ostavljena ve+a +ove se UroditeljU -"arent09 a
entitet ka kome je us"ostavljena ve+a +ove se UdeteU -c)ild0.
De+a UroditeljUIUdeteU je asocijacija i+meCu entiteta 'de su svi "rimerci
entiteta UroditeljU asocirani sa nula9 jedan ili vi3e "rimeraka entiteta
UdeteU9 a svi "rimerci entiteta UdeteU su asocirani sa nula ili jedan I
"rimerkom entiteta UroditeljU.
Dru'im re;ima9 na;in "ove+ivanja dva entiteta ima oso4ine koje se
na+ivaju kardinalnost9 koja "oka+uje @koliko ne;e'a@ od dva entiteta
mo8e 4iti uklju;eno -sadr8ano0.
Da 4i se sve to 4olje ra+umelo9 "oslu8i6e "rimer sa slike !.2$. &rvo
tre4a de<nisati re;enicu 'de je 'la'ol YkoristiZ ve+a i+meCu entiteta
5S5,A i (/2/F5:.
5S5,A YkoristiZ jedan ili vi3e (/2/F5:Ia
U ovom "rimerku ve+a i+meCu dva entiteta je i+a4rana tako da ima
alempije@beotel.yu 90
o4lik koji je "o+nat kao jedan ili vi3e. (o +na;i da je jedan -i samo
jedan0 "rimerak entiteta oso4a -entitet UroditeljU0 "ove+an sa vi3e
"rimeraka entiteta telefon -entitet UdeteU0. :a osnovu de<nisane
re;enice9 kori36enjem 'la'olske fra+e YkoristiZ9 de<ni3e se "rimer
relacije i+meCu entiteta UroditeljU 5S5,A i entiteta UdeteU (/2/F5:
-slika !.2$0.
&
(/2/F5: 5S5,A
koristi
*lika 4.27. +rimer relacije
U daljem tekstu detaljno 6e 4iti ra+matrani slede6i ti"ovi ve+a?
identi3kuju}e ve+e9 koje entitet UdeteU identi<kuju kro+
nje'ovu ve+u sa entitetom UroditeljUA
neidenti3kuju}a ve+a9 koja ne identi<kuje UdeteU "reko
identi<katora UroditeljUA
veza kategorije, tj. ve+a "rema "odti"ovimaA
neodreCuju6a ve+a = vi{e prema vi{e.
,denti3kuju}e veze
De+a se +ove identi3kuju}a +ato 3to klju;evi entiteta UroditeljU
"redstavljaju deo identiteta entiteta UdeteU9 tj. entitet UdeteU +avisi od
entiteta UroditeljU "reko identi<katora. Dakle9 ako se "rimerak entiteta
UdeteU identi<kuje "reko asocijacije sa entitetom UroditeljU9 onda se
ve+a de<ni3e kao identi<kuju6a ve+a9 i svaki "rimerak entiteta UdeteU
mora 4iti "ove+an sa najmanje jednim "rimerkom entiteta UroditeljU.
alempije@beotel.yu 91
/ntitet roditelj
/ntitet IA
Bljuc atri4utaIA
/ntitet dete
Bljuc atri4utaI,
Bljuc atri4utaIA -FB0
/ntitet I ,
:a+iv ve+e
Identi<kuju6a ve+a
*lika 4.2A. ,denti3kuju}a veza
,denti3kuju}a veza je "rika+ana "unom linijom i "ove+uje entitet
UroditeljU sa entitetom UdeteU sa ta;kom na strani entiteta UdeteU -slika
!.20.
U identi<kuju6oj ve+i entitet UroditeljU ima svoj ne+avisni "rimarni
klju; -Blju; entitetaIA09 a entitet UdeteU ima slo8eni klju; koji se
sastoji od svo' klju;a -Blju; entitetaI,0 i "reneseno' roditeljsko'
klju;a =Blju; entitetaIA -FB0T. Dakle9 instance entiteta UroditeljU se
de<ni3u ne+avisno a instance entiteta UdeteU se ne mo'u identi<kovati
4e+ identi<katora entiteta UroditeljU.
Neidenti3kuju}e veze
Ako se svaki "rimerak entiteta UdeteU mo8e jedinstveno identi<kovati9
4e+ +nanja ve+e sa "rimerkom entiteta UroditeljU9 onda se takva ve+a
de<ni3e kao neidenti3kuju}a veza.
Neidenti3kuju}e veze su "rika+ane is"rekidanom linijom koja
"ove+uje entitet UroditeljU i entitet UdeteU sa ta;kom na strani entiteta
UdeteU.
/ntitet roditelj
/ntitetIA
/ntitet dete
Bljuc entitetaIA
Bljuc atri4utaI,
Bljuc atri4utaIA -FB0
/ntitetI,
:a+iv ve+e
54ave+naneidenti<kuju6a
ve+a
*lika 4.2C. Neidenti3kuju}a obavezna veza
alempije@beotel.yu 92
:eidenti<kuju6a ili sla4a ve+a +avisi od na;ina de<nisanja klju;eva
od UroditeljU ka UdeteUtu na dva na;ina?
kao o4ave+na neidenti<kuju6a ve+a i
kao neo4ave+na -o"ciona0 neidenti<kuju6a ve+a.
Ako je ve+a -relations)i"s0 obavezna -:o :ulls ili 7andatorJ0 i+
"ers"ektive UroditeljU9 onda je UdeteU egzistencijalno zavisno od
UroditeljU -slika !.2%0. :o nulls ili 7andatorJ +na;i da je o4ave+an unos
"reneseno' klju;a entiteta UroditeljU u okviru entiteta UdeteU =Blju;
entiteta A -FB0 slika !.2%T.
Ako je ve+a neobavezna -:ulls AlloEed ili 5"tional09 tada UdeteU niti je
e'+istencijalno niti identi<kaciono +avisno9 ali "o3tuje tu ve+u. :ull
AlloEed ili 5"tional +na;i da nije o4ave+an -mo8e 4iti :ull0 unos
"reneseno' klju;a entiteta UroditeljU u okviru entiteta UdeteU =Blju;
entiteta A -FB0 slika !.2#T.
/ntitet roditelj
/ntitetIA
Bljuc atri4utaIA
/ntitet dete
Bljuc atri4utaI,
Bljuc atri4utaIA -FB0
/ntitetI,
:a+iv ve+e
5"cionaneidenti<kuju6a
ve+a
*lika 4.2@. Neidenti3kuju}a neobavezna veza
/REin koristi rom4 -diamond0 da 4i na+na;io slu;aj e'+istencijalne i
identi<kacione nezavisnosti. Rom4 mo8e "ostojati samo u sla4im
ve+ama -"o3to je jaka ve+a u okviru "rimarno' klju;a9 a "rimarni
klju; ne mo8e da ima :U22 vrednost0.
eza kategorije
De+a kate'orije je de<nisana +a )ijerar)ijsku ve+u i+meCu nadreCeno'
'enerali+ovano' -'eneri;ko'0 entiteta koji sadr8i +ajedni;ke oso4ine
"odreCeni) entiteta kate'orije -slika !.2*0.
5vaj ti" ve+e se deli na?
potpunu strukturu -t+v. kom"letan set kate'oriju0 kada je
+atvoren sku" entiteta kate'orijeA
nepotpunu strukturu -t+v. nekom"letnu set kate'oriju0 kada
alempije@beotel.yu 93
nije +atvoren sku" entiteta kate'orije.
&ot"una struktura :e"ot"una struktura
Diskriminator
Generi;ki entitet
/ntiteti kate'orije
Bom"letanset kate'orija
Diskriminator
Generi;ki
entitet
/ntitet kate'orije
:ekom"letan set kate'orija
*lika 4.2D.rste entiteta kategorije
&ot"una struktura se de<ni3e +a ta;no odreCeni 4roj entiteta
kate'orije i ne mo8e se vi3e nijedan uklju;itiA ne"ot"una struktura
ostavlja mo'u6nost uklju;ivanja dru'i) entiteta kate'orije.
&ot"uni o"is ve+an +a ovaj ti" ve+e detaljno 6e 4iti o"isan u slede6em
"o'lavlju.
Neodre:uju}a veza
:eodreCuju6a ve+a je nes"eci<cirana9 a 'ovori o tome da se jedan
entitet -/ntitet A0 "ridru8uje ve6em 4roju entiteta dru'o' ti"a -/ntitet
,0 i o4rnuto -slika !.290.
De+a od , "rema A
/ntitetIA
De+a od A "rema ,
/ntitetI,
:a+iv ve+eH
:a+iv ve+e
*lika 4.2B. eza vi{e prema vi{e
5vaj ti" ve+e +a)teva9 "rema ID/F1F metodolo'iji9 da se "revede
uvoCenjem asocijativno' entiteta i+meCu entiteta A i entiteta ,.
I+voCenje "ret)odni) aktivnosti +a)teva i od'ovaraju6u veri<kaciju9
3to je o4ja3njeno u slede6oj aktivnosti.
alempije@beotel.yu 94
0ktivnost
2.2.4. ;eri+kacija &6
dijagrama
Deri<kacija /R dija'rama +a)teva o"3tu "roveru entiteta9 i to? na+iva9
"ojavljivanja9 +avisnosti i dr. &rovera se i+vodi "itanjima? 3ta ako...9
imaju6i uvek u vidu da se to mora o4ave+no i+voditi sa korisnicima.
>a veri<kaciju tre4a koristiti analo'iju sa strukturom teksta9 kao 3to je
"rika+ano na slici !.!1.
(/BS( /R B5:./&(
I7/:I.A /:(I(/(
G2AG52 D/>A
&RID/D A(RI,U( /:(I(/(A
&RI25G A(RI,U( D/>/
G2AG52.I7/:I.A 7/S5DI(I (I& /:(I(/(AID/>A
R/./:I.A 5,J/B(I &5D/>A:I D/>A7A
&5G2AD2J/ 25BA2:I &5D75D/2
*lika 4.4/. 8nalogija teksta i -6 koncepta
U slede6em koraku 4i6e de<nisan /R dija'ram +a dokumen @Barton
is"lata@.
/R dija'ram +a dokument @Barton is"lata@
Ra+vijaju6i dalje "rimer9 na slici !.!1. "rika+an je /R dija'ram
de<nisan +a dokument @Barton is"lata@.
(oslovna !ravila >roditelj> 4!is
A J/>IB odnosi se manJ
./R(IFIBA(s.
-H-?,5 se odnosi na vi{e
=-6$,.,58$80.
Hedan H-?,5 odnosi se na nula,
jedan ili vi{e =-6$,.,58$8. $o
zna~i da mo`e biti de3nisan
H-?,5, a da nije izdat nijedan
=-6$,.,58$.
A 5D/2J/:J/ radi manJ 5S5,As.
-) ;&-GH-NH) radi vi{e ;*;!8(
;&-GH-NH) pripada nula, jedan
ili vi{e ;*;!8. $o zna~i da
odeljenje mo`e da bude bez
zaposlenih.
,ased on &ol9 A 5S5,A is A >/:A ) odnosu na atribut +ol entiteta
alempije@beotel.yu 95
or A 7USBARA..
#;*;!8 je ?-N8 ili >)*5868=(
;*;!8, ;*;!8 je ?-N8 ili
>)*5868=. ;bavezan unos
jedne od alternativa.
,ased on Drsta9 A 5S5,A is A
R/D5D:I9 A B5:SU2(A:(9 or
anot)er 5S5,A tJ"e.
#;*;!8 je 6-&;N, ili
5;N*)G$8N$ ili neki drugi tip
;*;!-(.
) odnosu na atribut rsta
entiteta ;*;!8, ;*;!8 je
6-&;N, ili 5;N*)G$8N$. Nije
obavezan unos jedne od
alternativa.
A 5S5,A je rukovodilac manJ
5S5,As.
#;*;!8 je rukovodilac vi{e
;*;!8(
;*;!8 je rukovodilac nula,
jedan ili vi{e ;*;!8.
A 5S5,A "oseduje manJ
./R(IFIBA(s.
#;*;!8 poseduje vi{e
certi3kata(.
Hedna ;*;!8 mo`e posedovati
nula, jedan ili vi{e =-6$,.,58$8.
A 5S5,A je "rimila manJ
IS&2A(As. #;*;!8 je primila vi{e
,*+G8$8(
;*;!8 prima nula, jednu ili vi{e
,*+G8$8.
A RAD:5 7/S(5 ras"oreCen at
least one 5S5,A.
#Na 68&N; >-*$; mora biti
raspore:ena najmanje jedna
;*;!8(
68&N; >-*$; se ne mo`e
otvoriti ako ne postoji najmanje
jedna zaposlena ;*;!8.
&oslovna "ravila UroditeljU "o;inju re;enicom u kojoj je na+iv entiteta
UroditeljU na "o;etku re;enice9 a na+iv entiteta UdeteU na kraju.
(oslovna !ravila >dete>ta 4!is
A IS&2A(A je "rimio eSactlJ one
5S5,A. #Hednu ,*+G8$) prima
jedna i samo jedna ;*;!8(.
Hedna ,*+G8$8 se odnosi
isklju~ivo za jednu ;*;!).
A B5:SU2(A:( is a tJ"e of 5S5,A. 5;N*)G$8N$ je tip ili
alempije@beotel.yu 96
#5;N*)G$8N$ je tip ;*;!-( specijalizacija entiteta ;*;!8.
A 7USBARA. is a tJ"e of 5S5,A.
#>)*5868= je tip ;*;!-(
>)*5868= je tip ili
specijalizacija entiteta ;*;!8.
A 5S5,A ras"oreCen eSactlJ one
RAD:5 7/S(5.
#;*;!8 je raspore:ena obavezno
na jedno 68&N; >-*$;(.
$o zna~i da se N- mo`e primiti
novi ~ovek u preduze}e a da
ne bude raspore:en ni na jedno
68&N; >-*$;.
A 5S5,A je rukovodilac +ero or
one 5S5,As.
#;*;!8 je rukovodilac nula ili
jednoj ;*;!,(.
;*;!8 mo`e, a ne mora da
bude rukovodilac i mo`e samo
da bude jedan rukovodilac.
A 5S5,A radi +ero or one
5D/2J/:J/s. #;*;!8 radi u
nijednom ili jednom ;&-GH-NH)(.
$o zna~i da se mo`e primiti
novi ~ovek u preduze}e, a da
ne bude raspore:en ni u jedno
odeljenje.
A R/D5D:I is a tJ"e of 5S5,A.
#6-&;N, je tip ;*;!-(
6-&;N, je tip ili specijalizacija
entiteta ;*;!8.
A ./R(IFIBA( odnosi se eSactlJ
one J/>IB.
#=-6$,.,58$ odnosi se na ta~no
jedan H-?,5(
Hedan =-6$,.,58$ vezan je za
najmanje jedan i najvi{e jedan
H-?,5.
A ./R(IFIBA( "oseduje eSactlJ one
5S5,A.
#=-6$,.,58$ poseduje ta~no
jedna ;*;!8(.
Hedan =-6$,.,58$ poseduje
najmanje jedna i najvi{e jedna
;*;!8.
A >/:A is a tJ"e of 5S5,A.
#?-N8 je tip ;*;!-(.
?-N8 je tip ili specijalizacija
entiteta ;*;!8.
&oslovna "ravila UdeteUta "o;inju re;enicom u kojoj je na+iv entiteta
UdeteUta na "o;etku re;enice9 a na+iv entiteta UroditeljU na kraju.
alempije@beotel.yu 97
!ri!ada?
ras!oredjen
(
r#kovodi ?
jer#kovodioc
vazi ?
odosi se
jedat ?
!osed#je
!rima ?
je!rimio
za!osljava?
radi
;rsta
MU50603 @&70
547U81071 6&%4;7$
$(8010
4%&8:&7:&
3&61$'$501
:&@$5
44A0
(ol
60%74M&14
*lika 4.40. -6 dijagram za dokument "5arton isplata"
/R dija'ram "rika+an na slici !.!1. "redstavlja re+ultat9 sa jedne
strane9 anali+e dokumenta @Barton is"lata@ -"rika+ano' na slici 2.. I
"o'led odo+do0 i sa9 dru'e9 re+ultat 8elja i "otre4a +a informacijama9
do4ijeni) na osnovu s"rovedeno' intervjua -"o'led odo+'o0.
/R dija'ram sa slike !.!1. uraCen je u /REinIu i mo8e se "redstaviti i
na slede6i na;in I u o4liku i+ve3taja de<nisano' kao "oslovna
"ravila. (ako se ra+likuju "oslovna "ravila UroditeljU i "oslovna "ravila
UdeteUta.
/R modelom de<nisani su okviri modela "odataka9 a slede6om
aktivno36u 4i6e i+vr3eno kreiranje atri4uta +a svaki entitet.
alempije@beotel.yu 98
0ktivnost
2.3. 5reiranje atri)#ta
Svaki o4jekat realno' sveta je de<nisan oso4inama9 "a "o toj
analo'iji i entiteti imaju atri4ute kojima se o"isuju karakteristi;na
svojstva. U okviru aktivnosti "2.4. 5reiranje atributa" de<nisane su
slede6e "odaktivnosti?
Aktivnost 2.!.1. De<nisanje lista kandidata +a atri4ute9
Aktivnost 2.!.2. De<nisanje klju;eva9
Aktivnost 2.!.!. &ostu"ak normali+acije9
Aktivnost 2.!.$. De<nisanje atri4uta.
:a slici !.!2. "rika+an je dekom"o+icioni dija'ram +a aktivnost "2.4.
5reiranje atributa".
US/D A(? AU(N5R? Alem"ije Deljovic DA(/?
R/D? &R5J/.(? 7odel 2
1*.1$.199%
22.1$.2111
:5(/S? 1 2 ! $ % # * 9 11
M5RBI:G
DRAF(
R/.577/:D/D
&U,2I.A(I5:
R/AD/R DA(/ .5:(/F(?
A2
:5D/? (I(2/? :U7,/R? BR/IRA:J/ A(RI,U(A
A2.!
2.!.1
USDAJA:J/
2IS(A
BA:DIDA(A
>A A(RI,U(/
2.!.2
D/FI:ISA:J/
B2JUO/DA
2.!.!
&5S(U&AB
:5R7A2I>A.IJ/
2.!.$
D/FI:ISA:J/
A(RI,U(A
I1
51
I2
71
Deri<kovani
/R model
/R model sa
atri4utima
Blju;evi +a
/R model
:omali+ovan
atri4utivni model
Informacije
od korisnika
Deri<kovani
atri4utivni model
Radna
'ru"a
*lika 4.42. &ekompozicioni dijagram za aktivnost "2.4. 5reiranje atributa"
alempije@beotel.yu 99
U daljem tekstu detaljno 6e 4iti o4ra+lo8ene aktivnosti "rika+ane na
slici !.!2.
0ktivnost
2.3.1. %e+nisanje liste
kandidata za atri)#te
Ula+ u aktivnost "2.4.0. &e3nisanje liste kandidata za atribute" je
veri<kovani /R model9 koji u okviru ove aktivnosti kao i+la+ ima /R
model sa atri4utima.
Da 4i se de<nisala lista kandidata +a atri4ute9 mora se dati od'ovor
na "itanje 3ta je interes "osmatranja. Da li 6e "o nekoj oso4ini
o4jekat 4iti entitet ili atri4ut9 tj. koju 6e ulo'u imati9 +avisi od "o'leda
koji se 8eli "redstaviti.
5snovna "ravila koja se koriste u reali+aciji aktivnosti "2.4.0.
&e3nisanje liste kandidata za atribute" su?
Svaki entitet ima "roi+voljan 4roj atri4uta9 3to +na;i da
nema o'rani;enja u 4roju atri4uta.
5dreCeni atri4ut "ri"ada jednom i samo jednom entitetu9
tako da isti atri4ut ne mo8e 4iti o"isan u okviru dva ili vi3e
entiteta.
Svako "ojavljivanje entiteta ima vrednosti +a sve atri4ute
to' entiteta.
Atri4ut odreCeno' "ojavljivanja entiteta mo8e imati samo
jednu vrednost9 "a "rimerak entiteta +a odreCeni atri4ut ima jednu
vrednost.
Svaki atri4ut "redstavlja jednu odreCenu ;injenicu9 tako da i
svako +na;enje vrednosti atri4uta mora imati jedno dosledno
+na;enje.
:a osnovu de<nisane liste kandidata +a atri4ute u slede6em koraku
4i6e de<nisani svi ti"ovi klju;eva.
alempije@beotel.yu 100
0ktivnost
2.3.2. %e+nisanje klj#/eva
Aktivnost "2.4.2. &e3nisanje klju~eva" ima +adatak da +a svaki
entitet 4ude de<nisan atri4ut ili kom4inacija atri4uta9 ;ije vrednosti
jedinstveno identi<kuju svaki "rimerak entiteta.
(aj atri4ut ili 'ru"a atri4uta na+iva se primarni klju~. Ako klju; ;ini
samo jedan atri4ut9 onda je prost klju~I u su"rotnom je slo`en. Bao
3to se vidi na slici !.!!9 atri4uti mo'u 4iti de<nisani u o4lasti
klju;eva -"rimarni klju;0 ili u o4lasti "odataka.
:a "rimeru "rika+anom na slici !.!!. entitet 5S5,A je "redstavljen
crtanjem "ravou'aonika sa imenom entiteta na vr)u i svim atri4utima
u okviru "ravou'aonika. Atri4ut @Sifra oso4e@ je u o4lasti klju;a9 a svi
ostali atri4uti su u o4lasti "odataka.
Struktura atri4uta &rimer
}
Oblast
lju!e"a
Oblast
po#ataa
Na$i" e&titeta
Na$i" at'ibuta
(Na$i" at'ibuta)
Na$i" at'ibuta)
(Na$i" at'ibuta)
(Na$i" at'ibuta)
}
OSOBA
Si*'a osobe
+'e$ime
Ime
,-./
+lata
Stimula!ija
Datum $aposle&ja
*lika 4.44. *truktura atributa
U daljem tekstu detaljno 6e 4iti ra+motreni slede6i ti"ovi klju;eva?
"rimarni klju;9
alternativni i inver+ni klju;evi i
"reneseni klju;evi.
&rimarni klju;
Atri4uti ili 'ru"e atri4uta koji mo'u 4iti i+a4rani kao "rimarni klju;evi
na+ivaju se Uatri4uti kandidati +a klju;U. Bandidat +a klju; mora
jedinstveno da identi<kuje svaki "rimerak entiteta. I+ to'a sledi da
nijedan deo "rimarno' klju;a ne mo8e 4iti :U229 odnosno "ra+an
-em"tJ0 ili nedostaju6i -missin'0. 5d kandidata +a klju;eve 4ira se
alempije@beotel.yu 101
jedan koji se na+iva "rimarni klju;.
5snovno "itanje koje se "ostavlja jeste kako i+a4rati "rimarni klju;
kojim se identi<kuje jedno+na;no entitet. I+4or klju;a neko' entiteta
mo8e 4iti jedan atri4ut kojim se de<ni3e jednostavni "rimarni klju; ili
kom4inacija atri4uta kojom se de<ni3e slo8eni "rimarni klju;.
Ako se "o'leda entitet 5S5,A sa slike !.!!9 atri4uti su?
Sifra oso4e
J7,G
&re+ime
Ime
&lata
Stimulacija
Datum +a"oslenja
:eka je9 na "rimer9 atri4ut USifra oso4eU "rvi kandidat +a klju;9 +ato
3to je jedinstven +a svaku oso4u. Slede6i atri4ut J7,G 4i mo'ao da
4ude kandidat +a klju; ako su "ret"ostavke o jedinstvenosti 4roja
korektne. 7eCutim9 verovatno je da ne6e sve oso4e imati J7,G9 jer
tre4a koristiti uslu'e i stranaca. 7ada se na "rvi "o'led ;ini da ovaj
atri4ut mo8e 4iti kandidat +a klju;9 tre4a 'a ostaviti "o strani. Slede6i
atri4uti UIme i &re+imeU ne 4i mo'li da 4udu do4ar kandidat +a klju;9
jer mo'u "ostojati dva >orana &etrovi6a.
Bom4inacija UIme i &re+imeU i UDatum +a"oslenjaU mo'la 4i 4iti
kandidat +a klju; -osim ako ne "ostoje9 n"r.9 dva >orana &etrovi6a
+a"oslena isto' dana0.
&remda je to nekorektno9 neka u ovom "rimeru kom4inacija UIme i
&re+imeU i UDatum +a"oslenjaU odreCuju s"eci<;nu oso4u. (ako je
do4ijen dru'i kandidat +a klju;? kom4inacija UIme i &re+imeU i UDatum
+a"oslenjaU.
Dakle9 do4ijena su dva kandidata +a klju;? jedan je USifra oso4eU a
dru'i je 'ru"a atri4uta koja sadr8i atri4ute? UIme i &re+imeU i UDatum
+a"oslenjaU i sada tre4a i+a4rati "rimarni klju;.
Boji 6e od ova dva kandidata 4iti i+a4ran +a "rimarni klju; +avisi od
anali+e koja se s"rovodi na slede6i na;in?
&rvo i najva8nije "rilikom i+4ora "rimarno' klju;a je na6i
atri4ut koji ne6e menjati vrednost +a vreme U8ivotaU svako'
"rimerka entiteta9 jer klju; odreCuje identitet "rimerka entiteta
-ako se "romeni klju;9 to je ve6 dru'i "rimerak0. 5vaj uslov
is"unjavaju i jedan i dru'i kandidat +a klju;.
Dru'o9 tre4a tra8iti ra+umno male klju;eve. Ako se mo8e
na6i jedan atri4ut9 'eneralno 'ledano9 "ronaCen je do4ar klju;. (aj
uslov is"unjava "rvi kandidat +a klju;.
alempije@beotel.yu 102
(re6e9 "otre4no je i+4e'avati u"otre4u Uinteli'entni)U
klju;eva -na "rimer9 'de struktura 4rojeva identi<kuje 'ru"isanje9
lociranje9 klasi<kaciju9 datume itd.0. (aj uslov is"unjava "rvi
kandidat +a klju;9 jer nje'ova 3ifra je neimenovani identi<kacioni
4roj.
:a osnovu ovako o4ra+lo8eni) elemenata +a i+4or "rimarno' klju;a
+a entitet U5S5,AU 4ira se atri4ut USifra oso4eU kao "rimarni klju;9 jer
+adovoljava sva tri de<nisana kriterijuma.
Alternativni i inver+ni klju;evi
Bandidati +a klju; koji nisu i+a4rani +a "rimarne klju;eve mo'u se
de<nisati kao alternativni klju;evi -Akn0.
Alternativni klju; -ABn0 "redstavlja atri4ut ili 'ru"a atri4uta koji
jedinstveno identi<kuju "rimerke entiteta. /REin 'eneri3e jedinstven
indeks +a svaki alternativni klju;. 5 indeksima 6e kasnije vi3e 4iti
re;i. Ako tre4a de<nisati indeks nad atri4utom ili 'ru"om atri4uta koji
ne identi<kuju jedinstveno "rimerke entiteta de<ni3e se t+v. Inversion
/ntrJ -I/n0 indeks.
(ako "rimer sa slike !.!$. do4ija alternativni klju; J7,G. Bako je J7,G
jedinstven9 a svi +a"osleni ne moraju imati ovaj 4roj -n"r.9 +a"osleni
stranci09 to se on usvaja kao alternativni klju; koji ima oso4inu
jedno+na;nosti9 ali je +ato :U22 "odatak -ne mora se unositi0.
Atri4uti? UImeU i U&re+imeU de<nisani su kao inver+ni atri4uti9 tj. kao I/
klju;9 jer nemaju de<nisanu jedno+na;nost -mo8e se do'oditi da vi3e
+a"osleni) ima isto UImeU i &re+imeU0.
OSOBA
Si*'a osobe
+'e$ime 0IE11
Ime 0IE11
,-./ 0AK11
+lata
Stimula!ija
Datum $aposle&ja
*lika 4.47. 8lternativni i inverzni klju~evi
alempije@beotel.yu 103
&reneseni klju;evi
&reneseni klju; je kolekcija atri4uta koji u "osmatranom entitetu nisu
klju;9 ali su +ato klju; u nekom dru'om entitetu. &reneseni klju;
-Forei'n BeJ0 jeste atri4ut koji "ove+uje entitet UdeteU sa entitetom
UroditeljU i odreCen je o+nakom FB9 koja dola+i i+a imena atri4uta.
"rima
7i'racija
Is"lata
redni 4roj
Sifra oso4e -FB0
5S5,A
Sifra oso4e
/ntitet roditelj
/ntitet dete
- Identi<k . +avisnost 0
*lika 4.4A. >igracija primarnog klju~a u preneseni klju~
:a slici !.!. "rika+an je "ostu"ak mi'racije "rimarno' klju;a
entiteta 5S5,A -entitet UroditeljU0 u entitet IS&2A(A -entitet UdeteU09 tj.
ve+a "renosi klju; entiteta UroditeljU u entitet UdeteU.
Bada se vr3i mi'racija klju;eva9 tj. "ove+ivanje entiteta9 mo8e se
do'oditi i situacija "rika+ana na slici !.!%9 'de se "ojavljuje i
redundantna ve+a koju tre4a i+4risati.
alempije@beotel.yu 104
5D/2J AB
5deljak 4r
5deljak
4r
-FB0
Sifra
odel jenja
5D/2J /:J /
Redundantna
ve+a
ima
ima
ima
5S5,A
Sifra
odel jenja
-FB0
5deljak 4r -FB0
Sifra oso4e
*lika 4.4C. +rimer redundandne veze
Bao 3to se na slici !.!#. vidi9 mi'racija klju;eva mo8e 4iti u o4lasti
o"isa i tada je u "itanju neidenti<kuju6a ve+a -o+na;ena
is"rekidanom linijom kao na slici !.!%0 ili9 "ak9 u o4lasti klju;eva9
kada je u "itanju identi<kuju6a ve+a -o+na;ena "unom linijom kao na
slici !.!0.
7i'racija u o4lasti o"isa 7i'racija u o4lasti klju;eva
5S5,A
Sifra oso4e
Sifra odeljenja -FB0
&reneseni kljuc
-Forei'n BeJ0
IS&2A(A
Sifra oso4e -FB0
redni 4roj
&reneseni kljuc
-Forei'n BeJ0
*lika 4.4@. 6azli~iti tipovi migracija
&reneseni klju;evi mo'u imati i dru'o ime9 3to se de<ni3e kao ulo'a
atri4uta u entitetu. Ime ulo'e -Rolename0 "redstavlja novo ime +a
"renesene klju;ne atri4ute koji de<ni3u ulo'u koju ti atri4uti i'raju u
tom entitetu. Ime ulo'e deklari3e novi atri4ut9 ;ije ime tre4a da
o"i3e "oslovno "ravilo u'raCeno "reko ve+e koja +a)teva "reneseni
alempije@beotel.yu 105
klju; -slika !.!*0.
De<nisanje imena ulo'e 4i6e "oka+ano na "rimeru de<nisanja
strukture "roi+voda.
jekom"onenta
:a+iv ulo'e
&R5I>D5D
Ident 4roj
S(RUB(URA
Bom"onenta. Ident 4roj -FB0
Sastav.Ident 4roj -FB0
jesastavljena i+
7i'racija na+iva atri4uta
*lika 4.4D. +rimer za de3nisanje imena uloge
Bako entitet S(RUB(URA ima slo8eni klju; od isto' nadreCeno'
entiteta &R5I>D5D9 to se de<nisanjem ulo'e de<ni3u ra+li;ita imena
atri4uta i identi<kuje entitet S(RUB(URA.
Detalji +a de<nisanje ovo' ti"a ve+e 4i6e kasnije detaljno o"isani.
Imaju6i sve to u vidu9 +a "rimer /R modela dokumenta @Barton
is"lata@9 u slede6em koraku 4i6e i+vr3eno de<nisanje "rimarni)
klju;eva.
De<nisani "rimarni klju;evi +a dokument @Barton
is"lata@
:a slici !.!9. "rika+an je /R model sa de<nisanim klju;evima +a
"rimer @Barton is"lata@9 'de entitet 5S5,A identi<kuje atri4ut USifra
oso4eU. >a entitete ti"a 3ifarnika9 kao 3to je entitet 5D/2J/:J/9
"rimarni klju; je USifra odeljenjaU9 +a entitet J/>IB "rimarni klju; je
atri4ut USifra je+ikaU9 a +a entitet RAD:5 7/S(5 "rimarni klju; je
USifrarmU. >avisni entitet IS&2A(A ima slo8eni klju; koji se sastoji od
atri4uta USifra oso4eVr4rU9 a asocijativni entitet ./R(IFIBA( ima
slo8eni klju; od atri4uta USifra oso4eVSifra je+ikaU. &otkate'orije
alempije@beotel.yu 106
7USB59 >/:SB59 B5:SU2(A:(9 R/D5D:I imaju "rimarne klju;eve
"renesene sa 'enerali+ovano' entiteta 5S5,A -USifra oso4eU0.
pripada /
rasporedjen
P
rukovodi /
je rukovodilac
vazi /
odosi se
je dat /
poseduje
prima /
je primio
zaposljava /
radi
Vrsta
MUSA!A"
Si*'a osobe 02K1
#$%A
Si*'a osobe 02K1
O%SULTA%T
Si*'a osobe 02K1
!$&OV%I
Si*'a osobe 02K1
ISPLATA
Si*'a osobe 02K1
'b'
O&$L'$%'$
Si*'a o#elje&ja
"$!TI(IAT
Si*'a osobe 02K1
Si*'a je$ia 02K1
'$#I
Si*'a je$ia
OSOBA
Si*'a osobe
Pol
!A&%O M$STO
Si*'a'm
*lika 4.4B. -6 model sa de3nisanim primarnim klju~evima
:a osnovu "ret)odno i+vedeni) aktivnosti -slika !.!20 u slede6em
koraku "otre4no je s"rovesti "ostu"ak normali+acije.
0ktivnost
2.3.3. (ost#!ak normalizacije
&rilikom de<nisanja atri4uta9 kao 3to je re;eno9 "ristu"a se
modeliranju "odataka odo+do na'ore -,ottom U"0. 5vaj "ristu"
veoma je "ri)vatljiv +a "o;etnike u ovoj o4lasti9 jer "ola+i od
o"i"ljivi) informacija de<nisani) na dokumentima i u kartotekama.
5snovu +a ovaj na;in modeliranja "odataka ;ine anali+a
funkcionalni) +avisnosti i "ostu"ak normali+acije.
U okviru aktivnost "2.4.4.+ostupak normalizacije" uklanjaju se sve
strukture koje stvaraju redundansu "odataka9 "a je slo'an
normali+acije? Hedna ~injenica na jednom mestu.
&ravilno i+veden "ostu"ak normali+acije "odataka omo'u6uje
korektno i+voCenje aktivnosti "4. 8plikativno modeliranje"9 koja ima
strukturu kojom osi'urava da u radu sa njom ne6e 4iti ne8eljeni)
anomalija9 kao 3to su9 n"r.9 uni3tavanje odreCeni) "odataka ili
neusklaCenost i+meCu memorisani) "odataka kao "osledica a8uriranja
4a+e "odataka.
alempije@beotel.yu 107
Dru'im re;ima9 "ostu"ak normali+acije "redstavlja transformaciju
"o;etno' entiteta u jednu ili vi3e korektni) entiteta ili ve+a u kojima
su svi atri4uti "ot"uno funkcijski +avisni od klju;a9 a meCuso4no
funkcijski ne+avisni.
Da 4i se mo'ao o"isati "ostu"ak normali+acije9 tre4a "ret)odno
o"isati "ojam funkcijske +avisnosti.
Ako je svakoj vrednosti atri4uta A u relaciji R "riklju;ena samo jedna
vrednost atri4uta , u istoj relaciji9 onda je atri4ut , funkcijski +avisan
od atri4uta A asocijacijom ti"a 1.
Funkcijska +avisnost se mo8e de<nisati i+meCu slo8eno' klju;a -vi3e
atri4uta0 i jednostavno' atri4uta.
Ako se svakom "aru vrednosti atri4uta A i , relacije R mo8e "riklju;iti
ta;no jedna vrednost . iste relacije9 tada je atri4ut . funkcijski
+avisan od sastavljeno' atri4uta A i ,.
&ot"una funkcijska +avisnost se de<ni3e na osnovu de<nicije
funkcijske +avisnosti.
Atri4ut , je "ot"uno funkcijski +avisan od atri4uta A iste relacije9 ako
je funkcijski +avisan od atri4uta A9 a ne od neko' sastavno' dela
atri4uta A.
:a osnovu ovako i+vedeni) de<nicija na "rimeru entiteta 5S5,A 4i6e
"oka+an "ostu"ak normali+acije kro+ de<nisanje "rve -1:F09 dru'e
-2:F0 i tre6e -!:F0 normalne forme.
De<nisanje "rve normalne forme -1:F0
7o8e li se na osnovu "osmatranja entiteta 5S5,A -sa slike !.$10
uo;iti 're3kaQ
>4o' lak3e' ra+umevanja9 tre4a "revesti entitet 5S5,A u ta4elu sa
de<nisanim "rimercima -koristi se i termin instance0.
alempije@beotel.yu 108
OSOBA
Si*'a osobe
+'e$ime 0IE11
Ime 0IE11
,-./ 0AK11
+lata
Stimula!ija
Datum $aposle&ja
Isplate
*lika 4.7/. -ntitet ;*;!8
alempije@beotel.yu 109
5S5,A
Sif.oso4 &re+ime Ime J7,G &lata Stimu Dat.+a"os. Is"late
*2#!%9 S(/DI. >5RA: 1$1192#11!!1 *111 1 1#.12.*1 2119!11
*2#$99 A2AGI. 7I2A: 21!9%!$%11 1%111 !111 21.12.*1 $11
*2#21 DUBI. 7I25S 1!1$9#1$!21 1211 111 22.12.*1 *119!11
*2#%% J5DI. 7ARA 1119%#11!$! 29#1 1 12.1$.*1
*2#%$ 7AR(I. >5RA 2$1%9%!$!11 1211 1$11
1
2*.19.*1 2119111
*2#%9* ,5,I. IDA: 2!1$91$!22 2*11 1 11.1.*1
*2##*2 ./,I. G5RA: 2!1192#11$$1 2$11 1 19.1%.*1
*2##** SUSI. >5RA: 111!9%!$%11 !1111 1 19.1%.*% !1119211
*2#*!9 B2JABI. S(/DA: 1$1$9#1$!21 1111 1 1#.11.*1
*2#*$$ (U,I. 7IRA 1%119%#11!$! 1111 1 1*.19.*1
*2#*#% A2I7&I. &/(AR 2#1%9%!$!11 11111 1 19.19.*#
*2#911 JABI. D2ADA 291$91$!22 911 1 1!.12.*1 !119$11
*2#912 FI2I&I. DRAGA
:
1!19#1$*21 !1111 1 1!.12.*1
*lika 4.70. $abela ;*;!8 za entitet ;*;!8 sa slike 4.7/.
&ro4lem je u atri4utu @Is"late@. U "ret)odnim "o'lavljima u ve+i sa
entitetima i atri4utima na'la3eno je da sva imena moraju 4iti u
jednom "rimerku9 tj. da se u jedan atri4ut ne mo8e smestiti vi3e
is"lata.
S o4+irom na to da nije "o+nato koliko is"lata tre4a +a"amtiti9 koliko
je "rostora +a to "otre4no i 3ta raditi ako ima vi3e is"lata ne'o
"rostora9 to onda ovakva ta4ela kr3i "rvu normalnu formu. Da 4i se
"o"ravila "ret)odna ta4ela9 tre4a na neki na;in ukloniti atri4ute
is"late i+ entiteta 5S5,A. Jedan od na;ina je da se to uradi "rika+an
je na slici !.$2.
prima / je primio
ISPLATA
Si*'a osobe 02K1
'b'
Datum isplate
I$&os
OSOBA
Si*'a osobe
+'e$ime
Ime
,-./
+lata
Stimula!ija
Datum $aposle&ja
*lika 4.72. eza entiteta ;*;!8 i ,*+G8$8
&rika+ dat na slici !.$2. "reveden u ta4ele 5S5,A i IS&2A(A sa
de<nisanim instancama -slika !.$!0 i+'leda ovako?
alempije@beotel.yu 110
5S5,A
Sif.oso &re+ime Ime J7,G &lata Stim Datum
*2#!% S(/DI. >5RA: 1$1192#11!! *111 1 1#.12.*1
*2#$9 A2AGI. 7I2A: 21!9%!$%1 1%11 !11 21.12.*1
*2#2 DUBI. 7I25S 1!1$9#1$!2 121 11 22.12.*1
*2#% J5DI. 7ARA 1119%#11!$ 29# 1 12.1$.*1
*2#% 7AR(I. >5RA 2$1%9%!$!1 121 1$1 2*.19.*1
*2#%9 ,5,I. IDA: 2!1$91$!2 2*1 1 11.1.*1
*2##* ./,I. G5RA: 2!1192#11$$ 2$1 1 19.1%.*1
*2##* SUSI. >5RA: 111!9%!$%1 !111 1 19.1%.*%
*2#*! B2JABI. S(/DA 1$1$9#1$!2 111 1 1#.11.*1
*2#*$ (U,I. 7IRA 1%119%#11!$ 111 1 1*.19.*1
IS&2A(A
Sifra oso4e r4r Datum I+nos
#!%9 1 12.12.9# 2.$!!911
#!%9 2 12.11.9# 2.!22911
#21 1 11.11.9# 212
#21 2 11.11.9# 2!2
#21 ! 11.12.9# 2.122
*lika 4.74. +rimerak entiteta za sliku 4.72.
&o3to je otkrivena 'ru"a "odataka koji se "onavljaju i od nji) stvoren
novi entitet IS&2A(A9 time je u;injen "rvi korak "rema
normali+ovanom modelu.
Bao jo3 jedan "rimer ve+an +a de<nisanje "rve normalne forme9 tre4a
navesti slu;aj koji se naj;e36e "ojavljuje I vi3e+na;na u"otre4a
isto' atri4uta9 'de se jednim atri4utom9 n"r.9 @Dat[+a" ili Dat[odlaska@
-slika !.$$0 de<ni3u dve ;injenice.
OSOBA
Si*'a osobe
+'e$ime
Ime
Dat3$ap3ili3#at3o#lasa
*lika 4.77. i{ezna~na upotreba istog atributa
alempije@beotel.yu 111
5S5,A
Sif.oso4e &re+ime Ime Dat.+a"os.ili dat.odlaska
*2#!%9 S(AR./DI. >5RA: 1#.12.*1A 12.12. 199
*2#$99 A2AGI. 7I2A: 21.12.*1
*2#21 DUBI. 7I25S 22.12.*1
*2#%% J5DI. 7ARA 12.1$.*1
*2#%$ 7AR(I. >5RA 2*.19.*1
*2#%9* ,5,I. IDA: 11.1.*1A1!.19.1991
*2##*2 ./,I. G5RA: 19.1%.*1
*2##** SUSI. >5RA: 19.1%.*%
*2#*!9 B2JABI. S(/DA: 1#.11.*1
*2#*$$ (U,I. 7IRA 1*.19.*1A1$.1.19*#
*lika 4.7A. +rimerak entiteta sa slike 4.77.
Dakle9 "ro4lem je u atri4utima? Udat[+a" ili dat[odlaskaU koji
"redstavljaju jednu od dve ;injenice9 "o;etak rada u <rmi i "restanak
rada u <rmi. :e "ostoji mo'u6nosti da se otkrije 3ta taj datum
"redstavlja9 kao 3to ne "ostoji mo'u6nost da se +a"amte o4a
datuma9 iako su9 mo8da9 o4a "o+nata. Re3enje nije u tome da atri4ut
mo8e da sadr8i dve ;injenice9 ve6 da "ostoje dva atri4uta koji 'ovore
o "o;etku i +avr3etku rada.
Sto'a je "otre4no da se u'rade dva atri4uta koji nose dve ra+li;ite
informacije -sl. !.$%. i sl. !.$#.0 "rika+uju i+vedenu 1:F +a ovaj
slu;aj.
OSOBA
Si*'a osobe
+'e$ime
Ime
Dat3$ap3
Dat3o#lasa
*lika 4.7C. Hednozna~na upotreba atributa
5S5,A
Sif.oso4e &re+ime Ime Dat.+a"os. dat.odlaska
*2#!%9 S(AR./DI. >5RA: 1#.12.*1 12.12.199
*2#$99 A2AGI. 7I2A: 21.12.*1
*2#21 DUBI. 7I25S 22.12.*1
*2#%% J5DI. 7ARA 12.1$.*1
*2#%$ 7AR(I. >5RA 2*.19.*1
*2#%9* ,5,I. IDA: 11.1.*1 1!.19.1991
*2##*2 ./,I. G5RA: 19.1%.*1
*2##** SUSI. >5RA: 19.1%.*%
*2#*!9 B2JABI. S(/DA: 1#.11.*1
alempije@beotel.yu 112
*lika 4.7@. +rimerak entiteta sa slike 4.7C.
I u "rimeru sa sl. !.$1. i sl. !.$$. "o're3na re3enja ne +adovoljavaju
"rvu normalnu formu. 7enjaju6i strukturu9 sasvim si'urno9 jedan se
atri4ut "ojavljuje samo jednom u entitetu i nosi samo jednu
;injenicu.
Dakle9 "rva normalna forma je is"unjena ako svaki od atri4uta
entiteta ima jedno +na;enje i ne vi3e od jedne vrednosti +a svaki
"rimerak. Ako je si'urno da svi entiteti i atri4uti ne nose vi3e
;injenica9 model +adovoljava "rvu normalnu formu.
5vi elementi su u'raCeni i u /REin .AS/ alatu koji "ri)vata 4ilo koje
ime +a de<niciju entitetat ili atri4ut9 ali "ostoje o'rani;enja?
/REin 6e o4avestiti o "onovnom kori36enju imena entiteta9
+avisno od "ostavke o"cije o jedinstvenom imenu.
/REin 6e o4avestiti o "onovnom kori36enju imena atri4uta9
osim ako je to ime ulo'e -Rolename0. Bada je "ridru8eno ime
ulo'e +a atri4ut9 mo8e 4iti kori36eno u ra+li;itim entitetima.
/rEin ne6e do+voliti ula+ak "reneseni) klju;eva u entitet
vi3e ne'o jednom9 osim ako mu je dodeljeno ime ulo'e svaki "ut.
S"re;avaju6i da se vi3estruko koristi isto ime9 /REin vodi korisnika
da svaki "odatak smesti ta;no na jedno mesto.
7eCutim9 "otre4na je dalja anali+a9 jer "rva normalna forma nije
dovoljna "a se "rela+i na de<nisanje dru'e normalne forme.
Dru'a normalna forma -2:F0
De<nicija dru'e normalne forme je slede6a?
/ntitet A +adovoljava dru'u normalnu formu ako +adovoljava "rvu i
ako svaki atri4ut koji nije klju; "ot"uno +avisi od "rimarno' klju;a.
>a o"is ove de<nicije "oslu8i6e "rimer vi3estruko' "ojavljivanja isti)
;injenica.
Ako 4i se na "rimeru -slika !.$*0 u entitet IS&2A(A stavio atri4ut U
Datum +a"osl.U mo8e se uo;iti da ovaj atri4ut +avisi od dela klju;a
entiteta IS&2A(A -Sifra oso4e09 a ne od celo' klju;a entiteta IS&2A(A.
IS&2A(A
Sifra oso4e r4r Datum Datum I+nos
*2#!%9 1 12.12.9# 1#.12.*1 2.$!!911
*2#!%9 2 12.11.9# 1#.12.*1 2.!22911
*2#21 2 11.11.9# 22.12.*1 2!2
alempije@beotel.yu 113
*2#21 ! 11.12.9# 22.12.*1 2.122
*lika 4.7D. ,nstance tabele ,*+G8$- koje nisu u 2N.
Da 4i se +adovoljila dru'a normalna forma "otre4no je "re4aciti
atri4ut UDatum +a"osl.U u entitet 5S5,A. Dakle9 entitet kr3i dru'u
normalnu formu ako "odatak mo8e 4iti "ronaCen kada se +na samo
deo klju;a entiteta.
7o8e da nastane 're3ka dru'e normalne forme ako se "ostavi neki
atri4ut nekorektno9 a ne "ostoji al'oritam koji 4i 4e+ dodatni)
informacija9 "ored oni) u modelu9 otkrio 're3ku. U entitetnom
dija'ramu /rEin ne mo8e +nati da ime koje je dodeljeno atri4utu
mo8e "redstavljati listu o4jekata.
:a osnovu korekcija s"rovedeni) u okviru 2:F "ristu"a se de<nisanju
tre6e normalne forme.
(re6a normalna forma -!:F0
De<nicija tre6e normalne forme je slede6a?
/ntitet +adovoljava tre6u normalnu formu ako svaki atri4ut koji nije
klju; +avisi od klju;a9 ;itavo' klju;a i ne slu8i ni;emu dru'om osim
klju;a.
:a "rimer9 4ila 4i "ovreCena tre6a normalna forma ako se u entitet
IS&2A(A u'radi atri4ut USuma is"lataU. USuma is"lataU +avisi od atri4uta
UIs"lataU i mo8e se i+ra;unati.
&ored ovi) formi "ostoje i ;etvrta i "eta i ,oJceI.oddIova forma9 a
nji)ova u"otre4a +avisi od sku"a transakcija koje tre4a i+vr3iti i ovde
se ne6e ra+matrati.
7ora se na'lasiti da iskusni "rojektanti ve6 ra+mi3ljaju u !:F .
:a osnovu "ret)odno i+vedeni) aktivnosti -slika !.!20 u slede6em
koraku tre4a de<nisati atri4ute.
0ktivnost
2.3.4. %e+nisanje atri)#ta
De<nisanje atri4uta se i+vodi u tri koraka?
alempije@beotel.yu 114
identi<kacijom atri4uta9
alociranjem atri4uta i
revi+ijom atri4uta.
,denti3kacija atributa se de<ni3e na osnovu +a)teva korisnika i
"oslovne dokumentacije.
8lociranje atributa se i+vodi u +avisnosti od to'a da li atri4ut +avisi od
klju;a ili je o"isni.
6evizijom atributa se elimini3e vi3estruko nastu"anje vrednosti
atri4uta "ojedino' entiteta i "ri tom se +a svaki atri4ut "ostavljaju
"itanja?
da li je "otre4no tra8iti vi3estruke vrednosti +a isto
"ojavljivanje entiteta -Sifra odeljenja9 :a+iv odeljenja0A
da li atri4ut mo8e "ri"adati nekom dru'om entitetuA
da li "ostoje atri4uti koji ne nastu"aju +a neko "ojavljivanje
entitetaA
da li "ostoje i+vedeni atri4uti -koje tre4a ili odstraniti ili
dodati0A
da li "ostoje atri4uti 4e+ entitetaA
da li je "rikladan identi<katorH klju;.
>a atri4ute se mo'u de<nisati ?
set vrednosti9
"ravila do+voljeni) vrednosti9
null vrednosti9
dosledno +na;enje9 tj. meCuso4no isklju;ivanje -n"r.9
Atri4ut? &olA Drednost? mu3karac9 8ena0.
&ravila +a de<nisanje atri4uta 4i6e de<nisana u slede6em "o'lavlju9
kao t+v. "oslovna "ravila.
alempije@beotel.yu 115
0ktivnost
2.4. %e+nisanje !oslovni-
!ravila
>a aktivnost "2.7. &e3nisanje poslovnih pravila" "otre4ne su slede6e
"odaktivnosti -slika !.$90?
Aktivnost 2.$.1. De<nisanje kardinalnosti ve+a9
Aktivnost 2.$.2. De<nisanje referencijalno' inte'riteta i
Aktivnost 2.$.!. Identi<kacija "oslovno' domena.
2.$.1
D/FI:ISA:J /
BARDI:A2:5S(I
D/>A
2.$.2
D/FI:ISA:J /
R/F/R/:.IJ A2:IN
I:(/GRI(/(A
2.$.!
ID/:(IFIBA.IJ A
&5S25D:5G
D57/:A
I1
51
I2
71
Deri<kovani
atri4utivni model
Deri<kovaneardinalnosti
Dodati referencijalni inte'riteti
Glavni
"rojekat
Informacije
odkorisnika
&oslovni domen
Radna
'ru"a
*lika 4.7B. &ekompozicioni dijagram za aktivnost "2.7. &e3nisanje poslovnih
pravila"
De<nisanje "oslovni) "ravila ve+ano je +a t+v. strukturna dinami;ka
"ravila inte'riteta koja se de<ni3u ureCenom trojkom?
alempije@beotel.yu 116
B4grani/enje* 4!eracija * 0kcijaC
Strukturna dinami;ka "ravila inte'riteta su?
o'rani;enja kojima se de<ni3u do+voljena stanja 4a+e
"odataka9
o"eracije koje mo'u "otencijalno u'ro+iti o'rani;enja i
akcije koje tre4a "redu+eti ukoliko doCe do naru3avanja
o'rani;enja.
5'rani;enja
5'rani;enja se "osmatraju "reko?
strukturni) o'rani;enja9
o'rani;enja nad standardnim domenom9
o'rani;enja nad vredno36u domena i
o'rani;enja na kardinalnost.
;grani~enja su strukturna ukoliko su "rika+ana strukturom modela
"odataka9 3to se9 "re sve'a9 odnosi na?
integritet entiteta I 'de ne mo'u da "ostoje dva "rimerka
entiteta u istom ti"u entiteta tako da imaju istu vrednost atri4uta
koji ;ine identi<kator9 tj. ne "ostoje dva ti"a entiteta koji imaju isti
sku" atri4uta kao identi<katorA
referencijalni integritet9 'de se de<ni3u?
o'rani;enje "ostojanja -e'+istencijalna +avisnost0 jedno'
entiteta u +avisnosti od dru'o' entitetaA
o'rani;enje mo'u6nosti identi<kacije jedno' o4jekta 4e+
"o+navanja identi<katora neko' dru'o' o4jektaA
s"ecijalni ti"ovi ve+e kojima se de<ni3u "odti"ovi
e'+istencijalno i identi<kaciono9 +avisno od nadreCeno'
'enerali+ovano' entiteta.
5'rani;enja nad standardnim domenom de<ni3u se9 n"r9 kao?
ti" "odatka -c)aracter9 numeric9 4oolen09
du8ina "odatka .NARA.(/R -!10 i dr.
;grani~enja nad vredno{}u domena #vrednost atributa( mo'u se
alempije@beotel.yu 117
"odeliti na?
o"eratore "oreCenja -Y9Z9 \9 Z\9 Y\0A
I: listu vrednosti koja formira listu konstanti i+
od'ovaraju6e' domena9 eks"licitnim navoCenjem svi) do+voljeni)
vrednosti -n"r.9 Ste"en I: =UG9&9.UT0A
,/(M//: o"se' do+voljeni) vrednosti9 'de atri4uti
o4jekata i ve+a u+imaju vrednosti i+ domena9 ali u+ "ostavljena
o'rani;enja na ove vrednosti9 tako da atri4ut mo8e "o"rimiti
samo u8i sku" vrednosti i+ domena -n"r.9 ,/(M//: 11 A:D 2110A
741 7U88 kada dato "olje ne mo8e da do4ije nula
vrednost9 tj. mora uvek da ima neku vrednost.
5'rani;enja na kardinalnost ve+a de<ni3u se i+meCu?
entiteta UroditeljU i entiteta UdeteU i to kao?
kardinalnost ti"a >ero9 5ne or 7ore9 'de se jedan "rimerak
entiteta UroditeljU "ridru8uje nijednom9 jednom ili ve6em 4roju
"rimeraka entitetu UdeteUA
kardinalnost ti"a 5ne or 7ore -&09 'de se jedan "rimerak
entiteta UroditeljU "ridru8uje najmanje jednom ili ve6em 4roju
"rimeraka entiteta UdeteUA
kardinalnost ti"a >ero or 5ne ->09 'de se jedan "rimerak
entiteta UroditeljU "ridru8uje nijednom ili jednom "rimerku
entiteta UdeteUA
kardinalnost ti"a konkretne vrednosti -/SactlJ09 'de se jedan
"rimerak entiteta UroditeljU "ridru8uje ta;no de<nisanom 4roju
"rimeraka entiteta UdeteU.
entiteta UdeteU "rema entitetu UroditeljU kao?
(5(A2:5 u;e36e9 'de svi "rimerci entiteta UdeteU u;estvuju
4ar u jednoj ve+i -:o :ulls0 sa entitetom UroditeljUA
&AR.IJA2:5 -delimi;no0 u;e36e9 'de samo "ojedini "rimerci
entiteta UdeteU u;estvuju u ve+i -:ulls AlloEed0 sa entitetom
UroditeljU.
5"eracije
;peracije koje "otencijalno u'ro8avaju o'rani;enja su standardne
alempije@beotel.yu 118
o"eracije a8uriranja9 t+v. IRD o"eracije9 3to je skra6enica od?
u4acivanje novo' slo'a -Insert09
i+mena slo'a -Re"lace0 i
4risanje slo'a -Delete0.
5"eracija ubacivanje #insert( omo'u6uje slede6a dodavanja
"odataka?
kreira o4jekat i "roverava da li je vrednost klju;a o4jekta
mo'u6a ili ve6 "ostoji o4jekat sa tom vredno36uA
kreira ve+u i "roverava da li "ostoje o4jekti sa datim
vrednostima klju;aA
dodaje vrednost o4jektu ili ve+i i "roverava da li je ta
vrednost do+voljena.
5"eracija izmena #replace( omo'u6uje slede6e i+mene "odataka?
i+menu vrednosti neklju;no' atri4uta o4jektaA
i+menu vrednosti atri4uta koji je deo klju;a9 3to +na;i da
tre4a i+meniti tu vrednost u svim o4jektima i u svim ve+ama sa
o4jektom9 kao i i+meniti tu vrednost u svim sla4im o4jektima u
kojima je ta vrednost s"u3tena kao deo klju;aA
i+menu vrednosti neklju;no' atri4uta u ve+i.
5"eracija brisanje #delete( omo'u6uje slede6a 4risanja "odataka?
4risanja o4jekata i ve+e u kojima se "ojavljuje vrednost
klju;a o4jektaA
4risanje ve+e u ti"u ve+eA
4risanje o4jekta UroditeljU i svi) o4jekata UdeteU9 ;ije
"ostojanje +avisi od dato' o4jekta.
Akcije
>a iska+ivanje strukturni) "ravila inte'riteta9 tj. +a iska+ivanje
"ot"une s"eci<kacije 4udu6e 4a+e "odataka9 de<ni3u se akcije koje
tre4a "redu+eti kada neka o"eracija a8uriranja 4a+e "odataka naru3i
de<nisano o'rani;enje.
7o'u se de<nisati slede6i ti"ovi akcija?
alempije@beotel.yu 119
R/S(RI.( -R09 tj. akcija odbijanja o"eracije kojom se efekti
te o"eracije "oni3tavaju ako je uslov inte'riteta naru3enA
.AS.AD/ -.09 tj. akcija prosle:ivanja o"eracije na ve+ni
entitetA
D/FAU2( -D09 tj. akcija kojom se kreira speci3~no
pojavljivanje t+v.@default o4jekta@ koji o+na;ava @"ret"ostavljeni
o4jekat@ i +amenjuje o4jekat ;ije je ne"ostojanje u+rok
naru3avanja inte'ritetaA
S/( :U22 -S:09 tj. akcija koja tre4a da elimini3e da "rimerak
entiteta @visi@ u sistemu9 tj. atri4ut koji us"ostavlja ve+u setuje se
na null vrednost. S"eci<cira se @nul o4jekat@ koji o+na;ava
@jo3 ne"o+nato "ojavljivanje dato' ti"a o4jekta@ i +amenjuje
o4jekat ;ije je ne"ostojanje u+rok naru3avanja inte'ritetaA
:5:/9 3to +na;i da ne "ostoji o'rani;enje i da se o"eracija
neometano i+vodi.
5vako na4rojana strukturna dinami;ka "ravila inte'riteta 4i6e u
slede6im aktivnostima detaljno o"isana.
0ktivnost
2.4.1. %e+nisanje
kardinalnosti veza
S o4+irom na to da su u "ret)odnom "o'lavlju navedeni ti"ovi ve+a9
tre4alo 4i sada i+neti nji)ove oso4ine. :aime9 ve+e -relations)i"s0
imaju oso4inu koja se +ove kardinalnost preslikavanja, koja de<ni3e?
kardinalnost "reslikavanja UroditeljUIUdeteU i
kardinalnost "reslikavanja UdeteUIUroditeljU.
Bardinalnost "reslikavanja UroditeljUIUdeteU de<ni3e @koliko mno'o@
instanci entiteta UroditeljU je "ove+ano sa @koliko mno'o@ instanci
entiteta UdeteU. &o ID/F1F metodolo'iji9 de<ni3u se ;etiri na;ina
de<nisanja kardinalnosti "reslikavanja UroditeljUIUdeteU?
>ero 9 5ne or 7ore I 4e+ o+nake
Svaki UroditeljU "ove+uje se sa nula9 jednom ili vi3e instanci
UdeteUA
5ne or 7ore I o+na;en slovom @&@
alempije@beotel.yu 120
Svaki UroditeljU "ove+uje se sa jednom instancom ili vi3e
instanci UdeteUA
>ero or 5ne I o+na;en slovom @>@
Svaki UroditeljU "ove+uje se sa nula ili jednom instancom UdeteUA
(a;no n I 'de je n 4roj
Svaki UroditeljU "ove+uje se sa ta;no n instanci UdeteU.
Bardinalnost "reslikavanja UdeteUIUroditeljU de<ni3e se kao?
kardinalnost "reslikavanja 'de je dozvoljena null vrednost
strano' klju;a -:ulls AlloEed09 3to je mo'u6e samo +a
neidenti<kuju6e ve+e i o4ele8ava se -sa strane UroditeljU0
rom4oidomA
kardinalnost "reslikavanja 'de nije dozvoljena null vrednost
strano' klju;a -:o :ulls0.
:a slici !.1. "rika+ane su o"cije "rilikom de<nisanja kardinalnosti
"reslikavanja.
U daljem tekstu 4i6e "rika+ane sve varijante kardinalnosti
"reslikavanja +a slede6e ti"ove ve+a?
identi<kuju6e ve+e9
neidenti<kuju6a ve+a 9
rekur+ivna ve+a9
ve+a kate'orije9
neodreCuju6a ve+a ti"a vi3e "rema vi3e i
:Iarne ve+e.
De+a UroditeljUIUdeteU De+a UdeteUIUroditeljU
*lika 4.A/. ;pcije u -6'in%u kojima se de3ni{e kardinalnost preslikavanja
alempije@beotel.yu 121
Bardinalnost identi<kuju6i) ve+a
Bod identi<kuju6i) ve+a klju;evi entiteta UroditeljU u;estvuju u
identi<kovanju entiteta UdeteU9 tj. svaka instanca entiteta UdeteU mora
4iti "ove+ana sa najmanje jednom instancom entiteta UroditeljU.
,denti3kuju}e veze su "rika+ane "unom linijom koja "ove+uje entitet
UroditeljU i entitet UdeteU sa ta;kom na entitetu UdeteU -slika !.10.
5vakav ti" ve+e 'ovori da je entitet UdeteU identi<kuju6i9 +avisno od
entiteta UroditeljU.
sa#'$i 4
je sa#'$a&o
RODITEL,0+ARENT1
Ro#itelj lju!
DETE056ILD1
Dete lju!
Ro#itelj lju! 02K1
*lika 4.A0. 5ardinalnost preslikavanja identi3kuju}e veze
Slede6e varijante ti"ova kardinalnosti identi<kuju6i) ve+a 4i6e
"rika+ane na "rimeru entiteta 5D/2J/:J/ -UroditeljU0 i entiteta 5S5,A
-UdeteU09 imaju6i u vidu o"cije "rika+ne na slici !.1. 'de je <ksirana
o"cija UdeteUIUroditeljU na :o :ulls -5:/0.
5ardinalnost veze tipa ;ne%to%?ero%;ne%or%>ore
Ako je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa nula9 jednom ili vi3e
instanci 5S5,A -.NI2D09 'de 5S5,A +avisi od 5D/2J/:JA9
kardinalnost je "rika+ana na slici !.2.
$aposlja"a 4
'a#i
OSO.A 'a#i u je#&om0O&e1 ODEL,EN,U.
ODEL,EN,E $aposlja"a &ije#&u07e'o18
je#&u0O&e1 ili "ise0-o'e1 OSO.A.
ODEL,EN,E
Si*'a o#elje&ja
OSO.A
Si*'a osobe
Si*'a o#elje&ja 02K1
One)to)#ero)One)or)More
*lika 4.A2. 5ardinalnost veze tipa ;ne%to%?ero%;ne%or%>ore
5va ve+a 'ovori da 5deljenje nema nijednu +a"oslenu 5so4u9 ili ima
jednu ili vi3e +a"osleni) 5so4a. Bako je to identi<kuju6a ve+a9 5S5,A
+avisi od 5D/2J/:JA9 "a se 5S5,A ne mo8e identi<kovati ukoliko
identi<kator entiteta 5D/2J/:JA nije "o+nat. Dakle9 entitet 5S5,A
e'+istencijalno +avisi od entiteta 5D/2J/:J/. ;vaj tip identi3kuju}e
veze se preporu~uje za kori{}enje, jer je najmanje ograni~avaju}i.
alempije@beotel.yu 122
5ardinalnost veze tipa ;ne%to%;ne%or%>ore #+(
Ako je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa jednom ili vi3e
instanci 5S5,A -.NI2D09 'de 5S5,A +avisi od 5D/2J/:JA9
kardinalnost je "rika+ana na slici !.!.
$aposlja"a 4
'a#i
+
OSO.A 'a#i u je#&om0O&e1 ODEL,EN,U.
ODEL,EN,E $aposlja"a8 je#&u0O&e1
ili "ise0-o'e1 OSO.A.
ODEL,EN,E
Si*'a o#elje&ja
OSO.A
Si*'a osobe
Si*'a o#elje&ja 02K1
One)to )One)or)More*P+
*lika 4.A4. 5ardinalnost veze tipa ;ne%to%;ne%or%>ore #+(
5va ve+a +a)teva da 5deljenje mora -5neI&0 da +a"o3ljava 4ar jednu
5so4u9 a mo8e i vi3e -7ore0. Bako je to identi<kuju6a ve+a9 entitet
5S5,A je +avisan od entiteta 5D/2J/:J/9 "a se 5S5,A ne mo`e
identi<kovati ukoliko identi<kator entiteta 5D/2J/:J/ nije "o+nat.
Dakle9 5S5,A +avisi od entiteta 5D/2J/:J/ -isklju;ena je o"cija
:ulls0.
5ardinalnost veze tipa ;ne%to%?ero%or%;ne #?(
Ako je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa nula ili jednom
instancom 5S5,A -.NI2D09 'de 5S5,A +avisi od 5D/2J/:JA9
kardinalnost je "rika+ana na slici !.$.
$aposlja"a 4
'a#i
7
OSO.A 'a#i u je#&om0O&e1 ODEL,EN,U.
ODEL,EN,E $aposlja"a &ije#&u07e'o1 ili
je#&u0O&e1 OSO.A.
OSO.A
Si*'a osobe
Si*'a o#elje&ja 02K1
ODEL,EN,E
Si*'a o#elje&ja
One)to)#ero)or)One*#+
*lika 4.A7. 5ardinalnost veze tipa ;ne%to%?ero%or%;ne #?(
5va ve+a 'ovori da 5deljenje ne mora ->ero0 da +a"o3ljava nijednu
oso4u ili +a"o3ljava samo jednu 5so4u -5ne0. Bako je to
identi<kuju6a ve+a9 entitet 5S5,A je +avisan od entiteta 5D/2J/:J/9
"a se 5S5,A ne mo`e identi<kovati ukoliko identi<kator entiteta
5D/2J/:J/ nije "o+nat. Dakle9 entitet 5S5,A je +avisan od entiteta
5D/2J/:J/ -isklju;ena je o"cija :ulls0.
5ardinalnost veze tipa ;ne%to%-<actlF n
Ako je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa ta;no n instanci
alempije@beotel.yu 123
5S5,A -.NI2D09 n"r.$9 'de 5S5,A +avisi od 5D/2J/:JA9 kardinalnost
je "rika+ana na slici !..
$aposlja"a 4
'a#i
9
OSO.A 'a#i u je#&om0O&e1 ODEL,EN,U.
ODEL,EN,E $aposlja"a ta!&o0E:a!tly1
& OSO.A.
OSO.A
Si*'a osobe
Si*'a o#elje&ja 02K1
ODEL,EN,E
Si*'a o#elje&ja
One)to)$,actl- .
*lika 4.AA. 5ardinalnost veze tipa ;ne%to%-<actlF n
5va ve+a omo'u6uje da oso4a radi samo u jednom 5deljenju -5ne09
dok u o4rnutoj ve+i odeljenje +a"o3ljava ta;no n oso4a. Bako je to
identi<kuju6a ve+a9 entite 5S5,A je +avisan od entiteta 5D/2J/:J/9
"a se 5S5,A ne mo`e identi<kovati ukoliko identi<kator entiteta
5D/2J/:J/ nije "o+nat. Dakle9 entitet 5S5,A je +avisan od entiteta
5D/2J/:J/ -isklju;ena je o"cija :ulls0.
Bardinalnost neidenti<kuju6i) ve+a
De+a je neidenti<kuju6a ako se mo8e identi<kovati instanca entiteta
UdeteU 4e+ +nanja ve+e sa entitetom UroditeljU. Gra<;ki se ova ve+a
"redstavlja is"rekidanom linijom. U +avisnosti od kardinalnosti
UdeteUIUroditeljU9 -slika !.1.09 ovaj ti" kardinalnosti mo8e ili ne mo8e
imati e'+istencijalnu +avisnost.
-gzistencijalna zavisnost instance entiteta UdeteU od instance entiteta
UroditeljU ve+ana je +a o4ave+nost ve+e -:o :ulls0 i 'ra<;ki se de<ni3e
na slici !.%.
sa#'$i 4
je sa#'$a&o
RODITEL,0+ARENT1
Ro#itelj lju!8
DETE 056ILD1
Dete lju!
Ro#itelj lju!8 02K1
*lika 4.AC. ;baveznost veze
Ako je ve+a neo4ave+na -:ulls AlloEed09 tada UdeteU nije
e'+istencijalno +avisno9 ali "o3tuje tu ve+u i 'ra<;ki se "redstavlja
rom4om -slika !.#0.
alempije@beotel.yu 124
sa#'$i 4
je sa#'$a&o
RODITEL, 0+ARENT1
Ro#itelj lju!
DETE 056ILD1
Dete lju!
Ro#itelj lju! 02K1
*lika 4.A@. Neobavezne veze
Slede6e varijante ti"ova kardinalnosti neidenti<kuju6i) ve+a 4i6e
ra+motrene na "rimeru entiteta 5D/2J/:J/ -UroditeljU0 i entiteta 5S5,A
-UdeteU0.
5ardinalnost veze tipa ?ero#Null 8llo'ed(%or%;ne%to%?ero%
;ne%or%>ore
Ako je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa nula9 jednom ili vi3e
instanci 5S5,A -.NI2D09 'de 5S5,A mo8e9 a ne mora da "ri"ada
5D/2J/:JU9 kardinalnost je "rika+ana na slici !.*.
$aposlja"a 4
'a#i
#ero*%ulls Allo/ed+) or)One)to)#ero)One)or)More
OSO.A
Si*'a osobe
Si*'a o#elje&ja 02K1
ODEL,EN,E
Si*'a o#ejle&ja
OSO.A 'a#i u &ije#&om07e'o1 ili je#&om 0O&e1
ODEL,EN,U.ODEL,EN,E $aposlja"a &ije#&u07e'o18
je#&u0O&e1 ili "ise0-o'e1 OSO.A.
*lika 4.AD. 5ardinalnost veze tipa ?ero#Null 8llo'ed(%or%;ne%to%?ero%;ne%or%
>ore
5va ve+a do+voljava da 5so4a ne radi u nijednom -:ulls AlloEed0
5deljenju ili da radi u jednom 5deljenju. U 5deljenje mo8e 4iti
neras"oreCena -ve+a +a"o3ljava0 nejedna ->ero09 ili ras"oreCena jedna
-5ne0 ili vi3e -7ore0 5so4a. 5va ve+a je najmanje o'rani;avaju6a9 jer
omo'u6uje de<nisanje UroditeljU -5D/2J/:J/0 i UdeteU -5S5,A0 4e+
o'rani;enja i meCuso4ni) +avisnosti.
5ardinalnost veze tipa ;ne#No Nulls(%to%?ero%;ne%or%>ore
Ako je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa nula9 jednom ili vi3e
instanci 5S5,A -.NI2D09 'de 5S5,A mora da "ri"ada 5D/2J/:JU9
kardinalnost je "rika+ana na slici !.9.
alempije@beotel.yu 125
$aposlja"a 4
'a#i
OSO.A
Si*'a osobe
Si*'a o#elje&ja 02K1
ODEL,EN,E
Si*'a o#elje&ja
One*%o %ulls+)to)#ero)One)or)More
OSO.A 'a#i u je#&om0O&e1 ODEL,EN,U.
ODEL,EN,E $aposlja"a &ije#&u07e'o18
je#&u0O&e1 ili "ise0-o'e1 OSO.A.
*lika 4.AB. 5ardinalnost veze tipa ;ne#No Nulls(%to%?ero%;ne%or%>ore
5va ve+a do+voljava da 5so4a mora da radi u jednom -:o :ulls0 i
samo jednom 5deljenju. U 5deljenje mo8e 4iti ras"oreCena -ve+a
+a"o3ljava0 nejedna ->ero09 jedna -5ne0 ili vi3e -7ore0 5so4a.
5ardinalnost veze ti!a @eroD7#lls 0lloEedF=or=4ne=
to=4ne=or=MoreD(F
Ako je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa jednom ili vi3e
instanci 5S5,A -.NI2D09 'de 5S5,A mo8e9 a ne mora da +avisi od
5D/2J/:JA9 kardinalnost je "rika+ana na slici !.%1.
$aposlja"a 4
'a#i
+
OSO.A.
Si*'a osobe
Si*'a o#elje&ja8 02K1
ODEL,EN,E
Si*'a o#elje&ja8 OSO.A 'a#i u &ije#&om07e'o1 ili je#&om 0O&e1
ODEL,EN,U. ODEL,EN,E $aposlja"a8
je#&u0O&e1 ili "ise0-o'e1 OSO.A.
#ero*%ulls Allo/ed+)or)One)to )One)or)More*P+
*lika 4.C/. 5ardinalnost veze tipa ?ero#Nulls 8llo'ed(%or%;ne%to%;ne%or%
>ore#+(
5va ve+a do+voljava da 5so4a mo8e da ne radi u nijednom -:ulls
AlloEed0 5deljenju ili da radi u jednom 5deljenju. U 5deljenje mora
4iti ras"oreCena -ve+a +a"o3ljava0 najmanje jedna -5neI&0 ili vi3e
-7ore0 5so4a. 5va ve+a je o'rani;avaju6a9 jer +a)teva da u
5deljenju mora 4iti najmanje jedna 5so4a9 dok de<nisanje "odataka
o 5so4ama ne +avisi od 5deljenja u kome 6e 4iti.
5ardinalnost veze tipa ;ne#No Nulls(%to%;ne%or%>ore#+(
Ako je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa jednom ili vi3e
instanci 5S5,A -.NI2D09 'de 5S5,A mora da "ri"ada 5D/2J/:JU9
kardinalnost je "rika+ana na slici !.%1.
$aposlja"a 4
'a#i
+
One*%o %ulls+)to )One)or)More*P+
OSO.A
Si*'a osobe
Si*'a o#elje&ja 02K1
ODEL,EN,E
Si*'a o#elje&ja OSO.A 'a#i u je#&om0O&e1 ODEL,EN,U.
ODEL,EN,E $aposlja"a8je#&u0O&e1 ili
"ise0-o'e1 OSO.A.
*lika 4.C0. 5ardinalnost veze tipa ;ne#No Nulls(%to%;ne%or%>ore#+(
alempije@beotel.yu 126
5va ve+a +a)teva da 5so4a mora da radi u jednom -:o :ulls0 i samo
jednom 5deljenju. U 5deljenje mora 4iti ras"oreCena -ve+a
+a"o3ljava0 najmanje jedna -5neI&0 ili vi3e -7ore0 5so4a. 5va ve+a je
o'rani;avaju6a jer +a)teva da u odeljenju mora 4iti najmanje jedna
5so4a i da ta 5so4a radi isklju;ivo u jednom odeljenju. 5va ve+a
+a)teva "ro'ramsko re3enje ve+ano +a 4risanje "oslednje 5so4e.
5ardinalnost veze tipa ?ero#Nulls 8llo'ed(%or%;ne%to%?ero%
or%;ne#?(
Ako je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa nula ili jednom
instancom 5S5,A -.NI2D09 'de 5S5,A mo8e9 a ne mora da +avisi od
5D/2J/:JA9 kardinalnost je "rika+ana na slici !.%2.
$aposlja"a4
'a#i
7
#ero*%ulls Allo/ed+ or One)to)#ero)or)One*#+
ODEL,EN,E
Si*'a o#elje&ja
OSO.A
Si*'a osobe
Si*'a o#elje&ja02K1
OSO.A 'a#i u &ije#&om07e'o1 ili je#&om 0O&e1
ODEL,EN,U. ODEL,EN,E $aposlja"a
&ije#&u07e'o1 ili je#&u0O&e1 OSO.A.
*lika 4.C2. 5ardinalnost veze tipa ?ero#Nulls 8llo'ed(%or%;ne%to%?ero%or%
;ne#?(
5va ve+a do+voljava da 5so4a mo8e da radi u nijednom -:ulls
AlloEed0 ili jednom 5deljenju. U 5deljene mo8e 4iti ras"oreCena -ve+a
+a"o3ljava0 nijedna ->ero0 ili jedna -5ne0 5so4a.
5ardinalnost veze tipa ;ne#No Nulls(%to%?ero%or%;ne#?(
Ako je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa nula ili jednom
instancom 5S5,A -.NI2D09 'de 5S5,A mora da "ri"ada
5D/2J/:JU9 kardinalnost je "rika+ana na slici !.%!.
$aposlja"a 4
'a#i
7
OSO.A
Si*'a osobe
Si*'a o#elje&ja 02K1
ODEL,EN,E
Si*'a o#elje&ja
One*%o %ulls+)to)#ero)or)One*#+
OSO.A 'a#i u je#&om0O&e1 ODEL,EN,U.
ODEL,EN,E $aposlja"a &ije#&u07e'o1 ili
je#&u0O&e1 OSO.A.
*lika 4.C4. 5ardinalnost veze tipa ;ne#No Nulls(%to%?ero%or%;ne#?(
5va ve+a do+voljava da 5so4a mora da radi u jednom -:o :ulls0 i
samo jednom 5deljenju. U 5deljenje mo8e 4iti ras"oreCena -ve+a
+a"o3ljava0 nijedna ->ero0 ili jedna -5ne0 5so4a.
alempije@beotel.yu 127
5ardinalnost veze tipa ?ero#Nulls 8llo'ed(%or%;ne%to%
-<actlF n
Ako je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa ta;no n -$0 instanci
5S5,A -.NI2D09 'de 5S5,A mo8e9 a ne mora da +avisi od 5D/2J/:JA9
kardinalnost je "rika+ana na slici !.%$.
$aposlja"a 4
'a#i
9
#ero*%ulls Allo/ed+)or)One)to)$,actl- .
ODEL,EN,E
Si*'a o#elje&ja
OSO.A
Si*'a osobe
Si*'a o#elje&ja 02K1
OSO.A 'a#i u &ije#&om ili
je#&om0O&e1 ODEL,EN,U.
ODEL,EN,E $aposlja"a
ta!&o0E:a!tly19 OSO.E.
*lika 4.C7. 5ardinalnost veze tipa ?ero#Nulls 8llo'ed(%or%;ne%to%-<actlF n
5va ve+a do+voljava da 5so4a mo8e da radi u nijednom -:uls
AlloEed0 ili jednom 5deljenju. U 5deljenje mo8e 4iti ras"oreCeno
-ve+a +a"o3ljava0 ta;no n 5so4a.
5ardinalnost veze tipa ;ne#No Nulls(%to%-<actlF n
Ako je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa ta;no n -$0
instanci 5S5,A -.NI2D09 'de 5S5,A mora da "ri"ada
5D/2J/:JU9 kardinalnost je "rika+ana na slici !.%.
$aposlja"a 4
'a#i
9
OSO.A.
Si*'a osobe
Si*'a o#elje&ja 02K1
ODEL,EN,E
Si*'a o#elje&ja
One*%o %ulls+)to)$,actl- .
OSO.A 'a#i u je#&om0O&e1 ODEL,EN,U.
ODEL,EN,E $aposlja"a ta!&o0E:a!tly1
9 OSO.E.
*lika 4.CA. 5ardinalnost veze tipa % ;ne #No Nulls( to -<actlF n
5va ve+a do+voljava da 5so4a mora da radi u 5deljenju. U 5deljenje
mo8e 4iti ras"oreCeno -ve+a +a"o3ljava0 ta;no n 5so4a.
Bardinalnost rekur+ivni) ve+a
Rekur+ivne ve+e se de<ni3u kao?
rekur+ija nad jednom ta4elom i
rekur+ija nad dve ta4ele.
alempije@beotel.yu 128
6ekurzija nad jednom tabelom
Rekur+ija nad jednom ta4elom ili rekur+ija hijerarhijskog ti"a
de<nisana je +a entitet koji je ujedno i UroditeljU i UdeteU. Oesto se
na+iva i @udica@ -3sh hook0. Nijerar)ijska rekur+ija omo'u6uje da
UroditeljU mo8e imati vi3e dece9 ali deca mo'u imati samo jedno'
UroditeljU. Sve rekur+ivne ve+e )ijerar)ijsko' ti"a moraju 4iti sla4e
ve+e. Bao i sve sla4e ve+e9 one u4acuju klju; entiteta UroditeljU u
"rostor "odataka entiteta UdeteU.
:a slici !.%%. "rika+an je "rimer rekur+ije nad entitetom 5S5,A. >a
atri4ut USifra oso4eU de<ni3e se novi atri4ut -kojim se de<ni3e
rukovodilac0 ;ije je ime @Rukov.Sifra oso4e -FB0@. Atri4ut @Rukov@ je
novo ime -6olename0 +a atri4ut USifra oso4eU. Ra+lo' +a de<nisanje
atri4uta @Rukov@ je u tome 3to se u istom entitetu "od istim imenom
ne mo8e dva "uta "ojaviti atri4ut @Sifra oso4e@. (o 4i 4ila 're3ka u
normali+aciji9 jer je jedan od osnovni) "ravila normali+acije da ako
dve stvari imaju isto ime9 onda su one ista stvar.
Ulo'a -6olename0 ne3to je vi3e od novo' imena +a atri4ut9 jer nosi sa
so4om i +a3titu9 odnosno identitet instance entiteta.
>a "rimer "rika+an na slici !.%%. de<ni3e se rekur+ivna -ne
identi<kuju6a0 ve+a9 'de "reneseni klju;evi mo'u 4iti :U22 "odatak.
je rukovodjena /
je rukovodilac
#ero*%ulls Allo/ed+) or)One)to)#ero)One)or)More
OSO.A 'uo"o#je&a sa &ula07e'o1 ili je#&om0O&e1
OSO.O-. OSO.A je 'uo"o#ila! &ije#&oj07e'o18
je#&oj0O&e1 ili "ise0-o'e1 OSO.A.
OSOBA
Si*'a osobe
Si*'a o#ele&ja 02K1
+'e$ime
Ime
,-./
+lata
Stimula!ija
Datum $aposle&ja
Ruo".Si*'a osobe 02K1
*lika 4.CC. 6ekurzivna veza hijerarhijskog tipa
6ekurzija nad dve tabele
Rekur+ija nad dve ta4ele ili rekur+ija mre8no' ti"a -jo3 se +ove i
dvota4elarna rekur+ija0 "redstavlja ve+u UroditeljUIUdeteU9 'de UroditeljU
alempije@beotel.yu 129
mo8e imati ve6i 4roj dece i UdeteU mo8e imati ve6i 4roj roditelja. (o je
s"ecijalni slu;aj U7anJItoI7anJU ve+e nad samim so4om i tre4a je
ra+4iti na dve ve+e 1?7. Sto'a i u tom slu;aju tre4a de<nisati
6olename da 4i se "redstavilo "reno3enje klju;eva. U tom slu;aju
de<ni3u se identi<kuju6e ve+e i atri4ut klju;evi sa :5( :U22
vrednostima.
:a slici !.%#. "rika+ana je ti"i;na rekur+ija mre8no' ti"a9 'de se
rekur+ija de<ni3e nad dva entiteta &R5I>D5D i S(RUB(URA. /ntitet
&R5I>D5D sadr8i instance ve+ane +a "roi+vode9 sklo"ove9
"odsklo"ove9 delove9 materijale i dr. /ntitet S(RUB(URA "ove+uje
"roi+vod sa od'ovaraju6im "odreCenim sklo"ovima9 a te sklo"ove sa
"odreCenim "odsklo"ovima i tako redom do delova i materijala. (o je
osnova +a de<nisanje t+v. sastavnica "roi+voda.
je sasta"lje&a o#
je ompo&e&ta $a
STRUKTURA
Kompo&e&ta b'.I#e&t b'oj 02K1
Sasta" b'.I#e&t b'oj 02K1
+ROI7VOD
I#e&t b'oj
#ero*%ulls Alloved+) or)One)to)#ero)One)or)More
Nije#&a07e'o1 ili je#&a 0O&e1 OSO.A 'uo"o#je&a sa
&ula07e'o18 je#&om0O&e1 ili "ise0-o'e1 OSO.A.
OSO.A je 'uo"o#ila! &ije#&oj07e'o18
je#&oj0O&e1 ili "ise0-o'e1 OSO.A.
*lika 4.C@. 6ekurzivna veza mre`nog tipa
De+a kate'orije
eza kategorije us"ostavlja ve+u i+meCu nadreCeni) entiteta i nje'ovi)
+avisni)9 klasni) entiteta. &reko ove ve+e entitet koji se s"ecijali+uje u
klase "rosleCuje "rimarni klju; klasnim +avisnim entitetima. 5va ve+a
se de<ni3e "ostu"kom 'enerali+acije9 tj. "ostu"kom a"strakcije
"odataka9 u kome se skup sli~nih tipova entiteta "redstavlja
:AD(I&579 tj. 'eneri;kim -'enerali+ovanim0 entitetom -ID/F1F
metodolo'ija0.
&od sli;nim ti"ovima o4jekata "odra+umevaju se oni koji imaju J/DA:
4roj IS(IN -+ajedni;ki)0 atri4uta9 ti"ova ve+a iHili o"eracija sa dru'im
o4jektima.
Bardinalnost ve+e kate'orije od 'eneri;ko' o4lika ka entitetu
kate'orije je ti"a @5neItoI I+eroIorIone@ i sadr8i im"licitni i+ra+ U is
aJ, a ;ita se na slede6i na;in?
@Svaka -5ne0 instanca 'eneri;ko' entiteta mo8e9 a ne mora -+eroIorI
one0 da ima instancu kate'orije9 dok svaka instanca entiteta
kate'orije je -is a0 instanca 'eneri;ko' o4lika.@
Dakle9 o4jekti su )ijerar)ijski G/:/RA2I>5DA:I ako se sku" srodni)
alempije@beotel.yu 130
o4jekata "osmatra kao jedan o4jekat. Svi atri4uti sa ni8e' nivoa9 koji
su +ajedni;ki9 "renose se na vi3i nivo9 dok se na ni8em nivou de<ni3u
entiteti kate'orije koji sadr8e atri4ute koji su svojstveni samo tom
nivou.
U 'enerali+acionoj )ijerar)iji o4jekata -entiteta0 va8i "ravilo nasleC
ivanja oso4ina i nasleCivanja o"eracija nadti"a.
ID/F1F metodolo'ija sim4oli;ki o4e+4eCuje ra+likovanje dva ti"a
entiteta kate'orije9 tj. ne"ot"une i "ot"une strukture.
Nepotpune strukture
Nepotpuna struktura se de<ni3e kada nije si'urno da su identi<kovani
svi o4lici entiteta kate'orije -jednostruka linija na dnu sim4ola klase
na+na;uje da mo'u 4iti uklju;ene dru'e kate'orije0. >a ovakvu ve+u
se de<ni3e atri4ut diskriminator u entitetu koji se s"ecijali+ira i koji
o4e+4eCuje eksklu+ivnost ve+e. Ako se diskriminator ne de<ni3e9 ve+a
se mo8e smatrati neeksklu+ivnom.
:a "rimeru "rika+anom na slici !.%*. 'enerali+ovani entitet 5S5,A
mo8e imati dva "ojavna o4lika? B5:SU2(A:( ili R/D5D:I.
Diskriminator @Drsta@ omo'u6uje de<nisanje o4a ti"a an'a8ovanja9 ali
ne o'rani;ava da mo8e 4iti vi3e "odti"ova.
Diskriminator Ukate'orijeU je atri4ut koji "oka+uje kako ra+likovati
entitete jedne kate'orije od entiteta dru'e kate'orije. U navedenom
"rimeru atri4ut UvrstaU je diskriminator kate'orije i de<nisan je u
entitetu 5S5,A.
OSOBA
Si*'a osobe
REDOVNI
Si*'a osobe 02K1
KONSULTANT
T
Si*'a osobe 02K1
Status
*lika 4.CD. Nepotpuna struktura
U ID/F1F formatu ne"ot"una struktura se de<ni3e "od na+ivom
@incom"lete cate'orJ cluster@ i ima oso4inu da "rimerak
alempije@beotel.yu 131
'enerali+ovano' -'eneri;ko'0 entiteta mo8e "ostojati 4e+ asocijacije
sa "rimerkom 4ilo ko' s"ecijali+ovano' -kate'orisano'0 entiteta9 tj.
mo8e se de<nisati "rimerak entiteta 5S5,A 4e+ o4ave+e de<nisanja
"rimeraka entiteta B5:SU2(A:( ili R/D5D:I.
+otpune strukture
+otpuna struktura se de<ni3e +a slu;ajeve kada je si'urno da nema
vi3eklasni) entiteta u koje 4i se s"ecijali+ovao odreCeni entitet
-dvostruka linija na dnu sim4ola klase na+na;uje da ne mo'u 4iti
uklju;ene dru'e kate'orije0. U literaturi se jo3 +ove eksklu+ivna
s"ecijali+acija.
:a slici !.%9. "rika+an je "rimer "ot"une strukture 'de 'eneri;ki
entitet 5S5,A ima entitete kate'orije 7USB5 ili >/:SB5. U ID/F1F
formatu "ot"una struktura se de<ni3e "od na+ivom @com"lete
cate'orJ cluster@ i ima oso4inu da "rimerak 'enerali+ovano'
-'eneri;ko'0 entiteta ne mo8e "ostojati 4e+ asocijacije sa "rimerkom
s"ecijali+ovano' -kate'orisano'0 entiteta. Diskriminator U&olU
de<nisan u entitetu 5S5,A9 isklju~uje "ojavljivanje tre6e varijante.
Pol
OSOBA
Si*'a osobe
7ENA
Si*'a osobe 02K1
-USKARA5
Si*'a osobe 02K1
*lika 4.CB. +otpuna struktura
5ori{}enje , #8nd( ,G, #;r( struktura
&rika+ane ne"ot"une i "ot"une strukture su "rimeri9 I2I struktura9 'de
se de<ni3e9 kao na slici !.%*9 'eneri;ki entitet 5S5,A9 koji ima
entitete kate'orije B5:SU2(A:( ili R/D5D:I ili da je9 kao na slici !.%99
5S5,A ili 7USBARA. ili >/:A. Struktura I -And0 do4ija se kada se
de<ni3u dva ili vi3e diskriminatora9 kate'orije +a 'eneri;ki entitet. U
datom "rimeru9 na slici !.#19 'eneri;ki entitet 5S5,A mo8e imati
alempije@beotel.yu 132
;etiri kom4inacije9 od koji) je jedna da jedna oso4a istovremeno
mo8e 4iti i 7USBARA. I B5:SU2(A:(.
Pol
OSOBA
Si*'a osobe
REDOVNI
Si*'a osobe 02K1
KONSULTANT
Si*'a osobe 02K1
7ENA
Si*'a osobe 02K1
-USKARA5
Si*'a osobe 02K1
Status
*lika 4.@/. 5ombinacija potpune i nepotpune strukture
:eodreCuju6a ve+a ti"a vi3e "rema vi3e
:eodreCuju6a ve+a ti"a Uvi3e "rema vi3eU je ti" nes"eci<cirane ve+e
koja "ove+uje dva entiteta i u kojoj se "rimerak jedno' entiteta ve+uje
sa nula9 jednim ili vi3e "rimeraka dru'o' entiteta9 a svaki "rimerak
dru'o' entiteta se "ove+uje sa nula9 jednim ili vi3e "rimeraka "rvo'
entiteta.
De+e Uvi3e "rema vi3eU su nacrtane sa ta;kama na o4a kraja. &rema
"rimeru sa slike !.#1. ve+e Uvi3e "rema vi3eU9 5S5,A +na vi3e J/>IBA i
svaki J/>IB "o+naje vi3e 5S5,A. De+e Uvi3e "rema vi3eU se9 o4i;no9
koriste u "reliminarnoj fa+i ra+voja entitetno' dija'rama.
5vde ni3ta nije "o're3no9 samo u slu;aju da se jednostavno
"oku3ava re6i da 5S5,A @+na@ vi3e J/>IBA9 kao i da J/>IB @"o+naje@
vi3e 5S5,A. U7anJItoI7anJU ve+a -"una linija sa ta;kama na o4a
kraja0 +ove se nes"eci<;na ve+a.
5snovno "ravilo koje se ovde mora "o3tovati je da se mora i+vesti
"revoCenje U7anJItoI I7anJU ve+e u U>eroItoI7anJU ve+u.
$&a
,E7IK
OSO.A
*lika 4.@0. eza >anF%to%>anF
alempije@beotel.yu 133
5vaj "ro4lem se re3ava tako 3to se dodaje asocijativni entitet na+van
./R(IFIBA( -slika !.#20 i na taj na;in "revede U7anJItoI7anJU
ve+a u "ar 5neItoI>eroI5neIorI7anJ ve+e. Bao 3to je "rika+ano na
slici !.#29 klju; entiteta 5S5,A -@Sifra oso4e@0 "rela+i u asocijativni
entitet9 a9 isto tako9 i klju; entiteta J/>IB -@Sifra je+ika@0 "rela+i u
asocijativni entitet tako da je asocijativni entitet ./R(IFIBA(
e'+istenciono I identi<kaciono +avisan od entiteta J/>IB i 5S5,A?
e'+istencijalno jer <+i;ki ne mo8e da "ostoji9 a identi<kaciono jer
sadr8i "rimarne klju;eve entiteta J/>IB i 5S5,A.
De<nisanjem entiteta ./R(IFIBA( i+vr3ena je t+v. a're'acija.
8gregacija je a"strakcija u kojoj se sku" ti"ova o4jekata i nji)ovi)
ve+a tretira kao jedinstveni AGR/GIRA:I (I& o4jekta ili asocijativni ti"
entiteta. U literaturi se ovaj ti" entiteta jo3 +ove Ume3oviti ti" o4jekta
ve+eU=2T.
Bardinalnost "reslikavanja9 od kom"onente -5S5,A0 ka a're'aciji
-./R(IFIBA(0 identi<kuju6a je ve+a -klju; UroditeljU je sastavni deo
klju;a UdeteU09 tj. >eroI5neIorI7anJ9 a inver+no "reslikavanje od UdeteU
-./R(IFIBA(0 "rema UUroditeljUuU -5S5,A0 I :o :ulls -5ne0.
Identi<kator a're'irano' entiteta9 "o "ravilu9 nema svoj identi<kator9
ve6 'a identi<kuju o4jekti koje on a're'ira -kao 3to je "rika+ano na
slici !.#20.
A're'irani entitet se u modelu "odataka tretira kao i kod dru'i)
entiteta9 tj. on mo8e da ima svoje atri4ute iHili da 4ude u ve+i sa
nekim dru'im entitetima -mo'u6e a're'iranim9 takoCe09 ili da ima
svoje "odti"ove i sli;no.
vazi /
odnosi se
je dat /
poseduje
"$!TI(IAT
Si*'a osobe 02K1
Si*'a je$ia 02K1
Stepe& $&a&ja
'$#I
Si*'a je$ia
Na$i" je$ia
OSOBA
Si*'a osobe
Si*'a o#elje&ja 02K1
+'e$ime
Ime
,-./
+lata
Stimula!ija
Datum $aposle&ja
*lika 4.@2. +rikaz asocijativne veze za entitet =-6$,.,58$
alempije@beotel.yu 134
Bardinalnost :Iarne ve+e
&ostavljanje ve+e i+meCu tri ili vi3e entiteta se i+vodi na na;in koji je
sli;an asocijativnom entitetu. :a "rimer9 tre4a "osmatrati "ostu"ak
"oslovno' odlu;ivanja koji je "rika+an na slici !.#!.
potpisao
#e*i&isao
&a'u!io
NARU5ILA5 +OSLA
Si*'a *i'me
Na$i" *i'me
A#'esa *i'me
+RO,EKTANT
Si*'a p'ojeta
Na$i" p'ojeta
Datum po!eta
OSO.A
Si*'a osobe
+'e$ime
Ime
,-./
+lata
Stimul
U/OVOR
Si*'a p'ojeta 02K1
Si*'a *i'me 02K1
Si*'a osobe 02K1
Opis u;o"o'a
*lika 4.@4. N%arna veza za primer entiteta )9;;6
/ntitet UG5D5R ovde "redstavlja trostruku ve+u od entiteta
:ARU.I2A. &5S2A9 &R5J/BA( i >A&5S2/:. Struktura sa slike !.#!.
indicira da vi3e :ARU.I2A.A &5S2A naru;uje vi3e &R5J/BA(A u
kojima u;estvuje vi3e 5S5,A.
7eCutim9 name6e se "itanje? "kako ponuditi projekat pre nego {to je
ugovoren" -slika !.#$.0.
alempije@beotel.yu 135
p'e#<o#i
&u#i t'a$i
potpisao
+ONUDA
Si*'a *i'me 02K1
Si*'a p'ojeta 02K1
NARU5ILA5 +OSLA
Si*'a *i'me
Na$i" *i'me
A#'esa *i'me
+RO,EKTANT
Si*'a p'ojeta
Na$i" p'ojeta
Datum po!eta
OSO.A
Si*'a osobe
+'e$ime
Ime
,-./
+lata
Stimul
U/OVOR
Si*'a osobe 02K1
Si*'a *i'me 02K1
Si*'a p'ojeta 02K1
Opis u;o"o'a
*lika 4.@7. ?amena trostuke veze sa dve dvostruke
Da 4i se do4io od'ovor na "ostavljeno "itanje9 tre4a @trostruku@ ve+u
+ameniti sa dve @dvostruke@. 5d'ovaraju6i na ra+ne vrste ovakvi)
"itanja9 :Iarne ve+e se "retvaraju u seriju @dvostruki)@ ve+a. Retkost
je videti "rave trostruke ve+e u ID/F1F modelu. 5ne su ;ak mno'o
reCe ne'o @;etvorostruka@9 @"etostruka@...
/REin .AS/ alat je +asnovan na ID/F1F metodolo'iji koja9 +a ra+liku
od dru'i) je+ika modeliranja9 insistira da sve ve+e -relations)i"s0
4udu 4inarne -da s"ajaju ta;no dva entiteta0. (o +aista ne +na;i da
su ne"otre4ne !9$ ili @n@ ve+a -relations)i"s09 samo u slu;aju da su
ove situacije adekvatno adresirane.
Imaju6i sve to u vidu9 +a "rimer dokumenta @Barton is"lata@ u
slede6em koraku 4i6e de<nisan atri4utivni model.
&uni atri4utivni model
+a dokument @Barton is"lata@
:a tom nivou9 a +a dosada3nji "rimer ve+an +a @Barton is"lata@ 4i6e
"rika+an na slici !.#. atri4utivni model +a /R dija'ram koji sadr8i
de<nisane atri4ute.
&rika+ani atri4utivni model se mo8e o"isati na slede6i na;in?
5snovni entitet je 5S5,A i "oseduje9 kao "rimarni klju;9 atri4ut @
alempije@beotel.yu 136
Sifra oso4e@ i set o"isni) atri4uta.
'$#I p'ipa#a 4
'aspo'e#je&
+
rukovodi /
je rukovodilac
vazi /
odnosi se
je dat /
poseduje
prima /
je primio
zaposljava /
radi
Vrsta
-USKARA5
Si*'a osobe 02K1
Slu$io "ojsu
7ENA
Si*'a osobe 02K1
+'e$ime #e"oja!o
KONSULTANT
Si*'a osobe 02K1
.'oj sati
REDOVNI
Si*'a osobe 02K1
V'sta posla
ISPLATA
Si*'a osobe 02K1
'b'
Datum isplate
I$&os
O&$L'$%'$
Si*'a o#elje&ja
Na$i" o#elje&ja
-esto
"$!TI(IAT
Si*'a osobe 02K1
Si*'a je$ia 02K1
Stepe& $&a&ja
Si*'a je$ia
Na$i" je$ia
OSOBA
Si*'a osobe
+'e$ime 0IE11
Ime 0IE11
Si*'a'm 02K1
,-./ 0AK21
'uo" 02K1
Datum $aposle&ja
+lata
Stimula!ija
Si*'a o#elje&ja 02K1
+ol
V'sta
Pol
RADNO -ESTO
Si*'a'm
Na$i"'m
*lika 4.@A. +uni atributivni model ze dokument "5arton isplata"
Oisto o"isni atri4uti u entitetu 5S5,A su? @&lata@9 @Stimul@ i @Datum
+a"oslenja@. Atri4ut @J7,G -AB10@ alternativni je klju; i "o njemu se
mo8e i+vr3iti sekundarno indeksiranje. Atri4uti? @&re+ime -I/10@ i @Ime
-I/20@ atri4uti su ti"a @Inverse /ntrJ@ i oni se koriste +a indeksiranje9 s
tim 3to indeks nije jedno+na;an9 tj. vrednosti klju;a se mo'u
"onavljati.
Atri4ut @Sifra odeljenja -FB0@ "reneseni je klju; od entiteta 5D/2J/:J/
i do+voljava unos :ull "odataka9 tj. ne mora se odma) de<nisati
5D/2J/:J/ 'de 5S5,A radi. Atri4ut? @Sifrarm -FB0@ "reneseni je klju;
entiteta RAD:5 7/S(5 i ne do+voljava unos :ull "odataka9 tj. mora
se o4ave+no uneti radno mesto 5so4e.
Atri4ut? @&ol@ diskriminator je kate'orije 7USBARA. ili >/:A i
automatski +a)teva i+4or jedne od o"cija. Atri4ut @Drsta@ je
diskriminator kate'orija entiteta? B5:SU2(A:( i R/D5D:I i ne +a)teva
odma) odluku o vrsti9 tj. naknadno se mo8e de<nisati da li je oso4a
konsultant ili redovni.
/ntitet 5D/2J/:J/9 kojim se de<ni3e istoimeni 3ifarnik9 tre4a da
omo'u6i da ne "ostoji nijedna 5so4a +a"oslena u njemu ->eroI5neI
orI7anJ0. /ntitet RAD:5 7/S(5 +a)teva da makar jedna 5so4a ima
od'ovaraju6e radno mesto -5neIorI7anJ0.
:a slici !.#. de<nisan je i asocijativni entitet ./R(IFIBA( koji je
@"ovukao@ klju;eve entiteta 5S5,A i entiteta J/>IB i ima slo8eni klju;
-Sifra oso4eVSifra je+ika0 i o"isni atri4ut? @Ste"en +nanja@9 kojim se
de<ni3e ste"en +nanja je+ika.
alempije@beotel.yu 137
/ntitet IS&2A(A je "rimer sla4o' entiteta9 ;iji je slo8eni klju; "ovukao
klju; jako' -5S5,A0 entiteta @Sifra oso4e -FB0@ i atri4ut @r4r@ kojim se
de<ni3e redni 4roj is"late. 5"isni atri4uti entiteta IS&2A(A su? @Datum
is"late@ i @I+nos@.
/ntiteti kate'orije "ovukli su? "rimarni klju; @Sifra oso4e@ i+ entiteta
5S5,A i imaju svoje o"isne atri4ute. (ako9 entitet 7USBARA. ima
o"isni atri4ut? @Slu+io vojsku@9 a entitet >/:A ima o"isni atri4ut?
@&re+ime devojacko@. /ntitet B5:SU2(A:( ima o"isni atri4ut? @,roj
sati@ i entitet R/D5D:I o"isni atri4ut @Drsta "osla@.
:a osnovu "ret)odno i+vedeni) aktivnosti -slika !.$90 u slede6em
koraku 4i6e de<nisan referencijalni inte'ritet.
0ktivnost
2.4.2. %e+nisanje
referencijalnog integriteta
U"ro36eno re;eno9 referencijalni inte'ritet o4e+4eCuje korektno
"ove+ivanje o4jekata9 jer o4jekat koji nije "redstavljen u
od'ovaraju6em sku"u o4jekata ne mo8e da u;estvuje u nekoj od
ve+a "redstavljeni) u modelu "odataka.
Referencijalni inte'ritet je ve+an +a "ostojanje "reneseno' klju;a +a
neki entitet -n"r. @Sifra odeljenja@ u entitetu 5S5,A0. /ntitet 'de se
nala+i "reneseni klju; +ove se UdeteU -.NI2D09 a entitet 'de se
de<ni3e "rimarni klju; je UroditeljU -&AR/:(0. &rimarni klju; se mo8e
"reneti i "ostati "reneseni klju; u okviru identi<kuju6e ili
neidenti<kuju6e ve+e.
&reneseni klju; u identi<kuju6oj ve+i je sastavni deo "rimarno'
klju;a entiteta UdeteU9 "a se UdeteU identi<kuje "reko UroditeljU9 ;ime
u;estvuje u de<nisanju inte'riteta entiteta. Bod neidenti<kuju6e ve+e
"reneseni klju;evi nisu deo "rimarno' klju;a UUdeteUtaU9 "a se UdeteU
ne mo8e identi<kovati "reko UroditeljU. 5va ra+lika je veoma va8na
kada tre4a "odr8ati ve+u i+meCu UroditeljU i UUdeteUtaU kod o"eracija?
u4acivanje -insert09 4risanje -delete0 i a8uriranje -u"date09 3to ;ini
su3tinu referencijalno' inte'riteta.
:a osnovu to'a mo'u se de<nicije inte'riteta entiteta i
referencijalno' inte'riteta do"uniti slede6im tvrdnjama.
,ntegritetom entiteta se onemo'u6uje "ojava da se mo'u uneti dva
alempije@beotel.yu 138
entiteta sa istom vredno36u "rimarno' klju;a ili da je klju; :U22
"odatak.
6eferencijalni integritet entiteta +a)teva da unesena vrednost
atri4uta od'ovara vrednosti atri4uta koji je "rimarni klju; dru'o'
entiteta. Referencijalni inte'ritet o"isuje "ona3anje modela kada9
usled o"eracija odr8avanja9 dola+i do naru3avanja kardinalnosti ve+a.
(o "ona3anje modela ili strukturna pravila integriteta #*+,( de<ni3u se
kao strukturna o'rani;enja.
Referencijalni inte'ritet se de<ni3e +a svaku ve+u9 "ose4no +a stranu
entiteta UroditeljU9 a "ose4no +a stranu entiteta UdeteU9 i to +a
o"eracije? insert #ubacivanje(, delete #brisanje( i update #a`uriranje(.
U daljem tekstu 4i6e "rika+ane sve varijante referencijalno'
inte'riteta +a slede6e ti"ove ve+a?
identi<kuju6e ve+e9
neidenti<kuju6a ve+a9
rekur+ivne ve+e9
ve+a kate'orije9
neodreCuju6a ve+a ti"a vi3e "rema vi3e i
:Iarne ve+e.
Referencijalni inte'ritet +a identi<kuju6e ve+e
Bad je u "itanju identi<kuju6a ve+a i+meCu entiteta UroditeljU i UdeteU9
tada "rimarni klju; entiteta UroditeljU "ostaje deo "rimarno' klju;a
entiteta UdeteU. &ret)odno o"isana "ravila kardinalnosti 'ovore da +a
svaku instancu UdeteU "ostoji jedna instanca UroditeljU. (o je ve+a koja
s"eci<cira e'+istencijalnu i identi<kacionu +avisnost i+meCu entiteta
UdeteU od UroditeljU.
sa#'$i 4
je sa#'$a&o
RODITEL,0+ARENT1
Ro#itelj lju!
DETE056ILD1
Dete lju!
Ro#itelj lju! 02K1
*lika 4.@C. 5ardinalnost preslikavanja identi3kuju}e veze
Radi dalje' ra+umevanja "otre4no je ra+motriti detaljno "ravila +a
alempije@beotel.yu 139
o"eracije? delete D4risanje09 insert Du4acivanje0 i #!date
Da8uriranje0.
+ravila brisanja za identi3kuju}e veze
&ravila 4risanja se mo'u i+vesti kori36enjem dveju akcija?
"rvo9 mo8e se o4risati svaka instanca UUdeteUtaU ;iji je nasleC
eni klju; o4risana instanca UroditeljU -akcija .AS.AD/09 ili
dru'o9 alternativno9 mo8e se s"re;iti 4risanje UroditeljU ako
"ostoji 4ilo koje UdeteU ;iji 4i deo "rimarno' klju;a 4io
nekom"letan -akcija R/S(RI.(0.
U okviru /REin .AS/ alata "ostavljene su difoltne vrednosti +a
4risanje entiteta UdeteUI I:5:/9 dok je difoltna vrednost +a 4risanje
UroditeljUIR/S(RI.(.
3030%& omo'u6uje da sve instance UUdeteUtaU o4u)va6ene
4risanjem instance UroditeljU 4udu o4risane9 3to je de<nisano
re;enicom &AR/:( D/2/(/ .AS.AD/ -D?.0.
6&16$31 de<ni3e o'rani;enje tako da instanca UroditeljU ne mo8e
4iti o4risana dok sve instance UUdeteUtaU koje imaju nasleCeni klju; ne
4udu "ret)odno o4risane. Ako "ostoji neki nasleCeni9 4risanje je
+a4ranjeno.
+ravila ubacivanja #,nsert( i a`uriranja #)pdate(
za identi3kuju}e veze
&ravila +a u4acivanje -I:S/R(0 i a8uriranje -U&DA(/0 u"ravljaju 3ta 6e
4iti kada je "rimerak dodat ili a8uriran. A8uriranje je9 u su3tini9
u4acivanje9 ali sa nekim dodatnim "ravilima.
>a o"eracije #)acivanje D$7&61F i izmena DU(%01&F9 red mo8e
4iti dodat ili i+menjen samo ako svi referencirani "reneseni klju;evi
od'ovaraju "ostoje6im redovima u referenciranim ta4elama.
&ravila u4acivanjaHa8uriranja mo'u se i+vesti kori36enjem dveju
akcija?
"rvo9 ne mo8e se u4acitiHa8urirati instanca UUdeteUtaU 4e+
instance UroditeljU -akcija R/S(RI.(09 ili
dru'o9 alternativno9 +a u4a;eno'Ha8urirano' UroditeljU tre4a
u4acitiHa8urirati i 4ilo koje UdeteU9 ;iji 4i deo "rimarno' klju;a 4io
klju; UroditeljU -akcija .AS.AD/0.
U okviru /REin .AS/ alata difoltna vrednost +a u4acivanjeHa8uriranje
alempije@beotel.yu 140
entiteta UdeteU je R/S(RI.(9 dok je difoltna vrednost +a u4acivanje
UroditeljUI:5:/9 a +a a8uriranje R/S(RI.(.
p
I0!
U0!
I0"
U0"
OSOBA
Si*'a osobe
Si*'a o#elje&ja 02K1
+'e$ime
Ime
,-./
+lata
Stimula!ija
Datum $aposle&ja
TELE2ON
Si*'a osobe 02K1
.'oj tele*o&a
Status
*lika 4.@@. +rimer identi3kuju}e veze
:a "rimeru ve+e 5S5,AH(/2/F5: to i+'leda ovako.
Slo8eni klju; entiteta(/2/F5: sastoji se od klju;a od'ovaraju6e'
entiteta 5S5,A -Sifra oso4e0 i so"stveno' klju;a ,roj telefona. >4o'
to'a9 se ne mo8e u4aciti -I?R0 ili i+meniti -U?R0 (/2/F5: +a koji ne
"ostoji 5S5,A -o+naka &0. 54rnuto9 "rilikom u4acivanja -I:S/R(0 ili
i+mene -U&DA(/0 instance +a entitet 5S5,A9 automatski -.AS.AD/0
se i+vodi u4acivanje i i+mena instance (/2/F5:A -I?.9 U?.0.
U daljem tekstu "rika+a6e se referencijalni inte'ritet +a identi<kuju6e
ve+e.
6eferencijalni integritet za tip veze
;ne%to%?ero%or%>ore
>a kardinalnost 'de je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa nula9
jednom ili vi3e instanci 5S5,A -.NI2D0 i 'de 5S5,A e'+istencijalno I
identi<kaciono +avisi od 5D/2J/:JA9 referencijalni inte'ritet je
"rika+an na slici !.#*.
One)to)#ero)One)or)More
OSO.A
ODEL,EN,E
56ILD +ARENT
OSO.A DELETE 3 3 3 ODEL,EN,E DELETE 5AS5ADE
OSO.A INSERT RESTRI5T ODEL,EN,E INSERT 333333
OSO.A U+DATE RESTRI5T ODEL,EN,E U+DATE 5AS5ADE
I=R
U=R
D=5
U=5
*lika 4.@D 6eferencijalni integritet za tip veze ;ne%to%?ero%or%>ore
alempije@beotel.yu 141
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije?
U4acivanje -Insert0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
,e+ o'rani;enja
/ntitet 5S5,A Restrict
:e mo8e se uneti 5so4a -I?R0 4e+ UroditeljU
5deljenje
,risanje -Delete0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
,ri3u se sve 5so4e +a i+4risano' UroditeljU
5deljenje -D?.0
Restrict
:e do+voljava 4risanje 5deljenja ako je
UroditeljU 5so4i
/ntitet 5S5,A ,e+ o'rani;enja
I+mena -U"date0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
Automatska i+mena 5so4a +a i+mene nad
5deljenjem -U?.0
/ntitet 5S5,A Restrict
:e mo8e se i+meniti 5so4a -U?R0 ako ne
"ostoji 5deljenje
6eferencijalni integritet za tip veze
;ne%to%;ne%or%>ore #+(
>a kardinalnost 'de je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa
jednom ili vi3e instanci 5S5,A -.NI2D0 i 'de 5S5,A e'+istencijalno I
identi<kaciono +avisi od 5D/2J/:JA9 referencijalni inte'ritet je
"rika+an na slici !.#9.
One)to )One)or)More*P+
+
OSO.A ODEL,EN,E.
56ILD +ARENT
OSO.A DELETE 3 3 3 ODEL,EN,E DELETE 5AS5ADE
OSO.A INSERT RESTRI5T ODEL,EN,E INSERT 5AS5ADE
OSO.A U+DATE RESTRI5T ODEL,EN,E U+DATE 5AS5ADE
I=R
U=R
D=5
I=5
U=5
*lika 4.@B. 6eferencijalni integritet za tip veze ;ne%to%;ne%or%>ore #+(
alempije@beotel.yu 142
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije?
Unos -Insert0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
Unose se 5so4e +a uneseno 5deljenje -I?.0
/ntitet 5S5,A Restrict
:e mo8e se uneti 5so4a -I?R0 4e+ UroditeljU
5deljenje
,risanje -Delete0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
,ri3u se sve 5so4e +a i+4risana 5deljenja
-D?.0 UroditeljU
Restrict
:e 4ri3e 5deljenje -ako je "oslednji
UroditeljU 5so4i0
/ntitet 5S5,A
.ascad
e
,ri3e UroditeljU 5deljenje ako su i+4risane
5so4e koja su deca 5deljenja
Restrict
:e do+voljava se 4risanje 5so4e ako nema
vi3e 5so4a +a isto' UroditeljU 5deljenje
I+mena -U"date0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
Automatska i+mena 5so4a +a i+mene nad
5deljenjem -U?.0
/ntitet 5S5,A Restrict
:e mo8e se i+meniti 5so4a -U?R0 ako ne
"ostoji 5deljenje
6eferencijalni integritet za tip veze
;ne%to%?ero%or%;ne #?(
>a kardinalnost 'de je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa nula ili
jednom instancom 5S5,A -.NI2D0 i 'de 5S5,A e'+istencijalno I
identi<kaciono +avisi od 5D/2J/:JA9 referencijalni inte'ritet je
"rika+an na slici !.*1.
alempije@beotel.yu 143
7
One)to)#ero)or)One*#+
ODEL,EN,E
OSO.A
56ILD +ARENT
OSO.A DELETE 3 3 3 ODEL,EN,E DELETE 5AS5ADE
OSO.A INSERT RESTRI5T ODEL,EN,E INSERT 33333
OSO.A U+DATE RESTRI5T ODEL,EN,E U+DATE 5AS5ADE
D=5
U=5
I=R
U=R
*lika 4.D/. 6eferencijalni integritet za tip veze ;ne%to%?ero%or%;ne #?(
alempije@beotel.yu 144
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije?
Unos -Insert0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
,e+ o'rani;enja
/ntitet 5S5,A Restrict
:e mo8e se uneti 5so4a -I?R0 4e+ UroditeljU
5deljenje ili ako "ostoji 5so4a sa istim
UUroditeljUemU 5deljenje
,risanje -Delete0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
Ako "ostoji9 4ri3e se 5so4a +a i+4risano'
UroditeljU 5deljenja -D?.0
Restrict
:e mo+e se do+voliti 4risanje 5deljenja
ako "ostoji 5so4a de<nisan UroditeljU
/ntitet 5S5,A ,e+ o'rani;enja
I+mena -U"date0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
Automatska i+mena 5so4a +a i+mene nad
5deljenjem -U?.0
/ntitet 5S5,A Restrict
:e mo8e se i+meniti 5so4a -U?R0 ako ne
"ostoji 5deljenje
6eferencijalni integritet za tip veze
;ne%to%-<actlF n
>a kardinalnost 'de je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa ta;no
n instanci -n"r. $0 5S5,A -.NI2D0 i 'de 5S5,A e'+istencijalno I
identi<kaciono +avisi od 5D/2J/:JA9 referencijalni inte'ritet je
"rika+an na slici !.*1.
9
One)to)$,actl- .
ODEL,EN,E
OSO.A
56ILD +ARENT
OSO.A DELETE 3 3 3 ODEL,EN,E DELETE RESTRI5T
OSO.A INSERT RESTRI5T ODEL,EN,E INSERT 33333
OSO.A U+DATE RESTRI5T ODEL,EN,E U+DATE RESTRI5T
*lika 4.D0. 6eferencijalni integritet za tip veze ;ne%to%-<actlF n
alempije@beotel.yu 145
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije?
Unos -Insert0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
Unos 5deljenja mora "ratiti ta;no n 5so4a
+a koje je 5deljenje UroditeljU
/ntitet 5S5,A Restrict
:e mo8e se uneti 5so4a -I?R0 ako ne
"ostoje 5deljenja i nI1 uneseni) 5so4a +a
isto' UroditeljU
,risanje -Delete0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
>a i+4risano 5deljenje 4ri3u se sve 5so4e
Restrict
:e mo8e se o4risati 5deljenje -D?R09 ako je
ve+ano +a 5so4u
/ntitet 5S5,A
.ascad
e
,ri3e se UroditeljU 5deljenje i sve dru'e
5so4e +a koje je 5deljenje UroditeljU
Restrict :e mo8e se do+voliti 4risanje 5so4e
I+mena -U"date0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
Restrict
:e mo8e se i+meniti 5deljenje -U?R0 ako je
ve+ano +a 5so4u
/ntitet 5S5,A Restrict
:e mo8e se i+meniti 5so4a -U?R0 ako ne
"ostoji 5deljenje
Referencijalni inte'ritet +a neidenti<kuju6e ve+e
Bad je u "itanju neidenti<kuju6a ve+a i+meCu entiteta UroditeljU i UdeteU9
"rimarni klju; entiteta UroditeljU se nala+i u o"isnom delu entiteta
UdeteU. &ret)odno o"isana "ravila kardinalnosti 'ovore da +a svaku
instancu UdeteU "ostoji jedna instanca UroditeljU. (o je sla4a ve+a koja
s"eci<cira da je UdeteU e'+istencijalno +avisno ili ne+avisno od
UroditeljU.
alempije@beotel.yu 146
6eferencijalni integritet za egzistencijalno
zavisnu neidenti3kuju}u vezu
&gzistencijalna zavisnost instance entiteta UdeteU od instance
entiteta UroditeljU ve+ana je +a o4ave+nost ve+e -:o :ulls0 i 'ra<;ki se
de<ni3e na slici !.*2.
sa#'$i 4
je sa#'$a&o
RODITEL,0+ARENT1
Ro#itelj lju!
DETE 056ILD1
Dete lju!
Ro#itelj lju! 02K1
*lika 4.D2. ;baveznost veze #No Nulls(
&otre4no je detaljno ra+motriti "ravila +a o"eracije? delete -4risanje09
insert Du4acivanje0 i #!date -a8uriranje0.
+ravila brisanja za egzistencijalno zavisne neidenti3kuju}e veze
&ravila 4risanja mo'u se i+vesti kori36enjem triju akcija?
"rvo9 mo8e se o4risati svaka instanca UUdeteUtaU ;iji je nasleC
eni klju; o4risana instanca UroditeljU -akcija .AS.AD/0A
dru'o9 alternativno9 mo8e se s"re;iti 4risanje UroditeljU ako
"ostoji 4ilo koje UdeteU9 ;iji 4i deo "rimarno' klju;a 4io
nekom"letan -akcija R/S(RI.(0A
tre6e9 +a svaku o4risanu instancu UroditeljU mo8e se instanca
entiteta UdeteU "ostavititi kao Set Default.
U okviru /REin .AS/ alata difoltna vrednost +a 4risanje entiteta UdeteU
ne +a)teva i+voCenje "ret)odne tri akcije -:5:/09 dok je difoltna
vrednost +a 4risanje UroditeljU R/S(RI.(.
3030%& omo'u6uje da sve instance UUdeteUtaU o4u)va6ene
4risanjem instance UroditeljU 4udu o4risane9 3to je de<nisano
re;enicom &AR/:( D/2/(/ .AS.AD/ -D?.0.
6&16$31 de<ni3e o'rani;enje tako da instanca UroditeljU ne mo8e
4iti o4risana dok sve instance UUdeteUtaU koje imaju nasleCeni klju; ne
4udu "ret)odno o4risane. Ako "ostoji neki nasleCeni9 4risanje je
+a4ranjeno.
&1 %&'0U81 de<ni3e standardnu vrednost instance entiteta UdeteU
+a i+4risano' UroditeljU.
+ravila ubacivanja #,nsert( i a`uriranja #)pdate( za egzistencijalno
zavisne neidenti3kuju}e veze
alempije@beotel.yu 147
&ravila +a u4acivanje -I:S/R(0 i a8uriranje -U&DA(/0 u"ravljaju 3ta 6e
4iti kada je red u ta4eli dodat ili a8uriran. A8uriranje je9 u su3tini9
u4acivanje9 ali sa nekim dodatnim "ravilima.
>a o"eracije #)acivanje D$7&61F i izmena DU(%01&F9 red mo8e
4iti dodat ili i+menjen samo ako svi referencirani "reneseni klju;evi
od'ovaraju "ostoje6im redovima u referenciranim ta4elama.
&ravila u4acivanjaHa8uriranja mo'u se i+vesti kori36enjem triju akcija?
"rvo9 ne mo8e se u4acitiHa8urirati instanca UUdeteUtaU 4e+
instance UroditeljU -akcija R/S(RI.(0A
dru'o9 alternativno9 +a u4a;eno'Ha8urirano' UroditeljU tre4a
u4acitiHa8urirati i 4ilo koje UdeteU9 ;iji 4i deo "rimarno' klju;a 4io
klju; UroditeljU -akcija .AS.AD/0A
tre6e9 "rilikom u4acivanjaHa8uriranja instance entiteta UdeteU
mo8e se "ostaviti standardna vrednost instance entiteta UdeteU +a
UroditeljU koji ne "ostoji.
U okviru /REin .AS/ alata difoltna vrednost +a u4acivanjeHa8uriranje
entiteta UdeteU je R/S(RI.(9 dok je difoltna vrednost +a u4acivanje
UroditeljU I :5:/ a +a a8uriranje R/S(RI.(.
6eferencijalni integritet za egzistencijalno nezavisnu
neidenti3kuju}u vezu
Ako je ve+a neo)avezna -:ulls AlloEed09 tada UdeteU nije
e'+istencijalno +avisno9 ali "o3tuje tu ve+u i 'ra<;ki se "redstavlja
rom4om -slika !.*!0.
sa#'$i 4
je sa#'$a&o
RODITEL, 0+ARENT1
Ro#itelj lju!
DETE 056ILD1
Dete lju!
Ro#itelj lju! 02K1
*lika 4.D4. Neobaveznost veze #Nulls 8llo'ed(
&otre4no je detaljno ra+motriti "ravila +a o"eracije? delete D4risanje09
insert Du4acivanje0 i #!date Da8uriranje0.
+ravila brisanja za egzistencijalno nezavisne neidenti3kuju}e veze
&ravila 4risanja mo'u se i+vesti kori36enjem ;etiri akcije?
"rvo9 mo8e se o4risati svaka instanca UUdeteUtaU ;iji je nasleC
eni klju; o4risana instanca UroditeljU -akcija .AS.AD/0A
dru'o9 alternativno9 mo8e se s"re;iti 4risanje UroditeljU ako
"ostoji 4ilo koje UdeteU ;iji 4i deo "rimarno' klju;a 4io
alempije@beotel.yu 148
nekom"letan -akcija R/S(RI.(0A
tre6e9 +a svaku o4risanu instancu UroditeljU mo8e se instanca
entiteta UdeteU "ostaviti kao Set DefaultA
;etvrto9 +a svaku o4risanu instancu UroditeljU mo8e se
instanca entiteta UdeteU mo8e se "ostaviti kao Set :ull.
U okviru /REin .AS/ alata difoltna vrednost +a 4risanje entiteta UdeteU
ne +a)teva i+voCenje "ret)odne ;etiri akcije -:5:/09 dok je difoltna
vrednost +a 4risanje UroditeljU S/( :U22.
3030%& omo'u6uje da sve instance UUdeteUtaU koje 6e 4iti
o4u)va6ene 4risanjem instance UroditeljU 4udu o4risane9 3to je
de<nisano re;enicom &AR/:( D/2/(/ .AS.AD/ -D?.0.
6&16$31 de<ni3e o'rani;enje tako da instanca UroditeljU ne mo8e
4iti o4risana dok sve instance UUdeteUtaU koje imaju nasleCeni klju; ne
4udu "ret)odno o4risane. Ako "ostoji neki nasleCeni9 4risanje je
+a4ranjeno.
et 7#ll ili et %efa#lt "oka+uje da je instanca UroditeljU o4risana9
ali je klju; UroditeljU +adr8an kao "odatak u entitetu UdeteU. ,risanje
nije .AS.AD/9 "a se klju; "ostavlja kao :U22 ili Set Default vrednost.
&rednost to' "ristu"a je da se mo'u sa;uvati informacije o UUdeteUtuU
dok je efektivna ve+a i+meCu UroditeljU i UUdeteUtaU "rekinuta.
+ravila ubacivanja #,nsert( i a`uriranja #)pdate(
&ravila +a u4acivanje -I:S/R(0 i a8uriranje -U&DA(/0 u"ravljaju 3ta 6e
4iti kada je red u ta4eli dodat ili a8uriran. A8uriranje je9 u su3tini9
u4acivanje9 ali sa nekim dodatnim "ravilima.
>a o"eracije #)acivanje D$7&61F i izmena DU(%01&F9 red mo8e
4iti dodat ili i+menjen samo ako svi referencirani "reneseni klju;evi
od'ovaraju "ostoje6im redovima u referenciranim ta4elama.
&ravila u4acivanjaHa8uriranja mo'u se i+vesti kori36enjem ;etiri
akcije?
"rvo9 ne mo8e se u4acitiHa8urirati instanca UUdeteUtaU 4e+
instance UroditeljU -akcija R/S(RI.(0A
dru'o9 alternativno9 mo8e se +a u4a;eno'Ha8urirano'
UroditeljU u4acitiHa8urirati i 4ilo koje UdeteU ;iji 4i deo "rimarno'
klju;a 4io klju; UroditeljU -akcija .AS.AD/0A
tre6e9 "rilikom u4acivanjaHa8uriranja instance entiteta UdeteU
mo8e se "ostaviti standardna vrednost instance entiteta UdeteU +a
UroditeljU koji ne "ostojiA
;etvrto9 "rilikom u4acivanjaHa8uriranja instance entiteta
alempije@beotel.yu 149
UdeteU mo8e se "ostaviti :ull vrednost instance entiteta UdeteU +a
UroditeljU koji ne "ostoji.
U okviru /REin .AS/ alata difoltna vrednost +a u4acivanjeHa8uriranje
entiteta UdeteU je Set :ull9 dok je difoltna vrednost +a u4acivanje
UroditeljU I :5:/9 a +a a8uriranje Set :ull.
6eferencijalni integritet za tip veze
?ero #Nulls 8llo'ed(%or%;ne%to ?ero%;ne%or%>ore
>a kardinalnost 'de je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa nula9
jednom ili vi3e instanci 5S5,A -.NI2D0 i 'de 5S5,A mo8e9 a ne mora
da "ri"ada 5D/2J/:JU9 referencijalni inte'ritet je "rika+an na slici
!.*$.
56ILD +ARENT
OSO.A DELETE 333333 ODEL,EN,E DELETE SET NULL
OSO.A INSERT SET NULL ODEL,EN,E INSERT 333333
OSO.A U+DATE 333333 ODEL,EN,E U+DATE 5AS5ADE
ODEL,EN,E
OSO.A
#ero*%ulls Alloved+) or)One)to)#ero)One)or)More
D=SN
U=5
I=SN
*lika 4.D7. 6eferencijalni integritet za tip veze ?ero #Nulls 8llo'ed(%or%;ne%to%
?ero%;ne%or%>ore
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije?
Unos -Insert0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
,e+ o'rani;enja
/ntitet 5S5,A
Set
:ull
:e mo8e se uneti 5so4a 4e+ UroditeljU
5deljenje9 sem ako se "reneseni klju;
5so4e ne setuje na :U22 -I?S:0
,risanje -Delete0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
,ri3u se sve 5so4e +a i+4risano 5deljenje
kao UroditeljU
Restrict
:e do+voljava se 4risanje 5deljenja ako
"ostoji 5so4a +a koje je 5deljenjeUroditeljU
alempije@beotel.yu 150
Set
:ull
Sve 5so4e +a koje je 5deljenjeUroditeljU
setuju "reneseni klju; 5so4e na :U22
-D?S:0
/ntitet 5S5,A ,e+ o'rani;enja
I+mena -U"date0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
I+mene se sve 5so4e +a i+menu 5deljenja
-U?.0
/ntitet 5S5,A ,e+ o'rani;enja
6eferencijalni integritet za ti! veze
4ne D7o 7#llsF=to=@ero=4ne=or=More
>a kardinalnost 'de je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa nula9
jednom ili vi3e instanci 5S5,A -.NI2D0 i 'de 5S5,A mora da "ri"ada
5D/2J/:JU9 referencijalni inte'ritet je "rika+an na slici !.*.
56ILD +ARENT
OSO.A DELETE 3 3 3 ODEL,EN,E DELETE RESTRI5T
OSO.A INSERT RESTRI5T ODEL,EN,E INSERT 333333
OSO.A U+DATE RESTRI5T ODEL,EN,E U+DATE 5AS5ADE
One*%o %ulls+)to)#ero)One)or)More
ODEL,EN,E
OSO.A
D=R
U=5
I=R
U=R
*lika 4.DA. 6eferencijalni integritet za tip veze ;ne #No Nulls(%to%?ero%;ne%or%
>ore
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije?
Unos -Insert0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
,e+ o'rani;enja
/ntitet 5S5,A Restrict
:e mo8e se uneti 5so4a -I?R0 4e+ UroditeljU
5deljenje
,risanje -Delete0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet .acsad ,ri3u se sve 5so4e +a i+4risano 5deljenje
alempije@beotel.yu 151
5D/2J/:J/
e kao UroditeljU
Restrict
:e mo8e se o4risati 5deljenje -D?R0 ako je
ve+ano +a 5so4u
/ntitet 5S5,A ,e+ o'rani;enja
I+mena -U"date0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
,ri3u se sve 5so4e +a i+4risana 5deljenja
-D?.0
/ntitet 5S5,A Restrict
:e mo'u se i+meniti 5so4a -U?R0 ako ne
"ostoji 5deljenje
6eferencijalni integritet za tip veze
?ero #Nulls 8llo'ed(%or%;ne%to%;ne%or%>ore #+(
>a kardinalnost 'de je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa
jednom ili vi3e instanci 5S5,A -.NI2D0 i 'de 5S5,A mo8e9 a ne mora
da +avisi od 5D/2J/:JA9 referencijalni inte'ritet je "rika+an na slici
!.*%.
+
#ero*%ulls Allo/ed+)or)One)to )One)or)More*P+
56ILD +ARENT
OSO.A DELETE 3 3 3 ODEL,EN,E DELETE SET NULL
OSO.A INSERT RESTRI5T ODEL,EN,E INSERT 333333
OSO.A U+DATE RESTRI5T ODEL,EN,E U+DATE RESTRI5T
ODEL,EN,E
OSO.A
I=R
U=R
D=SN
U=R
*lika 4.DC. 6eferencijalni integritet za tip veze ?ero #Nulls 8llo'ed(%or%;ne%to%
;ne%or%>ore #+(
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije?
Unos -Insert0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
Unos 5deljenja mora "ratiti unos
najmanje jedne 5so4e +a koje je
5deljenje UroditeljU
/ntitet 5S5,A Restrict
:e mo8e se uneti 5so4a -I?R0 ako ne
"ostoji 5deljenje9 sem ako se reneseni
klju; 5deljenja u 5so4i setuje na :U22
alempije@beotel.yu 152
,risanje -Delete0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
,ri3u se sve 5so4e +a koje je i+4risano
5deljenje kao UroditeljU
Restrict
:e do+voljava se 4risanje 5deljenja -ako
je "oslednji UroditeljU 5so4i0
Set
:ull
>a sve 5so4e 'de 5deljenje UroditeljU
setuju se "reneseni klju;evi od odeljenja
na :U22 -D?S:0
/ntitet 5S5,A
.ascad
e
,ri3e se 5deljenje +a i+4risanu 5so4u
Restrict
:e do+voljava se 4risanje 5so4e ako
"reneseni klju; 5deljenja u 5so4u nije
:U22
I+mena -U"date0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
Restrict
:e mo8e se i+meniti 5deljenje -U?R0 ako
je ve+ano +a 5so4u
/ntitet 5S5,A Restrict
:e mo8e se i+meniti 5so4a -U?R0 ako ne
"ostoji 5deljenje
6eferencijalni integritet za tip veze
;ne #No Nulls(%to%;ne%or%>ore #+(
>a kardinalnost 'de je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa
jednom ili vi3e instanci 5S5,A -.NI2D0 i 'de 5S5,A mora da "ri"ada
5D/2J/:JU9 referencijalni inte'ritet je "rika+an na slici !.*#.
+
56ILD +ARENT
OSO.A DELETE RESTRI5T ODEL,EN,E DELETE RESTRI5T
OSO.A INSERT RESTRI5T ODEL,EN,E INSERT 333333
OSO.A U+DATE RESTRI5T ODEL,EN,E U+DATE RESTRI5T
ODEL,EN,E
OSO.A
One*%o %ulls+)to)One)or)More*P+
I=R
U=R
D=R
U=R
*lika 4.D@. 6eferencijalni integritet za tip veze ;ne #No Nulls(%to%;ne%or%>ore
#+(
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije?
alempije@beotel.yu 153
Unos -Insert0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
Unos 5deljenja mora "ratiti unos najmanje
jedne 5so4e +a koje je 5deljenje UroditeljU
/ntitet 5S5,A Restrict
:e mo8e se uneti 5so4a -I?R0 ako ne
"ostoji UroditeljU 5deljenje
,risanje -Delete0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
,ri3u se sve 5so4e +a koje je i+4risano
5deljenje kao UroditeljU
Restrict
:e do+voljava se 4risanje 5deljenja -ako je
"oslednji UroditeljU 5so4i0
/ntitet 5S5,A
.ascad
e
,ri3e se UroditeljU 5deljenje ako je i+4risana
5so4a "oslednje UdeteU 5deljenja
Restrict
>a4rana 4risanja 5so4e -D?R0 ako je
"oslednja u 5deljenju
I+mena -U"date0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
Restrict
:e mo8e se i+meniti 5deljenje -U?R0 ako je
ve+ano +a 5so4u
/ntitet 5S5,A Restrict
:e mo8e se i+meniti 5so4a -U?R0 ako ne
"ostoji 5deljenje
6eferencijalni integritet za tip veze
?ero #Nulls 8llo'ed(%or%;ne%to%?ero%or%;ne #?(
>a kardinalnost 'de je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa nula ili
jednom instancom 5S5,A -.NI2D0 i 'de 5S5,A mo8e9 a ne mora da
+avisi od 5D/2J/:JA9 referencijalni inte'ritet je "rika+an na slici !.**.
7
56ILD +ARENT
OSO.A DELETE 333333 ODEL,EN,E DELETE RESTRI5T
OSO.A INSERT SET NULL ODEL,EN,E INSERT 333333
OSO.A U+DATE 3333333 ODEL,EN,E U+DATE RESTRI5T
OSO.A
ODEL,EN,E
#ero*%ulls Allo/ed+ or One)to)#ero)or)One*#+
I=SN
D=R
U=R
*lika 4.DD. 6eferencijalni integritet za tip veze ?ero #Nulls 8llo'ed(%or%;ne%to%
?ero%or%;ne #?(
alempije@beotel.yu 154
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije?
Unos -Insert0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
,e+ o'rani;enja
/ntitet 5S5,A
Set
:ull
5so4a se mo8e uneti ako je "reneseni
klju; 5deljenja setovan na :U22 -I?S:0
,risanje -Delete0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
Ako "ostoji9 4ri3e se 5so4a +a i+4risano
5deljenje kao UroditeljU
Restrict
:e mo8e se o4risati 5deljenje -D?R0 ako je
ve+ano +a 5so4u
Set
:ull
>a i+4risano' UroditeljU 5deljenje
od'ovaraju6i "reneseni klju;evi u 5so4i
setuju se na :U22
/ntitet 5S5,A ,e+ o'rani;enja
I+mena -U"date0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
Restrict
:e mo8e se i+meniti 5deljenje -U?R0 ako je
ve+ano +a 5so4u
/ntitet 5S5,A Restrict ,e+ o'rani;enja
6eferencijalni integritet za tip veze
;ne #No Nulls(%to%?ero%or%;ne #?(
>a kardinalnost 'de je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa nula ili
jednom instancom 5S5,A -.NI2D0 i 'de 5S5,A mora da "ri"ada
5D/2J/:JU9 referencijalni inte'ritet je "rika+an na slici !.*9.
alempije@beotel.yu 155
OSO.A DELETE 33333333 ODEL,EN,E DELETE RESTRI5T
OSO.A U+DATE RESTRI5T ODEL,EN,E U+DATE RESTRI5T
7
56ILD +ARENT
OSO.A INSERT RESTRI5T ODEL,EN,E INSERT 333333
One*%o %ulls+)to)#ero)or)One*#+
ODEL,EN,E
OSO.A
I=R
U=R
D=R
U=R
*lika 4.DB. 6eferencijalni integritet za tip veze ;ne #No Nulls(%to%?ero%or%;ne
#?(
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije?
Unos -Insert0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
,e+ o'rani;enja
/ntitet 5S5,A Restrict
:e mo8e se uneti 5so4a -I?R0 ako ne
"ostoji 5deljenje9 ili ako "ostoji 5so4a +a
isti UroditeljU 5deljenje
,risanje -Delete0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
Ako "ostoji9 4ri3e se 5so4a +a i+4risano
5deljenje kao UroditeljU
Restrict
:e mo8e se o4risati 5deljenje -D?R0 ako je
ve+ano +a 5so4u
/ntitet 5S5,A ,e+ o'rani;enja
I+mena -U"date0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
Restrict
:e mo8e se i+meniti 5deljenje -U?R0 ako je
ve+ano +a 5so4u
/ntitet 5S5,A Restrict
:e mo8e se i+meniti 5so4a -U?R0 ako ne
"ostoji 5deljenje
6eferencijalni integritet za tip veze
?ero #Nulls 8llo'ed(%or%;ne%to%-<actlF n
>a kardinalnost 'de je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa ta;no
n instanci 5S5,A -.NI2D0 i 'de 5S5,A mo8e9 a ne mora da +avisi od
5D/2J/:JA9 referencijalni inte'ritet je "rika+an na slici !.91.
alempije@beotel.yu 156
OSO.A DELETE 33333333 ODEL,EN,E DELETE SET NULL
OSO.A U+DATE SET NULL ODEL,EN,E U+DATE SET NULL
N
56ILD +ARENT
OSO.A INSERT SET NULL ODEL,EN,E INSERT 333333
OSO.A
ODEL,EN,E
#ero*%ulls Allo/ed+)or)One)to)$,actl- .
I=SN
U=SN
D=SN
U=SN
*lika 4.B/. 6eferencijalni integritet za tip veze ?ero #Nulls 8llo'ed(%or%;ne%to%
-<actlF n
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije?
Unos -Insert0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
Unos 5deljenja mora "ratiti ta;no n 5so4a
+a koje je 5deljenje UroditeljU
/ntitet 5S5,A Restrict
:e mo8e se uneti 5so4a -I?R0 ako ne
"ostoje 5deljenja i nI1 uneseni) 5so4a +a
isto 5deljenje9 sem ako se klju; 5deljenja
setuje na :U22 u 5so4i
,risanje -Delete0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
>a i+4risano 5deljenje 4ri3u se sve 5so4e
Restrict
:e mo8e se o4risati 5deljenje -D?R0 ako je
ve+ano +a 5so4u
Set
:ull
>a sve 5so4e 'de je 5deljenje UroditeljU
setuju se "reneseni klju;evi 5deljenja na
:U22
/ntitet 5S5,A
.ascad
e
Ako "reneseni klju; 5deljenja u 5so4u
nije :U229 4ri3e se UroditeljU 5deljenje i sve
5so4e +a koje je 5deljenje UroditeljU9 ina;e
4ri3e se 5so4a
Restrict :ije do+voljeno 4risanje 5so4a
Set null
,ri3e 5so4u i u svim 5so4ama 'de je
5deljenje UroditeljU setuje "reneseni klju;
5deljenje na :U22
I+mena -U"date0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
Set
:ull
I+menom 5deljenja "reneseni klju;evi su
Set :ull -D?S:0
/ntitet 5S5,A
Set
:ull
I+menom 5so4e "reneseni klju;evi su Set
:ull -D?S:0
alempije@beotel.yu 157
6eferencijalni integritet za tip veze
;ne #No Nulls(%to%-<actlF n
>a kardinalnost 'de je svako 5D/2J/:J/ -&AR/:(0 "ove+ano sa ta;no
n instanci 5S5,A -.NI2D0 i 'de 5S5,A mora da +avisi od 5D/2J/:JA9
referencijalni inte'ritet je "rika+an na slici !.91.
OSO.A DELETE 33333333 ODEL,EN,E DELETE RESTRI5T
OSO.A U+DATE RESTRI5T ODEL,EN,E U+DATE RESTRI5T
N
56ILD +ARENT
OSO.A INSERT RESTRI5T ODEL,EN,E INSERT 333333
One*%o %ulls+)to)$,actl- .
ODEL,EN,E
OSO.A
I=R
U=R
D=R
U=R
*lika 4.B0. 6eferencijalni integritet za tip veze ;ne #No Nulls(%to%-<actlF n
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije?
Unos -Insert0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
Unos 5deljenja mora "ratiti ta;no n 5so4a
+a koje je 5deljenje UroditeljU
/ntitet 5S5,A Restrict
:e mo8e se uneti 5so4a -I?R0 ako ne
"ostoje 5deljenja i nI1 uneseni) 5so4a +a
isto' UroditeljU
,risanje -Delete0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
.ascad
e
>a i+4risano 5deljenje 4ri3u se sve 5so4e
Restrict
:e mo8e se o4risati 5deljenje -D?R0 ako je
ve+ano +a 5so4u
/ntitet 5S5,A
.ascad
e
,ri3u se UroditeljU 5deljenje i sve dru'e
5so4e +a koje je 5deljenje UroditeljU
Restrict :e mo8e se do+voliti 4risanje 5so4e
I+mena -U"date0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet
5D/2J/:J/
Restrict
:e mo8e se i+meniti 5deljenje -U?R0 ako je
ve+ano +a 5so4u
/ntitet 5S5,A Restrict
:e mo8e se i+meniti 5so4a -U?R0 ako ne
"ostoji 5deljenje
alempije@beotel.yu 158
Referencijalni inte'ritet +a rekur+ivne ve+e
Referencijalni inte'ritet +a rekur+ivne ve+e de<ni3e se kao?
referencijalni inte'ritet )ijerar)ijsko' ti"a -rekur+ija nad
jednom ta4elom0
referencijalni inte'ritet mre8no' ti"a -rekur+ija nad dve
ta4ele0.
6eferencijalni integritet rekurzivne veze
hijerarhijskog tipa
Referencijalni inte'ritet rekur+ije )ijerar)ijsko' ti"a je ve+a entiteta
nad samim so4om i de<ni3e se kao neidenti<kuju6a ve+a.
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije u4acivanje -I:S/R(0 klju;a entiteta UroditeljU ne +a)teva
nikakvu akciju -:5:/0 nad okolinom9 dok se u4acivanjem instance
entiteta UdeteU "ostavlja referencijalni inte'ritet na Set :ull -I?S:0.
5"eracija 4risanja -D/2/(/0 klju;a entiteta UroditeljU i+vodi se akcijom
Set :ull -D?S:09 dok 4risanje instance entiteta UdeteU ne +a)teva
nikakvu akciju -:5:/0.
I+vodenjem akcije a8uriranja -U&DA(/09 instance entiteta? UdeteU i
UroditeljU "ostavljaju se u Set :ull -U?S:0.
je rukovodilac /
je rukovodjen
I0S%
U0S%
&0S%
U0S%
56ILD +ARENT
OSO.A DELETE 33333333 ODEL,EN,E DELETE SET NULL
OSO.A INSERT SET NULL ODEL,EN,E INSERT 333333
OSO.A U+DATE SET NULL ODEL,EN,E U+DATE SET NULL
#ero *%ulls Allo/ed+) or)One)to)#ero)One)or)More
OSOBA
Si*'a osobe
Si*'a o#elje&ja 02K1
+'e$ime
Ime
Ruo".Si*'a osobe 02K1
,-./
+lata
Stimula!ija
Datum $aposle&ja
*lika 4.B2. 6eferencijalni integritet rekurzivne veze hijerarhijskog tipa
alempije@beotel.yu 159
6eferencijalni integritet rekurzivne veze mre`nog tipa
Referencijalni inte'ritet rekur+ivne ve+e mre8no' ti"a je s"ecijalni
slu;aj U7anJItoI7anJU ve+e nad samim so4om i tre4a je ra+4iti na dve
ve+e 1?7.
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije u4acivanje -I:S/R(0 klju;a entiteta &R5I>D5D ne +a)teva
nikakvu akciju -:5:/0 nad okolinom.
I+voCenje o"eracije 4risanja -D/2/(/0 i i+mena -U&DA(/0 klju;a
entiteta &R5I>D5D su +a4ranjeni akcijom R/S(RI.( -D?R i U?R0.
/ntitet S(RUB(URA "oseduje slo8en klju;9 "a su o"eracije i i+mena
-U&DA(/0 i u4acivanje -I:S/R(0 +a4ranjene -U?R9 I?R09 jer +avise od
"ostojanja klju;a entiteta &R5I>D5D. 5"eracija 4risanje -D/2/(/0
entiteta S(RUB(URA ne +a)teva nikakvu akciju -:5:/0 nad okolinom.
I=R
U=R
D=R
U=R
I=R
U=R
D=R
U=R
STRUKTURA
Kompo&e&ta b'.I#e&t b'oj 02K1
Sasta" b'.I#e&t b'oj 02K1
+ROI7VOD
I#e&t b'oj
*lika 4.B4. 6eferencijalni integritet rekurzivne veze mre`nog tipa
Referencijalni inte'ritet +a ti" ve+e kate'orija
&otre4no je "osmatrati na;in de<nisanja referencijalno' inte'riteta
+a 'enerali+ovani entitet 5S5,A u varijanti ne"ot"une i "ot"une
strukture.
6eferencijalni integritet potpune strukture
Ako se "osmatra referencijalni inte'ritet "ot"une strukture mo8e se
uo;iti da se i+menom -U&DA(/0 ili 4risanjem -D/2/(/0 klju;a entiteta
5S5,A akcijom .AS.AD/ -D?.9 U?.0 "renose ove o"eracije i na
"odti"ove i da se one automatski i+vr3avaju. S dru'e strane9 ne mo8e
se i+vr3iti o"eracija u4acivanje -I:S/R(0 ili i+mena -U&DA(/0 klju;eva
od'ovaraju6i) "odti"ova -I?R9 U?R0. 5va +a4rana de<nisana je akcijom
R/S(RI.( -R0.
alempije@beotel.yu 160
I0!
U0!
I0!
U0!
&0"
U0"
Pol
7ENA -USKARA5
OSOBA
*lika 4.B7. 6eferencijalni integritet potpune strukture
alempije@beotel.yu 161
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije?
Unos -Insert0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet 5S5,A
Uno3enje 5so4e mora "ratiti uno3enje i
7uskarca ili >ene +a isti klju; kao 5so4a
+a diskriminator kate'orije &ol
/ntitet
7USBARA.
:e mo8e se uneti 7uskarac 4e+ uneseno'
UroditeljU 5so4a +a kate'oriju de<nisanu u
diskriminatoru &ol kao @7@.
/ntitet >/:A
:e mo8e se uneti >ena 4e+
uneseno'UroditeljU 5so4a +a kate'oriju
de<nisanu u diskriminatoru &ol kao @>@.
,risanje -Delete0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet 5S5,A
.ascad
e
,ri3e se "rimerak kate'orije +a i+4risanu
5so4u kao UroditeljU
Restrict :ije do+voljeno 4risanje 5so4e
/ntitet
7USBARA.
.ascad
e
,ri3e UroditeljU 5so4u +ajedno sa
kate'orijom 7uskarac
Restrict :ije do+voljeno 4risanje 7uskarac
/ntitet >/:A
.ascad
e
,ri3e UroditeljU 5so4u +ajedno sa
kate'orijom >ena
Restrict :ije do+voljeno 4risanje >ena
6eferencijalni integritet nepotpune strukture
Ako se "osmatra referencijalni inte'ritet ne"ot"une strukture mo8e se
uo;iti da se i+menom -U&DA(/0 ili 4risanjem -D/2/(/0 klju;a entiteta
5S5,A9 i akcijom .AS.AD/ -D?.9 U?.09 "renose ove o"eracije i na
"odti"ove i one se automatski i+vr3avaju. S dru'e strane9 ne mo8e se
i+vr3iti o"eracija u4acivanje -I:S/R(0 ili i+mena -U&DA(/0 klju;eva
od'ovaraju6i) "odti"ova -I?R9 U?R0. 5va +a4rana de<nisana je akcijom
R/S(RI.( -R0.
alempije@beotel.yu 162
I0!
U0!
I0!
U0!
&0"
U0"
Vrsta
REDOVNI
KONSULTANT
OSOBA
*lika 4.BA. 6eferencijalni integritet nepotpune strukture
6eferencijalni integritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije?
Unos -Insert0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet 5S5,A
Uno3enje 5so4e mo8e se de<nisati 4e+
uno3enja Bonsultanta ili Redovno' i "ri
tom indikator diskriminatora nije o+na;en
/ntitet
B5:SU2(A:(
:e mo8e se uneti Bonsultant 4e+ uneseno'
UroditeljU 5so4a +a kate'oriju de<nisanu u
diskriminatoru Drsta kao @B@
/ntitet
R/D5D:I
:e mo8e se uneti Redovni 4e+ uneseno'
UroditeljU 5so4a +a kate'oriju de<nisanu u
diskriminatoru Drsta kao @R@.
,risanje -Delete0 omo'u6uje i+voCenje slede6i) akcija?
/ntitet 5S5,A
.ascad
e
,ri3e se "rimerak kate'orije +a i+4risanu
5so4u kao UroditeljU
Restrict :ije do+voljeno 4risanje 5so4e
/ntitet
B5:SU2(A:(
.ascad
e
,ri3e UroditeljU 5so4u +ajedno sa
kate'orijom Bonsultant
Restrict :ije do+voljeno 4risanje Bonsultanta
Set
:ull
:e 4ri3e se 5so4a9 ve6 se atri4ut Drsta
"ostavlja na Set :ull
/ntitet
R/D5D:I
.ascad
e
,ri3e UroditeljU 5so4u +ajedno sa
kate'orijom Redovni
Restrict
:ije do+voljeno 4risanje instance entiteta
Redovni
alempije@beotel.yu 163
Referencijalni inte'ritet +a neodreCuju6u ve+u
Bao 3to je "oka+ano u "ret)odnom "o'lavlju kada je de<nisana
kardinalnost ve+a9 osnovno "ravilo koje se ovde mora "o3tovati je da
se mora i+vesti "revoCenje U7anJItoI7anJU ve+e u U>eroItoI7anJU
ve+u.
$&a
,E7IK
OSO.A
*lika 4.BC. eza J>anF%to%>anFJ
5vaj "ro4lem se re3ava tako 3to se dodaje asocijativni entitet na+van
./R(IFIBA( i na taj na;in "revodi U7anJItoI7anJU ve+a u "ar 5neItoI
>eroI5neIorI7anJ ve+u -slika !.9#0.
vazi /
odnosi se
je dat /
poseduje
"$!TI(IAT
Si*'a osobe 02K1
Si*'a je$ia 02K1
Stepe& $&a&ja
'$#I
Si*'a je$ia
Na$i" je$ia
OSOBA
Si*'a osobe
Si*'a o#elje&ja 02K1
+'e$ime
Ime
,-./
+lata
Stimula!ija
Datum $aposle&ja
*lika 4.B@. 5ardinalnost veza entiteta =-6$,.,58$
&otre4no je detaljno ra+motriti "ravila +a o"eracije? insert
Du4acivanje0* delete D4risanje0 i update Da8uriranje0 +a "rimer sa slike
!.9#.
+ravila brisanja
&ravila 4risanja mo'u se i+vesti kori36enjem dveju o"eracija?
"rvo9 mo8e se o4risati svaka instanca ./R(IFIBA( ;iji je
nasleCeni klju; o4risana instanca entiteta J/>IB -akcija .AS.AD/09
ili
dru'o9 mo8e se s"re;iti 4risanje J/>IBA ako "ostoji 4ilo koji
./R(IFIBA( ;iji 4i deo "rimarno' klju;a 4io nekom"letan -akcija
R/S(RI.(0.
alempije@beotel.yu 164
5ve situacije koje su u ve+i sa "ravilima 4risanja na+ivaju se
3030%& i 6&16$31* a odluka koje "ravilo tre4a da se koristi 4i6e
de<nisana u modelu.
Dakle9 3030%& omo'u6uje da sve instance ./R(IFIBA(
o4u)va6ene 4risanjem instance J/>IBA 4udu9 takoCe9 o4risane9 3to je
de<nisano re;enicom &AR/:( -J/>IB0 D/2/(/ .AS.AD/ -D?.09 tj. ako
je u "itanju9 n"r.9 instanca @nema;ki je+ik@ u entitetu J/>IB9 onda 6e
se i+4risati automatski svi certi<kati i+dati +a @nema;ki je+ik@ -slika
!.9*0.
&0"
'$#I
Si*'a je$ia
Na$i" je$ia
"$!TI(IAT
Si*'a osobe 02K1
Si*'a je$ia 02K1
Stepe& $&a&ja
*lika 4.BD. !risanje entiteta =-6$,.,58$ akcijom =8*=8&-
6&16$31 de<ni3e o'rani;enje tako da instanca J/>IBA ne mo8e 4iti
o4risana dok sve instance ./R(IFIBA( koje imaju nasleCeni klju; ne
4udu "ret)odno o4risane. Ako "ostoji neki nasleCeni9 4risanje je
@o'rani;eno@. U dosada3njem "rimeru moraju "ret)odno 4iti
i+4risane sve instance entiteta ./R(IFIBA( +a @nema;ki je+ik@9 "a tek
onda da se "ristu"i 4risanju instance @nema;ki je+ik@ u entitetu J/>IB
-slika !.990.
&0!
'$#I
Si*'a je$ia
Na$i" je$ia
"$!TI(IAT
Si*'a osobe 02K1
Si*'a je$ia 02K1
Stepe& $&a&ja
*lika 4.BB. !risanje entiteta =-6$,.,58$ akcijom =8*=8&-
?a{to treba ograni~iti brisanjeK
Jedan od ra+lo'a mo8e 4iti da tre4a ostaviti instancu @nema;ki je+ik@
u entitetu ./R(IFIBA(. Ako doCe do .AS.AD/ 4risanja9 i+'u4i6e se ova
do"unska informacija.
alempije@beotel.yu 165
(o tre4a re3iti tako 3to entitet ./R(IFIBA( ne6e e'+istencijalno ili
identi<kaciono +avisiti od J/>IBA9 tj. 4i6e "romenjen referencijalni
inte'ritet u"otre4om sla4e ve+e i+meCu dva entiteta -slika !.1110.
&0S%
Si*'a osobe 02K1
Si*'a je$ia 02K1
Stepe& $&a&ja
'$#I
Si*'a je$ia
Na$i" je$ia
"$!TI(IAT
*lika 4.0//. +rikaz na~ina ograni~avanja brisanja
U navedenom slu;aju9 situacija je 4itno ra+li;ita. Bao 3to je ve6
"o+nato9 s"oljnom klju;u9 koji je @donesen@ "reko sla4e ve+e9
do+voljene su :U22 vrednosti. (ako se +a sla4e ve+e javlja tre6a
o"cija koja se +ove et 7#ll.
et 7#ll "oka+uje da ako je instanca J/>IBA o4risana9 ali je klju;
J/>IBA +adr8an kao "odatak u entitetu ./R(IFIBA(9 4risanje nije
.AS.AD/ kao u "ret)odnom "rimeru i ne mo8e se +a4raniti 4risanje.
Sto'a se "ostavlja klju; kao :U22 vrednost. &rednost to' "ristu"a je
da se mo'u sa;uvati informacije o ./R(IFIBA(U9 dok je efektivna
ve+a i+meCu entiteta J/>IB i entiteta ./R(IFIBA( "rekinuta.
+ravila za ubacivanje i izmenu
5dluka da se u"otre4ljava .AS.AD/ ili Set :ull odra8ava se na
"oslovne odluke o odr8avanju @istorije@ +nanja o ve+i "redstavljenoj
"reko "reneseni) klju;eva.
:aime9 "ravila 4risanja -D/2/(/0 u"ravljaju 3ta 6e se desiti u 4a+i
"odataka kada se red u ta4eli o4ri3e.
&ravila +a u4acivanje -I:S/R(0 i a8uriranje -U&DA(/0 u"ravljaju 3ta 6e
4iti kada je red u ta4eli dodat ili a8uriran. A8uriranje je9 u su3tini9
u4acivanje9 ali sa nekim dodatnim "ravilima.
>a o"eracije ubacivanje #,N*-6$( i izmena #)+&8$-(9 red mo8e 4iti
dodat ili i+menjen samo ako svi referencirani "reneseni klju;evi
od'ovaraju "ostoje6im redovima u referenciranim ta4elama.
S o4+irom na to da se sada mo'u i+meniti "oslovna "ravila9 to se
asocijativni ti" entiteta ./R(IFIBA( koji "ove+uje entitete 5S5,A i
J/>IB mo8e se "rika+ati kao na slici !.111.
alempije@beotel.yu 166
vazi /
odnosi se
I0!
U0!
&0!
U0"
je dat /
poseduje
I0!
U0!
&0"
U0"
"$!TI(IAT
Si*'a osobe 02K1
Si*'a je$ia 02K1
Stepe& $&a&ja
'$#I
Si*'a je$ia
Na$i" je$ia
OSOBA
Si*'a osobe
Si*'a o#elje&ja 02K1
+'e$ime
Ime
,-./
+lata
Stimula!ija
Datum $aposle&ja
*lika 4.0/0. 6eferencijalni integritet za entitet =-6$,.,58$
Referencijalni inte'ritet mo8e se o"isati na slede6i na;in?
Ako se "osmatra referencijalni inte'ritet ve+e 5S5,A I ./R(IFIBA(9
mo8e se uo;iti da se i+menom -U&DA(/0 ili 4risanjem -D/2/(/0
klju;a entiteta 5S5,A I akcijom .AS.AD/ -D?.9 U?.0 I "renose ove
o"eracije i na klju;eve entiteta ./R(IFIBA( i one se automatski
i+vr3avaju. S dru'e strane9 ne mo8e se i+vr3iti o"eracija u4acivanje
-I:S/R(0 ili i+mena -U&DA(/0 entiteta ./R(IFIBA( -I?R9 U?R0 ako ne
"ostoji 5S5,A. 5va +a4rana de<nisana je akcijom R/S(RI.( -R0.
Bada se se "osmatra referencijalni inte'ritet ve+e J/>IB I ./R(IFIBA(9
mo8e se uo;iti da se i+menom -U&DA(/0 ili u4acivanjem -I:S/R(0
klju;a entiteta J/>IB I akcijom .AS.AD/ -D?.9 U?.0 I "renose ove
o"eracije i na klju;eve entiteta ./R(IFIBA( i one se automatski
i+vr3avaju.
,risanje -D/2/(/0 klju;a entiteta J/>IB je onemo'u6eno akcijom
R/S(RI.( -R0.
S dru'e strane9 ne mo8e se i+vr3iti o"eracija u4acivanje -I:S/R(0 ili
i+mena -U&DA(/0 entiteta ./R(IFIBA( -I?R9 U?R0 ako ne "ostoji 5S5,A.
5va +a4rana de<nisana je akcijom R/S(RI.( -R0.
7ada svaka ve+a a're'ira dva entiteta9 samo 4inarne ve+e kojima 4i
imalo smisla dodati neke atri4ute9 ili koje 4i imalo smisla "ove+ivati sa
dru'im entitetima9 tre4a tretirati kao a're'irane entitete -a're'acije0.
Ako "ostoji "otre4a da se direktno "redstavi ve+a tri ili vi3e entiteta9
tada se i takva ve+a tretira kao a're'acija.
Imaju6i sve to u vidu +a "rimer dokumenta @Barton is"lata@9 u
slede6em koraku 4i6e de<nisana strukturna "ravila inte'riteta +a
dokument @Barton is"lata".
alempije@beotel.yu 167
&rika+ strukturni) "ravila inte'riteta
+a dokument @Barton is"lata@
>a "rimer dokumenta @Barton is"lata@ referencijalni inte'ritet je
"rika+an na slici !.112. U daljem tekstu 4i6e o"isan 'ra<;ki "rika+ i
de<nisana ta4lica referencijalni) inte'riteta.
I=R
U=R
D=R
U=R
+
I0!
U0!
I0!
U0!
&0"
U0"
I0!
U0!
I0!
U0!
&0"
U0"
I0S%
U0S%
&0S%
U0S%
I0!
U0!
&0!
U0!
I0!
U0!
&0!
U0!
I0!
U0!
&0"
U0"
I0S%
U0S%
&0S%
U0S%
Vrsta
-USKARA5
Si*'a osobe 02K1
Slu$io "ojsu
7ENA
Si*'a osobe 02K1
+'e$ime #e"oja!o
KONSULTANT
Si*'a osobe 02K1
.'oj sati
REDOVNI
Si*'a osobe 02K1
V'sta posla
ISPLATA
Si*'a osobe 02K1
'b'
Datum isplate
I$&os
O&$L'$%'$
Si*'a o#elje&ja
Na$i" o#elje&ja
-esto
"$!TI(IAT
Si*'a osobe 02K1
Si*'a je$ia 02K1
Stepe& $&a&ja
'$#I
Si*'a je$ia
Na$i" je$ia
OSOBA
Si*'a osobe
+'e$ime 0IE11
Ime 0IE11
Si*'a'm 02K1
,-./ 0AK21
'uo" 02K1
Datum $aposle&ja
+lata
Stimula!ija
Si*'a o#elje&ja 02K1
+ol
V'sta
Pol
RADNO -ESTO
Si*'a'm
Na$i"'m
*lika 4.0/2. 6eferencijalni integritet za dokument "5arton isplata"
6eferencijalni integritet veze ;&-GH-NH-%;*;!8
Referencijalni inte'ritet de<nisan ovim ti"om ve+e "ri i+voCenju
o"eracije u4acivanje -I:S/R(0 klju;a entiteta 5D/2J/:J/ ne +a)teva
nikakvu akciju -:5:/0 nad okolinom. &ri i+voCenju o"eracija? 4risanje
-D/2/(/0 i i+mena -U&DA(/0 klju;a entiteta 5D/2J/:J/ akcijom Set
:ull -D?S: i U?S:0 "reneseni klju; =Sifra 5D/2J/:JA -FB0T entiteta
5S5,A setuje se na :U22. /ntitet 5S5,A +a o"eraciju 4risanje
-D/2/(/0 ne +a)teva nikakvu akciju -:5:/0 nad okolinom. I+voCenjem
o"eracije unosa -I:S/R(0 i i+mene -U&DA(/0 entiteta 5S5,A9
"reneseni klju; entiteta 5D/2J/:J/ se setuje na :U22 -I?S: i U?S:0.
6eferencijalni integritet veze 68&N; >-*$;%;*;!8
Referencijalni inte'ritet de<nisan ti"om ve+e RAD:5 7/S(5I5S5,A
"ri i+voCenju o"eracije u4acivanje -I:S/R(0 klju;a entiteta RAD:5
7/S(5 ne +a)teva nikakvu akciju -:5:/0 nad okolinom. 5"eracije?
4risanje -D/2/(/0 i i+mena -U&DA(/0 klju;a entiteta RAD:5 7/S(5
su +a4ranjene -D?R9 U?R09 sve dok "ostoji "reneseni klju; u entitetu
alempije@beotel.yu 168
5S5,A. :ad entitetom 5S5,A o"eracije? i+mena -U&DA(/0 i
u4acivanje -I:S/R(0 i 4risanje -D/2/(/0 nisu do+voljene -U?R9 I?R9
D?R09 jer +avise od "ostojanja klju;a entiteta RAD:5 7/S(5.
6eferencijalni integritet veze ;*;!8%,*+G8$8
Referencijalni inte'ritet de<nisan ti"om ve+e 5S5,AIIS&2A(A "ri i+voC
enju o"eracije u4acivanje -I:S/R(0 klju;a entiteta 5S5,A ne +a)teva
nikakvu akciju -:5:/0 nad okolinom.
&ri i+voCenju o"eracije 4risanja -D/2/(/0 klju;a entiteta 5S5,A
istovetna o"eracija se i+vodi akcijom .AS.AD/ -D?.0 i nad klju;em
entiteta IS&2A(A -"rvo se 4ri3u sve IS&2A(/ +a i+a4rani klju; 5S5,/9
a "otom i 5S5,A0. &ri i+voCenju o"eracije i+mena -U&DA(/0 klju;a
entiteta 5S5,A istovetna o"eracija se i+vodi akcijom .AS.AD/ -U?.0 i
nad klju;em entiteta IS&2A(A. /ntitet IS&2A(A "oseduje slo8en klju; i
o4e o"eracije I i+mena -U&DA(/0 i u4acivanje -I:S/R(09 jer +avise
-U?R9 I?R0 od "ostojanja klju;a entiteta 5S5,A. 5"eracija 4risanje
-D/2/(/0 entiteta IS&2A(/ ne +a)teva nikakvu akciju -:5:/0 nad
okolinom.
6eferencijalni integritet veze ;*;!8%=-6$,.,58$%H-?,5
U "rimeru ve+e 5S5,AI./R(IFIBA(IJ/>IB "ostoji identi<kuju6a ve+a
i+meCu J/>IBA i ./R(IFIBA(A. &rimarni klju; entiteta J/>IBA i 5S5,/
"ostaju slo8eni "rimarni klju; entiteta ./R(IFIBA(. &ravila
kardinalnosti 'ovore da +a svaku instancu ./R(IFIBA(A "ostoji jedna
instanca J/>IBA i 5S5,/. &riroda ove ve+e s"eci<cira da ./R(IFIBA(
e'+istencijalno I identi<kaciono +avisi od J/>IBA i 5S5,/.
Referencijalni inte'ritet se mo8e o"isati na slede6i na;in -slika
!.1120?
:ad entitetom 5S5,A o"eracije? D/2/(/ i U&DA(/ su
+a4ranjene akcijom R/S(RI.(9 3to je o+na;eno sa D?R i U?R i
+na;i da instanca entiteta 5S5,A ne mo8e 4iti i+4risana ili
i+menjena dok "ret)odno ne 4udu i+4risane ili i+menjene sve
instance entiteta ./R(IFIBA(.
:ad entitetom ./R(IFIBA( o"eracije? u4acivanje -I:S/R(0 i
i+mena -U&DA(/0 +a4ranjene su akcijom R/S(RI.( -R09 3to se
o+na;ava sa I?R i U?R i +na;i da se instanca entiteta ./R(IFIBA(
ne mo8e u4aciti ili a8urirati ako "ret)odno nisu de<nisane
instance entiteta 5S5,A i J/>IB.
:ad entitetom J/>IBA o"eracije? D/2/(/ I U&DA(/ su
alempije@beotel.yu 169
+a4ranjene akcijom R/S(RI.(9 3to je o+na;eno sa D?R i U?R i
+na;i da instanca entiteta J/>IB ne mo8e 4iti i+4risana ili
i+menjena dok "ret)odno ne 4udu i+4risane ili i+menjene sve
instance entiteta ./R(IFIBA(.
&od "ret"ostavkom da se 8eli o4risati jedna instanca J/>IBA -n"r.9
nema;ki je+ik0 tada tre4a o4risati sve instance ./R(IFIBA( koji je deo
nasleCeno' klju;a i+ o4risane instance J/>IBA9 +ato 3to je deo klju;a
"ostao :U22 vrednost9 a :U22 vrednost nije do+voljena kao vrednost
4ilo ko' dela "rimarno' klju;a.
6eferencijalni integritet veze ;*;!8%>)*5868=%?-N8
Ako se "osmatra referencijalni inte'ritet "ot"une strukture mo8e se
uo;iti da se i+menom -U&DA(/0 ili 4risanjem -D/2/(/0 klju;a entiteta
5S5,A I akcijom .AS.AD/ -D?.9 U?.0 I "renose ove o"eracije i na
"odti"ove -7USBARA. i >/:A0 i one se automatski i+vr3avaju. S
dru'e strane9 ne mo8e se i+vr3iti o"eracija u4acivanje -I:S/R(0 ili
i+mena -U&DA(/0 od'ovaraju6i) "odti"ova -I?R9 U?R0 ako ne "ostoji
5S5,A. 5va +a4rana je de<nisana akcijom R/S(RI.( -R0.
6eferencijalni integritet veze ;*;!8%5;N*)G$8N$%
6-&;N,
Ako se "osmatra referencijalni inte'ritet ne"ot"une strukture mo8e se
uo;iti da se i+menom -U&DA(/0 ili 4risanjem -D/2/(/0 klju;a entiteta
5S5,A I akcijom .AS.AD/ -D?.9 U?.0 I "renose ove o"eracije i na
"odti"ove -B5:SU2(A:( i R/D5D:I0 i one se automatski i+vr3avaju. S
dru'e strane9 ne mo8e se i+vr3ti o"eracija u4acivanje -I:S/R(0 ili
i+mena -U&DA(/0 od'ovaraju6i) "odti"ova -I?R9 U?R0 ako ne "ostoji
5S5,A. 5va +a4rana je de<nisana akcijom R/S(RI.( -R0.
Dakle9 referencijalni inte'ritet de<nisan +a dosada3nji navedeni
"rimer9 a "rika+an na slici !.1129 mo8e imati slede6e do'aCaje ili
o"eracije ?
u4acivanje UroditeljU -&arent Insert I ($F
4risanje UroditeljU -&arent Delete I (%F
i+mena UroditeljU -&arent U"date I (UF
u4acivanje UdeteU -.)ild Insert I 3$F
4risanje UdeteU -.)ild Delete I 3%F
i+menu UdeteU -.)ild U"date I 3UF.
:a;in "redstavljanja ta4ele strukturni) "ravila inte'riteta -S&0 +a
alempije@beotel.yu 170
"rimer sa slike !.112. dat je na slede6i na;in?
/ntitet
UroditeljU
/ntitet UdeteU ime ve+a U I U&DA(/ I I I:S/R( D I D/2/(/
5S5,A
IS&2A(A &rima
U I .ascade I I Restrict D I
.ascade
5S5,A Rukovodi
U I Set :ull I I Set :ull D I Set
:ull
7USBARA. is a
U I .ascade I I Restrict D I
.ascade
>/:A is a
U I .ascade I I Restrict D I
.ascade
R/D5D:5 is a
U I .ascade I I Restrict D I
.ascade
B5:SU2(A:( is a
U I .ascade I I Restrict D I
.ascade
./R(IFIBA( >na U I Restrict I I Restrict D I Restrict
5D/2J/:J/ 5S5,A >a"osljava
U I Set :ull I I Set :ull D I Set
:ull
RAD:5
7/S(5
5S5,A &ri"ada U I Restrict I I Restrict D I Restrict
J/>IB ./R(IFIBA( 'ovori UI Restrict I I Restrict D I Restrict
*lika 4.0/4. +rikaz pravila integriteta
:a osnovu "ret)odno i+vedeni) aktivnosti -slika !.$9.0 u slede6em
koraku tre4a identi<kovati "oslovne domene.
0ktivnost
2.4.3. $denti+kacija !oslovnog
domena
/ntiteti se9 kao 3to je ve6 re;eno9 o"isuju "reko svoji) svojstava9
odnosno atri4uta9 od koji) svaki -atri4ut0 u jednom trenutku vremena
ima neku vrednost. (a;nije9 atri4uti u+imaju vrednost i+ sku"a
alempije@beotel.yu 171
mo'u6i) vrednosti koji se +ove domen.
&o3to domen "redstavlja sku" vrednosti9 u njemu se svaka vrednost
javlja samo jednom. Svi elementi sku"a se meCuso4no ra+likuju.
Atri4ut nema svojstvo sku"a9 jer se odreCene vrednosti mo'u
"onavljati9 "a nije mo'u6a jedno+na;na identi<kacija "ojedini)
elemenata.
Domen se mo8e de<nisati "o ID/F1F metodolo'iji kao 4a+ni i ti"ski
domen.
,a+ni domen
Svaki domen se tretira kao "odti" 4a+no' domena. :aime9 "od
4a+nim domenima se "odra+umevaju tipovi podataka -"o ID/F1F
standardu to su .)aracter9 :umeric ili ,oolen09 koji "ostoje u
standardnim "ro'ramskim je+icima -ceo 4roj9 ni+ karaktera i sli;no0 i
samim tim nasle:uju karakteristike i o"eracije koje se mo'u de<nisati
nad ovim domenima.
(i"ski domen
(i"ski domen se de<ni3e "reko svo' imena9 4a+no' domena i9
eventualno9 "rosti) ili slo8eni) o'rani;enja dati) od'ovaraju6im
domenI"ravilima -domain rules0 kojima se de<ni3u mo'u6e vrednosti
u domenu.
De<ni3u se slede6a "rosta o'rani;enja9 tj. domenI"ravila?
relacioni operatori -o"eratora "oreCenja Y9Z9\9...0A
,N lista vrednosti9 kao sku" "ojedina;ni) vrednosti koje se
de<ni3u eks"licitnim navoCenjem svi) do+voljeni) vrednosti -I:
=UA9,9.UT0A
!-$L--N rang domena, koji se de<ni3e tako da se
vrednosti i+ domena u+imaju i+ u8e' sku"a vrednosti -,/(M//:
11 A:D 2110A
N;$ N)GG kada se 8eli iska+ati da neki atri4ut ne mo8e da
ima nula vrednost9 "a se uvodi s"eci<;an "redikat :5( :U229
"reko ko'a se de<ni3e od'ovaraju6i domenA o4rnuto9
"ret"ostavlja se da svaki domen uklju;uje u se4e i nula vrednost
-s"ecijalnu vrednost koja se dodeljuje nekom atri4utu o4jekta
kada se nje'ova vrednost ne "o+naje0.
alempije@beotel.yu 172
Dakle9 s"eci<raju se dozvoljene vrednosti domena koje se de<ni3u
validacionim i+ra+ima "omo6u klju;ni) re;i ,/(M//:9 I: i "reko
relacioni) o"eratora -o"eratora "oreCenja Y9Z9\9...0 i sli;no.
Slo8ena o'rani;enja se sastoje i+ "rosti)9 "ove+ani) lo'i;kim
o"eratorima A:D9 5R i :5(.
Imaju6i sve to u vidu +a "rimer dokumenta @Barton is"lata@9 u
slede6em koraku tre4a de<nisati "oslovni domen.
&oslovni domen na "rimeru dokumenta
@Bartona is"lata@
&oslovni domen +a dosada3nji "rimer @Barton is"lata@ je "rika+an u
o4liku ta4ele na slici !.11$.
7aziv
domena
4!is domena
1i!
!odatk
a
D%omen
F
7#ll
4!cija
%efa#l
t naziv
;alidacio
no
!ravilo
D4grani/e
njeF
;alidacio
ni naziv
default (eSt-1*0 YZIs:ull-0
54ave+an
unos
,roj
Domen de<ni3e
sve 4rojeve
Inte'er
:5(
:U22
54ave+an
unos
Datum
5"3ti datum
kome je vrednost
sistemski datum
DateH
(ime
Dana3n
ji
datum
Y\Date-0
Datum
+a"o3ljenj
a
:a+iv
5vaj domen je
de<nisan +a sve
atri4ute koji
o"isuju na+ive
(eSt-!10
:5(
:U22
YZIs:ull-0
54ave+an
unos
5+naka
5vaj domen
de<ni3e
identi<kacione
o+nake
(eSt-%0
:5(
:U22
YZIs:ull-0
54ave+an
unos
&rimanja
Domen o"isuje
"late i )onorare
.urrencJ
:5(
:U22
Stimulacij
a
Domen +a
de<nisanje
intervala i ti"a
stimulacije
.urrencJ
,/(M//:
11 A:D
1111
Interval
stimulacij
e
Ste"en
Ste"en +nanja
&I"i3eAGI'ovoriA
.I;ita
(eSt-!0
:5(
:U22
Ste"en I:=U&9G9.UT Ste"en
*lika 4.0/7. $abela poslovnih domena za primer dokumenta "5arton isplata"
alempije@beotel.yu 173
U ta4eli su "rika+ani?
na+iv domena +a koji se ve+uju od'ovaraju6i atri4utiA
domen9 de<nisan kao ti" "odatakaA
null o"cija9 kojom se de<ni3e o4ave+nost unosa "odatakaA
default vrednost9 kao s"eci<cirana vrednost koja se u4acuje
-insert0 u kolonu kada se unose "odaciA
default na+iv -komentar ve+an +a default vrednost0A
o'rani;enje ili validaciono "ravilo kojim se o'rani;avaju
set vrednosti dato' domenaA
validacioni na+iv9 koji se "ojavljuje kada je naru3eno +adato
o'rani;enje Dvalidacioni na+iv je o;i'ledna ili neka o"3ta
"oruka0.
>a "rimer dokumenta @Barton is"lata@ de<nisani su slede6i domeni
-slika !.11$0?
U okviru kolone :a+iv domena de<ni3e se default domen
-YdefaultZ0 koji je /REin "redi<nisani domen9 koji se automatski
setuje9 a svi ostali domeni nasleCuju oso4ine to' domena koji je
UroditeljU. De<ni3e se ti"om "odatka (eSt -1*0 i ima o4ave+an unos.
!roj je domen kojim se de<ni3u? svi 4rojevi9 Inte'er ti"
"odatka i :5( :U22.
&atum je domen kojim se de<ni3u atri4uti ti"a datuma i
koji9 "o difoltu9 u+ima dana3nji datum i ima o4ave+an unos.
Naziv je domen +a de<nisanje svi) atri4uta9 koji se o"isuju
ti"om "odataka (eSt9 du8ine !1 i 'de je o4ave+an unos.
;znaka je domen kojim se de<ni3u? ident 4rojevi svi)
3ifarnika i ti" "odataka (eSt du8ine % sa o4ave+nim unosom -:5(
:U220.
+rimanja su domen kojim se de<ni3u? atri4ut "lata i ti"
"odataka .urrencJ i o4ave+an je unos.
*timulacija je domen de<nisan intervalom i+meCu 11 i
1111 dinara.
*tepen je domen de<nisan o"eratorom I: 'de se de<ni3u
konkretne vrednosti.
5snovna ve+a i+meCu atri4uta i domena je u tome 3to se atri4ut9 koji
je identi;an sa svojim domenom9 mo8e koristiti kao klju; entiteta.
alempije@beotel.yu 174
:a ovaj na;in i+vr3ena je i kom"letirana aktivnost "2. ,nformaciono
modeliranje" 'de su sve aktivnosti o4avljane ne+avisno od i+a4rano'
sistema +a u"ravljanje 4a+ama "odataka -SU,&0. U slede6oj
aktivnosti "4. 8plikativno modeliranje" "oslovi su ve+ani +a i+4or
SU,& i "redstavljaju konkretnu reali+aciju ve+ano +a i+radu korisni;ke
a"likacije.
alempije@beotel.yu 175
0ktivnost
3. 0!likativno
modeliranje
0ktivnost 3.1. %e+nisanje
+zi/kog dizajna
0ktivnost 3.2. Generisanje
"eme )aze !odataka
0ktivnost 3.3. $zrada a!likacije
alempije@beotel.yu 176
alempije@beotel.yu 177
Aktivno36u "2.,nformaciono modeliranje" +avr3en je t+v. lo'i;ki
di+ajn9 "a sada "redstoji da se i+voCenjem aktivnosti "4. 8plikativno
modeliranje" i+vr3i <+i;ki di+ajn +a i+a4rani sistem +a u"ravljanje
4a+om "odataka I SU,& -Data ,ase 7ana'ment SJstem I D,7S0.
Sistem +a u"ravljanje 4a+ama "odataka -SU,&0 softverski je sistem +a
;uvanje i "retra8ivanje "odataka i "redstavlja sku" "ro'rama ;ija je
"rvenstvena namena da na +a)tev a"likativni) "ro'rama vr3i
mani"ulaciju "odacima. (o je i jedan od na;ina da se korisnicima
-ne"ro'ramerima0 omo'u6i direktno kori36enje ra;unara9 tj. "ristu" i
rukovanje "odacima.
Uo"3teno 'ovore6i9 4a+a "odataka -,&0 "redstavlja +4irku u+ajamno
"ove+ani) "odataka9 memorisani) sa kontrolisanom redundansom9 da
4i o"timalno slu8ili ra+li;itim a"likacijama. &odaci su memorisani
ne+avisno od "ro'rama koji i) koriste. >a dodavanje novi) "odataka i
modi<ciranje ili "retra8ivanje "ostoje6i) "odataka koriste se
+ajedni;ki i kontrolisani "ristu"i.
Redundansa u "odacima mora 4iti reducirana na najmanju mo'u6u
meru i stro'o nad'ledana9 da 4i na taj na;in 4ila osi'urana usklaC
enost "odataka u svakom momentu.
Aktivnost "4. 8plikativno modeliranje" tre4a da omo'u6i
"rojektantima 4a+e "odataka da <+i;ki kreiraju e<kasnu 4a+u
"odataka i da "omo'ne "rojektantskom timu u ra+voju a"likacije i
oda4iru na;ina "ristu"a "odacima.
alempije@beotel.yu 178
US/D A(? AU(N5R? Alem"ije Deljovic DA(/?
R/D? &R5J/.(? 7odel 2
21.1$.199*
11.1!.2111
:5(/S? 1 2 ! $ % # * 9 11
M5RBI:G
DRAF(
R/.577/:D/D
&U,2I.A(I5:
R/AD/R DA(/ .5:(/F(?
A1
!
A&2IBA(ID:5
75D/2IRA:J/
!.1
D/FI:ISA:J/
FI>IOB5G
DI>AJ:A
S/2/B(5DA:J/
SU,&
D/FI:ISA:J/
(A,/2A I
B525:A
D/FI:ISA:J/
I:D/BSA
D/FI:ISA:J/
:AOI:A
U&RAD2JA:JA
&5DA.I7A
!.2
G/:/RISA:J/
=/7/ ,A>/
&5DA(ABA
BR/IRA:J/
(A,/2A
BR/IRA:J/
I:D/BSA
G/:/RISA:J/
&5S25D:IN
5GRA:IO/:JA
D/RIFIBA.IJA
DI>AJ:A =/7/
!.!
I>RADA
A&2IBA.IJ/
D/FI:ISA:J/
7/:IJA
D/FI:ISA:J/
I>G2/DA
F5R7/
D/FI:ISA:J/
U&I(A
D/FI:ISA:J/
I>D/=(AJA
*lika 7.0. *tablo aktivnosti za aktivnost "4. 8plikativno modeliranje"
:a slici $.1 "rika+ano je sta4lo aktivnosti +a aktivnost "4. 8plikativno
modeliranje" ;ine 'a slede6e aktivnosti?
Aktivnost !.1. De<nisanje <+i;ko' di+ajna9
Aktivnost !.2. Generisanje s)eme 4a+e "odataka9
Aktivnost !.!. I+rada a"likacije.
&rve dve aktivnosti se de<ni3u u okviru /REin .AS/ alata9 dok se
tre6a aktivnost i+vodi u od'ovaraju6em alatu +a i+a4rani sistem +a
u"ravljanje 4a+om "odataka i nije "odr8ana ID/F1F standardom. >a
"rika+ i+rade a"likacije +a testI"rimer dokumenta @Barton is"lata@9
4i6e kori36en 7S A../SS SU,&9 jer je nje'ova u"otre4a i naj;e36a.
U daljem tekstu detaljno 6e 4iti o4ra+lo8ene aktivnosti "rika+ane na
slici $.1.
alempije@beotel.yu 179
0ktivnost
3.1. %e+nisanje +zi/kog dizajna
Aktivnost @!.1. De<nisanje <+i;ko' di+ajna@ "revodi lo'i;ki u <+i;ki
model9 tj. entitet u ta4ele9 atri4ute u kolone9 kao i od'ovaraju6a
o'rani;enja. /REin nudi mo'u6nost istovremeno' de<nisanja
lo'i;ko' i <+i;ko' nivoa i jednostavno "re4acivanje sa lo'i;ko' na
<+i;ki "o'led na model.
De<nisanje <+i;ko' di+ajna se i+vodi "osredstvom slede6i) aktivnosti
-slika $.10?
Aktivnost !.1.1. I+4or SU,&9
Aktivnost !.1.2. De<nisanje ta4ela i kolona9
Aktivnost !.1.!. De<nisanje indeksa9
Aktivnost !.1.$. De<nisanje na;ina u"ravljanja "odacima.
US/D A(? AU(N5R? Alem"ije Deljovic DA(/?
R/D? &R5J/.(? 7odel 2
1*.1$.199%
1!.1!.2111
:5(/S? 1 2 ! $ % # * 9 11
M5RBI:G
DRAF(
R/.577/:D/D
&U,2I.A(I5:
R/AD/R DA(/ .5:(/F(?
A!
:5D/? (I(2/? :U7,/R? D/FI:ISA:J/ FI>IOB5G DI>AJ:A
A!.1
!.1.1
I>,5R
SU,&
!.1.2
D/FI:ISA:J/
(A,/2A
I B525:A
!.1.!
D/FI:ISA:J/
I:D/BSA
!.1.$
D/FI:ISA:J/
:AOI:A
U&RAD2JA:JA
&5DA.I7A
I1
51
7odel
"odataka
Fi+i;ki
di+ajn
I+a4rani
SU,&
De<nisani
indeksi
De<nisani
na+ivi ta4ela i
kolona
*lika 7.2. &ekompozicioni dijagram za aktivnost "4.0. &e3nisanje 3zi~kog
dizajna"
alempije@beotel.yu 180
:a slici $.2. "rika+an je dekom"o+icioni dija'ram +a aktivnost "4.0.
&e3nisanje 3zi~kog dizajna"9 'de je de<nisan tok informacija9 "o;ev
od ula+no' dokumenta @7odel "odataka@9 "reko na4rojani) aktivnosti
de<nisano' <+i;ko' di+ajna.
U daljem tekstu detaljno 6e 4iti o4ra+lo8ene aktivnosti "rika+ane na
slici $.2.
0ktivnost
3.1.1. $z)or UA(
Aktivnost @!.1.1. I+4or SU,&@ tre4a da de<ni3e SU,&9 'de 6e <+i;ka
3ema 4iti kreirana i 'de 6e se s"eci<cirati default ti"ovi "odataka9
null o"cije i dru'e default o"cije koje se koriste +a 'enerisanje kolona.
/REin nudi komunikaciju "rema slede6im SU,& -slika $.!0? D,29
5RA.2/9 In'ress9 :etMare SX29 SX2 Server9 SX2,ase9 S],AS/9
I:F5R7IF9 Rd49 MA(.579 ASH$19 &ro'res9 .li""er9 d,ase III9 d,ase ID9
Access9 FoS&ro i &eradoS.
Svaki od ovi) SU,& "odr8ava odreCene ti"ove "odataka i odreCenu
sintaksu +a de<nisanje strukture modela -sintaksa +a o"is relacija9
kolona i domena na <+i;kom nivou0.
alempije@beotel.yu 181
*lika 7.4. ,zbor servera u -6'in%u
>a "otre4e i+rade testIa"likacije +a dokument @Barton is"lata@ 4i6e
kori36en 7S A../SS sistem +a u"ravljanje 4a+ama "odataka9 kao 3to
je "oka+ano na slici $.!.
5snovni "ro4lem je 3to je /REin semanti;ki 4o'at model9 dok je
SU,& daleko semanti;ki siroma3niji. &re4acivanje modela "odataka i+
/REinIa u neki od komercijalni) SU,& tre4a da re3i slo8en
konce"cijski "ro4lem9 a to je kako 4o'atstvo struktura modela /REinI
a "re4aciti u neki SU,& koji ima relativno skromne semanti;ke
strukture +a o"is modela. Re3avanje ove "ro4lematike je "redmet
dalji) i+la'anja.
&ola+i se od ;injenice da se "odaci de<ni3u tipom podataka koji
"redstavlja sku" vrednosti koje imaju i+vesne +ajedni;ke
karakteristike.
(i"ovi "odataka mo'u 4iti?
numeri;ki -celo4rojni9 realni i lo'i;ki09
+nakovni i
strukturirani.
alempije@beotel.yu 182
sku"a realni) 4rojeva9 a logi~ki % ti" "odataka koji kvali<kuje stanje
istine ili la8i.
?nakovne ti"ove "odataka ;ini kona;an sku" +nakova.
*trukturirani ti"ovi "odataka su sku"ovi vrednosti ;ija struktura ima
odreCeni smisao. :osioci strukturirani) "odataka su strukturirane
"romenljive. U okviru SX2 SU,& de<ni3u se9 slede6i strukturirani
ti"ovi9 imaju6i u vidu lo'i;ki model "odataka?
entiteti "ostaju ta4ele9
atri4uti se de<ni3u kao kolone9
instance ili "rimerci "ostaju redovi9
u "reseku reda i kolone de<ni3u se "olja.
$abela se sastoji od kolona i redova9 koji se mo'u sa'ledavati u 4ilo
kom redosledu9 4e+ uticaja na sadr8aj ta4ele. (a4elarno "rika+ivanje
je "rirodan na;in "rika+ivanja ve+a i+meCu "odataka.(a4ele moraju
4iti tako sastavljene da se nijedna ve+a ne i+'u4i.
5olone su de<nisane na+ivom i u jednoj koloni "ostoji samo jedna
vrsta "odataka. Ako se koristi /REin9 kolona se 'eneri3e i+ atri4uta
lo'i;ko' modela9 "a se ti" i du8ina kolone 'eneri3u na osnovu
oso4ina atri4uta ili i) odreCuje sam korisnik9 dodeljuju6i im
SI7,52IOBI na+iv.
6ed se mo8e de<nisati kao sku" meCuso4no "ove+ani) "olja9 koja
sadr8e osnovne "odatke o ne;emu.
+olje je osnovna i najmanja jedinica "odatka koja mo8e 4iti
numeri;ka9 alfa4etska ili alfanumeri;ka.
Redovi se ra+likuju meCu so4om9 "a du"likati redova nisu do+voljeni.
Bad se "osmatra9 na "rimer9 ta4ela 5D/2J/:J/ sa kolonama
de<nisanim vertikalno i redovima de<nisanim )ori+antalno?
5D/2J/:J/
$'60
4
70@$;4 M&14
11 &RI&R/7A &A:./D5
21 RA>D5J :5DI SAD
!1 &R5DAJA ,/5GRAD
$1 &R5I>D5D:J &A>5DA
alempije@beotel.yu 183
A
+a ta4elu 5D/2J/:J/ de<nisani su?
tri kolone -SIFRA59 :A>ID5 i 7/S(50 i
;etiri reda -"odaci +a odeljenje 119 219 !1 i $10
&osmatranjem ta4ele mo8e se videti da je svaki red sastavljen od
"olja i da svako "olje sadr8i vrednost "olja na "reseku reda i kolone.
:"r. u "rvom redu ta4ele 5D/2J/:J/9 vrednost "olja?
SIFRA5 -4roj odeljenja0 I 11 9
:A>ID5 -na+iv odeljenja0 I &RI&R/7A9
7/S(5 -lokacija odeljenja0 I &A:./D5.
Di3e i+meCu se4e "ove+ani) ta4ela ;ini relacionu 4a+u "odataka.
Dakle9 relaciona baza podataka je takav ti" strukture koji se koristi +a
i+ra8avanje odnosa i+meCu "odataka u o4liku jednostavni)
dvodimen+ionalni) ta4ela. :ajve6e teoretske osnove dao je dr /.F.
.odd koji je o4javio "rve re+ultate svo'a istra8ivanja ve6 19%9.
'odine.
Deliki 4roj SU,& sa atri4utom @relacioni@9 koji se "ojavio na tr8i3tu
sedamdeseti) 'odina9 od trenutka kada je /.F..odd dao "rvu teorijsku
de<niciju ovo'a modela9 "rimorao je nje'ovo' tvorca da 19*1. 'odine
de<ni3e9 a kasnije i do"unjava9 kriterijume koje neki sistem tre4a da
+adovolji da 4i se mo'ao +vati relacionim.
Briterijumi +a ocenu relacioni) SU,&Ia
De<nisano je 12 "ravila koji omo'u6uju da se oceni do ko' je nivoa
neki SU,& relacioni.
1. Struktura SU,& se "redstavlja samo ta4elama.
2. Svaki "odatak u 4a+i "odataka dostu"an je "reko kom4inacije
imena ta4ele9 vrednosti "rimarno' klju;a i imena kolone9 4e+
una"red +adati) "ristu"ni) "uteva i 4e+ rekur+ije ili iteracije.
!. S"eci<;an indikator9 ra+li;it od @4lanka@ -@"ra+no'@0 ni+a
alempije@beotel.yu 184
karaktera9 nule ili 4ilo ko' 4roja9 koristi se +a "redstavljanje nula
vrednosti9 4e+ o4+ira na ti" "odatka.
$. SU,& tre4a da "oseduje katalo' -re;nik0 "odataka9 koji se lo'i;ki
"redstavlja na isti na;in kao i sama 4a+a "odataka.
. SU,& mora "osedovati 4ar jedan je+ik ;ije se nared4e mo'u
i+ra+iti kao ni+ karaktera sa do4ro de<nisanom sintaksom i koji
"odr8ava? -10 de<niciju "odatka9 -20 de<niciju "o'leda9 -!0
mani"ulaciju "odatka9 interaktivno i kro+ "ro'rame9 -$0 de<niciju
"ravila inte'riteta9 -0 autori+aciju -si'urnost09 -%0 'ranice
transakcija -,/GI:9 .577I(9 R522,A.B0.
%. SU,& tre4a da "oseduje e<kasan al'oritam "omo6u ko'a mo8e da
odredi +a svaki de<nisani "o'led9 u trenutku nje'ovo' de<nisanja9
da li se i koje o"eracije odr8avanja mo'u da "rimene na taj
"o'led. Re+ultat takvo' al'oritma se sme3ta u katalo' 4a+e
"odataka.
#. I nad ta4elama i nad "o'ledima mo'u se i+vr3avati ne samo
o"eracije "retra8ivanja ve6 i o"eracije odr8avanja 4a+e "odataka.
*. A"likacioni "ro'ram i interaktivna komunikacija tre4a da ostanu
nei+menjeni kada se "romeni <+i;ka or'ani+acija 4a+e "odataka.
9. A"likacioni "ro'ram i interaktivna komunikacija ostaju
ne"romenjeni kada se 4ilo koje "romene9 koje ne menjaju
od'ovaraju6i sadr8aj ta4ele9 unesu u 4a+nu ta4elu.
11. &ravila inte'riteta tre4a da se de<ni3u u okviru de<nicije 4a+e
"odataka i ;uvaju se u re;niku "odataka -:e im"lementiraju se
kro+ a"likacione "ro'rame0.
11. Sve navedene karakteristike tre4a da 4udu ne+avisne od
distri4ucije 4a+e "odataka.
12. Ako SU,& mo8e da radi sa nekim je+ikom tre6e 'eneracije9 u kome
se o4raCuje jedan red ta4ele u jednom trenutku vremena9 kro+ taj
je+ik se ne mo'u +ao4i6i "ravila inte'riteta +adana "reko samo'
relaciono' SU,&.
Funkcije SU,&
S o4+irom na "ret)odno de<nisana 12 "ravila9 sistemi +a u"ravljanje
4a+ama "odataka imaju dve osnovne funkcije. &rva funkcija se koristi
+a memorisanje i odr8avanje "odataka9 koji i+ra8avaju svojstva ta4ela
-o4jekata "osmatranja0. >a i+voCenje ove funkcije koriste se je+ik +a
alempije@beotel.yu 185
de<nisanje "odataka i struktura "odataka -Data De<nition 2an'ua'e
ili DD20. 5 tom je+iku 4i6e vi3e re;i u "o'lavlju $.2.
Dru'a funkcija se koristi +a kontrolisan "ristu" do memorisani)
"odataka i "rika+ivanje "odataka -vrednosti svojstava ta4ela0 na
+a)tev korisnika. >a i+voCenje ove funkcije koristi se je+ik +a
mani"ulaciju "odacima -Data 7ani"ulation 2an'ua'e ili D720. 5 tom
je+iku 4i6e vi3e re;i u "o'lavlju $.!.
(re4a ista6i da SU,& mora vr3iti nad+or nad simultanim kori36enjem
4a+e "odataka. U na;elu9 svakom je korisniku data mo'u6nost da
vr3i mani"ulaciju sa memorisanim "odacima. (ako9 mo8e se do'oditi
da vi3e korisnika istovremeno "oku3a modi<kovanje isti) "odataka.
Sto'a SU,& mora sin)roni+ovati simultane +a)teve vi3e korisnika9 da
ne 4i do3lo do 'u4ljenja "odataka.
Bada se to ima u vidu9 rad sa SU,& tre4a da omo'u6i?
menjanje "ostoje6i) "odataka u okviru 4a+e "odataka9
4risanje "ostoje6i) redova9
dodavanje novo' reda9
tra8enje -i+dvajanje0 konkretno' reda i
"retra8ivanje 4a+e "odataka.
7ora se na'lasiti da se sve "romene u ve+i sa "oljem -uno3enje novi)
"odataka9 menjanje "ostoje6i) i 4risanje0 moraju s"rovoditi u okviru
reda.
&ostu"ak menjanja "olja je slede6i?
red u kome se vr3i i+mena "odataka "ronala+i se u memoriji
"omo6u adrese ili klju;aA
red se i+ eksterne memorije "renosi u o"erativnu memorijuA
vr3i se i+mena sadr8aja dati) "oljaA
red se "onovo +a"isuje u eksternu memoriju.
&ostu"ak brisanja ve6 "ostoje6i) redova +a)teva "a8nju I da se 4ri3u
"ravi redovi9 tj. da se "o3tuju "ravila ve+ana +a inte'ritet 4a+e
"odataka9 kao i referencijalni inte'ritet.
&ostu"ak dodavanja novi) redova +a)teva o4e+4eCenje "otre4no'
memorijsko' "rostora i "o3tovanje inte'riteta 4a+e "odataka9 kao i
referencijalno' inte'riteta.
$ra`enje "odra+umeva tra8enje konkretno' reda koje se o4avlja "reko
"rimarno' klju;a. (ra8enje je us"elo ako je vrednost "rimarno'
alempije@beotel.yu 186
klju;a reda identi;na vrednosti klju;a dato' u ar'umentu.
+retra`ivanje se vr3i "utem ar'umenta koji je dat kao 25GIOBI i+ra+.
Sastavlja se lista +a)tevani) svojstava i kriterijuma "o kojima se vr3i
"retra8ivanje ta4ela i i+dvajaju svi oni redovi koji u "ot"unosti
udovoljavaju +a)tevima -videti 'lavu $.!0.
Ra+like i+meCu SU,& i datoteka
Bori36enjem klasi;ni) "ro'ramski) je+ika tre6e 'eneracije svaki
"ro'ramer de<ni3e "ro'rame i datoteke "rema svojim "otre4ama i
s)vatanjima. Bao 3to se mo8e videti na slici $.$9 "arceli+ovani na;in
rada dovodi do redundanse -"onavljanja0 sli;ni) datoteka u
ra+li;itim a"likacijama.
%atoteka
(8017$ ($05
%atoteka
57:$G4;4%1;4
%atoteka
$7;&7106
(rogrami
$7;&7106
$zve"taji
$7;&7106
(rogrami
57:$G4;4%1;4
$zve"taji
57:$G4;4%1;4
(rogrami
(8017$ ($05
$zve"taji
(8017$ ($05
*lika 7.7. +rimer kori{}enja datoteka
Datoteke nastaju kao "rodukt i+olovano ra+vijeni) "ro'rama
-a"likacija09 kori36enjem "ro'ramski) je+ika. Bao 3to se mo8e videti
na slici $.$9 datoteke su i+ra+ito usklaCene s "ro'ramima i "rema
njima imaju vlasni;ki odnos. 7eCutim9 nisu "rila'oCene +a u"otre4u
kod novi) "ro'rama9 jer oni nisu 4ili u+eti u o4+ir "ri de<nisanju
datoteke9 a mo'li 4i us"e3no da koriste neke "odatke. 5vaj "ro4lem
se "olovi;no re3ava "romenom di+ajna datoteke ili de<nisanjem
dodatne datoteke +a "otre4e novo' "ro'rama. 7eCutim9 ne'ativna
reakcija je "ojava vi3estruko' memorisanja "odataka9 ili t+v.
redundanse "odataka.
>a ra+liku od rada sa datotekama9 kori36enje SU,& omo'u6uje da
neprogrameri mo'u "ristu"iti "odacima i njima mani"ulisati?
direktnim radom sa ra;unarom svako' korisnika9
jednostavnim de<nisanjem o4rade -o4radu de<ni3u oso4e
koje se 4ave <+ikom "ro4lema9 a ne o4radom "odataka0.
alempije@beotel.yu 187
Dakle9 SU,& tre4a da omo'u6i svim ovla36enim korisnicima
kori36enje +ajedni;ki) "odataka -slika $.09 skladi3tenje "odataka sa
minimalnom redundansom9 lo'i;ku i <+i;ku ne+avisnost "ro'rama
od "odataka9 jedinstveno komuniciranje sa 4a+om "odataka "reko
je+ika 4liski) korisniku. :e+avisnost "ro'rama i "odataka se "osti8e
kada se mo8e do"unjavati i modi<kovati struktura 4a+e "odataka 4e+
"osledica "o "ostoje6e korisnikove "ro'rame. Je+ik 4li+ak korisniku je
t+v. SX2 u"itni je+ik.
(odaci
(8017$ ($05
(odaci
57:$G4;4%1;4
(odaci
$7;&7106
(rogrami
$7;&7106
U A (
(rogrami
57:$G4;4%1;4
(rogrami
(8017$ ($05
Aaza !odataka
*lika 7.A. +rimer kori{}enja *)!+
SX2 u"itni je+ik
:e"roceduralni je+ik SX2 -Structured XuerJ 2an'ua'e0 di+ajniran je
tako da 'a sa us"e)om mo'u koristiti i ljudi 4e+ te)ni;ki) +nanja s
"odru;ja o4rade "odataka9 tako+vani krajnji korisnici. SX2 je+ik je
ne"roceduralan9 jer s"eci<cira o"eracije u smislu =(A tre4a uraditi9 a
ne BAB5.
*MG upitni jezik omo'u6uje da korisnici mo'u ad )oc formulisati i
"ostavljati "itanja i veoma 4r+o do4ijati od'ovor9 a da "ri tom ne
+avise od saradnje sa "ro'ramerom. &ro'rameri su na taj na;in
rastere6eni i "osve6uju se i+radi kvalitetni) "ro'rama +a a"likacije9
koje +a)tevaju mno'o te)ni;ko' +nanja -n"r.9 veoma frekventne
transakcije9 kod koji) je va8no da se "osti'ne 3to kra6e vreme
od+iva0.
SX2 omo'u6uje "ove+ivanje sa klasi;nim vi3im "ro'ramskim
je+icima9 kao 3to su? .5,529 &2HI9 &AS.A29 F5R(RA:9 . i dr.
SX2 je+ik je usvojio Bomitet Ameri;ko' nacionalno' Instituta +a
standarde -A:SI0 kao standardni je+ik relacioni) 4a+a "odataka.
U relacionim 4a+ama "odataka se de<ni3e struktura "odataka u
alempije@beotel.yu 188
o4liku ta4ela. SX2 relacioni je+ik "ravi nove ta4ele9 de<ni3u6i
"odsku"ove iHili kom4inuju6i "ostoje6e ta4ele. Dakle9 SX2 omo'u6uje
da se jednom relacionom nared4om mo'u ;itati9 a8urirati9 ili 4risati
redovi memorisani u relacionoj 4a+i "odataka.
SX2 sadr8i?
konstrukcije analo'ne relacionoj al'e4ri -videti "rilo' 4r.109
konstrukcije analo'ne relacionom ra;unu -videti "rilo' 4r.
109
je+ik +a o"is 4a+a "odataka -videti 'lavu $.209
ve+ivanje SX2 sa nekim standardnim je+ikom -.URS5R
o"eracija09
kontrolne konstrukcije +a u"ravljanje konkurentnom
o4radom9
o"oravak 4a+e "odataka -videti 'lavu $.109
de<nisanje +a3tite 4a+e "odataka -videti 'lavu $.109
de<nisanje inte'riteta 4a+e "odataka -videti 'lavu $.10.
SX2 je je+ik +a?
interaktivno de<nisanje 4a+e "odataka -Data De<nition 2an'ua'e
ili DD20 I je+ik kojim tre4a da se omo'u6e kreiranje9 dodavanje9
4risanje ta4ela9 "o'leda9 sinonima i indeksa9 "a sto'a "oseduje
slede6e komande -"o'ledati aktivnost "4.2. 9enerisanje {eme
baze podataka" 0?
.R/A(/ (A,2/
kreiranje ta4ele9
.R/A(/ DI/M
kreiranje "o'leda9
.R/A(/ S]:5:I7
kreiranje sinonima9 ^
.R/A(/ I:D/F
kreiranje indeksa9
A2(/R (A,2/
dodavanje kolona ili rede<nisanje u
ta4eli9
DR5& (A,2/
4risanje ta4ele9
DR5& DI/M
4risanje "o'leda9^
DR5& S]:5:]7
4risanje sinonima9^
DR5& I:D/F
4risanje indeksaA
"retra8ivanje "odataka 'de tre4a da se omo'u6i i+4or redova i+
ta4ele -SX2 +a "retra8ivanje "odataka koristi nared4u S/2/.( I
"o'ledaj aktivnost "4.4.4. &e3nisanje upita" 0A
mani"ulaciju "odacima -Data 7ani"ulation 2an'ua'e ili D720 koja
alempije@beotel.yu 189
tre4a da omo'u6i u4acivanje redova9 i+mene i 4risanje
memorisani) "odataka u ta4eli -SX2 +a mani"ulaciju "odacima
"oseduje odreCene komande I "o'ledaj aktivnost "4.4.4.&e3nisanje
upita" 0?
I:S/R(
u4acivanje redova u ta4elu9
U&DA(/
i+mena memorisani) "odataka9
D/2/(/
4risanje memorisani) "odatakaA
u"ravljanje "odacima -Data .ontrol 2an'ua'e I D.20 kojim tre4a
da se omo'u6e dodavanje i o"o+iv "rivile'ija9 "renos transakcija i+
4u_erIa u ta4ele9 +aklju;avanje ta4ela i de<nisanje "o'leda -SX2
+a u"ravljanje "odacima "oseduje odreCene komande I "o'ledati
aktivnost "4.0.7 &e3nisanje na~ina upravljanja podacima" 0?
GRA:( .5::/.(
dodeljivanje "rivile'ije9
R/D5B/
o"o+iv "rivile'ije9
.577I(
"renos transakcija i+ 4afera u
ta4elu9
R522,A.B
"oni3tavanje i+mena u ta4elama
"re commita9
25.B (A,2/
+aklju;avanje ta4ele9^
AUDI(
de<nisanje 5RA.2/ "re'leda.^
:a"omena? >ve+dica -^0 +na;i da su nared4e de<nisane u okviru
5RA.2/ ver+ije SX2Ia.
:a osnovu i+a4rano' SU,& "ristu"a se u slede6em koraku I
de<nisanju ta4ela i kolona.
0ktivnost
3.1.2. %e+nisanje ta)ela i
kolona
Im"lementacija entiteta i nji)ovi) atri4uta u ta4ele i kolone neko'
SU,&9 kori36enjem /REinIa9 relativno je jednostavan "osao.
&ro'ramski modul /REinIa +a i+'radnju <+i;ko' modela ;ita o"is
entiteta i atri4uta i formira ta4ele i "olja <+i;ko' modela -slika $.%0.
&roces im"lementacije ve+a i nji)ovi) de<nicija je mno'o slo8eniji
"osao. Radi ilustracije9 sledi ra+matranje "revoCenja /REin modela u
alempije@beotel.yu 190
7S Access deksto" SU,&.
Dakle9 /REin de<ni3e ta4ele i kolone automatski9 tj. na+ivi ta4ela "o
defaultu do4ijaju imena na osnovu na+iva entiteta9 a na+ivi atri4uta
"o defaultu "ostaju na+ivi kolona. I dru'e oso4ine se dodeljuju kao
default setovane vrednosti -vrednosti koja 6e 4iti insertovana u
kolonu0. U (ar'et Server editoru -/rEin0 "ostavljaju se default
vrednosti +a -slika $.!0?
Default Access DatatJ"e kojim se de<ni3u default ti" i
veli;ina kolone9 n"r.9 teSt -1*0A
Reset &)Jsical :ame kojim se i+vodi resetovanje <+i;ki)
imenaA
Referential Inte'ritJ Default kojim se de<ni3u default
vrednosti referencijalno' inte'riteta.
:a osnovu de<nisani) default oso4ina "rela+i se na reali+aciju
<+i;ko' modela. :a slici $.%. "rika+ani su lo'i;ki i <+i;ki model
"odataka +a "rimer dokumenta @Barton is"lata@9 'de se automatski
"reu+imaju isti na+ivi ta4ela kao na+ivi entiteta i u okviru nji) na+ivi
kolona9 a oso4ine kolona se "reu+imaju na osnovu na+iva atri4uta.
2o'i;ki
model
+a "rimer
dokumenta
@Barton
is"lata@
I=R
U=R
D=R
U=R
+
I0!
U0!
I0!
U0!
&0"
U0"
I0!
U0!
I0!
U0!
&0"
U0"
I0S%
U0S%
&0S%
U0S%
I0!
U0!
&0!
U0!
I0!
U0!
&0!
U0!
I0!
U0!
&0"
U0"
I0S%
U0S%
&0S%
U0S%
Vrsta
-USKARA5
Si*'a osobe 02K1
Slu$io "ojsu
7ENA
Si*'a osobe 02K1
+'e$ime #e"oja!o
KONSULTANT
Si*'a osobe 02K1
.'oj sati
REDOVNI
Si*'a osobe 02K1
V'sta posla
ISPLATA
Si*'a osobe 02K1
'b'
Datum isplate
I$&os
O&$L'$%'$
Si*'a o#elje&ja
Na$i" o#elje&ja
-esto
"$!TI(IAT
Si*'a osobe 02K1
Si*'a je$ia 02K1
Stepe& $&a&ja
'$#I
Si*'a je$ia
Na$i" je$ia
OSOBA
Si*'a osobe
+'e$ime 0IE11
Ime 0IE11
Si*'a'm 02K1
,-./ 0AK21
'uo" 02K1
Datum $aposle&ja
+lata
Stimula!ija
Si*'a o#elje&ja 02K1
+ol
V'sta
Pol
RADNO -ESTO
Si*'a'm
Na$i"'m
alempije@beotel.yu 191
Fi+i;ki
model
"odataka
+a
"rimer
dokumenta
@Barton
is"lata@
!A&%I
p'ipa#a
+
rukovodi
vazi
je dat
prima
zaposljava
Vrsta
-USKARA5
Si*'a' 02K1
Slu$io"
7ENA
Si*'a' 02K1
+'e$ime#
KONSULTANT
Si*'a' 02K1
.'ojs
REDOVNI
Si*'a' 02K1
V'stap
ISPLATA
Si*'a' 02K1
'b'
Datumis
I$&os
O&$L'$%'$
Si*'ao
Na$i"o
-esto
"$!TI(IAT
Si*'a' 02K1
Si*'aj 02K1
Stepe&
'$#I
Si*'aj
Na$i"j
Si*'a'
+'e$ime 0IE11
Ime 0IE11
Si*'a'm 02K1
,-./ 0AK21
'uo" 02K1
Datum$
+lata
Stimul
Si*'ao 02K1
+ol
"'sta
Pol
RADNO-
Si*'a'm
Na$i"'m p'ipa#a
I=R
U=R
D=R
U=R
+
I0!
U0!
I0!
U0!
&0"
U0"
I0!
U0!
I0!
U0!
&0"
U0"
rukovodi
I0S%
U0S%
&0S%
U0S%
vazi
I0!
U0!
&0!
U0!
je dat
I0!
U0!
&0!
U0!
prima
I0!
U0!
&0"
U0"
zaposljava
I0S%
U0S%
&0S%
U0S%
Vrsta
-USKARA5
Si*'a' 02K1
Slu$io"
7ENA
Si*'a' 02K1
+'e$ime#
Si*'a' 02K1
.'ojs
REDOVNI
Si*'a' 02K1
V'stap
ISPLATA
Si*'a' 02K1
'b'
Datumis
I$&os
Si*'ao
Na$i"o
-esto
Si*'a' 02K1
Si*'aj 02K1
Stepe&
'$#I
Si*'aj
Na$i"j
Si*'a'
+'e$ime 0IE11
Ime 0IE11
Si*'a'm 02K1
,-./ 0AK21
'uo" 02K1
Datum$
+lata
Stimul
Si*'ao 02K1
+ol
"'sta
Pol
Si*'a'm
Na$i"'m
*lika 7.C. )poredni prikaz logi~kog i 3zi~kog modela podataka
7o8e se videti na slici $.%. da su +a "otre4e ove knji'e "romenjena
"ojedina imena +a ta4ele i kolone da 4i se uka+alo na ra+liku i+meCu
lo'i;ko' i <+i;ko' modela. :aime9 u okviru <+i;ko' modela
de<nisane su skra6enice +a kolone umesto "uni) imena atri4uta u
lo'i;kom modelu -"o'ledati entitet 5S5,A i ta4elu RAD:IB0.
Ako se 8ele "romeniti default vrednosti +a kolone 4i6e kori36eni
/REin editori?
.olumn "ro"ertJ /ditor9 kojim se de<ni3u oso4ine kolonaA
Domain /ditor9 kojim se de<ni3u oso4ine domenaA
Dalidation Rule editor9 kojim se de<ni3u validaciona "ravilaA
Dalid Dalue /ditor9 kojim se de<ni3u validacione vrednostiA
Access Default /ditor9 kojim se de<ni3u default vrednosti.
:a "rimeru sa slike $.%. +a ta4elu RAD:IB9 kori36enjem editora +a
kolone9 4i6e i+vr3ene i+mene +a default vrednosti -slika $.#0.
De<nisanje oso4ina kolona
5so4ine kolona se de<ni3u kori36enjem editora +a de<nisanje kolona
-.olumn "ro"ertJ /ditor0 'de se mo'u "raviti i+mene nad default
vrednostima kolona -slika $.#0.
U okviru ovo' editora "rika+uju se ime selektovano' entiteta i ime
od'ovaraju6e ta4ele9 a u slede6em nivou s"isak kolona sa
de<nisanim oso4inama. U donjem delu +a i+a4ranu kolonu de<ni3u se
oso4ine kolone9 i to?
ti" "odatka9
alempije@beotel.yu 192
domen9
validacija9
default vrednost.
*lika 7.@. -ditor za opisivanje kolona tabele 68&N,5
Bad je re; o dokumentu @Barton is"lata@9 de<nisane su oso4ine
kolona +a ta4elu RAD:IB i "rika+ane na slici $.#.
U okviru ti"a "odataka -DatatJ"e0 "rika+ani su? domen - n"r.9 ID4roj0 i
"osle dve ta;keI ti" i veli;ina domena =(eSt -%0T9 "a se kom"letira
slede6i i+'led? ID4roj?(eSt -%0.
5no 3to je sada interesantno sa slike $.#. jeste oso4ina kolone Access
DatatJ"e 'de se de<ni3e ti" "odatka. U ta4eli $.1. "rika+ani su 7S
A../SS ti"ovi "odataka koji su dostu"ni u okviru /REinIa +a dodelu
"ojedinim kolonama.
(a4ela $.1. 7S A../SS ti"ovi "odataka
(i"
"odatka
5"is ti"a "odatka
,Jte &odti" od numeri;ko' ti"a "odatka :um4er.
.ounter ,roj koji se automatski dodeljuje i ne menja se.
.urrencJ :ov;ani i+nos koji "redstavlja 4roj sa ;etiri decimale.
DataH(ime Datum i vreme.
alempije@beotel.yu 193
Dou4le &odti" od numeri;ko' ti"a "odatka :um4er sa "okretnim +are+om du"le
"reci+nosti.
Inte'er &odti" od numeri;ko' ti"a "odatka :um4er. &redstavlja celo4rojnu vrednost
i +au+ima 2 4ajta.
2on'
Inte'er
&odti" od numeri;ko' ti"a "odatka. &redstavlja celo4rojnu vrednost i
+au+ima ;etiri 4ajta.
7emo 54imni tekst od !2111 karaktera.
52/
54jecat
54jekat ti"a slika9 +vuk9 animacija.
Sin'le &odti" od numeri;ko' ti"a "odatka :um4er sa "okretnim +are+om o4i;ne
"reci+nosti.
(eSt ,ilo koji tekst du8ine do 2 +nakova.
]esH:o 2o'i;ki ti" "odatka -(rueHFalse0.
:a osnovu de<nisani) oso4ina kolona -slika $.#0 na slici $.*. "rika+an
je <+i;ki model +a "rimer dokumenta @Barton is"lata@ sa de<nisanim
ti"ovima i veli;inama "odataka +a od'ovaraju6e kolone.
I=R
U=R
D=R
U=R
+
I0!
U0!
I0!
U0!
&0"
U0"
I0!
U0!
I0!
U0!
&0"
U0"
I0S%
U0S%
&0S%
U0S%
I0!
U0!
&0!
U0!
I0!
U0!
&0!
U0!
I0!
U0!
&0"
U0"
I0S%
U0S%
&0S%
U0S%
Vrsta
-USKARA5
Si*'a'= Te:t0>1
Slu$io"= Te:t021
7ENA
Si*'a'= Te:t0>1
+'e$ime#= Te:t02?1
KONSULTANT
Si*'a'= Te:t0>1
.'ojs= I&te;e'
REDOVNI
Si*'a'= Te:t0>1
V'stap= Te:t01@1
ISPLATA
Si*'a'= Te:t0>1
'b'= Te:t021
Datumis= Date4Time
I$&os= Double
O&$L'$%'$
Si*'ao= Te:t021
Na$i"o= Te:t02?1
-esto= Te:t02?1
"$!TI(IAT
Si*'a'= Te:t0>1
Si*'aj= Te:t021
Stepe&= Te:t01?1
'$#I
Si*'aj= Te:t021
Na$i"j= Te:t02?1
!A&%I
Si*'a'= Te:t0>1
+'e$ime= Te:t02?1 0IE11
Ime= Te:t02?1 0IE11
Si*'a'm= Te:t021
,-./= Te:t01A1 0AK21
'uo"= Te:t0>1
Datum$= Date4Time
+lata= Double
Stimul= Double
Si*'ao= Te:t021
+ol= Te:t011
"'sta= Te:t011
Pol
RADNO-
Si*'a'm= Te:t021
Na$i"'m= Te:t02?1
*lika 7.D. .izi~ki model podataka sa de3nisanim tipovima i veli~inom
podataka
Gra<;ka "re+entacija data na slici $.*. u ta4lici $.2. "rika+ana je +a
"rimer dokumenta @Barton is"lata@ kao u"oredna ta4ela.
(a4ela 4r.$.2. U"oredna ta4ela.
&71$1&1$ 10A&8& 016$AU1$ 54847&
IS&2A(A IS&2A(A Sifra oso4e-&B0-FB0 Sifrar (eSt-%0:5( :U22
r4r-&B0 r4r (eSt-20:5( :U22
Datum is"late Datumis DateH(ime
alempije@beotel.yu 194
I+nos I+nos Dou4le :5( :U22
J/>IB J/>IB
Sifra je+ika-&B0 Sifraj (eSt-20 :5( :U22
:a+iv je+ika
:a+ivj (eSt-210 :5(
:U22
B5:SU2(A:( B5:SU2(A:(
Sifra oso4e-&B0-FB0 Sifrar (eSt-%0 :5( :U22
,roj sati ,rojs Inte'er :5( :U22
7USBARA. 7USBARA.
Sifra oso4e-&B0-FB0 Sifrar (eSt-%0 :5( :U22
Slu+io vojsku
Slu+iov (eSt-20 :5(
:U22
5D/2J/:J/ 5D/2J/:J/
Sifra deljenja-&B0 Sifrao (eSt-20 :5( :U22
:a+iv odeljenja
:a+ivo (eSt-210 :5(
:U22
7esto
7esto (eSt-210 :5(
:U22
5S5,A RAD:IB
Sifra oso4e -&B0 Sifrar (eSt-%0 :5( :U22
&re+ime -I/10
&re+ime (eSt-210:5(
:U22
Ime-I/10 Ime (eSt-210 :5( :U22
Sifrarm-FB0
Sifrarm (eSt-20 :5(
:U22
J7,G-AB20 J7,G (eSt-1!0 :5( :U22
rukov-FB0 rukov (eSt -%0 :5( :U22
Datum +a"oslenja
Datum+DateH(ime:5(:
U22
&lata &lata Dou4le :5( :U22
Stimulacija Stimul Dou4le :5( :U22
Sifra odeljenja-FB0 Sifrao (eSt-20
&ol &ol (eSt-10 :5( :U22
Drsta vrsta (eSt-10
RAD:5
7/S(5
RAD:57
Sifrarm-&B0
Sifrarm (eSt-20 :5(
:U22
:a+ivrm
:a+ivrm (eSt-210 :5(
:U22
R/D5D:I R/D5D:I
Sifra oso4e-&B0-FB0 Sifrar (eSt -%0 :5( :U22
Drsta "osla Drsta" (eSt -1*0
./R(IFIBA( ./R(IFIBA(
Sifra oso4e-&B0-FB0 Sifrar (eSt-%0 :5( :U22
Sifra Je+ika-&B0-FB0 Sifraj (eSt-20 :5( :U22
Ste"en +nanja
Ste"en (eSt-110 :5(
:U22
>/:A >/:A
Sifra oso4e-&B0 -FB0 Sifrar (eSt -%0 :5( :U22
&re+ime devojacko
&re+imed (eSt-210 :5(
:U22
Slede6i korak je da se de<ni3u oso4ine domena. &ritiskom na ti"ku
Domain... -slika $.#0 "rela+i se u novu formu 'de se de<ni3u oso4ine
domena -slika $.90.
alempije@beotel.yu 195
De<nisanje oso4ina domena
U okviru aktivnosti @2.$.!. Identi<kacija "oslovno' domena@
identi<kovani su domeni +a "rimer dokumenta @Barton is"lata@9 a
sada tre4a "oka+ati t+v. domen editor "omo6u ko'a se de<ni3u
oso4ine domena -slika $.90. /ditor omo'u6uje da se de<ni3e domen9 i
to? ti" domena9 :U22 o"cija9 validaciona "ravila9 default vrednost kao
nasleCivanje )ijerar)ije domena -de<nisanje roditeljsko' domena0. U
ovom editoru de<ni3u se o'rani;enja nad standardnim domenom i
"ri tom odreCuju? ti" "odatka -ta4lica $.20 i du8ina "odatka =n"r.9 (eSt
-!10T.
*lika 7.B. &omen editor
Dodeljivanjem 7U88 o"cije de<ni3e se :ull vrednost "olja9 tj. ako je
:5( :U22 "olje mora uvek da ima i neku vrednostA ako je :U22 I ne
mora.
:a slici $.11. "rika+an je <+i;ki model "odataka sa de<nisanim
atri4utima i njima de<nisanim od'ovaraju6im domenima.
Bao 3to se mo8e videti na slici $.119 ta4ele su o"isane kolonom i
od'ovaraju6im na+ivima domena. 7o8e se "rimetiti da domen mo8e9
a ne mora da ima isto ime kao kolona. Domeni "rika+ani na slici $.11.
u ta4lici $.!. detaljno su o"isani.
alempije@beotel.yu 196
p'ipa#a
+
rukovodi
vazi
je dat
prima
zaposljava
Vrsta
-USKARA5
Si*'a'= IDb'oj
Slu$io"= Slu$io"ojsu
7ENA
Si*'a'= IDb'oj
+'e$ime#= Na$i"
KONSULTANT
Si*'a'= IDb'oj
.'ojs= .'oj
REDOVNI
Si*'a'= IDb'oj
V'stap= B#e*aultC
ISPLATA
Si*'a'= IDb'oj
'b'= Te:t021
Datumis= Datum
I$&os= +'ima&ja
O&$L'$%'$
Si*'ao= Si*a'&i!i
Na$i"o= Na$i"
-esto= Na$i"
"$!TI(IAT
Si*'a'= IDb'oj
Si*'aj= Si*a'&i!i
Stepe&= Te:t01?1
'$#I
Si*'aj= Si*a'&i!i
Na$i"j= Na$i"
!A&%I
Si*'a'= IDb'oj
+'e$ime= Na$i" 0IE11
Ime= Na$i" 0IE11
Si*'a'm= Si*a'&i!i
,-./= Te:t01A1 0AK21
'uo"= IDb'oj
Datum$= Datum
+lata= +lata
Stimul= Stimula!ija
Si*'ao= Si*a'&i!i
+ol= +ol
"'sta= "'sta
Pol
RADNO-
Si*'a'm= Si*a'&i!i
Na$i"'m= Na$i"
*lika 7.0/. .izi~ki model podataka sa de3nisanim domenima
(a4lica 4r.$.!. 5"is domena +a "rimer @Barton is"lata@
%4M&7 1$( $ ;&8$H$70 4($ %4M&70
YdefaultZ (eSt -1*0 Default vrednost de<nisana u /REinIu
,roj Inte'er Domenom ,roj de<ni3u se svi 4rojevi
Datum DateH(ime &odra+umevaju6a vrednost sistemsko' datuma
ID4roj (eSt -%0 Jedinstven "aralelni sistem o+na;avanja
:a+iv (eSt -210 De<ni3e atri4ute koji o"isuju na+ive
&rimanja Dou4le Domen o"isuje "late i )onorare
&lata Dou4le &oddomen od domena "rimanja
&ol (eSt -10
Domen de<nisan I: listom ve+an +a de<nisanje
"ot"une strukture -7I 7uski >I>enski0
Sifarnici (eSt -20 Domen o"isuje sifarnike
Slu+iovojsku (eSt -20 Domen de<nisan I: listom -DA9 :/0
Ste"en (eSt -110 Ste"en +nanja je+ika de<nisan I: listom -&9G9.0
Stimulacija Dou4le Domen de<ni3e interval i ti" stimulacije
vrsta (eSt -10
Domen de<nisan I: listom ve+an +a de<nisanje
ne"ot"une strukture
&ritiskom na du'me Dalidation... -slika $.90 "rela+i se na slede6i nivo
'de se de<ni3u validaciona "ravila -slika $.1109 tj. de<ni3e se
o'rani;enje nad vredno36u domena.
De<nisanje validacioni) "ravila
Dalidaciono "ravilo ili vrednosno o'rani;enje je i+ra+ kojim se utvrCuje
rang prihvatljivih vrednosti +a kolonu. :a slici $.11. "rika+ana je lista
validacioni) "ravila9 tj. o'rani;enja nad vredno36u domenom
alempije@beotel.yu 197
-vrednost atri4uta0 de<nisani) +a model "odataka @Barton is"lata@9 i
to?
;peratore pore:enja -Y9 Z9 \9 Z\9 Y\0 de<nisan je u
navedenom "rimeru +a validacioni na+iv Datum +a"oslenja kao
validaciono "ravilo Y\ Date -0 i validacioni na+iv &lata kao
validaciono "ravilo Z1 -slika $.110.
*lika 7.00. -ditor validacionih pravila za primer operatora pore:enja
,N lista se formira kao lista od konstanti i+ od'ovaraju6e'
domena -slika $.1209 tj. eks"licitnim navoCenjem svi) do+voljeni)
vrednosti. >a validacioni na+iv &ol validaciono "ravilo je I: =U7U9U>UT
i validacioni na+iv Dste"en validaciono "ravilo je I:
=UGovoriU9U&iseU9U.itaUT.
alempije@beotel.yu 198
*lika 7.02. +rikaz ,N liste
!-$L--N opseg dozvoljenih vrednosti 'de atri4ut mo8e
"o"rimiti samo u8i sku" vrednosti i+ domenaA n"r.9 +a validacioni
na+iv Stimulacija de<ni3e se validaciono "ravilo ,/(M//: 11
and 1111 -slika $.1!0.
*lika 7.04. +rikaz !-$L--N operatora
Ako se "ritisne du'me Dalid Dalue -slika $.1!0 "rela+i se u novi editor9
'de se de<ni3u validacione vrednosti -slika $.1$0.
De<nisanje validacioni) vrednosti
U ovom editoru kreira se <ksirana lista svi) do+voljeni) vrednosti koje
se mo'u memorisati u kolonu i dodeliti validacionom "ravilu. Bao
"rimer dokumenta @Barton is"lata@ tre4a de<nisati validacione
alempije@beotel.yu 199
vrednosti -slika $.1$0 +a?
validaciono "ravilo Dste"en kao Govori9 &ise 9 .ita i
validaciono "ravilo &ol kao 7 i >.
*lika 7.07. -ditor za de3nisanje validacionih vrednosti
&e3nisanje default vrednosti
Ako se "ritisne ti"ka Default... -slika $.90 "rela+i se na de<nisanje
default vrednosti -slika $.10. U default editoru kreira se default
vrednost koja se automatski dodeljuje +a i+a4ranu kolonu. :a slici
$.1. "rika+ane su de<nisane default vrednosti +a de<nisan na+iv
Ste"en default vrednost .ita.
*lika 7.0A. -ditor za de3nisanje default vrednosti
alempije@beotel.yu 200
(ri'eri i "rocedure
$rigeri "redstavljaju imenovane 4lokove SX2 koda koji su
"rekom"ajlirani i memorisani da 4i u4r+ali "ostavljanje u"ita9 4r8e
i+vr3ili validaciju nad "odacima ili neku vrlo ;esto kori36enu
o"eraciju. :ajve6a "rednost je u tome da se jednom "ro'ramirani
4lokovi SX2Ia "renose na ra+li;ite "latforme 4e+ modi<kacija.
Dakle9 tri'eri su imenovani sku"ovi "rekom"ajlirani) SX2 i+ra+a
Umemorisani) na serveruU koji se i+vr3avaju kada se "ojavi
od'ovaraju6i do'aCajA oni 'ovore SU,& kako da i+vr3i u4acivanje9
a8uriranje ili 4risanje u ta4eli9 i to onako kako je +ami3ljeno.
(ri'eri referencijalno' inte'riteta -u daljem tekstu? RI tri'eri0 "ose4na
su vrsta tri'era koji se koriste da 4i se odr8ao inte'ritet i+meCu dve
ta4ele i+meCu koji) je us"ostavljena relacija9 odnosno oni 'ovore
SU,& 3ta da u;ini sa redom u onoj dru'oj ta4eli u kojoj je "reneseni
klju; jednak "rimarnom klju;u u "rvoj ta4eli ako se u "rvoj ta4eli
4ri3e9 a8urira ili dodaje novi red.
/REin kreira RI tri'ere automatski i automatski dodeljuje
"odra+umevani RI tri'er svakom entitetu u ve+i. SX2 kod RI tri'era se
'eneri3e na osnovu tri kriterijuma?
vrste "ravila referencijalno' inte'riteta koji se "rimenjuje
na ve+u -R/S(RI.(9 .AS.AD/9 S/( :U229S/( D/FAU2( I2I :5:/0
vrste ve+e9 tj. da li je identi<kuju6a9 neidenti<kuju6a ili
"odti" ve+eA
vrste ulo'e entiteta u ve+i9 tj. da li je ta4ela UdeteU ili
UroditeljU.
&ritiskom na ti"ku Referential Inte'ritJ Default... -slika $.!0 "rela+i se
na editor +a de<nisanje default vrednosti referencijalno' inte'riteta
-slika $.1%0.
alempije@beotel.yu 201
*lika 7.0C. &efault -ditor pravila referencijalnog integriteta
Default editor "ravila referencijalno' inte'riteta omo'u6uju da se
"romeni "ravilo referencijalno' inte'riteta dodeljeno odreCenoj ve+i
jednostavnim oda4irom. I"ak ono 3to daje sna'u /REinIu je
mo'u6nost da korisnik de<ni3e od'ovaraju6e 3a4lone +a kreiranje RI
tri'era9 odnosno da sam na"i3e svoj SX2 kod koji 6e 4iti dodeljen
ve+i. (akoCe9 mo'u se u'raditi tri'eri koji i+vr3avaju "ose4ne +adatke9
kao 3to su i+ra;unavanja vrednosti neki) atri4uta na osnovu dru'i)
atri4uta.
+rocedure u /REinIu su sku" "rekom"ajlirani) SX2 i+ra+a9 sli;ni)
tri'erima9 s tom ra+likom 3to se ne izvr{avaju zavisno od doga:aju
ve} po pozivu. 5sim to'a9 "rocedure mo'u da "ri)vate "arametre9 ili
mo'u da vrate "arametre9 vrednosti9 "oruke ili9 "ak9 da "o+ovu neku
dru'u "roceduru. :aravno9 "rocedure tre4a ;itave da se "i3u9 jer ne
"ostoji u'raCen 3a4lon. 5ne9 takoCe9 mo'u da se "ove+uju sa ;itavim
3emama9 a ne samo sa entitetima.
:a osnovu "ret)odno i+vedeni) aktivnosti -slika $.20 u slede6em
koraku "otre4no je de<nisati indekse.
alempije@beotel.yu 202
0ktivnost
3.1.3.%e+nisanje indeksa
U ta4elama9 "odaci se sme3taju "o redosledu nji)ovo' uno3enja.
&ostu"ak "retra8ivanja +a)tevano' "odatka u ta4eli mo8e du'o da
"otraje9 "a se +a re3avanje "ro4lema "retra8ivanja koriste s"ecijalni
ti"ovi ta4ela "od imenom indeksi, u kojima se nala+e adrese redova.
:"r.9 +a ta4elu RAD:IB automatski se formira indeksna ta4ela ve+ana
+a "rimarni klju; -&B0 nad kolonom Sifrar -slika $.1#0.
7o'u se kreirati i se"aratni indeksi +a svaku kolonu u ta4eli ako je
;esta "otre4a +a "retra8ivanjem "ojedina;ni) vrednosti
memorisani) u koloni.
(akoCe9 mo8e se formirati i indeks nad vi3e kolona kao9 n"r.9 nad
kolonama? &re+ime i Ime u ta4eli RAD:IB.
*lika 7.0@. +rikaz 8ccess indeks editora
alempije@beotel.yu 203
Bada se 'eneri3e <+i;ka 3ema 4a+e "odataka9 /REin automatski
kreira "ojedine indekse +a?
"rimarne klju;eve nad svakom ta4elom -&B09
alternativne klju;eve -ABS09
"renesene klju;eve -IF09
inver+ne klju;eve -I/09
kolone koje imaju ;esto "retra8ivanje.
Bori36enjem IndeS editora9 u okviru na+iva indeksa de<ni3e se
slede6a struktura o+nake?
@F@ V @&B@ -ili @AB@9 @ IF@ ili @I/@ V @n@0 V :a+iv ta4ele entiteta.
(a4lica 4r.$.$. Indeksi +a ta4ele i+ "rimera @Barton is"lata@
7aziv ta)ele $zraz za indeks
RAD:IB
F&BRAD:IB UniLue IndeS .olumns? Sifrar
FAB2RAD:IB UniLue IndeS .olumns? J7,G
FI/1RAD:IB IndeS .olumns? &re+ime Ime
FIF1RAD:IB IndeS .olumns? Sifrao
FIF1!RAD:IB IndeS .olumns? Sifrarm
FIF%RAD:IB IndeS .olumns? rukov
IS&2A(A
F&BIS&2A(A UniLue IndeS .olumns? Sifrar
r4r FIF2IS&2A(A IndeS .olumns? Sifrar
B5:SU2(A:(
F&B/H9 UniLue IndeS .olumns Sifrar
FIF*/H9 IndeS .olumns? Sifrar
J/>IB F&BJ/>IB UniLue IndeS .olumns Sifraj
7USBARA.
F&B7USBARA. UniLue IndeS .olumns? Sifrar
FIF117USBARA. IndeS .olumns? Sifrar
5D/2J/:J/ F&B5D/2J/:J/ UniLue IndeS .olumns? Sifrao
RAD:57 F&BRAD:57 UniLue IndeS .olumns? Sifrarm
R/D5D:I
F&B/H* UniLue IndeS .olumns? Sifrar
FIF9/H* IndeS .olumns? Sifrar
./R(IFIBA(
F&B>:A J/>IB UniLue IndeS .olumns? Sifrar
Sifraj
FIF!>:A J/>IB IndeS .olumns? Sifrar
FIF$>:A J/>IB IndeS .olumns Sifraj
>/:A
F&B>/:A UniLue IndeS .olumns? Sifrar
FIF12>/:A IndeS .olumns? Sifrar
:"r.9 +a ta4elu RAD:IB i od'ovaraju6u kolonu formira se9 "o defaultIu
slede6a struktura indeksa?
Sifrar -&B0 ima indeks F&BRAD:IBA
&re+ime -AB10VIme -AB10 ima indeks FAB1RAD:IBA
J7,G -AB20 ima indeks FAB2RAD:IBA
alempije@beotel.yu 204
Sifrao -IF10 ima indekS FIF1RAD:IBA
Rukov -IF%0 ima indeks FIF%RAD:IB.
Bako su alternativni klju;evi9 takoCe9 jedno+na;ni9 a instance kolona?
&re+ime i Ime se mo'u "onoviti9 to isklju;ivanjem o"cije @UniLue@
AB1 "rela+i u I/1 -slika $.1#0.
&rimarni indeks F&BRAD:IB ima uklju;enu o"ciju @.lustered@ koja
omo'u6uje da se "odaci u ta4elama <+i;ki sme3taju u+ indekse9
;ime se "o4olj3avaju "erformanse u"ita.
U ta4lici $.$. "rika+ani su formirani indeksi u /REinIu +a "rimer
<+i;ko' modela "odataka @Barton is"lata@.
:a osnovu "ret)odno i+vedeni) aktivnosti -slika $.20 u slede6em
koraku "otre4no je de<nisati na;in u"ravljanja "odacima.
0ktivost
3.1.4.%e+nisanje na/ina
#!ravljanja !odacima
Aktivnost "4.0.7. &e3nisanje na~ina upravljanja podacima" je 4itna
funkcija or'ani+acije "odataka koja o4u)vata?
skladi{tenje, "od ;ime se "odra+umevaju kontrola
redosleda u"isivanja "odataka9 na;ini "ristu"a i adresiranja
"odataka i na;in <+i;ko' "redstavljanja "odatakaA
ponovno pristupanje, tj. odreCivanje mesta nala8enja
"odataka -adresiranje09 formiranje "odataka i odreCivanje
redosleda "odatakaA
kontrolu, tj. unutra3nje re'ulisanje toka odvijanja "ostu"ka
u"ravljanja "odacima9 odreCivanje "rava "ristu"a "odacima9 ;ime
osi'urava "odatke da ne doCe do 'u4itaka i o4e+4eCuje a8urnost
"odataka na sistemu.
5va aktivnost se ostvaruje u okviru klijentHserverIar)itekture i tre4a
da se nala+i na jednoj ili vi3e )ardverski) "latformi9 'de server i+vodi
+ajedni;ke servise +a klijenta9 tj. u"ravlja "odacima "reko u'raCeni)
"oslovni) "ravila i centali+ovani) "rocedura. Blijent o'rani;eno i
kontrolisano o"tere6uje server9 distri4uirano "rocesira informacije i
+adr8ava samostalnost ve+anu +a rad u lokalu -"o'ledati detalje u
alempije@beotel.yu 205
"o'lavlju $.!0.
U"ravljanje "odacima tre4a da "odr8i?
inte'ritet 4a+e "odataka9
transakcionu o4radu "odataka9
si'urnost "odataka9
+aklju;avanje "odataka i
o"oravak 4a+e "odataka.
Inte'ritet 4a+e "odataka
Inte'ritet 4a+e "odataka tre4a da omo'u6i ta;nost9 korektnost i
kon+istentnost "odataka i da o+na;i "ro4leme +a3tite 4a+e "odataka
od "o're3no' a8uriranja -"o're3ni) ula+ni) "odataka9 're3ki
o"eratera i "ro'ramera9 sistemski) otka+a0.
U ovom delu je deo o "ro4lematici ve+anoj +a o;uvanje inte'riteta "ri
i+vodenju jedne transakcije. 5 transakcionoj o4radi "odataka 4i6e
vi3e re;i kasnije.
U okviru inte'riteta 4a+e "odataka tre4a de<nisati od'ovaraju6a
"ravila inte'riteta kojima se odreCuje koje uslove "odaci u 4a+i
"odataka tre4a da +adovolje9 kada se vr3i "rovera i koje akcije tre4a
"redu+eti ako de<nisani uslovi nisu +adovoljeni.
Inte'ritet 4a+e "odataka je de<nisan "ravilima inte'riteta na serveru
4a+e "odataka i sadr8i?
re~nik podataka, tj. od'ovaraju6u metaI4a+u "odatakaA
integritet domena kojim se de<ni3e do+voljeni sku"
vrednostiA
integritet tabele 'de svaki red u ta4eli mora da 4ude
jedinstvenA
referencijalni integritet ili inte'ritet relacijaA
autoreferencijalni integritet 'de se u istoj ta4eli de<ni3u
s"oljni i ori'inalni klju;A
poslovna pravila ili t+v. korisni;ka "ravila i o'rani;enja.
6e~nik podataka je 4a+a "odataka o 4a+i "odataka -metaI4a+a
"odataka0 i u njoj su o"isi ta4ela9 relacija i+meCu ta4ela9 kao i svi
o4jekti ti"a formi9 i+ve3taja9 u"ita9 makroa i "ro'rama koji se ;uvaju
alempije@beotel.yu 206
u metaI4a+i9 koja se lo'i;ki "redstavlja kao i sama 4a+a "odataka.
U re;nik "odataka sme3taju se "ravila inte'riteta koja su de<nisana
"omo6u neko' je+ika visoko' nivoa. Re;nik "odataka je korektan
"ristu"A no9 meCutim9 neki SU,& ne "odr8avaju inte'ritet na taj na;in9
jer se "odr3ka "re4acuje u a"likacione "ro'rame9 odnosno ostavlja se
mo'u6nost da "ro'ramer9 u+ "omo6 'eneratora a"likacija9 sam vodi
ra;una o inte'ritetu 4a+e "odataka.
,ntegritet domena je do+voljeni sku" vrednosti9 'de svaka vrednost u
"olju mora da "ri"ada domenu te kolone. Dakle9 red se nala+i u ta4eli
ako su vrednosti u svim kolonama to' reda u domenu kolona9 a
inte'ritet domena kolone je odr8an ako +a"is mo8e 4iti u"isan u
ta4elu samo u slu;aju da ti" "odatka u svakoj koloni od'ovara
do+voljenom ti"u +a datu kolonu.
,ntegritet tabela je is"unjen ako je svaki red u ta4eli jedinstven9 tj. ako
"ostoji jedno+na;na identi<kacija reda koji se de<ni3e "rimarni
klju;em9 u kojem se mo8e nala+iti jedna ili vi3e kolona. Bolona ;ija se
vrednost koristi +a identi<kaciju ostali) kolona na+iva se klju;em.
&ostoje dve vrste klju;eva? "rimarni i sekundarni.
&rimarni klju; jedno+na;no odreCuje redA sto'a i ne mo'u "ostojati
dva reda sa istim vrednostima klju;a. Ako u redu nema kolone koja 4i
jedno+na;no odredila neki red9 mo'u se na6i dva ili vi3e koji +ajedno
odreCuju jedno+na;nost. (ada se 'ovori o zdru`enom klju;u.
Sekundarni klju; je kolona "o kojoj se vr3i "retra8ivanje. Sekundarni
klju; ne mora 4iti jedno+na;an.
6eferencijalni integritet ili inte'ritet relacija omo'u6uje ve+u i+meCu
ra+ni) kolona i ta4ela. Drednosti u jednoj koloni ili 'ru"a kolona
referi{u se vrednostima u dru'oj koloni ili sku"u kolona i "ri tom se
de<ni3e +a ta4elu UdeteU "reneseni klju; -forei'n keJ09 a +a ta4elu
UroditeljU I "rimarni klju; -"rimarJ keJ0.
8utoreferencijalni integritet je de<nisan s"oljnim i or'inalnim klju;em
u istoj ta4eli9 'de je jedna kolona u ta4eli "ove+ana sa vrednostima u
dru'oj koloni iste ta4ele.
+oslovna pravila ili t+v. korisni;ka "ravila su "ravila +a o;uvanje
inte'riteta "odataka koja +adaje korisnikA n"r.9 +a4rana i+mene
"odataka van radno' vremena. Uskladi3tena "rocedura je9 takoCe9
"rimer +a "oslovna "ravila9 'de se de<ni3u "ravila +a "revoCenje
sku"a SX2 iska+a i "ro'ramski iska+i +a kontrolu toka o4rade. (akoCe9
"oslovnim "ravilima se deklari3u "romenljive9 kao i od'ovaraju6i
o"eratori +a dodelu vrednosti. Uskladi3tena "rocedura automatski se
@is"aljuje@ "od odreCenim uslovima i nala+i se u serveru 4a+e
"odataka9 3to omo'u6uje da se sao4ra6aj u mre8i svede na
alempije@beotel.yu 207
minimum.
;grani~enjima se de<ni3e inte'ritet "odataka i+meCu ta4elaA ta
o'rani;enja su ve+ana +a ran' validni) vrednosti.
(ransakciona o4rada "odataka
$ransakcija je o"eracija kojom se i+vodi serija i+mena nad jednom ili
vi3e ta4ela9 tj. transakcija je i+vr3enje neke lo'i;ke jedinice rada
korisnika 4a+e "odataka. 5snovni cilj 4a+e "odataka je da omo'u6i
e<kasnu o4radu transakcija. Di3e i+vr3enja isto' "ro'rama mo'u se u
sistemu odvijati konkurentno9 svako od nji) "redstavlja transakciju.
Sku" aktivnosti nad 4a+om "odataka koje se i+vr3avaju "o "rinci"u
@sve ili ni3ta@9 tj. ili su sve aktivnosti us"e3no o4avljene ili je 4a+a
"odataka ostala ne"romenjena9 atomski je sku" aktivnosti. 5;i'ledno
je da @lo'i;ka jedinica rada@ "redstavlja taj atomski sku" aktivnosti9
tj. @atomsku transakciju@.
De<ni3u se dva ti"a transakcija?
D72 transakcija kojom se "ove+uje ve6i 4roj D72 nared4i9
3to se de<ni3e jo3 i kao eks"licitna transakcija i
DD2 transakcija kojom se i+vodi samo jedna nared4a9 i to
kao @automatska@ -im"licitna0 transakcija.
Dru'im re;ima9 transakcija "redstavlja i+vr3enje jedno' sku"a
o"eracija -n"r.9 S/2/.(9 U&DA(/9 I:S/R( i D/2/(/0 neko' "ro'rama
koji "o;inje sa "rvom i+vodljivom D72 ili DD2 nared4om -,/GI:
(RA:SA.(I5:09 a +avr3ava se?
o"eracijom .577I( -ako je ceo sku" o"eracija us"e3no
i+vr3en09
R522,A.B -ako ceo sku" o"eracija nije us"e3no i+vr3en09
DD2 nared4om9
va8e6om 're3kom -sli;no deadlock09
lo' o_9
're3kom ma3ine.
:akom i+vr3enja jedne transakcije9 slede6a SX2 nared4a automatski
startuje dru'u "o redu transakciju.
Dru'im re;ima9 na nivou SX2 nared4i u"ravljanje transakcijom se
u"ravlja sa?
alempije@beotel.yu 208
nared4om .577I(9 kojom se?
de<ni3u stalne i+mene u 4a+i "odataka9
4ri3u svi .N/.B&5I:( u transakciji9
de<ni3e kraj transakcije9
reali+uje t+v. transakciono +aklju;avanje i
omo'u6uje eks"licitni kraj transakcijeA
nared4om .N/.B&5I:( +a du'e transakcije kojom se deli
transakcija u male U"orcijeU9 tj. ;uva rad u transakciji u jednoj
ta;ki sa o"cijom +a kasniji .577I(A
nared4om R522,A.B9 kojom se "oni3tavaju sve i+mene u
teku6oj transakciji9 odnosno kojom se?
4ri3u svi .N/.B&5I:( u transakciji i
oslo4aCaju sva transakciona +aklju;avanjaA
nared4om R522,A.B=M5RBT (5 .N/.B&5I:( kojom se
"oni3tava samo deo transakcije.
U radu sa 4a+om "odataka koji se koriste u transakcijama de<ni3u se
dve o"eracije9 i to?
;itanje -read0 sa 4a+e "odataka9 kori36enjem nared4e
S/2/.( i
is"isivanje -Erite0 u 4a+u "odataka9 kori36enjem nared4i
I:S/R(9 U&DA(/ i D/2/(/.
Jednim "ro'ramom se mo8e "redstaviti sekvenca transakcija9 iako je
naj;e36e jedan "ro'ram jedna transakcija.
(ransakcije ne mo'u 4iti @u'nje8dene@9 tj. u jednom "ro'ramu se
o"eracija ,/GI: (RA:SA.(I5: mo8e i+vr3iti samo ako taj "ro'ram
nema nijednu dru'u transakciju u i+vr3enju. :ared4e? .577I( i
R522,A.B se i+vr3avaju samo ako je neka transakcija u i+vr3enju.
(ransakcije moraju da "rate i od'ovaraju6e i+la+ne "oruke9 koje ne
smeju da se "renose direktno9 ve6 tek nakon "lanirano' +avr3etka
transakcije -.577I( ili R522,A.B0.
&ose4na "a8nja se "oklanja sistemu "oruka u "ostu"ku o"oravka
4a+e "odataka.
&oruke se ne "ri)vataju direktno9 ve6 se ula+ne "oruke stavljaju u
ula+ni red9 a i+la+ne "oruke u i+la+ni red. &ri "laniranju +avr3etka
alempije@beotel.yu 209
transakcije -.577I( ili eks"licitni R522,A.B0 i+vr3ava se?
u"isivanje lo' i+la+ne "oruke9
stvarno se "renose i+la+ne "oruke i
i+4acuju se ula+ne "oruke i+ ula+no' reda.
&ri ne"laniranom R522,A.B -i+vr3ava se automatski ako doCe do neke
're3ke u "ro'ramu ti"a @overRoE@9 deljenja sa nulom i sli;no0 dola+i
do i+4acivanja i+la+ni) "oruka i+ i+la+no' reda.
Sto'a su u 7S A../SSIu elementi transakciono' rada u'raCeni u
okviru A../SS ,ASI.9 'de su mo'u6i? de<nisani "o;etak transakcije
-,e'in(rans09 +a"isivanje re+ultata rada transakcije -.ommit(rans0 i
vra6anje na stanje "re "o;etka transakcije -Roll4ack0.
Si'urnost "odataka
Si'urnost "odataka odnosi se na me)ani+am +a3tite "odataka od
neovla36eno' kori36enja9 koji je u'raCen u SU,&. >a3titom "odataka
se de<ni3e koji su4jekt +a3tite -n"r.9 /remija0 nad kojim ta4elama
-n"r.9 RAD:IB0 mo8e da i+vede neku o"eracuju -n"r.9 S/2/.(9 U&DA(/9
I:S/R( i D/2/(/0 i "od kojim uslovima -n"r.9 samo +a odeljenje 110.
&ola+i se od ;injenice da je korisnik vlasnik kreirane ta4ele i da samo
on kao vlasnik mo8e da je koristi osim ako i dru'ima ne do+voli
"ristu". >a dodeljivanje "rivile'ije kori36enja dru'im korisnicima
koristi se GRA:( nared4a koja se sastoji i+ tri osnovne klau+ule?
GRA:( Y&rivile'ijaZ
5: Yta4ele ili "o'ledZ
(5 Ykorisnik ili 'ru"a korisnikaZ
=MI(N GRA:( 5&(I5:TA
&rivile'ije mo'u 4iti ?
S/2/.(9
U&DA(/9
I:S/R(9
D/2/(/9
I:D/F9
/F&A:D -dodavanje atri4uta relacije09
alempije@beotel.yu 210
A22 -va8i +a sve navedene "rivile'ije09
R/S5UR./ -omo'u6uje korisniku kreiranje o4jekata 4a+e
"odataka9 kao 3to su? ta4ele9 indeksi9 klasteri09
D,A -o4avlja administrativne +adatke9 kao 3to su? .R/A(/
(A,2/S&A./ i .R/A(/ R522,A.B S/G7/:(09
D,A "rivile'ijom korisnik mo8e de<nisati?
S/2/.( i+ 4ilo koje ta4ele i "o'leda9
.R/A(/ o4jekata 4a+e "odataka +a dru'e korisnike9
DR5& dru'i) korisnika o4jekata 4a+e "odataka9 uklju;uju6i
ta4ele9 sinonime i linkovane 4a+e "odataka9
GRA:( varijante "rivile'ija 4a+e "odataka9
.R/A(/ "u4lic sinonima i linkovanje 4a+e "odataka9
/F&5R( i I7&5R( 4a+e "odataka.
MI(N GRA:( 5&(I5: daje do+volu davanja "rivile'ija dru'om
korisniku.
Bada se9 na "rimer9 uvedu "rivile'ije nad ta4elom RAD:IB9 a onda
tre4a da se nekom dru'om da "rivile'ija nad tom ta4elom9 i to
korisniku &/RI9 "i3e se ovako?
GRA:( S/2/.( 5: RAD:IB (5 &/RAA
Ako 4i tre4alo da se da nekom dru'om "rivile'ija +a samo S/2/.(
nad ta4elom RAD:IB9 i to korisniku D2ADA "i3e se ovako?
GRA:( S/2/.( 5: RAD:IB (5 D2ADAA
Ukoliko 4i tre4alo da se da nekom dru'om "rivile'ija I +a samo
U&DA(/ -&2A(A9 S(I7U20 nad ta4elom RAD:IB9 i to korisniku S(/FA:
"i3e se ovako?
GRA:( U&DA(/ -&2A(A9 S(I7U20 5: RAD:IB (5 S(/FA:A
&rivile'ije se mo'u davati i +a "o'lede nad nared4ama? S/2/.(9
I:S/R(9 U&DA(/ i D/2/(/.
:a "rimer9 ako se ne 8eli da korisnik A2/7&IJ/ ima "o'led na kolone?
&2A(A i S(I7U29 onda je 4olje da se "rivile'ije o'rani;avaju na
"o'led9 a ne na ta4ele.
&rvo se de<ni3e "o'led na ta4elu RAD:IB koja ne sadr8i kolone? &2A(A
I S(I7U2.
alempije@beotel.yu 211
.R/A(/ DI/M >A&S AS
S/2/.( SIFRAR9&R/>I7/9SIFRAR79RUB5D9DA(U7>9SIFRA5
FR57 RAD:IBA
>a davanje "rivile'ije korisniku A2/BSA:DAR nad "o'ledom >A&S
"i3e se?
GRA:( S/2/.( 5: >A&S (5 A2/BSA:DARA
7o8e se de<nisati9 kao "rimer9 i "o'led nad ta4elom RAD:IB koja daje
"odatke samo o onim +a"oslenima sa istim 4rojem odeljenja koji ima i
oso4a koja koristi "o'led.
.R/A(/ DI/M I7/RAD AS
S/2/.( ^
FR57 RAD:IB
MN/R/ SIFRA5 I:
-S/2/.( SIFRA5
FR57 RAD:IB
MN/R/ &R/>I7/ \ US/R0A
US/R de<ni3e ime "rijavljeno' korisnika. Ako ./,I.9 koji je u
odeljenju 119 "ristu"io "o'ledu mo8e videti samo +a"oslene u
odeljenju 11. 5vim "o'ledom mo8e se dati korisniku ./,I. "rivile'ija
da vr3i9 n"r.9 a8uriranje na slede6i na;in?
GRA:( S/2/.(9 U&DA(/
5: I7/RAD
(5 ./,I.A
Ako neki +a"osleni "reCe u dru'o odeljenje -"olje SIFRA5 se menja09
novi rukovodilac automatski do4ija "ristu" "odacima dok 'a stari
rukovodilac 'u4i.
Bada tre4a "oni3titi "rivile'ije koristi se klau+ula R/D5B/.
:"r.9 ako se 8eli odu+eti "rivile'ija korisniku A2/7&IJ/ +a u4acivanje
"odataka u ta4elu RAD:IB "i3e se?
R/D5B/ I:S/R(
5: RAD:IB
FR57 A2/7&IJ/A
>aklju;avanje "odataka
?aklju~avanje podataka je me)ani+am +a u"ravljanje konkurentnim
alempije@beotel.yu 212
"ristu"om "odacima i i+vodi se kada korisnik "oku3a da i+vr3i i+menu
nad "odacima u 4a+i "odataka.
>aklju;avanje se vr3i "rilikom?
sintaksne anali+e9
i+vr3avanja komandi i
"ristu"anja redovima.
&ostu"ak +aklju;avanja "restaje u dva slu;aja?
kada se transakcija +avr3i -.577I(HR522,A.B0 i
kada se kursor +atvori -lo'o_0.
&ostu"ak +aklju;avanja ta4ela i redova je najva8niji deo odr8avanja
kon+istentnosti i inte'riteta 4a+e "odataka korisnika.
5snovna "odela +aklju;avanja je nad?
ta4elama re;nika "odataka I DD2 -Data De<nition
2an'ua'e09
ta4elama korisnika "odataka I D72.
DD2 na;in +aklju;avanja kontroli3e "ristu" 4a+i "odataka i i+vodi se
automatski nad ta4elama re;nika "odataka. 5vaj na;in
+aklju;avanja u"ravlja slede6im SX2 nared4ama?
.R/A(/ (A,2/...9A2(/R (A,2/...9 DR5& (A,2/...i dr.
D72 na;in +aklju;avanja u"ravlja "ristu"om "odacima u korisni;kim
ta4elama.
>aklju;avanje naro;ito dola+i do i+ra8aja kada je u "itanju u"oredna
o4rada transakcija. (ransakcije se i+vode u"oredo sa dru'im
transakcijama u sistemu ako vi3e transakcija +a)teva isti slo' 4a+e
"odataka.
7o'u se de<nisati dva na;ina +aklju;avanja9 i to?
+ajedni;ko -s)ared09
isklju;ivo -eSclusive00.
*hared#s( +aklju;avanje je istovremeno +ajedni;ko +aklju;avanje
ta4ela da 4i se o4e+4edio u"it nad kon+istentnim "odacima cele
ta4ele -4e+ transakcione o4rade0 ili reda -sa transakcionom
o4radom0. 5vakvo +aklju;avanje mo8e i+vesti vi3e korisnika. 5vaj
na;in +aklju;avanja onemo'u6uje dru'e korisnike da vr3e "romene
nad "odacima i stavljaju eSclusive +aklju;avanje9 ali i) ne
alempije@beotel.yu 213
o'rani;ava "ri tom da vr3e u"ite.
-<clusive +aklju;avanje je isklju;ivo +aklju;avanje ta4ela ili redova
da 4i se omo'u6ilo eksklu+ivno uno3enje "romena "odataka tako 3to
se onemo'u6avaju dru'i da istovremeno unose "romene9 tj.
onemo'u6avaju dru'i da istovremeno stave 4ilo kakvo +aklju;avanje
nad istom ta4elom.
5"oravak 4a+e "odataka
Jedan od veoma va8ni) elemenata9 ve+ani) +a server 4a+e "odataka9
jeste mo'u6nost oporavka baze podataka #recoverF(, 3to "redstavlja
"ovratak 4a+e "odataka u stanje "re softversko' ili )ardversko'
otka+a sistema. Ra+lo+i +a otka+ sistema mo'u 4iti usled 're3ke u
o"erativnom sistemu9 're3ke u "ro'ramiranju9 're3ke u samom
SU,&Iu ili9 "ak9 "adanja 'lave diska9 nestanka struje i dr.
(e)nika redundantno' "am6enja "odataka i te)nika o"oravka 4a+e su
veoma kom"leksne. &o+nato je da su do sada kori36ene jednostavne
"rocedure koje su se 4a+irale na "eriodi;nom ko"iranju 4a+e
"odataka u neku ar)ivsku memoriju i svi) transakcija koje su se u meC
uvremenu do'odile9 kao i na jednostavnom du"liciranju 4a+e
"odataka. Iako jednostavne9 ove metode imaju ;itav ni+ nedostataka.
&roces o"oravka i+vodi se u 'lo4alu u tri koraka?
"eriodi;no ko"iranje -dum"0 4a+e "odataka na eksternu
memorijuA
+a"isivanje "romena 4a+e "odataka u 8urnal -t+v.lo'09 i to?
stara vrednost u 4efore ima'e i
nova vrednost u after ima'eA
ako je do3lo do otka+a sistema +ato 3to je?
sama 4a+a "odataka o3te6ena9 kada se i+vodi o"oravljanje
4a+e "odataka na osnovu ar)ivske ko"ije9 ili
4a+a dovedena -nije o3te6ena0 u neko nekon+istentno
stanje i "omo6u lo'Ia se "oni3tavaju sve nekorektne "romene9 a
same transakcije koje su i) "roi+vele se "onove.
Da 4i se omo'u6io o"oravak 4a+e "odataka "otre4no je9 "re sve'a9
ra+motriti koje su to vrste otka+a?
"lanirani R522,A.B9 tj. naru3avanje inte'riteta u nekoj od
alempije@beotel.yu 214
transakcija koje "ro'ram sam otkrivaA
otka+i u transakciji -lokalna 're3ka9 n"r.9 deljenje nulom0A
sistemski otka+ koji uti;e na sve transakcije9 ali ne o3te6uje
4a+u "odataka -n"r.9 nestanak struje0A
<+i;ko o3te6enje 4a+e "odataka.
;tkazi u transakciji
Ako se transakcija +avr3i "re nared4e .577I( ili eks"licitni
R522,A.B9 neo")odno je da se i+vr3i automatski R522,A.B.
&roceduru R522,A.B o4avlja RecaverJ 7ana'er9 "oni3tavaju6i sve
"romene una+ad kro+ lo'9 dok se u lo'Iu ne dosti'ne slo' koji
o+na;ava "o;etak transakcije.
U toku "oni3tavanja mo8e do6i do otka+a i u tom slu;aju R522,A.B
"rocedura mora startovati "onovo9 "a je i to jedan od uslova da
transakcija 4ude 3to kra6a.
*istemski otkaz bez o{te}enja baze podataka
Sistemski otka+ "rou+rokuje "restanak rada celo' sistema9 "a se mora
i+vesti o"oravak 4a+e "odataka "retra8ivanjem celo' lo'Ia i
identi<kovanjem transakcija koje su ot"o;ete9 a nisu +avr3ene.
Da 4i se skratilo "retra8ivanje9 uvode se t+v. ta;ke is"itivanja
-c)eck"oint0 na slede6i na;in?
u"isuje se sadr8aj 4afera +a lo' na lo'A
u"isuje se @c)eck"oint record@ na lo'A
u"isuje se sadr8aj 4afera 4a+e "odataka u 4a+u "odatakaA
u"isuje se adresa @c)eck"oint@ rekordIa na @restart <le@.
Sadr8aj 4afera se "renosi tek kad se oni na"une. @.)eck"oint record@
sadr8i listu svi) transakcija koje su aktivne u trenutku u+imanja
@c)eck"ointIa@ i +a svaku transakciju adresu slo'a u lo'Iu kojem je
"oslednjem "ristu"io.
Al'oritam o"oravka i+vodi se tako 3to se "rvo formiraju liste? @undo@9
u kojoj su sve transakcije +a"isane u @c)eck"oint @Iu9 i @redo@9 koja je
u "o;etku "ra+na.
&retra8ivanje "o lo'Iu "o;inje od @c)eck"oint record @Ia na slede6i
na;in?
alempije@beotel.yu 215
svaka transakcija +a koju se "ronaCe ,/GI: (RA:SA.(I5:
stavlja se u @undo@ listuA
svaka transakcija +a koju se i+vodi .577I( sme3ta se u
@redo@ listu.
5vakav na;in memorisanja omo'u6uje RecaverJ 7ana'erIu da
una+ad i+vr3ava @undo@ transakciju9 a "otom una"red @redo@
od'ovaraju6u transakciju.
Bako u intervalu u"isivanja u samu 4a+u -2o' MriteIA)ead0 i na lo'
mo8e do6i do otka+a9 a da 4i se o4e+4edio o"oravak 4a+e "odataka9
"rvo se vr3i u"isivanje na lo'.
;tkaz diska
Ako 4i do3lo do otka+a diska9 4a+a "odataka 4i se o"oravljala na
osnovu ar)ivske ko"ije i lo'Ia9 o4navljaju6i sve transakcije od
trenutka u+imanja ko"ije do otka+a. (o je veoma du'otrajan "roces i
i+vodi se9 o4i;no9 kada nijedna transakcija nije aktivna.
7o8e se de<nisati i t+v. inkrementni dum"9 odnosno na ko"iju se
"renose samo oni slo'ovi koji su "retr"eli "romene "oslednje'
u+imanja ko"ije.
:a osnovu de<nisano' <+i;ko' di+ajna -slika $.10 u slede6em koraku
"ristu"a se 'enerisanju 3eme 4a+e "odataka.
alempije@beotel.yu 216
0ktivnost
3.2. Generisanje "eme )aze
!odataka
Aktivnost "4.2. 9enerisanje {eme baze podataka" i+vodi se na
osnovu "ret)odno uraCene aktivnosti "4.0. &e3nisanje 3zi~kog
dizajna"9 tj. de<nisani) elemenata +a i+a4rani SU,&. =emu 4a+e
"odataka ;ine <+i;ke ta4ele9 kolone i relacije9 koje se9 kao 3to je
re;eno u "ret)odnom "o'lavlju9 u .AS/ alatu automatski 'eneri3u i+
lo'i;ko' modela. (akoCe9 u "ret)odnom "o'lavlju "oka+ani su i
automatsko kreiranje default ti"ova "odataka +a svaku 'enerisanu
kolonu i na;in i+mene s"eci<kacija kolona -domen i validacija
"odataka0.
&roces 'enerisanja 3eme 4a+e "odataka mo8e se i+vesti na dva
na;ina?
direktnim in8enjerstvom -forEard en'ineerin'0 iHili
inver+nim in8enjerstvom -reverse en'ineerin'0.
&roces 'enerisanja 3eme 4a+e "odataka i+ lo'i;ko' modela "odataka
na+iva se direktni in`enjering. Bada se 'eneri3e 3ema 4a+e "odataka9
entiteti "rela+e u ta4ele9 atri4uti u kolone9 a ve+e u relacije i de<ni3u
se referencijalni inte'ritet9 tri'eri9 "rocedure9 indeksi i dru'e oso4ine
koje "odr8ava i+a4rani SU,&.
Dakle9 da 4i se 'enerisala 4a+a "odataka "otre4no je9 "rvo9 i+a4rati
od'ovaraju6u ciljnu "latformu -SU,&0 i "otom se lo'ovati na nju -slika
$.!0. Bada korisnik lo'uje na i+a4ranu "latformu9 /REin kreira aktivnu
4idirekcionu ve+u sa sistemskim katalo'om i+a4rano' servera koja
omo'u6ava direktno kreiranje 4a+e "odataka. 7S A../SS koristi6e
kao test SU,& +a 'enerisanje 3eme 4a+e "odataka +a "rimer
dokumenta @Barton is"lata@.
:a slici.$.1*. "rika+ani su +a 7S A../SS 4a+u "odataka elementi
3eme koja 6e se 'enerisati. =ema je struktura 4a+e "odataka
alempije@beotel.yu 217
de<nisana DD2 -Data De<nition 2an'ua'e0 skri"tIfajlom koji 6e u
slede6em "o'lavlju 4iti detaljno o4ja3njen.
Inverzni in`enjering "redstavlja "roces do4ijanja <+i;ko' i lo'i;ko'
modela i+ "ostoje6e <+i;ke 4a+e "odataka. 7no'i 6e se +a"itati?
@>a3to je to "otre4no9 kad ve6 "ostoji kreirana 4a+a koja odraCuje
jedan "osao@. 7ora se ista6i da je najte8a i najsku"lja fa+a I
odr8avanje 4a+e "odataka -videti aktivnost? "7.4.;dr`avanje" 0. &od
odr8avanjem se "odra+umevaju do'radnja i "ro3irivanje "rema
+a)tevima korisnika. 54i;no9 "o +avr3etku @i+'radnje@ a"likacije
@+a4oravlja@ se na dokumentaciju9 3to +a "osledicu ima ote8an "roces
odr8avanja 4a+e "odataka. 5dlaskom "ro'ramera i+ <rme9 odr8avanje
"ostaje "ro4lem. Da 4i se to "reva+i3lo i da 4i se mo'la uraditi
nad'radnja -u+imaju6i u o4+ir i +a)teve standarda IS5 911109
"ostu"kom inver+no' in8enjerstva9 od <+i;ke 4a+e "odataka dola+i se
do "ola+no' <+i;ko' i lo'i;ko' modela9 tj. dokumentacije koja
nedostaje.
*lika 7.0D. 8ccess {ema za generisanje !+
/REin omo'u6ava inver+ni in8enjerin' sa dvanaest SX2 SU,&
u"ravljanja 4a+om "odataka -ASH$119 D,29 InformiS9 In'res9 :etMare
SX29 5RA.2/9 &ro'ress9 Rd49 SX2 ,ase9 SX2 Server9 S],AS/ i
MA(.57 SX20 i 3est deskto"Isistema +a u"ravljanje 4a+om "odataka
-7icrosoft Access9 FoS&ro9 .li""er9 d,ase III9 d,ase ID i &aradoS9
"rika+ani) na slici $.!0.
alempije@beotel.yu 218
Dakle9 inver+nim in8enjerstvom i+ "ostoje6e <+i;ke 4a+e "odataka
kreiraju se <+i;ki i lo'i;ki model i +atim u+ "omo6 .AS/ alata i
editora redi+ajnira lo'i;ki model "odataka. Jedan od "roi+voda ovo'
redi+ajna je i sistemska dokumentacija. :akon kreiranja lo'i;ko'
modela "odataka mo8e se9 "ostu"kom rein8enjerin'a "oslovni)
"rocesa9 struktura 4a+e "re4aciti na dru'u ciljnu "latformu -dru'i
format 4a+e "odataka0. U /REinIu se mo8e na dva na;ina i+vr3iti
inver+ni in8enjerin' <+i;ke 4a+e "odataka?
direktnom ve+om sa ciljnom "latformom i
otvaranjem i ;itanjem SX2 skri"tIdatoteke.
:o9 4ilo koji na;in da se i+a4ere9 automatski se kreira novi <+i;ki
model "odataka. Ako se koristi direktna veza sa ciljnom "latformom9
SX2 4a+a "odr8ava deklaraciju "reneseni) klju;eva -F5R/IG: B/]S0.
/REin "re"o+naje jake i sla4e ve+e i "odra+umevaju6e @rolename@ +a
'enerisani model "odataka. >a D,29 SX2 server i S],AS/9 /REin
@i+vla;i@ sve va8ne informacije o modelu "odataka9 i+u+ev "odti"ova9
koji nisu "odr8ani ni od jedno' SX2 sistema +a u"ravljanje 4a+om
"odataka.
Ako se i+a4ere o"cija SX2 skri"tIdatoteke9 onda /REin 'eneri3e
atri4ute 'de "rimarni klju; nije u "rvoj koloni. (akoCe9 mo8e se "ratiti
;itav "ostu"ak inver+no' in8enjerin'a 4a+e9 kao i @onIline@
is"ravljanje 're3aka SX2 skr"itIdatoteke.
:a slici $.19. "rika+an je dekom"o+icioni dija'ram +a aktivnost "4.2.
9enerisanje {eme baze podataka" koja se sastoji od slede6i)
aktivnosti?
Aktivnost !.2.1. Breiranje ta4ela9
Aktivnost !.2.2. Breiranje indeksa9
Aktivnost !.2.!. Generisanje "oslovni) "ravila9
Aktivnost !.2.$. Deri<kacija 3eme 4a+e "odataka.
alempije@beotel.yu 219
US/D A(? AU(N5R? Alem"ije Deljovic DA(/?
R/D? &R5J/.(? 7odel 2
1*.1$.199%
12.1.2111
:5(/S? 1 2 ! $ % # * 9 11
M5RBI:G
DRAF(
R/.577/:D/D
&U,2I.A(I5:
R/AD/R DA(/ .5:(/F(?
A!
:5D/? (I(2/? :U7,/R? G/:/RISA:J/ =/7/ ,A>/ &5DA(ABA
A!.2
!.2.1
BR/IRA:J/
(A,/2A
!.2.2
BR/IRA:J/
I:D/BSA
!.2.!
G/:/RISA:J/
&5S25D:IN
5GRA:IO/:JA
!.2.$
D/RIFIBA.IJA
DI>AJ:A
=/7/
I1
51
.1
Fi+i;ki
di+ajn
=ema 4a+e
"odataka
(o"olo'ija
mre8e
(a4ele
Indeksi
&oslovna
o'rani;enja
*lika 7.0B. &ekompozicioni dijagram za aktivnost "4.2. 9enerisanje {eme
baze podataka"
U daljem tekstu detaljno 6e 4iti o4ra+lo8ene aktivnosti "rika+ane na
slici $.19.
alempije@beotel.yu 220
0ktivnost
3.2.1. 5reiranje ta)ela
U okviru aktivnosti "4.2.0. 5reiranje tabela" kreiraju se ta4ele
nared4om .R/A(/ (A,2/9 koja de<ni3e @"ra+nu@ ta4elu sa na+ivom i
imenima kolona sa <+i;ko' modela "odataka dato' u /REinIu. &odaci
se kasnije unose I:S/R( nared4om ili i+ ra+vijene korisni;ke
a"likacije.
5"is ta4ela "odra+umeva de<nisanje na+iva ta4ele9 na+iva kolone -ti"
"odatka i o'rani;enje09 odreCivanje "rimarno' klju;a i9 "o "otre4i9
de<nisanje indeksa "o 4ilo kojoj koloni ili 'ru"i kolona u ta4eli.
Dakle9 imena ta4ela i kolona se automatski "reu+imaju i+ <+i;ko'
modela de<nisano' u /REinIu9 no ako se direktno u SU,& de<ni3u
imena moraju se "o3tovati slede6a u"utstva?
koristiti o"isna imena +a ta4ele9 kolone9 indekse i dru'e
o4jekteA
4iti dosledan u kori36enju skra6enicaA
koristiti ista imena +a o"is isti) ta4ela ili kolonaA
"isati na+ive ta4ela ili kolona u jednini -"redlo'0.
Sintaksa SX2 nared4e +a kreranje ta4ela ima slede6u strukturu?
.R/A(/ (A,2/ ta4ela -kolona1 ti" = -velicina0T =indeS1T =9 kolona2 ti"
= -velicina0T =indeS2T =9 ...TT =9 indeSvisekol =9 ...TT0
:ared4a .R/A(/ (A,2/ koristi slede6e ar'umente.
Ar'ument 5"is
ta4ela :a+iv ta4ele
kolona19 kolona2 :a+ivi kolone ili kolona kojima se kreira nova
ta4ela
ti" (i" "odatka +a kolonu u novoj ta4eli
velicina Deli;ina kolone u karakterima -+a (eSt
kolone0
indeS19 indeS2 De<nisanje o'rani;enja +a "ojedine kolone
indeS
alempije@beotel.yu 221
indeSvisekol De<nisanje o'rani;enja +a vi3e kolona indeS
Bori36enjem /REin .AS/ alata +a i+a4ran deskto" SU,& 7S Access
i+'enerisana ta4ela RAD:IB -videti ta4lice $.1. i $.20 ima slede6i
i+'led?
.R/A(/ (A,2/ 8RAD:IB8 -8Sifrar8 (/F( -%09
8&re+ime8 (/F( -2109
8Ime8 (/F( -2109
8Sifrarm8 (/F( -209
8J7,G8 (/F( -1!09
8rukov8 (/F( -%09
8Datum+8 DA(/(I7/9
8&lata8 F25A(*9
8Stimul8 F25A(*9
8Sifrao8 (/F( -209
8&ol8 (/F( -109
8Drsta8 (/F( -100
U nared4i .R/A(/ (A,2/ s"eci<ciraju se?
na+iv ta4ele -n"r.RAD:IBA0A
imena kolona ta4ele RAD:IB -sifrar9 &re+ime9...0A
ti" "odatka svake kolone.
:a osnovu 'enerisani) ta4ela u slede6em koraku 4i6e i+vr3eno
'enerisanje indeksa.
0ktivnost
3.2.2. 5reiranje indeksa
U okviru aktivnosti "4.2.2. 5reiranje indeksa" de<ni3u se indeksi
nared4om .R/A(/ I:D/F +a odreCenu ta4elu nad jednom ili vi3e
kolona neke ta4ele. Indeks sadr8i "o jednu stavku +a svaku ra+li;itu
vrednost indeksirane kolone -ili kolona0 u ta4eli. U svakoj stavci
indeksa "amte se <+i;ke adrese redova koji imaju datu vrednost u
indeksiranoj koloniHkolonama.
Indeksi se im"licitno koriste u slede6im slu;ajevima?
kada se "retra8uju ta4ele "o vrednostima indeksirani)
kolona -MN/R/ uslov0 i
alempije@beotel.yu 222
kada se i+dvajaju redovi ta4ele u redosledu vrednosti
indesirani) kolona.
Indeks omo'u6ava direktan "ristu" redovima i tako smanjuje vreme
"ristu"a. 7o'u se kreirati vi3e indeksa +a ra+ne kom4inacije kolona u
istoj ta4eli9 ali svaki indeks uve6ava vreme a8uriranja.
Dakle9 na "erformanse 4a+e "odataka veoma uti;e na;in na koji su
"odaci <+i;ki sme3teni9 tj. memorisani. Breiranje indeksa "oma8e
SU,& da locira s"eci<;ne redove u 4a+i na isti na;in kao indekse u
knji+i koji "oma8u da se 4r+o lociraju s"eci<;ne informacije.
Sintaksa kojom se kreira indeks je?
.R/A(/ =U:IXU/T` I:D/F IndeS[ime
5: ta4ela -kolona =9Ykolona2Z`...T0
5"cija U:IXU/ o4e+4eCuje da ta4ela nikad ne sadr8i redove sa
jednakim vrednostima u kolonama koje su u indeksu.
:ared4a .R/A(/ I:D/F koristi slede6e ar'umente?
0rg#ment 4!is
IndeS[ime :a+iv indeksa koji se kreira
(a4ela :a+iv ta4ele nad kojom se indeks formira
kolona :a+ivi kolone ili kolona nad kojima se
indeks "ravi
Da 4i se dalje "o4olj3ale "erformanse i da 4i se omo'u6ila
jedinstvenost "odataka9 tj. da kolona sadr8i jedinstvene vrednosti9
tre4a kreirati jedinstven indeks -da svaka vrednost u koloni 4ude
jedinstvena0 kori36enjem o"cije U:IXU/ nad kolonom SIFRAR ta4ele
RAD:IB.
.R/A(/ U:IXU/ I:D/F 8&rimarJBeJ8 5: 8RAD:IB8 -8Sifrar80A
:a taj na;in se s"re;ava u4acivanje ili modi<kovanje reda u kome
vrednost ide u indeksirano "olje9 du"liciraju6i 4ilo koju vrednost "olja.
Indeksa nad ta4elom mo8e 4iti koliko se 8eli9 a mo8e se i
eks"erimentisati da 4i se na3lo naj"ovoljnije re3enje. &re"oru;uje se
da se male ta4ele ne indeksiraju9 ve6 da se to ;ini samo sa velikim
ta4elama.
&re"oruke u radu sa indeksima su slede6e?
ta4ele "reko 211 redova indeksirati +4o' "o4olj3ani)
alempije@beotel.yu 223
"erformansiA
+4o' "re'lednosti9 ne raditi vi3e od tri indeksa "o ta4eliA
indeksne kolone naj;e36e koristiti u MN/R/ ili J5I: klau+uli.
>a ta4elu RAD:IB 'enerisani su slede6i indeksi?
.R/A(/ U:IXU/ I:D/F 8&rimarJBeJ85:8RAD:IB8 -8Sifrar80A
.R/A(/ U:IXU/ I:D/F 8FAB2RAD:IB8 5: 8RAD:IB8 -8J7,G80A
.R/A(/ I:D/F 8FIF1RAD:IB8 5: 8RAD:IB8 -8Sifrao80A
.R/A(/ I:D/F 8FIF1!RAD:IB8 5: 8RAD:IB8 -8Sifrarm80A
.R/A(/ I:D/F 8FIF%RAD:IB8 5: 8RAD:IB8 -8rukov80A
Generisani indeksi +a ta4elu RAD:IB de<nisani su u okviru aktivnosti?
@!.1.!. De<nisanje indeksa@ -na slici $.1#. i ta4eli $.$0.
:a osnovu "ret)odno i+vedeni) aktivnosti -slika $.190 u slede6em
koraku "ristu"a se 'enerisanju "oslovni) o'rani;enja.
0ktivnost
3.2.3. Generisanje !oslovni-
ograni/enja
Bro+ aktivnost "4.2.4. 9enerisanje poslovnih ograni~enja" tre4a
sa'ledati "otre4u "rila'oCavanja de<nisano' <+i;ko' modela +a
konkretno reali+ovanu 4a+u "odataka.
5'rani;enja mo'u 4iti de<nisana +a ta4ele ili kolone i s"eci<cirana
kao deo .R/A(/ ili A2(/R (A,2/ komande u okviru SX2Ia. Svr)a
o'rani;enja je da se de<ni3e ran' validni) vrednosti. Svaka I:S/R(9
U&DA(/9 ili D/2/(/ nared4a se "roverava va8e6im o'rani;enjem.
5'rani;enje mora 4iti +adovoljeno da 4i nared4a us"ela.
Generalno 'ovore6i9 o'rani;enjima se de<ni3u domeni kolona9
"ravila referencijalno' inte'riteta -RI09 "ravila inte'riteta ta4ela9 kao i
dodatna "ravila "oslovanja.
5'rani;enje se de<ni3e klju;nom re;i .5:S(RAI:( i na+ivom
ime[o'ranicenja kojim se s"eci<cira ime o'rani;enja -da li je u
"itanju "rimarni ili "reneseni klju;0.
Sintaksa SX2 +a de<nisanje o'rani;enja je +a?
.5:S(RAI:( ime[o'ranicenja
3&RI7AR] B/] -kolona"k1=9 kolona"k2 =9 ...TT0 C
U:IXU/ -kolonau1=9 kolonau2 =9 ...TT0 C
F5R/IG: B/] -kolonafk1 =9 kolonafk2T...0
alempije@beotel.yu 224
R/F/R/:./S ta4elafk -kolona1=9kolona2T...0
5'rani;enje -.5:S(RAI:(0 uslov ima slede6e ar'umente?
0rg#ment 4!is
ime[o'ranicenja :a+iv o'rani;enja
kolona"k19 kolona"k2 :a+iv kolone ili kolona koje 6e 4iti de<nisane kao
&RI7AR] B/]
kolonau19 kolonau2 :a+iv kolone ili kolona koje 6e 4iti de<nisane kao
jedinstven klju;
kolonafk19 kolonafk2 :a+iv "reneseno' klju;a kolone ili kolona
ta4elafk :a+iv "renesene ta4ele koja ima kolonu ili kolone
s"eci<cirane kao kolonafk
fkolona19 fkolona2 :a+ivi kolone ili kolona u ta4elafk koje s"eci<ciraju
kolonafk19 kolonafk2
7o'u se de<nisti slede6a o'rani;enja +a kolonu ili 'ru"u kolona?
o'rani;enja nad "rimarnim klju;em9
o'rani;enje U:IXU/9
o'rani;enje :5( :U229
o'rani;enje nad "renesenim klju;em9
.N/.B o'rani;enje.
5'rani;enje nad "rimarnim klju;em
Sintaksa ve+ana +a de<nisanje o'rani;enja nad primarnim klju~em
ima slede6i i+'led?
.5:S(RAI:( ime[o'ranicenja
3&RI7AR] B/] -kolona"k1=9 kolona"k2 =9 ...TT06
Ako je u "itanju "rimarni klju;9 de<ni3e se ime o'rani;enja kao9 n"r.9
+a ta4elu RAD:IB9 F&BRAD:IB. U nastavku se de<ni3e klju;na re;
&RI7AR] B/]9 kojom se odreCuje na+iv kolone kao "rimarni klju;
-Sifrar0 tako da se do4ije +a "rimer ta4ele RAD:IB slede6i o4lik
o'rani;enja?
.5:S(RAI:( 8F&BRAD:IB8 &RI7AR] B/] -8Sifrar809
Dakle9 "rimarni klju; je oda4ran kao jedinstven klju;9 ;ija nijedna
kolona ne sme da "o"rimi :U22 vrednost ni u jednom redu. Bada se
alempije@beotel.yu 225
ovom klau+ulom de<ni3e "rimarni klju; ta4ele9 SU,& u "o+adini
im"licitno kreira jedinstven indeks i dodatna :5( :U22 o'rani;enja
nad svakom kolonom "rimarno' klju;a.
Bom"letna de<nicija ta4ele "odra+umeva de<nisanje "rimarno'
klju;a. 7ora se imati u vidu da se vrednosti kolona "rimarno' klju;a
nikada ne menjaju -a8uriraju09 ve6 "ostu"ak a8uriranja tre4a
"osmatrati kao 4risanje reda i dodavanje reda sa novom vredno36u
"rimarno' klju;a.
5'rani;enje U:IXU/
5'rani;enje )N,M)- de<ni3e jedinstven klju; ta4ele nad jednom ili
vi3e kolona9 tj. svaki red mora imati ra+li;itu vrednost +a kolonu9 a
svaka kolona mora 4iti deklarisana kao :5( :U22 i ne mora 4iti
"rimarni klju;.
5'rani;enje :5( :U22
N;$ N)GG +a4ranjuje null vrednosti i se de<ni3e isklju;ivo kao
o'rani;enje nad kolonom.
5'rani;enje nad "renesenim klju;em
5'rani;enje nad "renesenim klju;em9 t+v. F5R/IG: B/]
o'rani;enje9 "redstavlja o'rani;enje +a vrednost kolone ili 'ru"e
kolona koje "ostoje u dru'oj ta4eli. &reneseni klju; -forei'n keJ0
de<nisan je nad jednom ili vi3e kolona -slo8eni klju;0 i referencira se
na "rimarni ili jedinstveni klju; neke ta4ele. (a4ela u kojoj je
de<nisan "reneseni klju; je referenciraju6a ta4ela -UdeteU09 a ta4ela
na koju se ona referencira I referencirana ta4ela -ta4ela UroditeljU0.
(akoCe9 ovom klau+ulom se de<ni3u "ravila ;uvanja referencijalno'
inte'riteta -RI0. &ravilo referencijalno' inte'riteta -RI0 se iska+uje
"reko dva uslova +a vrednost "reneseno' klju;a9 od koji) jedan uvek
mora 4iti is"unjen. (i uslovi 'lase?
vrednost "reneseno' klju;a u referenciraju6oj ta4eli mora
"ostojati kao vrednost klju;a -"rimarno' ili jedinstveno'0 u
od'ovaraju6oj referenciranoj ta4eli9 ili
vrednost neke kolone -ili vi3e nji)0 "reneseno' klju;a mo`e
4iti :U229 jer nije u sastavu "rimarno' klju;a referenciraju6e
alempije@beotel.yu 226
ta4ele.
Sintaksa +a de<nisanje prenesenog klju~a ima slede6i i+'led?
.5:S(RAI:( ime[o'ranicenja
3F5R/IG: B/] -kolonafk1 =9 kolonafk2T...0
R/F/R/:./S korisnik.ta4ela -kolona=9kolonaT...06
F5R/IG: B/]HR/F/R/:./S o'rani;enje i+vodi slede6e aktivnosti?
od4acuje I:S/R( ili U&DA(/ ako od'ovaraju6e vrednosti ne
"ostoje u ta4eli "rimarni) klju;evaA
od4ija D/2/(/ ako 6e to naru3iti R/F/R/:./S o'rani;enjeA
mora se odnositi na &RI7AR:I B2JUO ili J/DI:S(D/:/
-U:IXU/0 kolone "rimarni) klju;eva u od'ovaraju6im ta4elama u
kojima su de<nisani "rimarni klju;eviA
mo8e se odnositi na &RI7AR:I B2JU; ta4ele i ako nisu
kolone ili 'ru"e kolona s"eci<cirane u o'rani;enu -do+voljena
:U22 vrednost0A
+a)teva da je korisnik vlasnik ta4ele u kojoj su "rimarni
klju;evi9 da ima9 takoCe9 R/F/R/:./ "rivile'ije9 ili da ima nivo
kolone R/F/R/:./ "rivile'ije "ri referenciranju kolona u ta4eli u
kojoj su "rimarni klju;eviA
+a)teva da "reneseni klju; kolona ima iste ti"ove "odataka
sa s"re8u6om "rimarnom ta4elom.
>a dosada3nji "rimer "reneseni klju; Sifrao i+ ta4ele RAD:IB
referenciran je na ta4elu 5D/2J/:J/9 'de je SIFRA5 "rimarni klju;?
.5:S(RAI:( 8+a"osljava8 F5R/IG: B/] -8Sifrao80
R/F/R/:./S 85D/2J/:J/8 -8Sifrao800A
Ime o'rani;enja U+a"osljavaU ve+ano je +a na+iv relacije.
U "rimeru dokumenta @Barton is"lata@9 +a ta4elu RAD:IB9 ako se
i+a4ere 5D,. SX2 o"cija o'rani;enja - .5:S(RAI:(0 u okviru Access
3ema Generation Re"ort je?
.5:S(RAI:( 8F&BRAD:IB8
&RI7AR] B/] -8Sifrar809
.5:S(RAI:( 8"ri"ada8
F5R/IG: B/] -8Sifrarm80
R/F/R/:./S 8SIFRAR78 -8Sifrarm809
.5:S(RAI:( 8rukovodi8
F5R/IG: B/] -8rukov80
R/F/R/:./S 8RAD:IB8 -8Sifrar809
.5:S(RAI:( 8+a"osljava8
F5R/IG: B/] -8Sifrao80
alempije@beotel.yu 227
R/F/R/:./S 85D/2J/:J/8 -8Sifrao800A
.N/.B o'rani;enje
U .N/.B o'rani;enju9 +a kolone9 uslovi se moraju "o+ivati na kolone
na koje se o'rani;enje ve6 odnosilo. >a .N/.B o'rani;enja ta4ele
uslovi se mo'u odnositi na vi3e kolona. &o A:SIHIS5 standardu9
.N/.B o'rani;enje je naru3eno samo ako je i+ra+ la8an9 tj. istinite i
ne"o+nate vrednosti ne naru3avaju o'rani;enje.
&rika+ o'rani;enja +a 5racle SU,& +a "rimer nad ta4elom RAD:IB
ima slede6i i+'led?
.R/A(/ (A,2/ @RAD:IB@ -
@Sifrar@ DAR.NAR2 -%0 :5( :U229
@&re+ime@ DAR.NAR2 -210 :5( :U229
@Ime@ DAR.NAR2 -210 :5( :U229
@Sifrarm@ DAR.NAR2 -20 :5( :U229
@J7,G@ DAR.NAR2 -1!0 :5( :U229
@rukov@ DAR.NAR2 -%0 :5( :U229
@Datum+@ DA(/ D/FAU2( Date -0 :5( :U22
.N/.B -Y\Date -009
@&lata@ F25A( :5( :U22
.N/.B -Z109
@Stimul@ F25A( D/FAU2( %11 :5( :U22
.N/.B -stimul ,/(M//: 11 A:D 111
@Sifrao@ DAR.NAR2 -20 :U229
@&ol@ DAR.NAR2 -10 D/FAU2( 7 :5( :U22
.N/.B -&ol I: -U7U9 U>U009
@vrsta@ DAR.NAR2 -10 D/FAU2( 29
&RI7AR] B/] -@Sifrar@09
F5R/IG: B/] -@Sifrarm@0
R/F/R/:./S @SIFRAR7@9
F5R/IG: B/] -@rukov@0
R/F/R/:./S @RAD:IB@9
F5R/IG: B/] -@Sifrao@0
R/F/R/:./S @5D/2J/:J/@0A
U slede6em "rimeru 4i6e 'enerisana o'rani;enja +a dokument
@Barton is"lata@.
Generisanje "oslovni) o'rani;enja +a dokument
@Barton is"lata@
Da 4i se lak3e uo;io na;in 'enerisanja "oslovni) o'rani;enja na
alempije@beotel.yu 228
slici $.21. "rika+ani su <+i;ki model "odataka de<nisan u /REinIu i
model 4a+e "odataka 'enerisan u 7S A../SSIu.
Fi+i;ki
model
"rimera
dokumenta
@Barton
is"lata@
de<nisan u
/REinIu
I=R
U=R
D=R
U=R
+
I0!
U0!
I0!
U0!
&0"
U0"
I0!
U0!
I0!
U0!
&0"
U0"
I0S%
U0S%
&0S%
U0S%
I0!
U0!
&0!
U0!
I0!
U0!
&0!
U0!
I0!
U0!
&0"
U0"
I0S%
U0S%
&0S%
U0S%
Vrsta
-USKARA5
Si*'a'= Te:t0>1
Slu$io"= Te:t021
7ENA
Si*'a'= Te:t0>1
+'e$ime#= Te:t02?1
KONSULTANT
Si*'a'= Te:t0>1
.'ojs= I&te;e'
REDOVNI
Si*'a'= Te:t0>1
V'stap= Te:t01@1
ISPLATA
Si*'a'= Te:t0>1
'b'= Te:t021
Datumis= Date4Time
I$&os= Double
O&$L'$%'$
Si*'ao= Te:t021
Na$i"o= Te:t02?1
-esto= Te:t02?1
"$!TI(IAT
Si*'a'= Te:t0>1
Si*'aj= Te:t021
Stepe&= Te:t01?1
'$#I
Si*'aj= Te:t021
Na$i"j= Te:t02?1
!A&%I
Si*'a'= Te:t0>1
+'e$ime= Te:t02?1 0IE11
Ime= Te:t02?1 0IE11
Si*'a'm= Te:t021
,-./= Te:t01A1 0AK21
'uo"= Te:t0>1
Datum$= Date4Time
+lata= Double
Stimul= Double
Si*'ao= Te:t021
+ol= Te:t011
"'sta= Te:t011
Pol
RADNO-
Si*'a'm= Te:t021
Na$i"'m= Te:t02?1
7odel 4a+e
"odataka
"rimera
dokumenta
@Barton
is"lata@
reali+ovan u
7S A../SSI
u
*lika 7.2/. .izi~ki model podataka i model baze podataka za dokument
"5arton isplata"
Generisanjem <+i;ko' modela i+ /REinIa u konkretni model 4a+e
"odataka I 7S A../SS9 automatski se us"ostavljaju relacije i+meCu
"olja u selektovanim ta4elama "rema indeksima de<nisanim nad tim
ta4elama. 6elacija se ovde de<ni3e kao odnos i+meCu "olja u
ra+li;itim ta4elama 4a+e "odataka. Relacije i+meCu "olja ta4ela se
us"ostavljaju "o sli;nosti -jednakosti0 na+iva9 ti"a i veli;ine "olja. :a
slici $.21. "rika+ana je relacija i+meCu ta4ela? RAD:IB i 5D/2J/:J/.
alempije@beotel.yu 229
*lika 7.20. >* 8==-** relacija izme:u tabelaE 68&N,5 i ;&-GH-NH- sa slike
7.2/.
U 7S A../SSIu us"ostavljaju se slede6e relacije -5ne (o0?
jedan "rema jedan -;ne%$o%;neI1H10 tj. jednom redu i+
jedne ta4ele "ri"ada jedan red u dru'oj ta4eli -slika $.210A
jedan "rema vi3e -;ne%$o%>anFI1Hm09 tj. jednom redu i+
jedne ta4ele "ri"ada vi3e redova i+ dru'e ta4ele sa "odacima
istim kao u "rvoj ta4eli.
Ako je uklju;ena o"cija @-nforce 6eferential ,ntegritF" omo'u6uje se
o4e+4eCenje kontrole inte'riteta 4a+e "odataka u +avisnosti od
'enerisane relacije i+ /REinIa u 7S A../SS9 tj. omo'u6uje se
de<nisanje kardinalnosti i referencijalno' inte'riteta -RI0 relacija.
5ardinalnost relacija na nivou 7S A../SSIa je odnos ;ne ili >anF i to
je odnos "rve ta4ele "rema dru'oj. ;ne je 1H1 odnos9 a >anF je 1Hm
odnos.
(ako relacija sa slike $.21. 'lasi? Jednom odeljenju "ri"ada vi3e
radnika -;ne $o >anF 0.
6eferencijalni integritet na nivou 7S A../SS mo8e 4iti -slika $.210?
.ascade U"date Related Fields i
.ascade Delete Related Records.
(i" relacije =ascade )pdate 6elated .ields omo'u6uje da se u
slu;aju i+mene sadr8aja "olja u "rvoj ta4eli "romene i vrednosti "olja
koja su u relaciji sa njima u dru'oj ta4eli.
alempije@beotel.yu 230
(i" relacije =ascade &elete 6elated 6ecords omo'u6uje da se u
slu;aju 4risanja redova u jednoj ta4eli i+a+iva 4risanje redova i+
dru'e ta4ele.
(i"ovi relacija de<nisani u 7S A../SSIu su mno'o siroma3niji "o
svojim mo'u6nostima ne'o 3to je to o"isano u /REin modelu
"odataka. 5va konstatacija dola+i do i+ra8aja "rilikom s"rovoCenja
inver+no' in8enjerin'a9 jer je do4ijeni model "odataka mno'o
siroma3niji od 8eljeno'9 "a 'a tre4a do'raCivati.
U okviru relacije se de<ni3e i ti" Join -slika $.219 ti"ka Hoin $Fpe...(.
&ostoje tri ti"a Join9 i+meCu 7S A../SS ta4ela?
4iraju se samo redovi koji u ve+nim "oljima imaju iste
sadr8aje -Iner Join0A
4iraju se svi redovi i+ "rve ta4ele i samo oni redovi i+ dru'e
ta4ele ;iji je sadr8aj ve+ni) "olja jednak sa sadr8ajem u "rvoj
ta4eli -2eft Join0A
4iraju se svi redovi i+ dru'e ta4ele i samo oni redovi i+ "rve
ta4ele ;iji je sadr8aj ve+ni) "olja jednak sadr8aju ve+ni) "olja
dru'e ta4ele -Ri')t Join0.
U "o'lavlju $.!. u okviru aktivnosti "4.4.4. &e3nisanje upita" 4i6e
ra+matrana detaljno "ro4lematika JoinIa.
U daljem tekstu 4i6e u"oreCene de<nisane kardinalnosti ve+a u
/REinIu i 'enerisane kardinalnosti relacija u 7S A../SSIu9 kao i
referencijalni inte'ritet -RI0 ve+a u /REinIu i 'enerisani referencijalni
inte'ritet -RI0 relacija u 7S A../SSIu9 na "rimeru dokumenta @Barton
is"lata@.
9enerisanje relacije 68&N,5%;&-GH-NH-
Bardinalnost ve+a u /REinIu i kardinalnost relacija u 7S A../SSIu
'lasi -slika $.220?
) ;deljenju je zaposleno vi{e 6adnika a 6adnik radi u nula ili jednom
;deljenju.
&6Ein M 033&
alempije@beotel.yu 231
ODEL,EN,E
RADNIK
D=SN
U=SN
I=SN
U=SN
+a"osljava
RADNIK
ODEL,EN,E
1