PANEVROPSKI UNIVERZITET APEIRON FAKULTET AKULTET POSLOVNE P OSLOVNE INFORMATIKE
Redovne studije Smjer „Poslovn in!ormti"# Predmet SOFTVERSKI IN$IN%ERIN& SA O'%EKTNIM PRO&RAMIRAN%EM
()ASE ALATI( ALATI( *seminrs"i rd+
Predmetni nstvni" Pro!, dr Zorn $, Avrmovi-
Student
Mr"o Vu"iInde"s .r, //0123RPI
'nj Lu"4 Novem.r 5617,
Sadržaj Sadržaj 1. Uvod..... Uvod .......... .......... .......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... ............... .................... ................... ...........1 ..1 1.1. Pojam Pojam CASE tehnologi tehnologija... ja........ .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ........1 ...1 1.2. Ciljevi Ciljevi CASE tehnologij tehnologija... a........ .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... .......... .............. ..............1 .....1 1.3. Struktura Struktura CASE tahnologi tahnologija... ja........ .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .............. ..............3 .....3 2. Klasifiakc Klasifiakcija ija CASE tehnologi tehnologija.... ja......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ............. .......... .. 2.1. Klasifikac Klasifikacija ija na osno osnovu vu funkcija.. funkcija....... ......... ......... .......... .......... .......... .......... .......... .......... ............ ................ .................! ........! 3. Efekti Efekti "rimjene.. "rimjene....... .......... ......... ......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ............. .................. ................... ..........# .# . $so%ine $so%ine CASE tehnologi tehnologija... ja........ .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ............ .............& ......& !. 'a(ini 'a(ini na koje koje je mogu mogu)e )e integ integris risati ati CASE CASE tehno tehnolog logije. ije.... ...... ...... ....... ........ ........ ........ ........ ........ ........ .....11 .11 !.1. *a+mjena *a+mjena "oda "odataka taka..... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .............. ..........11 .11 !.2. ,ajedni(k ,ajedni(kii "ristu" "ristu" alatima.. alatima....... .......... .......... .......... .......... .......... .......... .......... .......... .......... ........... ................ ................... ..........11 .11 !.3. ,ajedni(k ,ajedni(koo u"ravljan u"ravljanje je "oda "odacima cima..... .......... .......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... ........12 ...12 !.. Podjela Podjela "oda "odataka taka..... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .........12 ....12 !.!. -euso%n -euso%naa o"erati%ln o"erati%lnost.. ost....... .......... .......... .......... .......... .......... .......... .......... .......... .............. .................. ................... ..............12 ....12 /. 0+%or 0+%or CASE tehnologi tehnologije... je........ .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... .......... ............13 .......13 #. Pravci Pravci ra+voja ra+voja CASE tehnolog tehnologije... ije........ .......... .......... .......... .......... .......... .......... .......... .......... .......... .............. ................... ............1 ..1 &. -odeli -od eliran ranje je "oslovn "oslovnih ih "odatak "odatakaa "omo)u "omo)u CASE alata. alata.... ...... ...... ...... ...... ...... ...... ...... ...... ....... ........ ........ ......1/ ..1/ &.1. 0m"lementa 0m"lementacija. cija...... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ........... ............... ..................1# .........1# &.2. Sistem Sistem kao naru(ilac naru(ilac..... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ........... ............1# ......1# &.3. &.3. -etodi -etodika ka "roi+ "roi+vo voa(a a(a soft softver veraa kao im"l im"leme ementa ntator tora.. a..... ...... ...... ....... ........ ........ ........ ........ ........ ......1# ..1# &.. &.. -ogu) -og u)ii "ro%le "ro%lemi mi i+meu i+meu i+voa( i+voa(aa i naru(i naru(ioc oca.. a..... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... .....1 ..1&& &.!. Kontrola Kontrola im"lementa im"lementacije cije..... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ............... ....................1& ..........1& . 'eki od CASE alata..... alata.......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .............. ...........2 ..2 .1. isio23. isio23...... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .........2 ....2 .2. C$$456i++ C$$456i++..... .......... .......... .......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... .......... ............2 .......2 .3. Er7in..... Er7in.......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ............. ................. .................21 ........21 1. *ever+no *ever+no in8injerst in8injerstvo... vo........ .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ........... ............... ..................22 .........22 11. -odeliranj -odeliranjee sistema.. sistema....... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ............. .............23 .....23 11.1. 9ijagrami 9ijagrami "rocesa.. "rocesa....... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ..........2 .....2 11.2. 9ijagram 9ijagram toka "oda "odataka taka..... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ............2 .......2!! 11.3. Konc Konce"tua e"tualna lna :ema %a+e %a+e "odatka.. "odatka....... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ..........2! .....2! 11.. 0nterna 0nterna i im"lemen im"lementacio taciona na :ema... :ema........ .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... .............. ............2/ ...2/ 11.!. Programsk Programskaa s"ecifikac s"ecifikacija ija modula... modula........ .......... .......... .......... .......... .......... .......... .......... ......... ......... .......... ............ ..........2& ...2&
Sadržaj Sadržaj 1. Uvod..... Uvod .......... .......... .......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... ............... .................... ................... ...........1 ..1 1.1. Pojam Pojam CASE tehnologi tehnologija... ja........ .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ........1 ...1 1.2. Ciljevi Ciljevi CASE tehnologij tehnologija... a........ .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... .......... .............. ..............1 .....1 1.3. Struktura Struktura CASE tahnologi tahnologija... ja........ .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .............. ..............3 .....3 2. Klasifiakc Klasifiakcija ija CASE tehnologi tehnologija.... ja......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ............. .......... .. 2.1. Klasifikac Klasifikacija ija na osno osnovu vu funkcija.. funkcija....... ......... ......... .......... .......... .......... .......... .......... .......... ............ ................ .................! ........! 3. Efekti Efekti "rimjene.. "rimjene....... .......... ......... ......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ............. .................. ................... ..........# .# . $so%ine $so%ine CASE tehnologi tehnologija... ja........ .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ............ .............& ......& !. 'a(ini 'a(ini na koje koje je mogu mogu)e )e integ integris risati ati CASE CASE tehno tehnolog logije. ije.... ...... ...... ....... ........ ........ ........ ........ ........ ........ .....11 .11 !.1. *a+mjena *a+mjena "oda "odataka taka..... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .............. ..........11 .11 !.2. ,ajedni(k ,ajedni(kii "ristu" "ristu" alatima.. alatima....... .......... .......... .......... .......... .......... .......... .......... .......... .......... ........... ................ ................... ..........11 .11 !.3. ,ajedni(k ,ajedni(koo u"ravljan u"ravljanje je "oda "odacima cima..... .......... .......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... ........12 ...12 !.. Podjela Podjela "oda "odataka taka..... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .........12 ....12 !.!. -euso%n -euso%naa o"erati%ln o"erati%lnost.. ost....... .......... .......... .......... .......... .......... .......... .......... .......... .............. .................. ................... ..............12 ....12 /. 0+%or 0+%or CASE tehnologi tehnologije... je........ .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... .......... ............13 .......13 #. Pravci Pravci ra+voja ra+voja CASE tehnolog tehnologije... ije........ .......... .......... .......... .......... .......... .......... .......... .......... .......... .............. ................... ............1 ..1 &. -odeli -od eliran ranje je "oslovn "oslovnih ih "odatak "odatakaa "omo)u "omo)u CASE alata. alata.... ...... ...... ...... ...... ...... ...... ...... ...... ....... ........ ........ ......1/ ..1/ &.1. 0m"lementa 0m"lementacija. cija...... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ........... ............... ..................1# .........1# &.2. Sistem Sistem kao naru(ilac naru(ilac..... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ........... ............1# ......1# &.3. &.3. -etodi -etodika ka "roi+ "roi+vo voa(a a(a soft softver veraa kao im"l im"leme ementa ntator tora.. a..... ...... ...... ....... ........ ........ ........ ........ ........ ......1# ..1# &.. &.. -ogu) -og u)ii "ro%le "ro%lemi mi i+meu i+meu i+voa( i+voa(aa i naru(i naru(ioc oca.. a..... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... .....1 ..1&& &.!. Kontrola Kontrola im"lementa im"lementacije cije..... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ............... ....................1& ..........1& . 'eki od CASE alata..... alata.......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .............. ...........2 ..2 .1. isio23. isio23...... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .........2 ....2 .2. C$$456i++ C$$456i++..... .......... .......... .......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... .......... ............2 .......2 .3. Er7in..... Er7in.......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ............. ................. .................21 ........21 1. *ever+no *ever+no in8injerst in8injerstvo... vo........ .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ........... ............... ..................22 .........22 11. -odeliranj -odeliranjee sistema.. sistema....... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ............. .............23 .....23 11.1. 9ijagrami 9ijagrami "rocesa.. "rocesa....... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ..........2 .....2 11.2. 9ijagram 9ijagram toka "oda "odataka taka..... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ............2 .......2!! 11.3. Konc Konce"tua e"tualna lna :ema %a+e %a+e "odatka.. "odatka....... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ..........2! .....2! 11.. 0nterna 0nterna i im"lemen im"lementacio taciona na :ema... :ema........ .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... .............. ............2/ ...2/ 11.!. Programsk Programskaa s"ecifikac s"ecifikacija ija modula... modula........ .......... .......... .......... .......... .......... .......... .......... ......... ......... .......... ............ ..........2& ...2&
12. 13.
Kratka Kratka istorija istorija CASE alata....... alata............ .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .........2 ....2 ,aklju(ak ,aklju(ak..... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ........... ............... ................... ................32 ......32
1.
4iteratura 4iteratura..... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ............3 .......333
1. Uvod CASE ;Com"uter Aided Soft7are Enginerring< je najjednostavnije re(eno ra+voj softvera "omo)u samog ra(unarskog ureaja. 0deja je da se sam "roces ra+voja softvera u :to ve)oj mjeri automati+uje. 'ajjednostavnije re(eno= CASE tehnologijama mo8emo +vati svaki softver koji je raen namjenski da %i se "omo)u njega automati+ovali +adaci +a i+radu nekog drugog softvera. 9akle= ove tehnologije se koriste +a odreene +adatke u automati+aciji kao :to su "ojedina(ni alati +a neki softver ali takoe i +a i+radu kom"letnih alata +a automati+aciju softvera tj. cilj je da se :to vi:e koraka u i+radi softvera automati+uje. a8no je na"omenuti da CASE tehnologije nisu +ami:ljene kao neka vrsta +amjene +a neku tehniku ili metodu u ra+voju softvera ve) isklju(ivo kao neka vrsta dodatka samim tim metodama i tehnikama koje se "rimjenjuju da %i se na kraju do%io kvalitetan "roi+vod. U"otre%a grafike je takoe %itan dio u CASE tehnologijama= sve %i tre%alo u (im ve)oj mjeri da %ude "rilagoeno samom korisniku. Kori:tenje CASE tehnologija je interaktivno i +%og toga je va8no da se "rilagode korisniku. 1.1. Pojam CASE tehnologija
>vorci CASE tehnologija su +a"ravo oso%e koje rade na ra+voju softvera= ra+vijaju ih sa ciljem da %i so"stvernu "roduktivnost u ra+voju softvera una"redili. Sama ideja "otekla je od toga da ra(unar "rakti(no sam "ove)a svoju "roduktivnost jer nema smisla te8iti ka tome da se "ove)a "roduktivnost drugih u ra+voju softvera ukoliko sam ra(unar nije u "ot"unosti iskori:ten jer i same informacione tehnologije generalno +asnivaju se na "rimjeni ra(unara. Samo "ove)anje "roduktivnosti nije jedini cilj= jednako je va8no da se vrijeme koje je "otre%no +a i+radu nekog "rojekta :to vi:e skrati ali da se +%og toga ne i+gu%i kvalitet "erformansi tog softvera te da se one dovedu na :to ve)i nivo "rimjenom ra+vojne "rocedure. U cilju "osti+anja "rethodno navedenih +adataka %ilo je neo"hodno da se kon+istentna tehnologija disci"linarno "rimjenjuje te da se njeni koraci u+ "rimjenu ra(unara dosledno reali+uju. 'ajjednostavnije re(eno CASE tehnologije su "rimjenjivane +a automati+aciju "ostu"ka u ra+voju nekog softvera i rije:enje je %ilo da se one :to vi:e "rimjenjuju. 1.2. Ciljevi CASE tehnologija
9a se "ove)a "roduktivnost samog "rojektanta kod aktivnosti ve+anih +a ra+voj nekog softvera 9a se vrijeme i+rade "rojekta skrati Kvalitet softvera je "o8eljno "ove)ati Performanse softvera je "otre%no una"rediti
,ami:ljeno je da se kon+istentna tehnologija disci"linirano "rimjenjuje da %i se "ostigli navedeni ciljevi= naravno= svaki od koraka se reali+uje "rimjenom ra(unara. $"et se dola+i do +aklju(ka da je cilj "rimjene CASE alata automati+acija samog "ostu"ka softverskog "rojektovanja. 'astec Cor"oration su %ili "rvi korisnici akronima CASE jo: davne 1&2. godine. 9esigne Aid je na+iv "rvog "roi+voda te kor"oracije= to je %io alat koji je slu8io +a semanti(ku i logi(ku "rocjenu softvera= isto tako i sistemskog di+ajna dijagrama te se na osnovu toga gradio rije(nik "odataka. Pored toga alat je "odr8avao di+ajn i strukturnu anali+u. 1
Akronim CASE +a"avo ima dva +na(enja= "rvi kao Com"uter Aided Soft7are Engineering tj. in8injersko "rojekovanje softvera ali isto tako ista skra)enica se koristi i +a Com"uter Aided S?stem Soft7are :to %i %ukvalo "revedeno %ilo in8injersko "rojektovanje informacionih sistema= sve to u+ "omo) ra(unara naravno. @eneralno= %ilo koji softver koji je namjenjen +a i+radu nekog drugog softvera u+ "risutnost automati+acije mo8emo svrstati "od CASE tehnologije= ovde se doslovno sam informacioni sistem koristi +a ra+voj nekog drugog informacionoh sistema. U skladu sa svime navedenim= mo8e se +aklju(iti da CASE tehnologije "ola+e od alata koji se koriste "ri automati+aciji nekog "ojedina(nog dijela sofvera ali isto tako i u slu(aju kada je "otre%no kom"letno re:enje +a automati+aciju tj. ve)in koraka se rje:ava automatski kori:tenjem CASE tehnologija= "oenta je da se "rakti(no i+rada kom"letnog softvera kao cjeline %a+ira na kori:tenju CASE tehnlogija. $vako je na samom "o(etku %ila +ami:ljena "rimjena CASE tehnologija dok ve) danas ih koriste svi koji se o+%iljnije %ave softverom= neki ih "rimjenjuju u samoj "raksi ali isto tako dosta je onih +a koje je jo: u eks"erimentalnoj fa+i :to i+ra8ava njihovu tendenciju ve)e "rimjene u %udnu)nosti. ,%og veoma %r+og ra+voja te samog ste"ena na"redka u kome se trenutno nala+e CASE tehnologije ne mo8emo "osmatrati vi:e samo kao sku" ra(unarskih "rograma. S o%+irom na to kakvu "o+iciju +au+imaju i svijetu informacionih tehnologija danas CASE tehnologije su definitivno "uno vi:e od toga. Po+nato jee da %e+ metodologije tehnologiju je nemogu)e +amisliti "a takav je slu(aj i kod CASE tehnologija. 9ok nisu i+mjenjene "rimjenjene metodologije od strane samih organi+acija koje su usvojile CASE tehnologije na samom "o(etku nije %ilo mogu)e ostvariti neku +na(ajnu korist od "rimjene CASE tehnologija. S o%+irom na to koliko su CASE tehnologije danas na"redne nemogu)e ih je vi:e "ojmiti samo kao +%ir samij alata koji se koriste +a ra+voj softvera. Slo8en sistem se sastoji od vi:e "odsistema= svaki od njih integri:e kom"onente5
ardver Softver 6a+u "odataka Procedure Kadrove
0ntegralna cjelina u CASE tehnologiji sastavljena od kom"onenti softvera i hardvera "redstavlja CASE alat. Pod CASE metodologiju se mogu svrstati "rocedure i jo: imamo CASE enciklo"ediju koja %i +a"ravo %ila sama %a+a "odataka. 9a %i se "rimjena CASE tehnologija smatrala us"je:nom "odra+umjeva se da odgovaraju)a metodologija +a ra+voj softvera %ude usvojena. Ako ovaj +ahtjev nije is"unjen onda u tom slu(aju CASE tehnologije nisu adekvatno iskori:tene. Automati+acija ima "ar %itnih karakterisrika koje je "redstavljaju5
Svaki re+ultat koraka metodologije mora %iri meuso%no usagla:en= Sve reali+ovane aktivnosti na "rojektu moraju %iti kom"letne= oenje dokumentacije.
Samom "ojavom CASE alata dola+e i neki +ahtjevi kao :to su disci"linirani i novi "ristu" in8injeringu softvera. CASE alati su uvijek namjenjeni +a odreene a"likacije i neo"hodno je da %udu "rimjenjeni i selektirani u tim a"likacijama. $%uka ljudi koji rade sa samin CASE alatima je isto tako o%ave+na jer sami CASE alati kao i ve)ina drugog softvera su samo "rakti(no sredstvo koje softverski in8injer ili neka druga oso%a moraju adekvatno iskoristiti ukoliko 8ele da oni is"un svoju namjenu. Shodno tome= sam krajnji efekat ne +avisi 2
samo od samog CASE alata i njegovog kvaliteta nego i od +nanja koje "osjeduje njegov korisnik i s"oso%nosti dag a iskoristi. 1.3. Struktura CASE tahnologija
$":ta struktura CASE tehnologije se sastoji od slede)ih alata koji se koriste +a5
strate:ko "laniranje sistem anali+u di+ajniranje %a+e ra+voj sistema i+gradnju samog sistema u"ravljanje tim sistemom "odr:ku svim "rocesima u"ravljanje cjeloku"nim "rojektom enciklo"ediju sistema
Podaci o ra+voju i formacionog sistema is vim njegovim elementima nala+e se u CASE enciklo"ediji. 'ju mo8emo "osmatrati kao s"onu i+meu svih elemenata strukture CASE tehnologije koje smo na%orjali= ona "ored toga nudi mogu)nost nadove+ivanja nekih of fa+a ra+voja informacionog sistema "omo)u nje. U slu(aj kada se u informacionom sistemu neke fa+e ra+voja automacki nadove+uju meuso%no "oenta je da se alati i+ neke fa+e u istom trenutku nude na ras"olaganje drugim alatima u nekoj od %udu)ih fa+a u "rocesu ra+voja sistema. 'avedene alate ne "osjeduju svi CASE "roi+vodi u svojoj mati(noj strukturi= %itno je to naglasiti= iako svaki do%avlja( u su:tini nastoji da ra+vije neke so"stvene ili u saradnji sa nekim neku odreenu CASE tehnologiju koja %i na kraju "redstavljala odreenu +aokru8enu cjelinu. 0sto tako= mo) CASE tehnologija nije jednaka u svim slu(ajevima. >ako recimo neke od njih imaju do%ar alat +a anali+iranje sistema dok druge do%ro rade +a di+ajniranje %a+e "odataka= +atim recimo neke imaju ra+vijenu mogu)nost strate:kog "laniranja ili (ak mogu u"ravljati cijelim "rojektom itd. 9akle= kao :to se mo8e +aklju(iti= naj%olji re+ultati se "osti8u ukoliko kom%inujemo vi:e CASE tehnologija koje su do%re na ra+li(itim "odru(jima. Sama "rimjena se organi+uje tako :to se alati i+ jednog sku"a "rimjenjuju u "rvoj fa+i ra+voja= "a onda neki drugi u drugoj fa+i ra+voja i tako svaka redom koristi "otre%ne alate +a svoju reali+aciju. Primjena CASE tehnologije na ovaj na(in mo8e i+a+vati neke neminovne "ro%lem jer do sada nije definisana struktura CASE enciklo"edije koja %i va8ila +a sve. >ako recimo ako imamo u jednoj enciklo"ediji "odatke koji su ve+ani +a neku tehnologiju oni u ve)ini slu(ajeva nisu kom"ati%ilni sa "odacima koji se nala+e u nekoj drugoj enciklo"ediji koja slu8i u neku druga(iju svrhu. 9akle= glavni "ro%lem u tome je :to svaka ra+li(ita tehnologija ima druga(ije standard "a se "ri samom oda%iru na to mora skrenuti "a8nja. 0sto tako va8no je na"omenuti da same CASE tahnologije nisu u mogu)nosti samostalno automatski ra+viti neki sistem ve) samo "osjeduju alate i metodologiju koji dalje omogu)uju ra+voj samog sistema (ija je radna "roduktivnost visoka.
3
2. Klasifiakcija CASE tehnologija CASE tehnologije se klasikuju na osnovu vi:e kriterijuma= a to su5 Prema "osjeduju)im funkcijama 0nstrumentalnu ulogu koju imaju kada dou do i+vr:ioca ili u"ravlja(a aktivnostima ,avisno od mogu)nosti "rimjene i to u ra+nim fa+ama ra+vijanja softvera U +avisnosti od softvera i hardvera koji imaju na ras"olaganju 0+vorno "orijeklo Cijena i+rade Bo: jedan od kreiterijuma na osnovu koga je mogu)e klasifikovati CASE tehnologije je kom"letnost same CASE tehnoloigje. 'jome defini:emo koliko +adataka metodologije u svom 8ivotnom ciklusu automati+acije CASE tehnologija "odr8ava i na taj na(in do%ijamo slede)u "odjelu5 U""er CASE -iddle CASE 4o7er CASE U""er CASE o%uhvata sve one CASE tehnologije koje imaju namjenu da automati+uju fa+e u"ravljanja "rojektima i fa+e strate:kog "laniranja u samom sistemu. -iddle CASE se %ave automati+acijom sistema u fa+ama di+ajna i fa+i anali+e. 4o7er CASE automati+uju onaj dio alata u CASE tehnologijama koji je ve+an +a "rogramiranje i takoe fa+u testiranja kao i uvoenje samog informacionog sistema. 'aredna "odjela %ila %i "rema integrisanosti CASE tehnologija5
CASE tool CASE toolkit CASE 7ork%ench
CASE tool "redstavljaju alate koji neke aktivnosti CASE tehnologija automati+uju u kada je informacioni sistem u fa+i ra+voja. $ne koriste grafi(ku "odr:ku koja danas "redstavlja jako mo)an alat :to +an(ajno olak:ava dokumentovanje i o"is sistema. @rafi(ki se takoe :to vi:e nastoji "ri%li8iti korisni(ki interfejs da %i %io :to %li8i korisniku i na taj na(in olak:ao rad sa samim alatom. CASE toolkit slo8i +a to da %i se jedna kom"leksnija fa+a ili funkcija "odijelila na vi:e fa+a a da ih ovaj alat sve ujedini. 9akle tu kre)emo od ra+voja svake funkcije ili fa+e "ojedina(no da %i na kraju do%ili jedan slo8eniji "rojekat. CASE 7ork%ench se koristi kada automati+ujemo sve +adatke u "rocesu ra+voja informacionog sistema "o fa+ama i samim tim "redstavljaju kolekciju CASE "aketa koja je integrisana. Kada se kolekcije CASE "aketa usklade sa odgovaraju)im hardverom do%ije se radna stanica +a ra+voj softvera. >re%a imati na umu kada se %iraju CASE alati da vrste sistema i karakteristike kojima su oni "rvenstveno namjenjeni %udu usklaeni sa "otre%ama korisnika i +ahtjevima njegovog sistema u +avisnosti +a :ta 8elimo koristi neku od CASE tehnologija.
!
CASE tehnologije mo8emo jo: takoe "odijeliti "rema fa+ama 8ivotnog ciklusa koje CASE tehnologije "okrivaju= "a tako imamo5 Projektanski CASE Po(etak automati+acije 8ivotnog ciklusa ;"rve tri fa+e<5 1. Strategijsko "laniranje 2. Anali+a 3. 9i+ajn Programerski CASE Automati+acija slede)ih fa+a 8ivotnog ciklusa5 1. Programiranje 2. 0m"lementacija 3. Eks"loatacija . $dr8avanje 0ntegrisani CASE U(estvuje u svim fa+ama ra+voja sistema. 2.1. Klasifikacija na osnovu unkcija
Ako +a "rimarni kriterijum +a klasifikaciju CASE tehnologija %udu same funkcije koje one "osjeduju tada do%ijamo slede)u "odjelu5
Alati koji se koriste +a "laniranje "oslovnoh sistema Alati "omo)u kojih se u"ravlja "rojektima Alati +a "odr:ku Alati +a di+ajn i anali+u Programerski alati >estni alati i alati integracije Alati +a fa+u "rototi"skog ra+voja Podr:ka odr8avanja
CASE tehnologije koje se koriste +a "ra)enje aktivnosti i+meu organi+acionih jedinica i tokova informacija s"adaju "od alate +a "laniranje "oslovnoh sistema. Kod alata +a u"ravlajnje "rojektima imamo slede)i sku" aktivnosti5 1. U"ravljanje "odacima i "riku"ljanje informacija 2. Anali+u ri+ika 3. erifikaciju standarda . rijednost "rojekta i "rocjena vrijednosti !. Plan "rojekta /. $cjena "roduktivnosti #. $siguranje kvaliteta &. Sku"ljanje informacija i "ronala8enje resursa Alati koji su neo"hodni kro+ (itav "roces softverskog in8injeringa su alati "odr:ke= ove aktivnosti su dakle dostu"ne u svakom trenutku. Sadr8e alate +a "otre%e dokumentovanja= +atim alate koji daju "odr:ku sistemskom softveru= isto tako alate +a "odr:ku kod osiguranja kvaliteda= +atim +a u"ravljanje %a+om "odataka itd. Alati +a di+ajn i anali+u su dio CASE tehnologija koje "oma8u in8injerima da krairaju sam model sistema koji se gradi. $vaj model se sastoji od "rika+a toka "odatka= "rika+uje sadr8aj "odatka= kao i sadr8aj "rocesa= "rika+uje kontrole itd. 'a kvalitetu i ra+voj modela direktno uti(u ovi alati jer oni se koriste +a samo kreiranje modela i dalji ra+voj. Pomo)u njih se otklanjaju gre:ke na osnovu o%avljene "rovjere kon+istentnosti te "rovjene vrijednosti modela= /
velika "rednost je :to na ovaj na(in to mo8emo u(initi "rije nego se "ree na di+ajn ili (ak "o(ne sa im"lementacijom. ,a "omo) "ri kreiranju "rogramskih re:enja tu su alati +a "rogramiranje koji su namjenjen da "odr8avaju CASE tehnologije u ovoj klasi. U tu gru"u se o%i(no svrstavaju neki od konvencionalnih alata koji se koriste +a "odr:ku "rogramskim je+icima= +atim simulatori setova instrukcija kao i editori te generatoti modula i koda itd. 9a %i se softver na "ravi na(in uklo"io u okolinu u kojoj )e funkcionisati +adu8eni su alati +a testiranje i integaraciju. CASE tehnologije ove klase ra+vnijene su u :to ve)oj mjeri da %i se kona(ni "roi+vod :to %olje usavr:io +a "otre%e korisnika i na taj na(in osigurao svoje mjesto na tr8i:tu. Primarna svrha ovih alata je da "riku"e :to vi:e informacija i "odataka koji )e se dalje koristiti tokom testiranja. Pored njih tu su alati koji i+vorni kod anali+iraju %e+ "rethodno i+vr:enog testa= "a +atim alati "omo)u kojih se i+vorni kod anali+ira u toku o%rade= te alati koji +a +adatak imaju da "omognu u "laniranju. Bako va8na gru"a alata su oni koji simuliraju sam hardver i jo: dodatno neke s"oljene elemente jer se na ovaj na(in rade naj"ou+daniji testovi i "rovjere. Bako %itan dio kod i+rade softvera su alati koji slu8e +a "odr:ku odr8avnja. Prema nekim "odacima koji se odnose na CASE tehnologije ovo je "rakti(no # "osla u cjeloku"noj i+radi softvera. Dunkcije se mogu "odijeliti u tri gru"e5 1. 0n8injering u su"rotnom smijeru ;generi:e ra+vojni i analiti(ki model na osnovu i+vornog koda< 2. *ekonstrukcija koda 3. *ein8injering
#
3. Eekti !rimjene Prve tri fa+e automati+acije su najva8nije u ra+vojnom ciklusu CASE tehnologija i +%og toga se njima daje najvi:e "a8nje. 6itno je to naglasiti jer su veliki tor:kovi ukoliko doe do gre:ke da %i se ona "oslije uklonila u nekoj od fa+a 8ivornog ciklusa. U "raksi se "oka+alo da ako se kasnije otkrije gre:ka njeno saniranje je sku"lje. Kvalitetu samog softversog in8injeringa +na(ajno mo8e do"rinijeti "rimjena CASE tehnologija ako se efikasno koristi. CASE tehnologije imaju mnogo "o+itivnih strana= naj%itnije je to da svoju funkciju i+vr:avaju a "ored toga se u:tedi na radnoj sna+i= isto tako in a vremenu kao i na finansiranju a "ored toga omogu)uju u dosta slu(ajeva ne:to :to %e+ njih ni ne %i %ilo i+vodivo ili %i %ilo te:ko i+vodivo. a8no je naglasiti da se "rimjenom CASE tehnologija +na(ajno smanjuju gre:ke "a se samim tim i "roduktivnost "ove)ava. Po+itivni efekti CASE tehnologija5 -odel sistema se grafi(ki "re+entuje Korekcija nekon+istentnosti i detekcija gre:aka Prototi" sistema se interaktivno i+rauje Ukoliko se neka kom"onenta mo8e u ra+voju "onovo u"otrije%iti sistem ju identifikuje *a+vojem sistema se efektivno u"ravlja rijeme utro:eno +a ra+voj se efektivno kontroli:e Sredstva koja su namjenjena +a ra+voj se takoe kontroli:u 9okumentacija koja je uvijek a8urna se generi:e automacki 9akle= CASE tehnologije "rednja(e u odnosu na neke tradicionalne na(ine +a ra+voj sistema kao :to mo8e vidjeti i+ "rethodno navedenih efekata "a tako da ako su "ro%lem ti"a neta(nosti ili ka:njenja u i+ved%i +astu"ljeni= kao i u slu(aju kada je dokumentovanost lo:a ili se i+mjene te:ko rade CASE tehnologije mogu +natno "omo)i. >e:ko je ta(no "rocijeniti koliki su efekti "rimjene CASE tehnologija jer je "eriod kori:tenja do sada relativno kratak. Ali neka istra8ivanja i dosada:nje studije "oka+uju "o%olj:anja koja se kre)u od 3 "a do /. *e+ultati su jo: uvijek "rili(no neusagla:eni ali %e+ o%+ira na to veoma je "o+itivna mjera da su skoro "a u svim studijama "rimjena CASE tehnologija dovele do "o%olj:anja. Samo "ove)anje "roduktivnosti= a "ored toga i mnogo ta(nija i+gradnja sistema +a kra)i "eriod dovela je do toga da in8injeri koji se %ave i+gradnjom softvera (esto u "ot"unosti "romjene metode ra+voja ili ih i+mjene u nekoj mjeri kako %i na taj na(in omogu)ili im"lementaciju CASE tehnologija.
&
". #so$ine CASE tehnologija Uo":teno gledano= korisni(ki +ahtjevi su ti koji diktiraju ra+voj CASE tehnologija i samim tim :ta i u kom okru8enju je "otre%no "rimjeniti te se tako dola+i do finalne ideje na koji na(in )e funkcionisati tehnologija. 'e "ostoje neki konkretni standardi kada je rije( o CASE tehnologiji. $ne su %rojne= :to je jasno na osnovu svih gru"a koje su navedene kao i o":irnim mogu)nostima "rimjene u mnogim of fa+a u ra+voju nekog softvera. 9akle= jasno je da CASE tehnologije "okrivaju skoro sve fa+e u i+gradnji softvera. $so%ine koje moraju +adovoljiti "roi+vodi CASE tehnologija da %i se smatrali kvalitetnim su slede)e5 4ako i jednostavno kori:tenje -ogu)nost otkrivanja i otklanjanja gre:ke Podo%nost -o) tehnologije Pou+danost Kon+istentnost Dunkcionalnost -etodologija 0ntegracija
Podr:ka
Svaka nova tehnologija je u velikoj "rednosti ako je "rilagoena korisniku= +%og toga jednostavnost kori:tenja "rakti(no "retstavlja efektivnost same tehnologije "osmatrano od strane korisnika. 6e+ o%+ira na slo8enost tehnologije i samu funkcionalnost CASE tehnologije se kreiraju na takav na(in da jednostavno= lako i %e+ "otre%e +a "uno ra+mi:ljanja dovedu do re:enje nekog konkretnog +adatka. U su"rotnom= ako sam korisnik tre%a odraditi dio ovog "osla i utro:iti svoje vrijeme da %i na kraju tehnologija radila te da %i je on mogao koristiti onda je ve) u"itno koliko ona is"unjava svoj +adatak te da li uo":te "oma8e jer ukoliko imamo ovakav slu(aj mogu)e je da ona onda samo "redstavlja smetnju u radu. Kako se CASE tehnologije smatraju na"rednima od njih se o(ekuje da otrkrije gre:ke u samom "rocesu "a (ak da neke od njih i samostalno koriguje. Komunikacija takoe tre%a da %ude na veoma visokom nivou interakcije te da jasno i konci+no vodi dijalog sa korisnikom u toku rada= jako je va8no da sve %ude "redstavljano na na(in koji je korisniku "rihvatljiv i ra+umljiv. 9a %i tehnologija +adovoljila +ahtjeve korisnika neo"hodno je da %ude u mogu)nosti kom%inovanja sa drugim tehnologijama= njena fleksi%ilnost u ovom smislu je veoma +na(ajna jer +ahtjevi korisnika su ra+li(iti. 'eka ne"lanirnja reagovanja od strane tehnologije ili sli(no i+a+ivaju najvi:e ne+adovoljst%a od strane korisnika= stoga je nu8no takve situacije svesti na minimum a "o8eljno je da se iste i u "ot"unosti otklone. 9akle= smatra se nedo"ustivim da +%og svojih i+la+a tehnologija dovodi do toga da %lokira korisnika a nisu "o8eljna ni neka i+nenaenja= da korisnik %ude +%unjen re+ultatom ili sli(no. >akoe= od korisnika se o(ekuje da koristi nared%e koje su konci+ne= jednostavne i jasne.
Kada je rije( o "odo%nosti ona tehnologija koja ima nivo "odo%nosti da +ahvaljuju)i svojim "erformansama mo8e rije:ini veliki %roj +adataka u toku ra+voja softvera onda se takva tehnologija mo8e smatrati kvalitetnom. *ecimo samu "odo%nst mogu)e je i+ra+iti tako :to se jednostavnom nared%om mo8e dovesti do nekog od glavnih efekata +a koje je tehnologija ra+vijana. Pored toga= od CASE tehnologije se o(ekuje da "redo(i sve informacije o stanju same CASE tehnologije= cilj ovoga je da se korisniku "redo(i "odo%nost tehnologije tako :to )e i+neijeti :to vi:e informacija o svom stanju= tako (ak se sti(e utisak da je tehnologija (ak i "odo%nija nego :to to u stvari jeste. Snaga ili mo) tehnologije se rangira na osnovu nekoliko faktora5 1. 'ivo "ou+danosi 2. Pona:anje "ri lo:im ili te:kim uslovima 3. Dunkcionisanje . ,na(ajnost tehnolo:kog nedostatka !. Aktivna kon+istentnost u tehnolo:kom funkcionisanju /. 'a(in integracije u s"oljno okru8enje -ogu)nost alata da korisniku "ru8i rastere)enje kada je rije( o ri+iku koji %i sam korisnik mogao na"raviti "redstavlja njegovu "ou+danost= :to je +a korisnika veoma +na(ajno. ,ami:ljeno je da CASE tehnologije naj"rije otkriju eventualne gre:ke a +atim iste i otklone= s tim da se takoe o%rati "a8nja in a "osledice koje nastaju +%og gre:ke. Ako se sama gre:ka otkloni a "osledice koje je ona "rou+rokovala ostanu to +na(ajno ugro8ava "ou?danost sistema. Samotestiranje je u ovome jako va8no= tehnologija tre%a samu se%e da "rovjeri i taj mehani+am je +adu8en +a to da omogu)i "ravilno funkcionisanje . Potvrda mo)i i veli(ina snage tehnologije sti(e se na osnovu kon+istentnosti aktivnosti= ona "odra+umjeva semantiku i sintaksu koja mora %iti do%ro definisana. U istom trenutku= nu8no je da thenologija %ude ra+vijena do te mjere da %e+ "ro%lema "odr8ava ra+like i+meu "ojedinih ver+ija i da iste %udu u "ot"unosti kom"ati%ilne. Dunkcionalnost je oso%ina koju nije mogu)e definisati samo na osnovu +adatka u svrhu kojeg je neka od tehnologija di+ajnirana= nego su jako %itne i same metode koje se koriste +a i+vr:avanje +adataka. eoma je velik %roj tehnologija od strane kojih su metodologije "odr8ane. 0s"oljavanje efikasnosti od starane same tehnologije se ogleda kro+ mogu)nost "odr:ke metoda i ona do"rinosti ne"osredno mogu)nosti ra+umjevanja i definisanja tehnolo:kih oso%ina. Efikasnost se isto tako mo8e "osmatrati kro+ korisnost i+la+a i njihov kvalitet sa as"ekta korisnika. Cilj CASE tehnologija je da metode integti:u te ih "ove8u +a metodologijom. 'eke od tehnologija imaju mogu)nost "odr:ke (ak svih "odru(ja u metodologiji ili %arem vi:e njih= ako ne onda u krajnjem slu(aju najmanje jedno "odru(je metodologije i mogu re+ultate meu fa+ama ne+avisno "renositi. Struktura i konce"cija CASE tehnologija odreena je direktno i+a%ranom metodologijeom= samim tim i tehnikama te metodama koje se koriste. $%ave+no je da tehnologija osigura "rimjenu metodologije koja je kon+istentna= a isto tako i metoda ne kojima je +asnovana. >o osigurava korektno funkcionisanje te nagla:ava "otre%u da se kontroli:e da li je u "ot"unosti s"rovedena metodologija. Bo: tre%a na"omenuti i da sama tehnologija ima +adatak da generi:e korektne i+la+e koji su metodologijom striktno strogo definisani. Postoje)i sistem je o%i(no temelj +a ra+voj CASE tehnologija. Shodno tome= od velikog je +na(aja da se CASE tehnologija uklo"i u "ostoje)i sistem i "rakti(no nadogradi na njega. 4ako "ove+ivanje sa informati(kim sistemom koji ve) "ostoji tu je od velikog +na(aja. Cilj je 1
da instalacija %ude jednostavna ted a "ostoje)e structure %a+a "odataka i datoteka %udu nesmetano kori:tene kao i "rije nego su se CASE tehnolgije "o(ele koristiti. Ukoliko se u organi+aciji= :to je (est slu(aj= koristi vi:e tehnologija ovog ti"a o%ave+no je da "renos "odataka i njihova ra+mjena %ude omogu)ena i da se nesmetano i+vodi i+meu ra+li(itih CASE tehnologija koje se koriste u istoj organi+aciji. ,a rangiranje CASE tehnologije na osnovu kvaliteta "odr:ke %itno je o%ratiti "a8nju na nekoliko slede)ih elemenata5 1. *e"utacija koju ima do%avlja( 2. *as"rostanjenost i +relost tehnologije 3. Ukoliko se ku"uje nekoliko ko"ija ra+amtranje mogu)nosti da se tro:kovi u tom slu(aju umanje . 9avanje tehnologije na ras"olaganje +a i+najmljivanje !. Povrat sredstava ukoliko doe do vra)anja tehnologije /. Ukoliko je i+ nekih ra+loga "otre%an i+vorni kod tehnologije da se omogu)i "ravo "ristu"a istom #. Uslovi odr8avanja &. 6lago vremena reakcija kada je odr8avanje u "itanju . Ukoliko doe do nekog "ro%lema "ru8anje mogu)nosti odgovora 1. 9ogovor oko "rava na nove ver+ije tehnologije ako je daljni ra+voj u "lanu= "ogotovo sa as"ekta financiskog gledi:ta 11. *ok trajanja garancije 12. 9o+voljeni rok +a is"oruku 13. $%uka +a %udu)e korisnike tehnologije 1. Ukoliko je "otre%no da li su na ras"olaganju neki od "rograma o%uke 1!. 'ivo stru(nosti i "edago:ke s"oso%nosti kadrova koji rade na o%uci >re%a na"omenuti i da CASE tehnologije nude mogu)nost integralnog ra+vojnog okru8enja i to da metodolo:ki "ristu" %ude ne+avistan od sistemskog ra+voja te da "ru8i "rilikom svake aktivnosti "odr:ku= "o(ev:i od definisanja= "a +atim ra+voja softvera i sve do samog odr8avanja tog softvera. U+ sve ovo %itno je da se omogu)i da funkcionisanje sistema %ude o"timalno ted a "rocenat gre:aka do kojih mo8e do)i u "rocesu %ude sveden na minimum.
11
%. &a'ini na koje je mogu(e integrisati CASE tehnologije i:e je na(ina "omo)u kojih se mo8e integrisati CASE tehnologija. -eutim= %roj alata koji se koriste ne+avisno i koji su uo":teno ne+avisni je veoma mali. $ni koji su tako kreirani mogu samostalno da "onude i+la+e kao "rogram= "odatak ili document. U ovom slu(aju ve+a ovakvih alata sa ostatkom okru8enja je "a"ir koji graditelj softvera "renosi na uvid ostalima. U stvrnom svijetu vi:e je na(ina integracije kojima se mogu "ove+ati CASE tehnologije= s to su5 *a+mjena "odataka ,ajedni(ki "ristu" alatima U"ravljanje "odacima je +ajedni(ko 9ijeljenje "odataka -euso%na o"erati%ilnost %.1. )a*mjena !odataka
-ogu)nost koju ve)in alata "osjeduje je ra+mjena "odataka a ona je i naj(e:)i slu(aj. U takvom slu(aju alati se "revode u o%lik datoteke koja je nestruktuirana i to u formatu :tam"e. 'a ovaj na(in do%ijamo mogu)nost +a:tite "odataka alata= te se elimini:u "otre%e +a uno:enje elementa nanovo te u"isivanje s"ecifikacija elementa "onovo in a taj na(in se takoe i :tam"arske gre:ke s"re(avaju. ,ajedni(kom akcijom ra+vijaju se "revodioci od strane samih is"oru(ilaca alata i od njih se ti alati najlak:e mogu i na%aviti. Pored toga= u nekim slu(ajevima= nudi se jo: jedna varijanta +a na%avku "revodilaca= naime= u nekim slu(ajevima iste ra+vijaju i korisnici i konsultanti. Pro%lemi u ovom drugom slu(aju (esto nastaju kod toga :to se u dosta slu(ajeva samo dio ovako "revedenih "odataka mo8e i "rihvatiti na ovaj na(in i da se oni dalje mogu koristiti u drugom alatu. >aj "ro%lem je mogu)e otkloniti tako :to se kom"ati%ilnost naknadno defini:e. Bo: jedan "ro%lem koji i+iskuje konstantno "reno:enje i "revoenje datoteka jer se iste stalno ra+vijaju samim ra+vojem softvera koji je u ve)ini slu(ajeva konstantan. Pro%lem sa sinhroni+acijom takoe je (esto i+ra8en kada su u "itanju dvije ili vi:e ra+li(itih ver+ija softvera. esto je slu(aj da se na jednom "rojektu koristi mnogo alata i tada je nu8no i+%je)i stalno "revoenje i transferisanje= va8no ga je i+%je)i i +%og toga jer je dodatna ote8avaju)a okolnost to :to je jednosmjerno. Pro%lem je u tome :to mogu)nost vr:enja o%ostranih i+mjena nije mogu)a :to direktno dovodi u "itanje integralnost konfiguracije i odr8avanje iste kro+ u"otre%ljivane ni+ove alata. %.2. +ajedni'ki !ristu! alatima
'aredni nivo integracije je +ajedni(ki "ristu" alatima. $n omogu)uje korisniku da se vi:e alata koji su ra+li(iti "o+ove na isti na(in= recimo i+ "adaju)eg menija. $vo najvi:e dola+i do i+ra8aja u multitasking okru8enju jer se alati mogu otvarati simultano= isto tako ula+i se mogu kodirati ru(no a i+la+i di+ajna se u"oreuju ru(no kako god je to korisniku naj"ogodnije. Kao "rimjer mo8emo navesti kada korisnik istovremeno tre%a dijegrame strukture= dijagrame tokova "odataka i jo: u+ to i+vorni kod i rije(nik "odataka a sve njih ra+li(iti alati odr8avaju. Kada se +ajedni(ki "ristu" alata koristi u ovakvom okru8enju= mogu)e je +na(ajno u"orstiti ra+mjenu "odataka i+ jednog alata u drugi alat i to tako :to se uvede "rocedura 12
"revoenja koja je u"ro:tena i+%orom makro funkcije ili o%i(nim i+%orom menija :to je jako (est slu(aj u "raksi. %.3. +ajedni'ko u!ravljanje !odacima
$vakav na(in um"ravljanja "odacima je +ami:eljen tako da se u samo jednoj logi(koj %a+i "odataka dr8e svi "odaci tj. da su u njoj integrisani "odaci i+ vi:e alata. $va +ajedni(ka %a+a mo8e %iti fi+i(ki centrali+ovana ili decentrali+ovana. 'a ovaj na(in integrcija +na(ajno u"rosti ra+mjenu informacija te di8e nivo na kome su "odaci integrisani. $dlika svakog alata je da se najaktuelnijim "odacima mo8e trenutno "ristu"iti i da su stalno dostu"ni= u ovu kategoriju uglavnom s"adaju oni "odaci koji su stalno a8urni. 0stovremeno na ovaj na(in se sti(e jo: jedna "rednost a to je da se lako u"ravlja ver+ijama alata i lako se mogu kontrolisati "rava "ristu"a. Kod kontrole "rava "ristu"a to se uglavnom radi na takav na(in da se ru(no sve kontroli:e "omo)u "rocedura "rijavljivanja i odjavljivanja. >u je jo: jedna od dodatnih "ogodnosti a to je da je tvorcima softvera omogu)eno da kom%inuju "oslove i rade na ra+li(itim djelovima softvera a to sve +ahvaljuju)i funkciji integrisanja "odataka. esto ovakva gru"a alata "osjeduje i karakteristiku "rovjere :to omogu)uje da se utvrde nekon+istentnosti meu re+ultatima i+meu ra+li(itih autora. 0ako se +ajedni(ki u"ravlja na istom nivou "odacima i+ alata koji su ra+li(iti ti alati ne "o+naju interne structure "odataka meuso%no te u di+ajnu "redstavljaju semantiku. Pro%lem "redstavlja to :to je i dalje "otre%no "revoenje koje se vr:i ru(no ako 8elimo da i+la+ nekog alata koristi neki drugi alat. %.". Podjela !odataka
U slu(aju dijeljenja "odataka integracija se vr:i %e+ ikakve transformacije= ovaj na(in integracije je najjednostavniji jer structure alata su kom"ati%ilne= imaju isto tako istu semantiku :to i omogu)uje njihovu direktnu u"otre%u %e+ nekih dodatnih transformisanja. Pri samom di+ajniranju void se ra(una o tome da svaki alat %ude kom"ati%ian sa drugim alatima i tako je omogu(eno nesmetano djeljenje "odataka. S o%+irom na sve navedeno= tre%a jo: na"omenuti i to da se dijeljenje "odataka naj(e:)e "rimjenjuje ukoliko se radi o alatima istog "roi+voa(a ili ukoliko doe do strate:kog "ove+ivnja vi:e "roi+voa(a sa ciljem da na"rave takav alat. $vakve intervencije se u nekim slu(ajevima vr:e (ak i ako +ahtjev "oti(e od samo jednog korisnika. 'aj%itniji dio "osla +a ovakav metod "ove+ivanja odradili su standardi +a integraciju CASE alata koji su omogu)ili do%ru osnovu +a to. %.%. ,e-uso$na o!erati$lnost
'ajvi:i nivo integracije jeste meuso%na o"erati%ilnost. >u se "ojedina(ni alati integri:u i da %i se "ostigla neo"hodno je da %ude reali+ovana +ajedni(ka "odjela "odataka i +ajedni(ki "ristu". Pored ovoga da %i se ostvarila "una meuso%na integrisanost u CASE okru8enju moraju se is"uni jo: dva uslova tj. elementa5 Sredstva kontrole U"ravljanje meta "odacima Pod meta "odacima smatramo sve one koji su "roi+od nekih od CASE alata= "ored toga oni moraju nositi i informaciju o samom "rocesu softverskog in8injeringa.
Pod meta "odacima "odra+umjevamo5 1. 9efinicije o%jekta 13
2. ,avisnosti i ve+e meu o%jektima 3. 9i+ajnerska "ravila . Procedure= dogaaje i tokove "rocesa Sredstva kontorle slu8e da se ostatku okru8enja od strane "ojedina(nih alata dostavi o%avjest o nekim +na(ajnijim dogaajima. Pod ostatkom okru8enja se "odra+umjevaju rukovodioci "odatka= ostali alati ili neko tre)i. >akoe "ored samog o%avje:tavanja mogu)e je i slanje +ahtjeva +a odreenu akciju nekom servisu ili alatu= to se radi "omo)u trigera. Kao "rimjer mo8e se navesti neki slu(aj kada recimo alat +a di+ajniranje tre%a da o%avjesti alat koji u"ravlja konfiguracijom u slu(aju kada se kreira neka nova ver+ija di+ajnerskog dokumenta da %i alat koji u"ravlja konfiguracijom mogao i+vr:iti "rovjeru da li je taj document kon+istentan. Sredstva kontrole su ta koja "oma8u da se integritet okru8enja odr8i te ona su takoe ta koja su du8na da o%e+%jede sredstva koja su "otre%na +a automati+aciju standardnih "rocedura i "rocesa.
. /*$or CASE tehnologije $vaj dio "osla "rakti(no o%avljaju organi+acije koje 8ele ne%aviti neku od CASE tehnologija. Uglavnom svaka od organi+acija se vodi nekim svjoim +ahtjevima i "otre%ama kada na%avljaju tehnologiju. Prilikom "rocesa "rocjene "rola+i se kro+ slede)e korake5 Anali+ranje +ahtjeva i "otre%a korisnika Anali+iranje "ostoje)eg okru8enja Utvrivanje "otencijalnih CASE tehnologija 0+%or tehnologije te ocjenjivanje kvaliteta eoma +na(ajan ako ne i naj+na(ajni korak "ri oda%iru CASE tehnologije je anali+a +ahtjeva i "otre%a korisnika. ,a o"redjeljivanje koji ta(no model softvera )e se "rimjeniti tre%a organi+acija da se o"redjeli isto tako da odlu(i o osnovnim u"ravlja(kim te tehni(kim +adacima. Ukoliko neki +adatak +elimo i reali+ovati %ilo da se radi o djelimi(noj ili "ot"unoj reali+aciji ti +adaci se "rethodno moraju ta(no identifikovati da %i se mogla reali+ovati "omo) automati+ovanih alata. Prethodni metodolo:ki koraci su uvijek u "otu"unosti "ove+ani sa anali+om "ostoje)eg okru8enja. $d CASE tehnologije se o(ekuje da %ude okru8enju "ot"uno "rikladna= ali u svakom slu(aju uvijek tre%a ostaviti "rostora +a ograni(enja jer su mogu)a i tre%a ih u+eti u ra+matranje. 'eka od njih su recimo5 dosada:nja "raksa= iskustvo +a"oslenih= odnosi sa do%avlja(ima= vrijeme= novac itd. $vakva ograni(enja nije dovoljno samo identifikovati nego ih je "otre%no i anali+irati= te da se utvrde mogu)nosti njihovog otklanjanja ili as"ekti mogu)ih "romjena. 'aredni korak je identifikovanje "otencijalne liste CASE tehnologija= tu se korisniku "rakti(no nude tehnologije +a koje se smatra da %i ga "otencijalno mogle +adovoljiti u +avisnosti od njegovih +ahtjeva i "otre%a. 0+%or tehnologija je ve) sada jako veliki u+ tendenciju %r+og daljnjer ra+voja i rasta. Postoje)e tehnologije se "romovi:u kro+ reklamne materijale= "re+entacije itd. 'aj+na(ajni korak u ovoj metodologiji je ujedno i "oslednji. 'a svaku od CASE tehnologija koje su u "otencijalnoj listi identifikovane se "rimjenjuju svi kriterijumi koji su identifikovani. ,a "otre%e najo%jektivnije selekcije "ostavljaju se kriterijumi= "ri tome su na
1
vrhu liste vrijeme i tro:kovi. Ako je mogu)e naj%olje je da sam do%avlja( tehnologije doe te na licu mjesta testira i u"o+na tehnologiju. @lavni "oka+atelj u kojoj mjeri neka tehnologija +adovoljava kriterijume koji su "ostavljeni tre%a da %udu +a"a8anja i %ilje:ke sa testa. 'ajvi:e "a8nje se daje najvi:e rangiranim kriterijumima. ,a"osleni u organi+aciji %i u su:tini tre%ali da %udu ti koji )e donijeti finalnu odluku jer na kraju krajeva oni su ti kojima je u interesu da na"rave do%ar "roi+vod kako %i ostvarili ve)u do%it.
0. Pravci ra*voja CASE tehnologije Kao elemnti softverskog in8injeringa CASE tehnologije imaju "rimarni cilj a to je da "onude odgovor na trenutne i %udu)e "otre%e tog istog in8injeringa. 'eke od njih su5 1. Stvaranje nekih od o":tih :a%lona 2. 0nstrukcije koje se "rimjenjuju na "rirodnom je+iku 3. Potre%a +a utvrivanjem jedinstvenih standarda ,adatak CASE tehnologija koje su standardi+ovane je da o%uhvate %rojne formalne metode kao i standarde te da o%e+%ijede adekvatan nivo dokumentovanja. Bo: jedan od +adataka CASE tehnologija je da "omogne u u"ravljanju "rojektom ra+voja softvera te da omogu)i njegovo lak:e i %olje odr8avanje. Ukoliko %i se CASE tehnologije "ravilno "rimjenjivale to %i do"rinjelo efikasnom u"ravljanju tro:kovima kao i da "roi+vodi koji se i+rauju %udu kvalitetniji a da se "ored toga svega vrijeme i+rade skrati. U tri gru"e se mogu svrstati CASE tehnologije od kojih se o(ekuje da odgovore na ove +ahtjeve5 0nterne $ne koje su namjenjene "rototi"skom ra+voju softvera >ehnologije "odr:ke CASE tehnologije koje su inteligentne mo8emo doslovno na+vati alatima %udu)nosti. 'jihova svrha je da u+ minimalno ulju(ivanje (ovjeka omogu)e ra+voj nekog ra(unarskog softvera koje %i "oslije koristili kom"leksni ra(unarski sistemi. >akoe jo: jedan jako %itna stvar su tro:kovi i od CASE tenologija se o(ekuje da na tom "olju %udu efikasne i efektivne. $va gru"a tehnologija mora omogu)iti da se "ogodne metode oda%eru i to automati+mom da %i se mogli i+vr:avati kom"letni +ahtjevi kao i ra+voj softvera. Bo: jedan +adatak koji se mora o%aviti su sami detalji i isto tako i nekon+istentnost te da se "ojava iste s"rije(i. Kom"onente tehnologija %udu)nosti5
-oduli funkcija koji su odgovorni +a +adatke u di+ajniranju i anali+iranju softverskog sistema Simulacije "omo)u kojih se "ona:alje softvera koji se "rojektuje "rovjerava 9okumentacija koja omogu)uje in8injerima da u svakoj fa+i u ra+voju softvera mogu da "rate ra+voj svih +ahtjeva -atrice koje +a +adatak imaju da daju "odr:ku kada je rije( o logi(kim gre:kama te da sa(uvaju softver od isih= "ored toga ukoliko doe do odsutnosti ula+a ili i+la+a "otre%no je da to signali+iraju 1!
,a (uvanje i skladi:tenje matrica= dokumentacije te modula funkcija koristi se rije(nik "odataka Elementi karakteristika koje su uklju(ene u inteligentne CASE tehnologije5
1. 2. 3. . !. /. #. &.
U svakoj fa+i 8ivotnog ciklusa "okrivaju softverski ra+voj Planiranje je uklju(eno 9o%ra grafi(ka "odr:ka i alati koji su na +nanju +asnovani Automati+ovano testiranje= kodovanje i dokumentacija *ein8injering softvera takoe "odr8an Softver se mo8e u"otrije%iti vi:e "uta Kom"letan sistem kao i "rogram mora %iti u "ot"unosti kon+istentan Automacko integrisanje kodiranih modula s tim da se "rije kodiranja testira "rojekat
CASE tehnologije koje se u ra+voju softvera koriste +a "rototi"ski ra+voj morale %i "omo)i %udu)e ver+ije da komunikacija i+meu samih "rojektanata sa krajnjim korisnicima %ude efektivna i efikasna. 'aj%olji na(an +a to %i %io da "rije nego sam korisnik ue u velike investicije da se i+radi neki "rototi" koji %i %io eks"erimentalnog ti"a. >o %i %ilo +ami:ljeno na taj na(in da se ektani na ula+u te meniji ra+vijaju dok se u isto vrijeme "rika+uje :ta vidi korisnik na ekranima na i+la+u. 'a kraju= kada %ude donesena odluka +a i+radu softvera tada se "o(inje sa "isanjem "rograma. U"otre%a simulacije se koristi da %i se definisale i "rovjerile neke od "erformansi kao :to su recimo vrijeme "rola+a= vrijeme koje je "otre%no +a "ristu" %a+i "odataka kao i vrijeme +a generisanje "odataka i jo: nekih koji su sistemu "otre%ni. Princi" simulacije je +ami:ljen tako da se ula+i demonstriraju "a da se +atim= na osnovu njih demonstriraju i+la+i= s tim da tre%aju %iti u"ravo takvi kakvi )e %iti u i+vr:enju te da tako korisnik mo8e do%iti "redstavu kakvi )e %iti u i+vr:enju. Konce"cija CASE tehnologija +a "odr:ku je takva da one %e+ gre:ke "odr8avaju i to ne+avisno jedna od druge aktivnosti u"ravljanja "rojektom= generisanje test slu(aja= kao i vrednovanje kvalitativnih "erformansi. 9aljnja integracija sa intelignetnim CASE tahnologijama kao i CASE tehnologijama +a "rototi"ski ra+voj softvera je "redvienja +a ove tehnologije u daljnjem "eriodu.
1/
. ,odeliranje !oslovnih !odataka !omo(u CASE alata CASE alati su takoe "rimjenu na:li u velikoj mjeri u "oslovnom svijetu. Cilj "redu+e)a je od starta %io da se reali+aciji i "rojektovanju svojih informacionih sistema koji su kori:teni +a "oslovne svrhe "ristu"e kori:tenjem CASE metodologija koje su %ile najsavremenije= ti najnoviji alati su u svojoj osnovi imali rije(nik "odatka. 'a "o(etku ra+voja +%og malih resursa koji su %ili "otre%ni +a rad sam i+%or alata %io je skroman. CASE alat su do%ili na +na(aju vremenom kako se %r+ina i snaga ra(unara "ove)avala. @enerisanje %a+e "odataka i modeliranje "oslovnih "odataka u jednom "oslovnom sistemu= koji %i se kao takav morao sastojati od "oslovnih "odataka koji su neo"hodni da %i taj isti sistem funkcionisao. Dunkcionisanje nekog "osovnog informacionog sistema je +ami:ljeno kao jedan cjelovit i integralan "ostu"ak. 6a+a "odataka je veoma %itan dio sistema i njen +na(aj se jasno ogleda u tome :to svi "odaci moraju da %udu o%uhva)ani u njoj jer se na temelju njih donose odluke u "oslovanju. U %a+i "odataka svi odnosi kako "ostoje u realnom svijetu tako moraju %iti i +a%ilje8eni= logika "ove+ivanja u %a+i "odataka je organi+ovana na taj na(in. Kori:tenjem savremenih CASE alata i+rauje se logi(ki relacioni model "odataka i generi:u se relacione %a+e "odataka kori:tenjem automatike. Kori:tenjem ovih alata omogu)eno je i+dvajanje logi(kog relacionog modela koji je veoma detaljan i u ovom slu(aju on se tretira kao "roi+vod koji je ne+avistan. $vaj model je reali+ovan na ovakav na(in jer tako nudi mogu)nost u "oslovnom sistemu da se vr:i ne+avisna im"lementacija a"likacija kao i kontrola ra+voja u "oslovnim "rocesmia. Postoji nekoliko va8nih CASE alata koji se u svakom slu(aju moraju "omenuti sa as"ekta mogu)e i+rade fi+i(kog ili logi(kog modela "odatka kao i kada se radi generisanje fi+i(ke %a+e "odataka i+ nekog modela koji je ra+vijen= naravno "odra+umjeva se da je "roces automacki. Pod ra+vojem informacionog sistema smatramo "roces koji o%uhvata korektnu i cjelovitu i+radu re:enja= ona %i slu8ala kao "omo) "oslovanju tako :to %i se njome odmah uvela i komunikacionoFinformaciona tehnologija. $na omogu)uje una"reenje "oslovne tehnoloigije u toj organi+aciji +a koju se sam sistem ra+vija tako :to "odr8i sve "oslovne "rocese na naj%olji mogu)i na(in. 'aru(ilac je taj koji je odgovoran u najve)oj mjeri +a funkcionisanj tog ra+vijenog sistema= :to se ne odnosi nu8no na oso%u nego u dosta slu(ajeva na samu organi+aciju koja naru(uje neki sistem. Potencijalni "ro%lem je to :to se neke gre:ke i nedostaci uo(avaju tek kada je sistem ra+vijen i kada je taj informacioni sistem ve) uveden. Ukoliko se uo(i neki "ro%lem to +na(i da se mora "rilagoditi ili "o"raviti. Kada doe do toga da je "otre%no "rilagoavanje= najve)i "ro%lem je :to sve to ko:ta i direktno uti(e na cijenu uvoenja= :to uti(e na kom"letan "rojekat= (ak mo8e do)i i do toga da odnos tro:kova i "rihoda u cjelini do%ije negativan "red+ank. 9a %i se sve ovo i+%jeglo= "rvenstveno +%og ri+ika od mogu)ih ne"redvienih tro:kova "rvenstveno ra+vija se sistem +a kontrolu koji %i naru(iocu direktno omogu)io uvid i kontrolu tako da on u toku "ostu"ka "rati i nadrire "ostu"ak dok je isti jo: u toku. Sredstvo kori:tenja sistema i +a kontrolisanje ra+voja je naj(e:)e logi(ki model "odatka. ,a ovakvo funkcionisanje "otre%no je da "rethnodno %ude is"unjen uslov da sam logi(ki model "odatka %ude i+raen kao +ase%an softver te da je isti vlasni:tvo naru(ioca. 9a %i ovo %ilo i+vodivo neo"hodno je da se koriste CASE alati koji automacki da generi:u i+ o%jekta %a+e "odataka logi(ki model "odatka "ored toga :to mo8e da automacki generi:e model "odatka i+ modela "odataka. 1#
.1. /m!lementacija
9a %i se neke "oslovna tehnologija odreenje organi+acije mogla una"rediti nu8no je do%ro "o+navati sistem "oslovne tehnologije koja tre%a una"reenje. Prethodno +adani cilj je to :to uvijek vodi sam organi+acioni sistem= te "ri tome kreira dodatnu vrijenost tako :to "retvara i+la+ne i ula+ne vje:tine. *a+likujemo dva mogu)a stanja "rilikom i+raivanja modela= to je neko trenutno ili sada:nje stanje i stanje kojem se te8i= a to je una"reeno ili %udu)e stanje. @neneralno= sve fa+e ra+voja se mogu svrstati u tri cjeline= na taj na(in dijelimo "rojektovanje i ra+voj cjelovitog ingormaconog sistema= to su5 Kreiranje "lana strategije informacionog sistema @enerisanje %a+e "odataka i njeno modeliranje= ra+voj a"likacija Stavljanje sistema u funkciju .2. Sistem kao naru'ilac
$stvarivanje nekog "rethodno +ami:ljenog cilja je svrha svakog realnog "oslovnog sistema koji se nala+i na tr8i:tu. ,a nesmetan rad i o%avljanje (ak i nekih svakodnvnih "oslova organi+acije koje su savremeno orjentisane ne mogu %e+ da im neki sistem koji je do%ro informati(ki ra+vijen "omogne= "oenta je da se "odaci mogu "o "otre%i koristiti u %ilo kojem trenutku i da se svi "odaci koji su "otre%ni (uvaju. Pred svaki informacioni sistem se "ostavljaju odreeni "oslovni +ahtjevi +a taj sistem= vremenom ti +ahtjevi "ostaju sve o"se8niji= detaljniji i sofisticiraniji. Cilj svih informacionih sistema je da u :to ve)oj mjeri i u svakom "ogledu odgovore na +ahtjeva koji su "ostavljeni. Kada je rije( o informacionim tehnologijama kao takvim uvijek se nude u "raksi dvije o"cije +a "o%olj:anje ili uvoenje nanovo informacionog sistema. Ukoliko je "otre%no ra+vijaju se tehnologije vlastite "odr:ke ali takoe je mogu)a i ku"ovina gotovog re:enja. 'a i+%or i+meu ove dve o"cije da li da se ra+vija novi softver ili ku"uje neki "ostoje)i uti(e jako "uno kriterijuma. 'ekada se "red informacioni sistem "redstavljaju neki +ahtjevi koji su +a"rvo "otre%e koje su stvarne do%ijene "rethodnom anali+om= te se u ovom slu(aju sistem koji je "rilagoen svim tim +ahtjevima "ravi "ose%no +a tog ku"ca "o kriterijumima koje diktiraju isti ti +ahtjevi. Postoji i druga varijanta= a to je ku"ovina nekog gotovog sistema. ,a ovu o"ciju se naj(e:)e odlu(uje ako je sistem ve) u u"otre%i u nekoj sli(noj organi+aciji "a je on "rakti(no ve( "rilagoen svim njihovim +ahtjevima ili se "oslovni sistem= ukoliko je to "otre%no "rilagodi samom softveru. 'ajva8nije je da +ahtjevi na samom "o(etku "udu "reci+no i jasno definisani +a :ta je "rvenstveno odgovoran sam naru(ilac. Ukolio se oda%ere "ravi "oslovni sistem onda on "odu"rire "oslovanje na naj%olji na(in= te nekim novim "otencijalima una"reuje "oslovne "rocese te da %i na koncu uvoenjem informacinog sistema cjeloku"no "oslovanje %ilo una"reeno i olak:an dola+ak do tra8anog cilja. .3. ,etodika !roi*vo-a'a sotvera kao im!lementatora
Cilj ovog "osla= kao i svakog drugog= je naravno ostvarivanje "rofita. 9akle= softver koji "roi+voa( na"ravi je +a "rodaju. 9a %i "rofit ostvaren "rodajom %io :to ve)i cilj je da se sa :to manje radih sati te ulo8enog truda "roda (im vi:e i na taj na(in i+vu(e tra8eni maksimum. U +avisnosti od ti"a "redu+e)a jer su uglavnom ra+li(ita tako su ra+li(ite i same metode rada. Kako vremenom neke firme imaju jako "uno ra+vijenih "rograma i+a se%e nije rijedak slu(aj da ne:to od tih "ostoje)ih softvera "oku:aju im"lementirati u neki novi softver. U +avisnosti od samog naru(ioca nekog sistema se do%ija kona(ni re+ultat ovakvog "oslovanja= nekad se ista re:enja im"lementiraju jako "uno "uta i svojim imenom su "rakti(no referenca kvaliteta i garancija sigurnosti ku"cu. Su"rotno tome "ostoji i slu(aj kada se radi o "roi+vodima koji nisu 1&
glo%alno "o+nati "a tako "roivoa(i su "rinueni da sam softver "rilagoavaju +ahtjevima ku"ca. Ali (ak i u ovom drugom slu(aju= gdje se generalno rade novi softveri uglavnom "ostoje dijelovi softvera ili a"likacije +a koje se mogu iskoristiti neki "ostoje)i "rogrami. $vo je "rakti(no neka vrsta "arcijalnog re:enja jer se "ostoje)i "rogrami "ove+uju u neke ve)e "rograme ili se nadograuju "o "otre%i= mada ima varijanti u "raksi kada se (ak dijele na vi:e manjih "rograma. .". ,ogu(i !ro$lemi i*me-u i*vo-a'a i naru'ioca
@eneralno gledano= "ostoje dva "otencijalna "ro%lema. Pra)enje "roi+voa(a softvera= kao "rvi= ukoliko reimo on "ogrije:i "ri i+voenju same %a+e i +%og toga ona na kraju ne odgovara tra8enim +ahtjevima sistema. 9rugi "ro%lem je to :to je u ve)ini slu(ajeva "oslovanje u toku i+gradnje softvera dinammi(no te se mnogi faktori mjenjaju u svakom trenutku "od uticajem takve radne sredine. $vaj "ro%lem je jako %itan jer samim tim :to se "romjene kostano de:avaju tako dola+i i do "romjene i u samim "odacima sa kojima se radi. $vi "ro%lemi su s"ecifi(ni i +vog toga jer ih je jako te:ko uo(iti do samog kraja "rocesa. Predvidjeti ih je gotovo "a nemogu)e. @re:ke se uglavnom "oka8u "ri samoj im"lemantaciji novog re:enja= a to je ve) u "raksi druga fa+a i+voenja. 'aravno= sve ovo se odra8ava na financijsku stranu "ri(e :to "ro%lem odmah (ini jo: ve)im a "ored toga i sistem je u tom slu(aju mnogo te8e uvesti. esto +a "osledicu imaju i to= da na kraju= kada se sistem uvede on ne funkcioni:e kako je o(ekivano te ne daje tra8ene re+ultate i adekvatna "o%olj:anja. Ukoliko se stvar ne mo8e is"raviti druga(ije= i+voa(i su "risiljeni da odrade navnovo ciklus "o%olj:anja= to na kraju jako "uno ko:ta u odnosu na "lanirani %ud8et "a (esto mo8e dovesti i do toga da tro:kovi "rema:e ostvarenu do%it. 'a kraju= va8no je na"omenuti da ovakvi "ro%lemi +anju odvu)i "a8nju od stvarnih ciljeva a kako su sistemi na kojima se radi= kako je ve) re(eno= uglavnom dinami(ni to mo8e odvesti i+voa(a u ne"ovrat jer se infrastruktura konstantnu mijenja i jako je te:ko na kraju do%iti tra8eni re+ultat. .%. Kontrola im!lementacije
Kako je ve) re(eno= dvije fa+e se "odra+umjevaju "ri i+voenjju "rojekta= to su5 @enerisanje %a+e "odataka i njeno modeliranje Stavljanje informacionog sistema u funkciju Kako je druga fa+a "rili(no kom"leksna= mogu)e ju je "odijeliti na divije cjeline jer kako danas "ostoje i ra+vijaju se neki novi alati "omo)u kojiih se logi(ki relacioni model i+rauje mnogo je lak:e raditi ukoliko se ovaj korak "odijeli na slede)e dvije "odfa+e5 9etaljan logi(ki relacioni model se i+rauje i koristi kao generator +a samu fi+i(ku %a+u "odataka 9a %i se u"ravljalo modeliranom %a+om "odataka i+rauju se "oslovne a"likaije Prednost kada se ovako do%ijena "odfa+a defini:e kao ne+avisna fa+a je ta :to se na taj na(in "oslovnom sistemu daje mogu)nost da kontroli:e ra+voj i im"lementacija samih "oslovnih a"likacija= njegova osnova je sa(injena od logi(kog modela same %a+e "odataka koji je detaljan. 4ogi(ki model mora %iti u skaldu sa strati:kim "lanom informacionog sistema i njegovog ra+voja. Cilj ovoga jeste "rvenstveno da se svi "ro%lemi= nedostaci ili eventualne gre:ke uo(e "rije "o(etka im"lementacije= to se radi na takav na(in da se "ostoje)i sistem nadogradi unutar samog sistema "ovratnom ve+om te tako da "rakti(no na neki na(in kontroli:e sam se%e. 6a+a "odataka vidi ovaj element "ovratne ve+e u "raksi kao novi logi(ki model. $vakav vid kontrole u informacionom sistemu "redstavlja "rakti(no u strate:kom "lanu ra+voja sistem kontrole koji 1
se i+vodi a da se "ri tome temelji na generisanju i u"ravljanju modela %a+e "odataka koji sadr8i logi(ki o%jekat. $n ima funkciju da osigura od samog "o(etka kada se neka "oslovna a"likacija "o(ne ra+vijati "a sve do im"lementacije koja je kona(ni korak te ima +adatak da osigura minimane tro:kove te da na kraju se do%ije takva komunikacijskoFinformaciona "odr:ka koja )e naru(iocu naj%olje odgovarati te mu "onuditi "oslovni sistem koji udovoljava svim njegovim +ahtjevima. Kada se logi(ki model "odatka i+dvoji kao "ose%an o%jekat informacionog sistema i kao takav je dostuan korisnicima tog istog informacionog sistema on tada ima vi:e "o+itivnih faktora kada gledamo sa gledi:ta korisnika "rvenstveno i "oslovnog sitema= te "rednosti su slede)e5 6a+a "odataka koja je stvorena kao "o(etna ver+ija logi(kog modela koji je ra+vijen i on je generator te %a+e= ona je tada +a ra+voj nekih novih a"likacija jako do%ra kao osnova $slanjaju)i se na aktualne a"likacije ja(a se %a+a "oslovnih "odataka i njena ne+avisnost Prate)i "odaci se mnogo jasnije "ove+uju sa "ocesima 6a+i "odataka se mo8e "ristu"ati eksterno kori:tenjem nekih od SG4 u"ita koji su van standarnih a"likacija Kada je "otre%na neka dorada odreene a"likacije ili modela na taj na(in se "odsti(e stvaranje kreativnih ideja Samom "roi+voa(u "oslovnog softvera je u"u)en +natnio manji %roj u"ita od strane korisnika Bednom kada se i+radi= "oslovni model je +na(ajno kom"unikaciono sredstvo i+meu "roi+voa(a softvera kao i+voa(a sa naru(iocem tj. nekim "oslovnim sistemom. Kori:tenjem modernih CASE alata koji su danas dostu"ni na tr8i:tu i+ logi(kog modela se fi+i(ki model %a+e "odataka automacki generi:e te +a so%om odmah "ovla(i i samu %a+u "odataka. Postoje CASE alati koji "ored svojstva da generi:u automacki i+ modela "odataka %a+u "odataka ve( da i i+ o%jekra %a+e "odataka generi:u logi(ki model. 'a ovaj na(in interaktivni odnos se di8e na jedan novi nivo= misli se na komunikaciju "roi+voa(a softvera sa "oslovnim sistemom odnosno naru(iocem. Po+itivna strana svega je :to se to "o+itivno odra8ava na %olji kvalitet softvera= te se na"redkom a"likacije %r8e ra+vijaju= im"lementiraju %r8e :to na kraju +na(i ni8e tro:kove i financijsku do%it kada se novi informacioni sistem stavi u funkciju.
2
. &eki od CASE alata Konce"cija CASE alata je takva da se "omo)u njih mogu i+raivati ra+li(iti modeli informacionih i "oslovnih sistema. 9ana:nji CASE alati mogu i+raditi mnogo ra+li(itih modela ali +a"ravo snaga same tehnologije nije u tome= ona se +a"ravo nala+i u re"o+iroriju +nanja tj. sredi:njoj ri+nici= svi o%jekti koji su kori:teni u modeliranju se unose u nju odnosno njihovi o"isi. Pored o%jekata ve)i dio CASE alata "osjeduje o"is i "o"is ve+a meu o%jektima koji su ra+li(iti. e+e takvoga ti"a se u vim modelima odra8avaju= tako se +a modelirani sistem osigurava logi(ka is"ravnost i kon+istentnost. Sam kvalitet nekog CASE alata= :to je %itno re)i= ne +avisi od veli(ine ri+nice koju taj model "odr8ava ili samog %roja modela ve) je %itan na(in njegove "rimjene i te svrha kojoj je namjenjen. Kao :to se vidi i+ "rethodnog da %i se oda%rao do%ar CASE alat nije dovoljno da %ude najtra8eniji na tr8i:tu ili da ima najvi:e modela ve) on mora odgovarati "otre%ama "oslovnog sistema +a koji )e %iti kori:ten. ,%og toga je va8no da se kod oda%ira do%ro "o+naju "otre%e informacionog sistema da %i CASE alat nio u mogu)nosti na naj%olji na(in njegoc daljnji ra+voj da "odr8i. Kao "rimjer u ovom slu(aju navode se tri alata= a to su5 isio= C$$45%i++ i Er7in. $so%ine ovih softvera va8no je sagledati i+ vi:e as"ekata da %i se stekla jasna slika o (emu se radi= "o(ev:i od fi+i(kog modela "odataka= mogu)nosti i+rade logi(kog modela te generisanja automacki i+ fi+i(ke %a+e "odataka i+ modela i o%rnuto. .1. isio2443
$vaj alat je dio -S office "aketa= on "ru8a mogu)nost da se "omo)u njega i+rade ra+li(iti modeli i to ve) sa ver+ijom koja se do%ija ti"i(nom instalacijom. Kod ovog softvera dijagrami "ri"adju jednom od 1/ ti"ova modela tj. kategorija. 0nterfejs je orjentisan korisni(ki te su sim%oli +a crtanje veoma jednostavni +a kori:tenje= "ored toga dosta je "rimjera ra+li(itih modela te oni omogu)uju da alate koriste (ak i oso%e koje ne "osjeduju mnogo +annja o samom "rojektovanju softvera. 9ijagrami se sastoje od o"cija koje su standardne a to su one +a i+raivanje intiteta= +atim atri%uta entiteta= ve+a ra+li(itih vrsta i stri%uta entiteta koji su klju(ni. *a+li(ite modele re"o+itorija nije mogu)e i+raditi "omo)u ovog "rograma= to je +ato :to on nema ni vertikalne ni hori+ontalne "ove+anosti modela. -odeli se mogu "renositi u druge "rograme ali samo u svrhu "re+entovanja. 9akle= ovaj CASE alat ne "osjeduje mogu(nost da generi:e automacki %a+u "odataka niti o%ratno da i+ %a+e "odataka i+vr:i automacki "ostu"ak generisanja modela. 0+ "rethodno navedenog mo8e se +aklju(iti da model koji je i+raen u ovom alatu ne mo8e %iti kori:ten u svrhu "rimjene logi(kog modela "odatka gdje %i on %io "roi+voa(u nekog softvera kontrolno sredstvo na na(in na koji je to "rethodno o"isano. .2. C##567i**
Kom"anija Sterking soft7are 1. godine ra+vija CASE alat "od imenom C$$456i++. Kao i "rethnodi= ovaj softver takoe koristima +a i+radu ra+nih modela koji su "otre%ni da %i se "rika+ informaciong i "oslovnog sistema o%likovo. Kada je rije( o korisni(ki orjentisanom interfejsu tome se ovde nije "osvetilo toliko "a8nje kao u "rethodnom slu(aju. $vde se sa liste oda%iu dijagrami= te se liste o"cija nala+e u svakom od ovih dijagrama i sa njih mo8emo oda%rati neki od "onuenih o%jekata. ,%og svega navedenog mo8e se +aklju(iti da je "rogram namjenjen stru(njacima koji su ve) u"o+nati sa metodama kao i tehnikama modeliranja "oslovnih "odataka te "oslovnih "rocesa. 21
,a sve modele jedne datoteke koji se nala+e u ri+nici koja je jedinstvena ogleda se snaga ovog alata jer "ostoji takva forma jedinstvene ri+nice u njemu. $vakava ri+nica= koja je jedinsvena sastoji se i+ liste i o"isa svih o%jekata= isti mogu %iti element svakoga modela koji je u "ojedinoj datoteci sadr8an. Pored toga ova datoteka sad8i listu svih ve+a meu "ojedinim o%jektima kao i njihov "o"is i o"is. 'a ovaj na(in je formalna i logi(ka kon+istentnost osigurana svim modelima. 9ijagramom koji sadr8i "ove+nicu i+meu atri%uta= entiteta i relacija je omogu)ena i+rada logi(kog modela "odatka. $vakav dijagram sadr8i o"cije +a i+radu ve+a i+meu entiteta kao i i+radu samih entiteta= ovo su +a"ravo standardne o"cije ali "ored toga mogu)e je unijeti i dodatna svojstva kojima se o%jekti +a"ravo defini:u= to je "rimjenljivo +a svaki o%jekat koji je i+graen. 9odatna "ogodnost ovog modela je :to je mogu)e fi+i(ki model "odatka generisati automacki tj. relacijski model koji sve elemente "otre%ne +a generisanje fi+i(ke %a+e "odataka sadr8i u se%i. Primatni klju(evi kao i sekundarni su takoe sadr8ani u relaciskom modelu i "ored toga sadr8i i ri"ove entiteta +a rje:avanje ve+a koji su asocijativni. Svaki entitet mogu)e je detaljnije definisat tako :to u"i:emo njegova dodatna svojstva. 0+meu fi+i(kog i logi(kog modela "odataka mogu)a je i "ovratna ve+a. Kod koji strukturu %a+e "odataka defini:e generi:e se na osnovu fi+i(kog modela "odataka. $vaj kod u(itava "rogram +a generisanje %a+e "odataka koji je oda%ran= te se na osnovu njega defini:u fi+i(ke :eme %a+e "odataka koje su relacione kao i ve+e koje "ostoje i+meu njih. 6a+u "odataka koja je generisana na ovakav na(in mo8e se "o"unjavati "odacima nekog "oslovnog sistema koji su stvarni. 6a+u "odataka je mogu)e sinhroni+ovati novim relacijskim atri%utama ili :emama ukoliko se vremenom neka stavka "romjeni. >akoe= i+ logi(kog modela "odatka mo8e se generisati fi+i(ki "omo)u ovog alata= kao i generisanje %a+e "odataka na osnovu fi+i(kog modela ali o%rnuta varijanta ovog "ostu"ka nije i+vodiva "omo)u ovog alata. .3. Er8in
Pomo)u ovog alata mo8e se kreirati te odr8avati fi+i(ki i logi(ki model "odatka kao i generisanje fi+i(ke %a+e "odataka koja njima odgovara. ,a rad sa ovim "rogramom "otre%no je imati mnogo +nanja o samom "ostu"ku modeliranja "odataka iako je interfejs orjentisan korisni(ki. $vim alatom mo8e se vr:iti i+rada fi+i(kog ili logi(kog modela kao i istovremeno i fi+i(kog modela i logi(kog. 4ogi(ki model sad8i5 1. 2. 3. .
Entitete e+e i+meu entiteta Atri%ute entiteta Primarne te sekundarne klju(eve
Sadr8aj fi+i(kog moela5 1. >i" atri%uta u relaciskim :emama 2. 0ndekse ve+a na druge :eme 3. 9enormali+ovane ta%lice . 0nformacije o %a+i "odataka !. $grani(enja U logi(koFfi+i(kom modelu sadr8ani su elementi o%a +ase%na modela. $"is i "o"is svakog od entiteta dio su same datoteke koja "osjeduje ri+nicu +adu8enu +a "am)enje ovih "odataka. Sku" "odataka koji ga o"isuju odnosno atri%uta "ostoji +a svaki 22
entitet. $vde se nala+e svi "odaci o njima= kao :to su "rimarni i sekundarni klju(evi= +atim "odaci o ve+ama sa drugim entitetima= informacije o "rocedurama koje su ugraene kao i okida(ima +a njih itd. Di+i(ku %a+u "odataka automacki je mogu)e generisati na osnovu fi+i(kog modela "odatka. U ovu %a+u se kasnije u"isuju "oslovni "odaci. *a+lika u odnosu na "rethodne alate je ta :to ovaj "odr8ava i o%rnutu varijantu tj. da se fi+i(ki model "odatka do%ije i+ %a+e "odataka automacki. *ever+no in8injerstvo je stru(ni na+iv +a ovakav "ostu"ak. Kao "roces rever+no in8injerstvo i+ %a+e "odataka o%uhvata informacije o relacijskim :emama= kao i njihovoj strukturi i atri%utima. Struktua +a"ravo "redstavlja ve+e kojima su "ove+ane relacione :eme. 'ad nastalim modelom nakon :to se u "rogram "renesu informacije mogu)e je "raviti odgovaraju)e i+mejene u skaldu sa "romjenama koje se de:avaju u "oslovnim "odacima kao i u strukturi istih. 'akon odreenih "romjena %a+a "odataka se nanovo sinhroni+uje sa novim modelom "odataka. $vaj alat "osjeduje i sistem +a i+vje:tavanje "omo)u koga je mogu)e dokumentovati cijeli "roces.
14.
)ever*no in9injerstvo
Kada na osnovu "rogramskog "roi+voda koji je "rethodno reali+ovan "rimjenimo "ostu"ak automati+ovanog ili ru(nog generisanja "rograskih ili "rojektantnih s"ecifikacija taj "ostu"ak u ra+voju "rogramskih "roi+voda na+ivamo rever+no in8injerstvo. $va tehnika je ra+vijena +%og "ojave slede)eg slu(aja. 9e:ava se to da u jako "uno organi+acija se ula8e mnogo financiskih= materijalnih= kao i ljudskih resursa da %i se informacioni sistem ra+vio i eks"loatisao. Prelaskom na nove informacione tenologije "ostavlja se +ahtjev da se ne kre)e od nule kada je rije( o ra+voju inovirane ver+ije informacionog sistema. 0deja je da se "ostoje)e ver+ije informacionog sistema u :to ve)oj mjeri iskoriste ulaganjem na"ora i iskustva da se one "o%olj:aju te na taj na(in ostvari financijska u:teda u odnosu kada %i se sav "osao radio od "o(etka. Ciljevi rever+nog in8injerstva5 ,a odreen "rogramski "roi+vod koji je aktuelan "otre%no je da se "rogramska i "rojektna dokumentacija generi:e ukoliko to nije "rethodno o%avljeno. $vo se radi sa namjerom da se trenutna ver+ija tog "rogramskog "roi+voda odr8i +a :ta se na ovaj na(in stvara osnova. Ukoliko je cilj da se ra+vije nova ver+ija "rogramskog "roi+voda onda se u formatu koji je doslovno ra+umljiv CASE "roi+vodu moraju generisati "rogramske i "rojektne s"ecifikacije tog "roi+voda. ,adaci rever+nog in8injerstva5
,a samu "a+u "odataka "otre%no je generisati im"lementacioni o"is= +a taj "ostu"ak osnova su slede)i "arametri5 1. U %a+i "ostoje realni "odaci 2. Stanja rije(nika "odataka "od kojim se %a+a "odataka "osmatra= a dio je konkretnog sistema koji %a+om "odataka u"ravlja. 3. Dormat datoteka i njihov o"is teku)e ver+ije sistema tj. "rogramskog koda a"likacije 'a osnovu im"lementacione :eme same %a+e "odataka generi:e se konce"tualna :ema %a+e "odataka 23
>eku)a ver+ija informacionog sistema sadr8i "rogramske kodove a"likacija na osnovu kojih se generi:u "rogramske s"ecifikacije. $d "rirode +adatka koji se rje:ava +avisi koja )e se tehnika rever+nog in8injerstva oda%rati= isto va8i i +a njenu automati+ovanu "rimjenu. Pored toga na i+%or jo: uti(e i kvalitet ula+na s"ecifikacije na koju je "otre%no "rimjeniti rever+no in8injerstvo. >ako kvalitet ula+ne s"ecifikacije direktno uti(e na kvalitet samog generisanog re+ultata rever+nog in8injerstva. *ecimo ako se +a generisanje im"ementacione :eme %a+e "odataka "rimjernjuje tehnika rever+nog in8injerstva u takvoj situaciji naj%olji re+ultat se mo8e o(ekivati ako se i+ rije(nika "odatka sistema +a u"ravljanje %a+om "odatka iskoriste ula+ni "odaci dok u slu(aju kada se realni "odaci i+ %a+e koriste kao ula+na s"ecifikacija tada se ne mo8e o(ekivati do%ar re+ultat. Prethnodno navedena teorija ne mora %iti ta(na u svakom slu(aju. Ako nije dovoljno informativan rije(nik nekog konkretnog sistema koji se koristi +a u"ravljanje %a+om "odataka ili ako u tom istom rije(niku nedostaju neki "odaci tada se ne mo8e o(ekivati do%ar re+ultat.
11.
,odeliranje sistema
Pomo)u hijerarhiskih dijagrama "rika+uje se funkcionalna dekom"o+icija realnog sistema. Struktura "rogramske "odr:ke informacionog sistema iska+uje se kori:tenjem istih ili ra+li(itih dijagrama. 9a li se radi o elementarnoj funkciji ili ne radi tre%a da se naglasi i ovaj "odatak "ored osnovnih "odataka. Ukoliko se "odra+umjeva da )e se funkcija cijela i+vr:iti "rilikom "riliom njeno +a"o(injanja tada se ona klasifikuje kao elementarna= u su"rotnom "oni:tvaju se svi efekti njenog i+vr:avanja u cjelini. U strukturi "roi+voda koja je hijerarhiska dekeom"ovanje elementarnih funkcija nije nu8no te one kao takve "redstavljaju listove te funkcije. 9ekom"ovanje atomarne funkcije sa cilem da se elementarna "reci+nije s"ecificira dovodi do toga da u tom slu(aju atomarne funkcije u hijerarhiskoj strukturi "redstavljaju listove. -ougu)e je da se +a neku funkciju ukoliko je to "otre%no +avr:etak i+voenja "osmatrane funkcije inicira s"ecificiranjem neke druge funkcije. >ekstualni o"isi u slo%odnom formatu mogu se "ridru8iti +a svaku funkciju= njima se "riroda funkcije o"isuje detaljno kao i ograni(enja i "ravila "ri njenom i+vr:avanju itd. 'akon :to se konce"tualna :ema %a+e "odataka o%ilkuje "omo)u dijagrama ti"ova= nudi se mogu)nost "rojektantu da +ada +a svaku funkciju naredne "odatke5 >i" entiteta koje )e "rilikom svog i+voenja funckcija koristiti 'a(ini u"otre%e +a svaki ti" entiteta mogu %iti5 modifikacija= dodavanje= selekcija= arhiviranje= %risanje ili neki drugi Atri%ude koje +a svaki od ti"ova entiteta funkcija koristi "rilikom svog i+voenja 9ijagramski orjentisani alati se koriste da %i se organi+aciona struktura sistema definisala :to je mogu)e hijerarhiskim navigatorom o%jekta te se tako rije(niku "odatka direktno "ristu"a. Kada hijerarhiski navigator o%jekta koristimo +a definisanje organi+acione strukture u tom slu(aju se elementi organi+acione strukture kreiranjem "ojavi ti"a o%jekta defini:u. ijerarhiska struktura organi+acionih cjelina se us"ostavlja tako :to se o+nake nadreenje organi+acione cjeline direktno navedu. 'e "ostoji "ose%an alat koji %i se mogao koristiti da se lokacijska struktura sistema defni:e kao dijagraski ti". ,a to se koristi "ristu" rije(niku "odataka koji je direktan. Svaki element "rostoren strukture "ri tome "redstavlja jednu 2
"ojavu. -ogu)e je orgeni+ovati hijerarhiski "rostornu strukturu= kao cijelinu ili u dijelovima na taj na(in :to o+naka odreene lokacije navodi. -ogu)e je ra+li(ite ti"ove matrica +avisnosti definisati= dole navedene se koriste +a fa+u anali+e i snimanja karakteristika5
11.1.
-atrica kojom se informacije iska+uju= njome se iska+uju informacije koji se funkcije u "osmatranim orgnai+atorskim cjelinama o%avljaju -atrica "omo)u koje se ras"ored organi+acionih cjelina u relanom sistemu iska+uje -atrica kojom se iska+uje kako se u "osmatranim "rocesima koriste ti"ovi entiteta -atrica kojom se iska+uje u "rocesima koji se "osmatraju na(in kako se "ojedina(ne vrijendnosti tri%uta u"otre%ljavaju :ijagrami !rocesa
,a vi+ulani "rika+ se koriste dijagrami "rocesa= "omo)u njih se realnom vremenu vr:i "rika+ scenarija. Konce"ti na kojima se +asniva su slede)i5 de"o+it= triger= tok= funkcija= organi+acijona jedinica i ciljni re+ultat. U hijerarhiji dekom"o+icije svaki dijagram se formira +a jedan "roces. $da%ir "rocesa +a dijagram koji se crta vr:i se svaki "uta kda se novi dijagram otvara. 'a dijagramu se "rika+uju "rocesi koji su "rocesi koji su "odreeni kontekstnom "orcesu meutim na njegovom mjestu se mo8e na)i i neki drugi "roces kojii je dio funkcionalne dekom"o+icije. U terminologiji ovoga alata "rocese na dijagramu na+ivamo akticnstima tj. koracima. rstu aktovosti je mogu)e ne s"ecifirati "ose%no ili se mogu deklarisati kao5
0nterna aktivnost Eksterna aktivnost >a(ka odluke Aktivnost i+vje:tavanja Aktivnost o%uhvata "odataka
0sti slu(aj je i sa de"o+itom koji takoe mo8e ostati ne s"ecificiran ili se deklari:e kao de"o+it "odatka ili skladi:te materijla. >ok se deklari:e kao tok materijala= tok "odatka ili "rivremeni tok= u su"rotnom= kao i u "rethodnim slu(ajevima ostaje nes"ecificiran. Prika+ organi+acione strukture realnog sistema= kao i o%likovanje je omogu)eno alatom. 'a krajnjem lijevom dijelu dijagrama "rika+uje se dio hijerarhije organi+acijonih jedinica ili ona u cjelini. U "ogledu i+voenja "ojedinih aktivnosti u slu(aju +a neku organi+acionu jedinicu svaka od njih ima svoju o%last integracije koja se "rika+uje na dijagramu. ,a svaku aktivnost je mogu)e5
9efinisati vrijeme "ristu"a de"o+itu kao i "ri"remno te radno vrijeme koje je "otre%no da se i+vr:i neka aktivnost Uku"no vrijeme se mo8e i+ra(unati koliko neki tok ili aktivnost traju= isti slu(aj je i kod "otre%nog intervala da %i se "ristu"ilo de"o+itu Cijenu +a sve individulane korake je "otre%no odrediti 'a dijagramu "ri "re+enracii "otre%no definisati multimedijalni element
rijeme "o(etka i +avr:etka svake aktivnosti je mogu)e i+ra(unati automacki na osnovu ovih "odataka te odrediti "ut koji je najdu8i vremenski tj. koji se na dijagramu mo8e klasifikovati kao kriti(an. 0+voenje aktivnosti na dijagramu je mogu)e simulirati vi+uelno tj. na"raviti multimedijalnu animaciju dijagrama. ,a +adavanje (itavih ni+ova "odataka mogu)e je 2!
koristiti ove alate= to se "rvenstveno odnosi na aktivnosti i organi+acione jedinice ali i +a druge releventne (inioce kao i generalno +a svu dokumentaciju koja je ve+ana +a kvalitetu sistema. 11.2.
:ijagram toka !odataka
Dunkiconalnu dekom"o+iciju informacionog sistema "rati organi+acija dijagrama toka "odatka. Saglasno sa hijerarhijom koja je uvedena automacki se numeri:u "rocesi. ,a koji dijagram toka se crta "odatak je "roces koji se mora odrediti svaki "uta kada se neki novi dijagram otvara. $vaj "roces se na+iva kontekstni "roces. Samo "rocesi koji su direktno "odreenji hijerarhiski u slu(aju +a neki "roces se mogu "rika+ati na dijagramu. Ukoliko su "rocesesi "utem nekog drugog alata ve) kreirani njih je mogu)e "reu+eti i+ rije(nika "odataka= druga solucija je da se novi "roces direktno kreira te je on nakon doga u hijerarhiskoj dekom"o+iciji funkcija vidljiv. Ukoliko se na slede)em nivou dekom"o+icije novi dijagram otvori +a kontekstni "roces u novom dijagramu se mora oda%rati jedan "roces koji je "odreen. 'akon toga svi s"oljni entiteti= kao i de"o+iti "odataka te tokovi "odataka se automacki "renijeti sve to :to je sa njim "ove+ano i taj "odreeni "roces se u+ima u novom dijagramu kao kontekstni "roces. 9a %i tokovi "odataka %ili %alansirani +a to "ostoje "ose%ne taktike koje to o%e+%jeuju "o nivoima dekom"o+icije. $%ave+no je da se odredi na+iv +a svaki tok "odatka= de"o+it ili s"oljni entitet "ri crtanju dijagrama toka= ovo ograni(enje je jako %itno. e+a toka sa nekim "rocesom je o%ave+na "a makar to %ilo i samo sa jedne strane. >akoe= dva "rocesa se mogu direktno "ove+ati tokom "odataka. Alati osiguravaju da se sadr8aj toka "odatka= kao i de"o+ita "odatka defini:e navoenjem ti"a entiteta i atri%uda entiteta koje sadr8i tok ili de"o+it koji se "osmatra. Ukoliko je to "otre%no defini:e se +a s"oljni entitet ti" entiteta na koji se odnosi ili se navodi kojoj organi+acijonoj cejlini "ri"ada. Potre%ni o"isi ili na"omene se dodaju ukoliko je to "otre%no isto kao i kod "rocesa. 11.3.
Konce!tualna ;ema $a*e !odatka
>ehnika dijagrama ti"ova i "ove+nika se koristi u slu(aju kada je :emu %e+a "odataka "otre%no konce"tua"no modelirati. Konce"ti koji su "osredno ili ne"osredno "odr8ani su5 >i" "ove+nika Kardinalitet ti"a "ove+nika Sla%i i regularni entitet Kategori+acija ijerarhija 9omen Klju( i atri%ut entiteta 9irektnim kreiranjem novih ti"ova "ove+nika i entiteta se o%likuju ovi dijagrami u okviru a"likacionog sistema koji je i+a%ran. Po "otre%i se i+ rije(nika "reu+imaju "rethodno kreirani ti"ovi "ove+nika i entiteta %e+ o%+ira da li "ri"adaju nekom drugom a"likacionom sistemu ili i+a%ranom sistemu. Konce"tualna :ema %e+e "odataka inforamcinog sistema koja je jedinstvena se o%likuje na ovaj na(in. 'ije ista u svim alatima notcija +a "rika+ dijagrama. U nekima se recimo ti"ovi "ove+nika "rika+uju linijama i sim%olom +a rom% dok u drugim dva ti"a entiteta "ove+uje samo 2/
jedna linija. ,avisno od "arametara ti"a "ove+nika ova linija mo8e %iti "una= djelimi(no is"rekidana ili is"rekidana te se na njoj takoe mogu "o "otre%i "isati i dodatne o+nake. >i"ovi "ove+nika imaju slede)e "arametre5 Kardinaliteti +avr:nog i "ola+mog kraja $"cionalnost +avr:nog i "ola+nog kraja rsta ti"a "ove+nika ,a%rana ili do+vola +a "reve+ivanje U alatima se (itav ni+ "odataka +adaje "ored samih na+iva domena i atri%uta= koji su sa stanovi:ta i+rade konce"tua"ne :eme %a+e "odatak va8ni. $ni su "ored toga %itni i sa gledi:ta im"lementacionog "rjektovanja :eme %a+e "odataka kao i samih a"likacija informativnog sistema. Konce"t nasleivanja je takoe "ored toga "odr8an= na taj na(in nudi se mogu)nost da od domena koji mu je naslijeen sam domen "reu+me neke od oso%ina. U cilju da se dodatne informacije "re+entuju svako atri%utu te isto tako i entitetu je mogu)e dodati i tekstualni o"is. >aj o"is )e se "oslije "ri generisanju ekrana automacki "reu+eti sa "omo)nim informacijama.
11.".
/nterna i im!lementaciona ;ema
Kori:tenjem odgovoaraju)ih alata "omo)u relacionog modela "odataka o%likuje se im"lementaciona :ema %a+e "odataka. ,a formiranje interne :eme %a+e "odataka koristi se alat +a direktan "ristu" rije(niku. 0m"lementaciono "rojektovanje same %a+e "odataka se +a"o(inje "revodom entitetskoFrelacijskih dijagrama i+ :eme %a+e "odataka koja je konce"tualna u model "odatka koji je relacioni. ,a ovakvo "revoenje u"otre%ljava se alat koji "omo)u konce"tualne :eme %a+e "odataka generi:e :emu %a+e "odataka koja je relaciona tj. njenu "rvu ver+iju. *elaciona :ema koja je i+generisana na takav na(in dalje se dorauje. >akoe i o"cija direktnog o%likovanja im"lementacione %a+e "odataka "ostoji= u tome slu(aju nije "otre%no da se "rije toga modeliraju entitetskoFrelacijski dijagrami te da se isti "revode u model koji je relacioni. U samom alatu definicija ta%ele je "ola+ni konce"t= u tom slu(aju "ojam same relacije re"re+entuje ta%ela. Sku" ograni(enja i sku" o%elje8ja su oso%ine svake ta%ele :to je isto kao i kod relacija. >akoe= tre%a na"omenuti da su o%ilje8ja su isto :to i kolone= +a svaku od njih se jo: mora definisati (itav ni+ im"lementacionih karakteristika ili ih je mogu)e "reu+eti i+ konce"tualnog modela. Kategorije karakteristika su slede)e5 Podaci koji defini:u kolonu ;ti"= domen= inicijalna vrijednost= do+vola odnosno +a%rana nula vrijendosti itd.< Podaci koji "re+entuju kolonu ;naslovn kolone= du8ina= na(in te "ormat "rika+a= "oruka o semantici itd.< alidacioni "odaci kolone ;"oruka koja se javlja ako je validaciono ograni(enje naru:eno< 9odjeljivanje vrijednosti kolone Podaci o denormali+aciji 9odatni "odaci kolone ;tekstulana "olja koja mogu %iti ra+li(itih vrsta= najva8nije je "olje u kome se "mo)ne informacije o koloni defini:u< Kada se SG4 o"is automacki generi:e koriste se karakteristike kolona :eme %a+e "odataka i tada se "rogramske s"ecifikacije modula generi:u= oni sadr8e "osmatrane kolone i ta%ele u svojoj "od:emi. 'e%itno da li se radi o meurelacionom ili jednorelacionom ograni(enju sva ograni(enja :eme %a+e "odataka koja je relaciona se ve+uju tehni(ki kod ovog alata +a odgovaraju)u ta%elu. 2#
2&
>i"ovi ograni(enja koja se defini:u +a ta%elu5 Primarni klju( se ograni(ava ;"rimarni klju( sadr8i ni+ informacija da li je do+voljena ili ne modifikacija klju(a< Ekvivalentni klju( se ograni(ava ;ekvivalentni klju( sadr8i ni+ informacija da li je do+voljena ili ne modifikacija klju(a< Bedinstvena vrijednost se ograni(ava ;kom%inacija je jedinstvena ako su vrijednosti svih o%ije8ja re+li(ite od nule< >orka se ograni(ava ;mora %iti +adovoljen logi(ki i+ra+ koji je naveden ili je "otre%no navesti ime logi(ke funkcije (ijim se "o+ivanjem s"rovodi kontrola do+voljenih vrijednosti< $grani(enja stranog klju(a Kada se radi o ograni(enjima stranog klju(a "otre%no je navesti ime referencirane ta%ele u kojoj se odgovoaraju)i "rimarni klju( nala+i= o%ilje8ja koja sadr8i strani klju( +atim aktivnost ;ova aktivnost ako doe "ri "risanju do naru:avanja referencijalnog integriteta s"rovodi se isto va8i i ako se takav slu(aj javi "ri modifikaciji "odataka< i kores"odentno o%ilje8je "rimarnog klu(a +a svako o%ilje8je stranog klju(a. Pored svega= navodi se "oruka +a svako ograni(enje koja se u slu(aju naru:avanja "rika+uje i "ored toga se navodi mjesto reali+acije. 0m"lementacija ta%ele se formira kori:tenjem alata u okviru jednog korisni(kog imena te jedne %a+e "odataka +a svaku ta%elu. 'eki od "arametara fi+i(ke organi+acije ta%ele mogu se definisati na nivou im"lementacije ta%ele kao i "rava "ristu"a +a neku gru"u korisnika ili nekog korisnika kao "ojedinca. 9a li se mo8e kreirati indeks nad samom ta%elom je jedna od fi+i(kih karakteristika organi+acije koja je %itna. Konce"tu ta%ele je direktno "odreen konce"t okida(a %a+e "odataka= to %i +ana(ilo da se u okviru svake ta%ele defini:e okida(. >riger= odnosno njegov "roceduralni dio se kori:tenjem je+ika koji je "roceduralno orjenrisan. *ali(ite "omo)ne informacije se takoe mogu automacki "reu+eti ili +adati nad ta%elom= one su u slo%odnom formatu "re+entovane. $vo se radi u svrhu toga da %i se u narednim "rogramskim a"likacijama mo8e automacki generisati na osnovu oviih informacija o"cija +a "omo). Bo: se mo8e i voenje dnevnika "romjena nad ta%elom o%e+%ijediti da %ude automacko a reali+uje se kori:tenjem ta%ele "romjena koja je +ase%na. Putem ovakvih alata se "ored ta%ela mogu i "rocedure definisati kao i funkcije te "aketi funkcija i "rocedura= "ored toga kursorska "odru(ja se takoe mogu deklarisati. U"otre%om je+ika koji je "roceduralno orjentisan mogu se s"ecifirati svi na%rojani o%jekti (ijs je namjena i+vr:avanje od strane servera kao i im"lementiranje u okviru rije(nika %a+e "odataka. U rije(nik se smije:taju kom"letni "rogramski kodovi kod ovakvih o%jekata :to je takoe %itno +a naglasiti. Konce"t re"likacione slike= kao i konce"t "ogleda su konceoti koje alati "osjeduju "ored gore navedenih. Pojmu SG4 "ogleda je ekvivalentan konce"t "ogleda a +a definisanje re"likacione :eme distri%irane %a+e "odataka koristi se konce"t re"likacione slike. $"is :eme "odataka se automacki generi:e na osnovu interne :eme %a+e "odataka tj. im"lementacione :eme %a+e "odataka te ju na odgvaraju(i server %a+e "odataka tre%a im"lementirati. ,a generisanje "rogramskih modula kao i osnov +a modeliranje "rogramske s"ecifikacije koristi se im"lementaciona :ema.
2
11.%.
Programska s!ecifikacija modula
U nastavku slijedi "ar rije(i o alatu "omo)u koga se "rika+uju "odaci grafikonski= kreiraju i+vje:taji i o%likuju %i%iliote(ki moduli a to su "rogramske s"ecifikacije +a rad sa %a+om "odataka. Pove+ivanje "rogramskih modula meuso%no kao i formiranje strukture menija a"likacije u+ mogu)e "reno:enje "utem "arametara "odataka i+meu modula je mogu)e isto tako "omo)u ovog alata. Prvo se defini:e "o:ema kod ovog alata +a sve "rogramske module= "rojektant se ovde oslanja na im"lementacionu :emu "a+e "odataka koja je o%likovana "rethodno. Sku" i+a%ranih :ema relacija i+ :eme %a+e "odataka (ini "od:emu sku"a sa ve+ama kojima se o+na(ava "rostiranje klju(eva. Sku" o%ilje8ja koji je "otre%an se odreuje +a svaku :emu relacije i+ "od:eme. Po jedno ve+ano "olje se "ravi u okviru modula +a svako o%ilje8je "od:eme. $d samog meuso%nog odnosa :ema relacija "od:eme +avisi struktura ekranske forme %udu)eg "rogramskog modula= on je njihovom fi+i(kom "o+icijom na dijagramu definisan. 9vije uloge mo8e imati :ema u relaciji "od:eme5 6a+ne :eme ;namjena im je mani"ulacija "odacima< 4iste i+%ora ;"rika+uju listu i+%ora dodatnih odataka te do+voljenih vrijednosti na samom ekranu< Heme relacije "od:eme su dio kom"onente "rogramskog modula gdje jednu logi(ku cjelinu tre%a da "redstavlja jedna kom"onenta "rogramskog modula +a "re+entovanje "odataka te isto tako mo8e %iti sa(injena od "ar :ema relacija "od:eme. *ecimo modul na"ravljan da u formi +aglavljeFstavke "redstavlja modele na ekranu )e imati dvije kom"onente. Bedna )e "odatke koji odgovaraju stavkama "rika+ivati dok )e druga %iti +adu8ena +a "rika+ivanje "odataka +aglavlja. ,aglavlje ekranske forma u %udu)nosti "redstavljat )e kom"onenta sa "o+icijom na dijagramu i+nad neke druge kom"onete te "ored nje i odgovaraju)a %a+na :ema relacije a stavke +aglavlja )e re"re+entovati "odreena kom"onenta. ,a :emu relacije koja je data listu i+%ora "redstavlja :ema koja je "o+icionirana na desnoj strani u odnosu na naku drugu :emu relacije. 9o"u:teno je i formiranje mnogo slo8enijih struktura= "od slo8enijim se misli na one koje su u odnosu na dijagram slo8enije. Proceduralna logika "rogramskog modula se defini:e i+%orom o"eracija a8uriranja koje su standardne kao :to su %risanje= unos ili modifikacija te selekcijom "odataka tj. "ostavljanjem u"ita. Potre%no je odo%riti ove u"ite "utem "rogramskog modula nad %a+om "odataka tj. nekim njenim dijelom tj. %a+nim :emama relacije "od:eme. Kada govorimo o o"isivanju "roceduralne logike "rogramskog modula "ostoji jo: mogu)nosti= sam "rogramer mo8e definisati neke nestandardne "ostu"ke o%rade "odataka "omo)u "ose%nih funkcija i "rocedura. U okviru "rogramskog modula defini:u se funkcije i "rocedure i kao takve mo8e se +a njih re)i da su lokalnog karaktera. 9ruga varijanta je da se defini:u u kao "ose%an %i%liotekarski modul (ija %i namjena %ila da "akete= "rocedure i funkcije koje su smje:tene na klijentu skladi:ti. -ogu)e je rederenciranja %i%ilioteka "omo)u drugih "rogramskih modula. *eferenciranje funkcija i "rocedura u okviru "rogramskih modula koje su namjenjene +a im"lementaciju na server %a+e nude se kao tre)a mogu)nost. U ekranskom modulu "rogramer mo8e definisati lokalne trigere korisni(kog interfejsa. 'a osnovu kom"onente modula= samog ekranskog modula ili ve+nog "olja defini:e se ovakav dogaaj. Proceduralna logika koju je "otre%no i+vr:iti ve+uje se +a dogaaj= ona se "rakti(no svodi na funkcije i "rocedure koje su "rethodno definisane. Komandna "olja kao i neve+ana "olja takoe se mogu kreirati. ,a "rika+ sumiranih vrijednosti= kao i vrijednosti koje se "omo)u 3
funkcije koja je "rethodno definisana koriste se neve+ana "olja= te ona kao takva niisu ni sa jednim od o%ilje8ja %a+e "odataka u direktnoj ve+i. Element kojim se akrivira i+vr:avanje neke s"ecifi(ne "roedure na+iva se dugme= njega re"re+entuje komandno "olje. e+e i+meu s"ecifikacija modula mogu)e je vi+uelno "rika+ati= oni "o+ivanje nekog modula od strane drugog modula re"re+entuju= sve to +ahvaljuju)i tome :to alat omogu)uje da se struktura o%ilukuje dijagramski. 9efinisanjem stranica +a "rika+ "odataka kao i samij "ro+ora mjenja se vi+ualni i+gled ekranske forma modula :to je takoe mogu)e. 'a osnovu dijagrama ti"ova "ove+nika i entiteta koji su "rethodno i+raeni mogu se generisati automacki s"ecifikacije "rogramskih modula= va8nu ulogu nose i matrice atri%ute entiteta "ove+uju sa funkcijama kao i ti"ove entiteta sa funkcijama. 0nformacije o i+la+nim i ula+nim "arametrima u "rogramskom kodu mogu sadr8ati tokovi "odataka. injenice o alatima5
U svoj rije(nik smije:taju (itv "roceduralni "rogramski kod Putem konce"ata koje sadr8e mogu)e je a"likacije informacionog sistema o%likovati do najsitnijih detalja Prema "otre%ama korisnika mogu)e je so"stvene alate "rilagoditi
'a kraju tre%a na"omenuti da a"likacije koje su i+raenje na ovaj na(in (ak mogu %iti "rimjenjene kao finalan "rogramski "roi+vod jer ovakav "roi+vod CASE tahnologija generi:e a"likacije koje su na toj ra+ini.
12.
Kratka istorija CASE alata 'a "o(etku se ra+voj "rogramskih "roi+voda oslanjao na ra+ne alate ra "roramiranje. 6ilo je tu nekoliko fa+a5
-a:inski je+ici su %ili "rvi koji su se u"otre%ljavali ali se tra8ila %olje solucija jer su %ila drasti(no +avisni od hardvera i jako te:ko (itljivi 'aredni su %ili asem%leri koji su %ili ne+natno na"redniji ali jo: se +na(ajno i+ra8enim manama svog "rethodnika Posle na red dola+e je+ivi tre)e generacije koji su orjentisani "roceduralno. eliki na"redak je na"ravljen +ato jer oni nisu %ili u tolikoj mjeri +avisni od hardvera te struktuirano "rogramiranje ula+i u u"otre%u. 'akon :to su uvedeni je+ici tre)e generacije "roduktivnost "rogramirana se "ove)ala tj. "rogramski "roi+vodi su %ili kvalitetniji a i+rada mnogo %r8a. 'a "o(etku je %ilo i nekih od nu+ "ojava jer se +%og naglog "ove)anja "rofuktivnosti i+gu%ilo na %r+ini kao i :irini "rimjene. 9akle= do:lo je do toga da je %io "otre%an novi hardver i "ored toga neki asem%lerski "rogrami su una"reeni na je+ike tre)e generacije da %i mogli ostati u u"otre%i.
>ada na scenu nastu"a softverska kri+a +ato jer se o(ekivalo da odmah softver koji je na"isan u je+iku tre)e generacije +adovolji odmah "otre%e krajnjeg korisnika. 'ajve)i "or%lem je %io jer je ulaganje %ilo drasti(no "ove)ano a nisu do%ijeni 8eljeni re+ultati. Bedan od najve)ih "ro%lema je %io taj :to je usljed odr8avanja nekog "rograma "rogramer gu%io jako "uno vremena te na taj na(in "rakti(no je %io %lokiran daljni ra+voj i "ored toga se "r+o uvidjelo da je "rogramiranjem na ovaj na(in gu%ljeno "uno vremena i da je %ilo neefikasno. 31
9ola+i se do toga da je najvi:e vremena %ilo "otre%no da %i se odr8ali "roi+vodi koji su ve) na tr8i:tu. 0sra8ivanja takoe "oka+uju da se ve)i dio gre:aka "ravio "rilikom samog ra+voje tokom "rojektovanja te anali+iranja +ahtjeva= a manji dio se javljao "ri reali+aciji. Bo: jedan veliki "ro%lem je %io to :to se tek mo8da "olovnia gre:aka otklonila "rije nego je softver is"oru(en= ovo je %ilo "ose%no "ro%lemati(no jer svaka gre:ka koja se kasnije otklanjala je "la)ena mnogo vi:e nego da se sanirala "rije is"oruke. Sve to dovodi do "odjele finansija koja je %ila krajnje ne"rirodna= odnosno ve(inski dio sredstava je tro:en na odr8avanje dok je +natno manji dio odla+io na sam ra+voj. Pored finsncijske :tete koja je nastala jo: jedan veliki "ro%lem je "redstavljalo vremensko ka:njenje. Softversko in8injerstvo je %ila disci"lina u ra(unarstvu koja je "redstavljena kao re:enje softverske kri+e= a on je "rethodio i samom ra+vijanju CASE tehnologija. Softversko in8injerstvo se %a+iralo na ideji da "ristu" ra+voju "rograma %ude in8injerski i metodolo:ki te da se "o:tuju dati rokovi te da se kvalitetan softver "rimjenom odgovaraju)e tehnike "lasira a tr8i:te. Pojava CASE alata je +a"ravo uslijedila nekon :to je +aklju(eno da je drugi i tre)i u+rok softverske kri+e +a"ravo %io jer +a ra+voj "rogramskih "roi+voda nije %ilo dostu"no dovoljno softverskih alata. 0deja CASE "roi+voda +asnivala se na automati+aciji +adataka te da se na takav na(in otklone "ro%lemi koji su "rethodili. Primjenjivana je takoe metodologija "ristu"a koji je %io struktuiran te su na ra+li(itim nivoima detaljnosti crtani dijagrami u"otre%om vi:e ili manje formalnih tehnika. Pored toga kako je sve %ilo "ove+ano ukoliko se nivo detaljnosti mjenjao na jednom dijagramu (esto je to "ovla(ilo "otre%u da se isto uradi i na ostalim= kao i sa samim i+mejnama na dijagramu= ako se jedan i+mjeni (esto su te i+mjene direktno uslovlajvale "romjene na ostalim dijagramima. Pro%lem je %io takoe to :to ukoliko se radilo o ve)em "rojektu jako te:ko je %ilo sve to efikasno o%aviti ru(no. Bo: jedan novost koju CASE tahnologije uvode na "olju same organi+acije ticala se "odataka jer CASE alati su koristili jedinstven rije(nik "odataka koji je "redstavljao %a+u "odataka u koju je sve smije:tano. CASE alati su %ili u mogu)nosti da o"is :eme +a neki konkretan sistem %a+e "odataka i+generi:u koriste)i im"lementacionu :emu %a+e "odataka= te da "rogramske a"likacije informacionog sistema i+generi:u kori:tenjem "rogramskih s"ecifiakcija. Sve ovo omogu)uju generatori koda. 9ola+i se do je+ika (etvrte generacije koji su tre)u generaciju je+ika nadogradili jer su %ili +natno "regledniji= lak:e je %ilo "rogramirati sa njima te su %ili na velikom nivou deklarativnosti. >a(nu definiciju je +a"ravo te:ko dati jer su ovi je+ici "edstavljali jako :irok "ojam= "o(ev:i od alata koji su jednostavni "a sve do je+ika koji su %ili veoma ra+vijeni. Kako je jako te:ko %ilo ta(no definisati :ta su to +a:ravao je+ici (etvrte genracije usvojio se neki "ojam koji je %io ne:to o":irniji a to je okru8enje (etvrte generacije. Sve se +asnivalo na jednom jedinstvenom rije(niku "odataka :to je kod je+ika (etvrte generacije "ose%no i+ra8eno jer je ideja %ila da geeralno svi alari %udu integrisani kao dio CASE okru8enja koje %i %ukvlno "redstavljalo jedno :iroko okru8enje +a ra+voj "rogramskih "roi+voda. Bo: jedna "ote:ko)a koju se nastojala "reva+i)i je dugotrajno i ne"roduktivno "rogramiranje. Una"reene CASE thnologije su imale +natne "rednosti ali i neke nedostatke= i jedni i drugi su navedeni u nastavku. Prednosti5 Proces i+rade "rogramskog "roi+voda +natno je olak:an i u%r+an 32
Kako je olak:ano "ronala+enje gre:aka +natno su smanjeni tro:kovi odr8avanja a"likacija 'edostaci5
,natno kom"leksnije a"likacije su tra8ile %olji hardver :to je dovodilo do toga da lo:ije rade sa istim hardverom u odnosu na svoje "rethodike Hirina "rimjene manja Pored toga %ilo je mogu)e "rototi"ski "ristu"ati ra+voju softvera :to se mo8e "osmatrati kao dodatna "rednost. Kada je rije( o nedostacima mo8e se slo%ono re)i da su "rakti(no o(ekivani jer je "rvenstveno "otre%a +a %oljim hardverom sasvim o(ekivana iako je u "o(etku sam ra+voj hardvera %io +na(ajno kom"leksniji i s"oriji nego danas.
6r+o se do:lo do +aklju(ka da se ulaganjem u hardver mo8e sna(ajno is"latiti jer na samom ra+voju a"likacija se mnogo u:tedi kao i odr8avanju "rograma "osle. 'eduko nakon "o(etka "rimjene je+ika (etvrte genracije do:lo se na ideju da se oni kom%inuju sa svojim "rethodnicima tj.je+icima tre)e generacije. >ako je recimo +a neke slo8enije a"likacije kada se kod generi:e uo(eno da u je+iku (etvrte generacije su "otre%na mnoga "rilagoavanja dok su us"je:no reali+ovani %e+ gre:ke u"otre%om je+ika tre)e genracije.
33
13.
+aklju'ak
Basno je da su CASE alati jedan veoma +na(ajan dio "rogramiranja. 9oveli su do mnogih una"reenja u i+gradnji softvera ali isto tako u +na(ajnoj mjeri olak:ali 8ivot samim "rogramerima. Basno je da kada neko naru(i odreen softver 8eli do%iti :to %olji "roi+vod a da cijena koju "la)a %ude :to manja. ,%og toga su CASE alati jako +na(ajni jer ne samo da olak:avaju "rogramiranje nego na osnuvu njih se do%ije mnogo na u:teti vremena a samim tim se :tede sredstva +a ra+voj :to na kraju dovodi do ve)eg "rofita. Sva ova "ri(a je i:la tim tokom jer se na drugoj strani nala+i kom"anija ili "ojedinac koji te iste "roi+vode i+rauju te naravno da )e oni htjeti da u+ minimalne tro:kove te ulo8eni rad i vrijeme ostvare :to ve)u +aradu. Pored samog "rofita +an(aj CASE alata je %io i u tome :to su softver +na(ajno "ri%li8ili :iroj gru"i korisnika tj. smanjena je "otre%a +a velikim "red+nanjem da %i se neki softver koristio jer je okru8enje %ilo sve vi:e korisni(ki orjentisano. Bo: jedna velika "rednost kod CASE alata je :to imaju sistem unutra:nje kontrole koji "rakti(no re(eno "rovjerava sam se%e te se ne taj na(in veliki %roj gre:aka otkloni :to "redstavlja veliki "lus jer se do%ija softver koji funkcioni:e %e+ "ro%lema a "ored toga se ne tro:e sredstva na "o"ravljanje gre:aka koja su %ila +na(ajna ukoliko se gre:ke servisiraju nakon :to sam "rogram dos"ije na tr8i:te. a8no je na"omenuti da se CASE alati konstantno usavr:avaju te se samim tim :irina njihove "rimjene "ove)ava. Pored svega toga= iako je tehnologija danas na jako visokom nivou ra+vijenosti nekada ni jedan sofrver ili ma:ina ne mogu +amjeniti iskusno mi:ljenje nekog "rogramera +a odreen "ro%lem jer oni svoja re:enja temelje na iskustvu i na intuiciji kakvu ima samo (ovjek i koja je "onekad jedino mogu)e rje:enje.
3