DONATORJI L kvaVtz f~ II 4 33748 Uvodnik Aktualno Deklaracija posvetovanja DSI 2001 53 Strokovne razprave Tomaž Mohorič, Marjan Krisper 0 razširljivem označevalnem jeziku XML in njegovi uporabi 55 Maja Miličič Zadovoljstvo uporabnikov s kakovostjo storitev v bančnem kartičnem poslovanju 60 Damjan Vavpotič, Rok Rupnik Poslovni portali 67 Tomaž Dogša Splošen koncept načrtovanja testnih primerov 75 Poročila Otto Spaniol Čas približevanja 80 Rešitve Nadja Damij Uporaba metodologije TAD za razvoj aplikacije Tranzit 86 Izrazje Vladimir Batagelj Razvoj slovenskega računalniškega izrazja 95 Dogodki in odmevi Priznanja in nagrade na Dnevih slovenske informatike 2001 100 Aktualnosti pri uvajanju programa ECDL v Sloveniji 100 Obvestila The 6lh International Symposium on Operations Research SOR'01 101 Koledar prireditev E E E Zahvaljujemo se podjetju Marand d.o.o., Ljubljana, Cesta v mestni log 55, za sponzoriranje domače strani Slovenskega društva INFORMATIKA :.v.: :: S5S3 fStffi #?* Navodila avtorjem Revija Uporabna informatika objavlja originalne prispevke domačih in tujih avtorjev na znanstveni, strokovni in informativni ravni. Namenjena je najširši strokovni javnosti, zato je zaželeno, da so tudi znanstveni prispevki napisani čim bolj mogoče poljudno. Članke objavljamo v slovenskem jeziku, prispevke tujih avtorjev pa tudi v angleškem jeziku. Vsak članek za rubriko Strokovne razprave mora za objavo prejeti dve pozitivni recenziji. Prispevki naj bodo lektorirani, v uredništvu opravljamo samo korekturo. Po presoji se bomo posvetovali z avtorjem in članek tudi lektorirali. Polno ime avtorja naj sledi naslovu prispevka. Imenu dodajte naslov organizacije in avtorjev elektronski naslov. Prispevki za rubriko Strokovne razprave naj imajo dolžino cca 30.000 znakov, prispevki za rubrike Rešitve, Poročila, Obvestila itd. pa so lahko krajši. Članek naj ima v začetku Izvleček v slovenskem jeziku in Abstract v angleškem jeziku. Izvleček naj v 8 do 10 vrsticah opiše vsebino prispevka, dosežene rezultate raziskave. Pišite v razmaku ene vrstice, brez posebnih ali poudarjenih črk, za ločilom na koncu stavka napravite samo en prazen prostor, ne uporabljajte zamika pri odstavkih. Revijo tiskamo v črno beli tehniki s folije, zato barvne slike ali fotografije kot originali niso primerne. Objavljali tudi ne bomo slik zaslonov, razen če so nujno potrebne za razumevanje besedila. Slike, grafikoni, organizacijske sheme itd. naj imajo belo podlago. Po možnosti jih pošiljajte posebej, ne v okviru članka. Na koncu članka navedite literaturo, ki ste jo uporabili za prispevek, po naslednjem vzorcu: Novak, F., Bernik, S.(1999): »Naslov članka«, ime revije, letnik, štev., str. 12-15 Bernik,S.: (1999): »Naslov knjige«, založba, kraj Novak, F.(1999): »Naslov magistrskega dela«, magistrsko delo, univerza, fakulteta Žagar, A.: »Naslov referata«, Dnevi slovenske informatike, Zbornik posvetovanja, Slovensko društvo INFORMATIKA (1998) V besedilu članka se sklicujte na navedeno literaturo na način (Novak 1999). Članku dodajte kratek življenjepis avtorja (do 8 vrstic), v katerem poudarite predvsem delovne dosežke. Z vsa vprašanja se obračajte na tehnično urednico Katarino Puc. Prispevke pošiljajte na disketi in papirju na naslov Katarina Puc, Slovensko društvo informatika, Vožarski pot 12, 1000 Ljubljana, ali samo po elektronski pošti na naslov katarina.puc@drustvo-informatika.si. Po odločitvi uredniškega odbora, da bo članek objavljen v reviji, bo avtor prejel pogodbo, s katero bo prenesel vse materialne avtorske pravice na društvo INFORMATIKA. Po izidu revije pa bo prejel plačilo avtorskega honorarja po tedaj veljavnem ceniku ali po predlogu glavnega in odgovornega urednika. Naslov uredništva je: Slovensko društvo INFORMATIKA, Uredništvo revije Uporabna informatika, Vožarski pot 12, 1000 Ljubljana www.drustvo-informatika.si/posta © Slovensko društvo INFORMATIKA, Ljubljana Revija Uporabna informatika bo brezplačno objavljala v rubriki Koledar prireditev datume strokovnih srečanj, posvetovanj in drugih prireditev s področja informatike. Obvestila naj vsebujejo naslednje podatke: ime srečanja, datum in kraj prireditve, naziv organizatorja, ime in telefonska številka kontaktne osebe. Pošiljajte jili na naslov: Slovensko društvo Informatika, za revijo Uporabna informatika, rubrika: Koledar prireditev, 1000 Ljubljana, Vožarski pot 12. Objavljali bomo vsa obvestila, ki bodo prispela 30 dni pred objavo revije. Spoštovane bralke in bralci, eppursi muove-in vendar se vrti. Nekateri smo, kljub zaupanju v državo že obupovali, prepričani, da se kljub svežemu vetru, ki je v njej zavel, še dolgo ne bo informatizirala tako, kot bi si to želeli njeni podaniki - državljani. Izkušnje iz preteklosti so nam narekovale primeren odmerek skeptičnosti do že večkrat podanih obljub. Že res, da je bilo ustanovljeno Ministrstvo za informacijsko družbo (MID), že res, da smo dobili nove državne tajnike, vendar, ali to hkrati tudi pomeni, da je danes Slovenija resnično na poti v tako zaželeno informacijsko družbo, o kateri je bilo že toliko govora in toliko obljub? Ali vsaj na začetku te poti? Z veseljem pa lahko ugotovimo, da se vendarle nekaj premika, čeprav le po korakih. Visoki predstavniki Centra vlade za informatiko (CVl) so, na primer, napovedali, da bomo lahko po 14. juniju naročali izpiske iz matične knjige po internetu. Prav navdušujoča napoved - nič več ne bo potrebno stati pred raznimi okenci in prenašati dokumentov od enega uradnika k drugemu. Žal je resničnost nekoliko drugačna. Internetni prenos dokumenta bo (upajmo, da le začasno) potekal zgolj v eno smer-v drugo smer bo potekal na način, kot smoga vajeni do sedaj, po pošti - vendar ne elektronski! In državljan bo še vedno kurir. Če želimo zares kdaj vstopiti v informacijsko družbo, bomo morali poprej doseči integracijo državne uprave - nekaj takega, kot je »one stop shopping«. Ali se sploh zavedamo, koliko časa prebijejo državljani pred raznimi okenci in koliko to stane, ne le posameznika ampak državo kot celoto? Če bi podjetja poslovala na način državne uprave, bi, kot rečemo, ne zaslužila niti za sol. Vendar vse ni tako črno, kot izgleda na prvi pogled. MIDu, preden se lotimo kritike, moramo zagotoviti sto dni miru (morda je ta čas že pretekel?) in prisluhniti njegovim težavam, ki so, po besedah enega izmed državnih tajnikov, predvsem kadrovskega značaja. Eno izmed vodil pri ustanavljanju MIDaje bil med drugim tudi akcijski načrt »cEvropa+« (zlobnež bi pripomnil, da bi dva plusa pomenila predmetno usmerjeni pristop v Evropo), v katerem so zapisani vsi cilji »elektronskega« razvoja Evrope, in MID namerava temu načrtu tudi slediti. Upajmo, da so na MIDu dobro premislili, kaj pomeni to za Slovenijo. Bo to dodatna vzpodbuda in sinergetični pospešek slovenski informacijski družbi? Lahko bi se izkazalo tudi, da je cokla, če pomislimo, na primer, na dolgotrajno pridruževanje združeni Evropi. Pri vseh težavah s sprejemanjem takih in drugačnih zakonov, nas je doletela še ena. Zakon o telekomunikacijah (ki je vsekakor del prizadevanj za vzpostavitev informacijske družbe) je bil sprejet brez podzakonskih aktov. Kaj to pomeni? Zakon brez izvedbenih predpisov ali po domače zakon brez zob. Vstop v informacijsko družbo je težaven, boleč in zapleten proces. Na veliko problemov bomo še naleteli. Če bomo na tej poti vztrajni, bomo dosegli to, zaradi česar se informatizacije sploh lotevamo. In to je znižanje stroškov ter posledično pocenitev države. Zato se na tej poti izplača vztrajati. Tomaž Mohorič Pokrovitelj posvetovanja Dnevi slovenske informatike 2001 v Portorožu SkupinaTelekom Slovenije Aktualno Udeleženci posvetovanja Dnevi slovenske informatike 2001, ki je bilo v času od 18. do 21. aprila 2001 v Portorožu, smo z namenom, da bi ocenili vlogo, pomen in cilje posvetovanja ter priporočili usmeritve za prihodnja posvetovanja, na zadnji dan posvetovanja sprejeli naslednjo deklaracijo posvetovanja DSI 2001 i. V odnosu do posvetovanja DSI 2000 udeleženci ugotavljamo, da so bile usmeritve DSI 2001 pretežno uresničene. Programski dokument Slovenskega društva INFORMATIKA (SDI) Slovenija kot informacijska družba - Modra knjiga je nakazal sprejemljive možnosti in vlogo civilne družbe pri razvoju Slovenije v smeri civilne družbe, ki so se v precejšnjem obsegu že začele izpolnjevati. S tem je Modra knjiga dosegla svoje poslanstvo in namen, SDI pa cilj, to je, vzpodbuditi vse, ki imajo možnost vplivati na razvoj, da zavzamejo vloge skladno z možnostmi in pooblastili. Upoštevana je bila tudi usmeritev, naj bo posvetovanje tudi v prihodnje čim bolj odprt strokovni forum. 2. Vodilna misel posvetovanja DSI 2001 Informatika - skupni imenovalec omrežnega gospodarstva je bila aktualna in skladna s trendi razvoja v svetu ter vpliva informatike na gospodarstvo. Posvetovanje je potekalo v znamenju odpiranja, omrežij in odličnosti. Odpiranje posvetovanja se je izkazovalo navznoter pri organizaciji posvetovanja, z odprtostjo za ideje in izmenjavanje mnenj, z omogočanjem udeležbe študentom in opazno tudi v pogledu mednarodnih stikov. Omrežja so bila zastopana kot tehnični sistem - intranet posvetovanja in v možnostih razvijanja strokovnih, poslovnih in osebnih stikov. Posebej pomembneje vzpodbujanje strokovne odličnosti, pri čemer ima civilna družba možnost, da priznava strokovno odličnost z javnim podeljevanjem priznanj posameznikom in organizacijam za njihove dosežke. 3. Organizatorje na mednarodni sestanek v okviru DSI 2001 povabil visoke predstavnike društev za informatiko sosednih držav: Italije, Avstrije, Madžarske, Hrvaške ter predsednika in izvršnega direktorja International Federation for Information Processing (IFIP), ki je bil pokrovitelj sestanka. Udeleženci sestanka so sprejeli naslednjo izjavo: Na prvi dan posvetovanja Dnevi slovenske informatike 2001 so se v Portorožu sestali predstavniki avstrijskega, italijanskega in madžarskega društva za informatiko in izmenjali informacije o nacionalnih prioritetah na področju informacijskih tehnologij, o dejavnostih ter pobudah in da bi ugotovili področja skupnega interesa za prihodnje regionalno in mednarodno sodelovanje. Društva, udeleženci sestanka cenijo vlogo in možnosti International Federation for Information Processing, da vzpobudi pomembne mednarodne aktivnosti, in mu izrekajo priznanje za pokroviteljstvo srečanja in njegovo pripravljenost, da tudi v prihodnje podpira prizadevanja svojih članic pri vzpostavljanju tesnejših regionalnih povezovanj. Udeleženci sestanka so se strinjali, da ustanovijo stalen regionalni odbor za sodelovanje društev, ki so sodelovala na sestanku - Information Technology STAnding Regional Committee (IT STAR). Njegova vloga bo vzpodbujanje stikov, povečevanje vloge civilne družbe v Evropski zvezi zlasti v državah, ki so v procesu pristopanja, vzpodbujanje in pomoč pri bilateralnem sodelovanju društev, ki to želijo ali potrebujejo, in ugotavljanje možnosti regionalnih programov za znanstveno in tehnično sodelovanje. Člani IT STAR so po en predstavnik vsakega sodelujočega društva in predstavnik IFIP IT STAR bo odprt tudi za druga društva te regije. Dogovorjeno je bilo, da bosta naslednja sestanka IT STAR septembra 2001 v Comu, Italija, in marca 2002 ob priliki sestanka Sveta IFIP na Bledu v Sloveniji. Udeleženci sestanka se strinjajo, da bodo z izjavo seznanili javnost držav, iz katerih prihajajo. 4. Glede vsebine posvetovanja udeleženci ugotavljamo, da so sklopi primerno izbrani. Predkonferenca je bila praktično naravnana, samostojen del posvetovanja in na pravi strokovni višini. Plenarni del posvetovanja je bil vsebinsko bogat in primerno slovesen, k čemur so prispevali nagovori predstavnikov društev za informatiko sosednih držav ter slovenski minister za informacijsko družbo dr. Pavel Gantar. V ta kontekst spadajo tudi podelitve priznanj in vabljeni referati. 5. Sekcije so ustaljene in omogočajo pregled razvoja posameznega področja, ki ga pokrivajo, obenem pa so dovolj posodobljene, da je mogoče spremljati nova dognanja in razvojne smeri informatike. Kot pozitivno razširitev vsebine sprejemamo udeleženci sekcijo, v kateri so predstavljali svoje referate in dosežke študenti. Pomembna novost je bila sekcija, kije obravnavala sociološke vidike informatike in v tej zvezi etična vprašanja, ki jih poraja razvoj, ker ocenjujemo, da bodo postala vse bolj pomembna. Zbornik posvetovanja, kjer so objavljeni referati in povzetki, je pomembna strokovna in tudi študijska publikacija, 6. Okrogle mize so tradicionalna priložnost za izmenjavanje mnenj, pogledov in stališč. Obravnavana je bila strategija razvoja informatike v Sloveniji, kjer so predstavniki vseh treh sektorjev - država, gospodarstvo in civilna družba podali svoja pričakovanja in pogled na možnosti, kako jih uresničiti. European Computer Driving Licence (ECDL) v Sloveniji je bil prikaz stanja ECDL po enem letu uvajanja, obenem pa tudi zanimiva primerjava z razvojem v Avstriji. Ugotovitev je bila, da je ECDL ob prehodu v informacijsko družbo izjemno pomemben za pospeševanje uporabe računalnikov in da bi ga morala država intenzivneje podpirati. Informatika v uradnih klasifikacijah je bila okrogla miza, na kateri smo udeleženci ugotavljali zaostajanje mednarodnih in nacionalnih klasifikacij, ki še ne upoštevajo informatike kot samostojnega področja kljub temu, da je gospodarsko pomembna ter priznana kot znanost in kot stroka. Udeleženci zato nalagamo organizatorju DSI 2001, naj si prizadeva, da bi se informatika lahko začela izkazovati tudi v uradnih klasifikacijah. 7. Delavnici sta bili namenjeni udeležencem, ki so želeli pridobiti praktična znanja s področja izdelovanja računalniških igric in porazdeljenega razvoja aplikacij. Za prvo z začudenjem ugotavljamo, da je bila glede na sestavo udeležencev preslabo obiskana. Druga je omogočila vpogled v prakso in način delovanja podjetja, ki uporablja sodoben in informacijsko podprt pristop pri upravljanju razvoja računalniških aplikacij. Obe delavnici nakazujeta, da bi bila lahko Slovenija pomembnejši izvoznik izdelkov visoke tehnologije, kakor je. 8. Udeleženci posvetovanja ocenjujemo, daje DSI 2001 dogodek, ki seje uveljavil kot verjetno najpomembnejše strokovno srečanje informatikov in uporabnikov rešitev v državi. Kot pozitivno ocenjujemo odprtost za najširše znanstvene, strokovne in poslovne vidike informatike. Z zadovoljstvom ugotavljamo, da je postalo posvetovanje vidno in pomembno tudi mednarodno. Teme in vsebine posvetovanja so bile aktualne, njihove predstavitve pa na pričakovani tehnični ravni. Kot možnost za izboljšavo na prihodnjih posvetovanjih vidimo predvsem povečanje števila udeležencev, s čimer bi dogodek še pridobil na pomenu. Za posvetovanje bi bilo mogoče zainteresirati več poslovnih subjektov tako s področja informacijskih tehnologij kakor tudi iz spremljajočih in dopolnilnih dejavnosti, kar bi povečalo njegovo privlačnost. Pomembna je tudi vloga DSI pri navezovanju razvijanju in ohranjevanju stikov s slovenskimi informatiki, ki delajo na tujem, in ocenjujemo, da je nujno ta del posvetovanja v prihodnje intenzivneje razvijati. Portorož, 21. april 2001 Strokovne razprave O RAZŠIRLJIVEM OZNAČEVALNEM JEZIKU XML IN NJEGOVI UPORABI Tomaž Mohorič, Marjan Krisper Fakulteta za računalništvo in informatiko, Univerza v Ljubljani, Tržaška 25, 1000 Ljubljana {tomaz.mohoric, marjan.krisper}@fri.uni-lj.si Izvleček Razširljivi označevalni jezik XML nudi osnovo za kreiranje dokumentov in dokumentnih sistemov. Deluje predvsem v dveh smereh. Prva je skrb za sintakso pri označevanju dokumentov, druga pa skrb za deklariranje dokumentnih struktur. Nič manj pomembna ni uvedba imenskih prostorov, ki omogočajo obstoj različnih dokumentov, in njihovih interakcij v ustreznih imenskih prostorih. Morda je ena izmed najpomembnejših lastnosti prav sposobnost shranjevanja in izmenjave podatkov med uporabniki pod nadzorom definicij dokumentnih tipov in shem XML. Abstract Extensible Markup Language (XML) provides a foundation for creating documents and document systems. It functions in two directions mainly. The first one is the provision of syntax for document markup, and the second one is the provision of syntax for declaring the structures of documents. Not less important is an introduction of namespaces, enabling the coexistence of differentXML documents and their interactions in corresponding namespaces. Maybe one of its strongest points is the ability for storing and exchanging data among users under control of Document Type Definitions and XML Schemas. 1. Uvod Jezik XML (eXtensible Markup Language) je izpeljanka jezika SGML (Standard Generalized Markup Language), ki se uporablja za kreiranje in označevanje tehnične (in tudi druge) dokumentacije. Iz jezika SGML so, na primer, izvedeni tudi CML (Chemical Markup Language), VML (Vector Markup Language), MathML (Mathematical Markup Language) in še vrsta drugih sorodnih jezikov. XML je metajezik - jezik, s pomočjo katerega se definira konkreten označevalni jezik, neposredno uporaben za označevanje določene vrste dokumentov. Dokumenti XML imajo vlogo vsebnikov, v katere se shranjujejo podatki. Po tej plati so podobni tabelam v relacijski podatkovni bazi in objektom v objektno usmerjeni podatkovni bazi. Metajezik obsega množico sintaktičnih pravil za kreiranje konkretnega označevalnega jezika. Po svoji obliki je XML samoopisni jezik, ki z uporabo oznak pojasnjuje pomen podatkov v dokumentu. Oznake, s katerimi se dokument označi, se smejo izbrati poljubno, smiselno pa je, da hkrati odražajo tudi pomen podatka, tako da ga lahko razumeta hkrati človek in tudi računalnik, natančneje programska oprema. 2. Oznake Vrednost podatka, ki ga želimo zapisati v dokument, se mora nahajati med dvema oznakama - začetno oznako in končno oznako (tag). Par oznak, med katerima se nahaja vrednost, imenujemo element'. Peter Kovač Tako predstavljata in začetno in končno oznako, Peter je pa vrednost elementa. XML razlikuje med velikimi in malimi črkami, zato morata biti začetna in končna oznaka zapisani na enak način. Sintaktično pravilno zapisane oznake so tudi: Peter Kovač V dokumentu se razen elementov lahko shranjujejo tudi atributi. Če naj bo v dokumentu shranjen element (npr. knjiga), ki mu pripada eden ali več atributov (npr. ISBN, leto izdaje), je zapis naslednji: V zgornjem zapisu je Knjiga element, ISBN in leto sta pa atributa. Omenjeni razpored vrednosti in atributov v oznaki se imenuje tudi "prazna oznaka", ker ne obsega tudi vrednosti elementa. Atribut je sestavljen iz para ime-vrednost, med njima pa stoji enačaj. Pri poimenovanju oznak veljajo naslednja pravila: ■ imena elementov se smejo pričeti s poljubno črko ali podčrtajem; ■ po prvem znaku lahko sledijo črke, številke, pike, pomišljaj!, podčrtaji ali dvopičja; ■ imena elementov ne smejo vsebovati kontrolnih znakov kot so npr. (vvhite space, cariage return, line feed, form feed); ■ imena elementov se ne smejo pričeti z imenom XML ali xml, ker je to ključna beseda, ki se uporablja le v posebnih primerih, npr. pri deklaracijah dokumenta. 3. Deklariranje dokumenta XML Dokument se prične z deklaracijo XML, ki obsega verzijo dokumenta XML, podatek, ali je dokument samostojen ali ne, ter način kodiranja: Za naše kraje je primerno npr. kodiranje ISO-8859-2, kije prava podmnožica kodiranja UTF-8. Določili stnn-dalone in encoding sta praviloma opcijski, vendar ju je v nekaterih primerih potrebno uporabiti. Določilo standalone—"yes" pomeni, da je dokument povsem samostojen, določilo standalone— "no" pa pomeni, da je dokument vezan na kak drug dokument, npr. na pripadajoči DTD (Document Type Definition). Iz predhodno opisanih fragmentov se lahko sestavi samostojen dokument po imenu Revija. Revija je hkrati tudi korenski element, ki zajema vse druge elemente v dokumentu. < Revija > < Avtor > Peter Kovač 4. Dobro oblikovani dokument Dokument sodi med dobro oblikovane (vvell-formed) dokumente, če v njem ni sintaktičnih napak. Nekaj poglavitnih napotkov, ki omogočajo kreiranje dobro oblikovanih dokumentov: ■ dokument se mora pričeti z deklaracijo XML; ■ elementu, ki vsebuje podatke (vrednost), morata pripadati začetna in končna oznaka; ■ element, ki ne vsebuje podatkov (vrednosti) pač pa le atribute, se ves nahaja v posamični oznaki, ki se pričenja z <... in končuje z .../>; v tem primeru govorimo o prazni oznaki ali o elementu brez podatkov; ■ dokument mora obsegati natanko en element, ki vsebuje vse ostale elemente - tak element se imenuje korenski element; ■ element je lahko vgnezden v drugem elementu; b vrednost atributa se mora nahajati v dvojnih narekovajih; b obstajajo naslednje znakovne entitete, ki lahko po potrebi nadomestijo osnovne simbole: Entiteta Simbol Pomen > > večji < < manjši & & konjunkcija (ampersand) ' apostrof " dvojni narekovaj Ker imata začetna in končna oznaka < ... > svoj rezervirani pomen, ki se uporablja pri zapisovanju oznak, je potrebno v primeru uporabe simbolov "večji" in "manjši" znotraj oznake nadomestiti simbol "večji"/, znakovno entiteto ">" in simbol "manjši" z znakovno entiteto "<". Podobna pravila veljajo tudi za enojni in dvojni narekovaj ter konjunkcijo. 5. Veljavni dokument Podobno kot pri drugih podatkovnih modelih tudi pri dokumentih XML obstajajo omejitve, ki omejujejo dopustno vsebino dokumenta. V dokument se smejo zapisati le tisti podatki, ki so v skladu s shemo dokumenta. XML pozna dve vrsti shem. Prva shema je že uveljavljena in v široki uporabi. Imenuje se DTD (Document Type Definition). Druga shema, ki je popolnejša od DTD in obsega več opcij za uveljavitev in-tegritetnih omejitev, pa se imenuje XML Schema. Dokumenti, ki so zapisani v skladu s shemo, so veljavni (valid) dokumenti. 6. Elementi Element je grupa, sestavljena iz enega ali več podele-mentov ali podgrup, obsega pa lahko tudi znakovne podatke ter ključni besedi EMPTY (prazen element) in ANY (katerikoli element). EMPTY pomeni, da element ne vsebuje podelementov ali znakovnih podatkov, pač pa lahko vsebuje atribute. ANY pomeni, da lahko element vsebuje nič ali več podelementov kateregakoli tipa, vključno z znakovnimi podatki. Grupa: Znakovni podatek: EMPTV: ANY: Grupe so lahko zaporedja ali izbire podelementov (podgrup). Primer zaporedja je predstavljen že pri grupi, primer izbire pa je: dELEMENT knjiga (prolog | poglavje| epilog)> V grupo so lahko vgnezdene izbire in v izbiro so lahko vgnezdene grupe. Nad grupami, podgrupami in podelementi se lahko aplicirajo operatorji: ? (opcija), + (eden ali več), * (nič ali več). Opcija: podelement knjiga lahko obstaja ali pa tudi ne dELEMENT Avtor (Ime, Priimek, knjiga?)> Eden ali več: podelement knjiga se pojavlja najmanj enkrat Nič ali več: podelement knjiga se ne pojavlja ali pa se pojavlja enkrat ali večkrat 7. Atributi Elementi lahko vsebujejo atribute. Na seznamu atributov ATTLIST se lahko nahaja eden ali več atributov, ki pripadajo posameznemu elementu. Naslednji zgled prikazuje atributni seznam, ki obsega dva atributa -ISBN in leto. Atributi so lahko po vrednosti opcijski, zahtevani ali fiksni. Opcijski atributi imajo lahko privzeto vrednost, fiksni atributi pa morajo imeti privzeto vrednost. Klasificirajo se v atribute brez privzete vrednosti, v atribute s privzeto vrednostjo ter obvezne in fiksne atribute. < IATTLIST knjiga ISBN CDATA #REQUIRED leto CDATA #REQUIRED > Vsakemu atributu pripada tudi tip. Tip je lahko znakovni ali od uporabnika definirani naštevni tip. Posebne vrste atributa sta ID in IDREF - atributi te vrste kažejo z enega elementa na drugega. Vrednost atributa IDREF na kažoči element je enaka kot vrednost atributa ID na pokazani element. 8. DTD za dokument Revija S pomočjo znanja, pridobljenega v zgornjih vrsticah, je možno dešifrirati pomen DTDja - sheme - ki določa dopustno vsebino dokumentov. dELEMENT Avtor (Ime, Priimek, knjiga)> dELEMENT Ime (#PCDATA)> dELEMENT knjiga EMPTY> < IATTLIST knjiga ISBN CDATA #REQUIRED leto CDATA #REQUIRED > Pomen posameznih vrstic je naslednji: 2. vrstica: korenski element dokumenta je imenovan Revija, v dokumentu pa se lahko nahajajo podatki o enem ali več avtorjih; 2. vrstica: avtor ima Ime, Priimek in (je napisal) knjiga; 3. in 4. vrstica: enostavni elementi vsebujejo tekst, ki je poimenovan PC DATA (parsed character da ta), sestavljeni elementi vsebujejo druge elemente, lahko tudi tekst in druge elemente; Ime je tipa PCDATA, Priimek je tipa PCDATA; tekst tipa PCDATA je v bistvu katerikoli tekst, ki ni označevalni (rnarkup) tekst; 5. vrstica: prazen element knjiga; 6. vrstica: lista atributov, ki pripadajo knjigi: ISBN in leto sta oba tipa CDATA (character data), atributa pa sta obvezna. Omejitve, ki izhajajo iz DTDja, pa so naslednje: ■ korenski element je Revija; ■ Revija obsega enega ali več avtorjev; ■ Avtor je sestavljen iz elementov Ime, Priimek, knjiga; ■ knjiga obsega dva atributa ISBN in leto; ■ elementa Ime, Priimek sta tipa PCDATA; ■ elementa ISBN, leto sta tipa CDATA. 9. Vključenost DTDja v dokument DTD je lahko vključen v dokument na dva načina. Lahko je vgnezden med deklaracijo XML () in podatkovnim delom dokumenta, lahko pa se DTD nahaja v posebni datoteki in je vključen v dokument s pomočjo reference. Naslednji primer prikazuje neposredno vključenost DTDja v dokument: dELEMENT Avtor (Ime, Priimek, knjiga)> dELEMENT Ime (#PCDATA)> <(ELEMENT knjiga EMPTY> < IATTLIST knjiga ISBN CDATA #REQUIRED leto CDATA #REQUIRED> ]> < Revija > Peter < Priimek> Kovač Miha Pečar < Revija > Peter Kovač < Avtor > Miha Pečar 10. Shema XMLza dokument Revija Shema XML igra podobno vlogo kot DTD in je integ-ritetna omejitev na dopustno vsebino dokumenta Revija. Pri relacijskih podatkovnih bazah se z jezikom DDL definirajo relacijske sheme za tabele skupaj z integritetnimi omejitvami. Dokument XML obsega enega ali več elementov, ki vsebujejo atribute, ostale elemente in tekstovne zapise. Z uporabo jezika Shema XML lahko avtor definira strukturo in dovoljene podatkovne tipe v dokumentih. V nadaljevanju je predstavljena shema za dokument Revija. Vsaki shemi praviloma pripada eden ali več primerkov te sheme - konkretnih dokumentov. Uporabniki praviloma izpolnijo le s shemo definirani obrazec, v katerem se potem nahajajo podatki, ki jih želijo shraniti, posredovati drugim uporabnikom in podobno, shema, ki preverja pravilnost izpolnjevanja obrazca, pa ostaja ves čas ena sama. Tržaška 25 Ljubljana < Država > Slovenija SI-1000 Jezik B PC02 300.2.76.14 Vsak izmed omenjenih dveh jezikov je drugačen. Pri obeh nastopa oznaka Naslov kot ime tipa elementa, pa vendar je pomen omenjenih oznak različen. Razlikovanje nastopa pri modelu, pomenu in interpretaciji tipa elementa v aplikaciji. Pa vendar se lahko omenjena dva dokumenta združita v enega, če se dokumente označi s prefiksi, kot kaže naslednji sestavljeni dokument: FRI Tržaška 25 Ljubljana < nsl: Država > Slovenija < nsl: PŠT> Sl -1000 -[xSLT -► krmilni postopek | JavaScript j n / upravnik ►^pregled j DHTML —[upravljanje DSO v- J v / v_______ Slika 3: Enostavne pretvorbe XML na strani odjemalca za prikaz Vsi našteti dokumenti se kot datoteke shranijo na odjemalcu. Odjemalec s pomočjo XSLT in krmilnega postopka preoblikuje podatke v obliko primerno za prikaz. Ko uporabnik zahteva drugačen pregled (npr. drug način razvrstitve podatkov), zahtevo poda krmilnemu postopku, ki prilagodi navodila XSLT zahtevi uporabnika. Pri tem v nobeni fazi postopka odjemalec ne dostopa do podatkov na strežniku. Omenimo še, da lahko uporabimo XML in XSL tudi za klasičen način dostopa do podatkov. Pri klasičnem načinu dostopa do podatkov stran za pregled v brskalniku pripravi že strežnik in jo brskalnik le prikaže. Kljub temu, da s tem izgubimo prej naštete prednosti obdelave na strani odjemalca, nam XML na strani strežnika še vedno nudi vse prednosti standardizacije. 5.2. XML kot most med odjemalci in vsebino Prej opisane pretvorbe dokumenta XML v drugačne oblike zapisa niso uporabne samo za prikaz dokumenta. Izkoristiti jih je mogoče za pretvorbo dokumenta XML v katerokoli obliko zapisa. Tako je mogoče dokument XML s pomočjo XSLT enostavno spremeniti v zapis HTML, WML, PDF, DOC, SQL, itd. Slika 4 prikazuje uporabo XML in XSLT za povezavo različnih odjemalcev z enako vsebino. Datoteko XML lahko s pomočjo pretvornika XSLT predelamo v katerikoli format. Na sliki 4 vidimo format HTML, ki je uporaben v navadnih brskalnikih, format WML (VVireless Markup Language) v katerem se shranjujejo dokumenti na strežnikih WAP za mobilne telefone, format PDF (Portable Document Format) in kot zadnjo obliko format SQL, ki omogoča vnos dokumenta XML v relacijsko podatkovno bazo. Seveda bi lahko izdelali tudi katerokoli drugo vrsto dokumenta. Kot vidimo, je pretvarjanje dokumentov XML v druge oblike s pomočjo XSLT dokaj dobro urejeno in standardizirano. Vendar most med odjemalci in vsebino s tem še ni sklenjen. Vsebina je namreč lahko pretvornik N •(^ brskalnik XSLT 1 WML - ►(mobilnitelefon XSLT 2 pregledovalnik - PDF , XSLT 3 XSLT4 oblika za Pl (SOLJ___ Slika 4: XML kot enotna oblika zapisa vsebine za uporabo na različnih odjemalcih zapisana v najrazličnejših oblikah. Drugi del naloge je prevedba najrazličnejših vhodnih oblik podatkov v XML. Slika 5: XML kot enotna oblika zapisa za različne ponudnike vsebine Na Sliki 5 vidimo princip poenotenja zapisa različnih oblik vsebine. XML je zanimiv standard za zapis vsebine ravno zaradi enostavnih nadaljnjih pretvorb s pomočjo XSLT, ki so bile predstavljene v začetku tega poglavja. Problem pretvorbe poljubnega zapisa v XML je prav sam pretvornik, saj pretvorba poljubnih oblik zapisov v XML ni standardizirana (vprašaji »?« na Sliki 5). Problem pretvorbe proizvajalci orodij rešujejo na različne (lastne) načine. 6. Orodja za izdelavo poslovnih portalov V zadnjem času se je na trgu pojavila vrsta orodij za izdelavo poslovnih portalov najrazličnejših proizvajalcev. Zbirke orodij za izdelavo poslovnih portalov lahko razdelimo na dve področji: m zbirke orodij, ki omogočajo implementacijo dela funkcionalnosti poslovnega portala in ■ zbirke orodij, ki poizkušajo pokrivati celotno funkcionalnost poslovnega portala. Takoj povejmo, da enotnega orodja, ki bi pokrivalo celotno funkcionalnost poslovnega portala kot je bila predstavljena v prejšnjih poglavjih, ni. Tako so poslovni portali v praksi navadno zbirke več orodij, katerih delovanje poizkušajo v večji meri prenesti v skupni vmesnik. Programske hiše velikokrat prav ta skupni vmesnik imenujejo portal. Pri tem je največji poudarek na enostavnih poizvedbah in grafih, združevanju različnih virov podatkov ter upravljanju z vsebino. Medtem ko zahtevnejše funkcije kot so zahtevne poizvedbe OLAP, orodja za odkrivanje zakonitosti v podatkih ali sistemi za zgodnje obveščanje ostajajo zapostavljene. Zbirke orodij za izdelavo poslovnih portalov pa lahko delimo tudi glede na specializacijo: e zbirke orodij za izdelavo specializiranih poslovnih portalov in e zbirke orodij za izdelavo splošnih poslovnih portalov. Tako nekatere zbirke orodij omogočajo izdelavo portalov, ki so prirejeni določeni vrsti poslovanja (na primer poslovni portali za telekomunikacijska podjetja, poslovni portali za farmacevtska podjetja, poslovni portali za zavarovalnice, itd.). Ta orodja so izdelana na podlagi »najboljših izkušenj« v določeni panogi in ne vključujejo le programskega skeleta, ampak tudi znanja, ki so v določeni panogi potrebna. Taki portali navadno obsegajo večji del funkcionalnosti kot splošni portali in lahko zadostijo večjemu delu specializiranih potreb podjetja. Pokrivanje večjega obsega funkcionalnosti je mogoče zaradi specializiranosti orodij za določeno vrsto poslovanja, saj se s tem zniža njihova kompleksnost. Nasprotno so zbirke orodij za izdelavo splošnih portalov bolj kompleksne in zato navadno pokrivajo manjši del funkcionalnosti poslovnega portala. To pomeni, da je potrebno večji del poslovnega portala izdelati s pomočjo lastnih razvijalcev, po drugi strani pa to pomeni, da bo portal lahko bolj prilagojen željam podjetja. Specializirana orodja lahko delimo naprej na: e vertikalno specializacijo (orodja namenjena določeni vrsti poslovanja - npr. naftna industrija) e horizontalno specializacijo (orodja namenjena za pokrivanje določenega dela poslovanja - npr. nabavna veriga) Vertikalno specializirana orodja so bila predstavljena že v predhodnem delu sestavka. Horizontalno specializirana orodja navadno sicer podpirajo več različnih tehnologij poslovnega portala, vendar te tehnologije uporabljajo le nad delom poslovanja. Osredotočenje na ozek del poslovanja med drugim omogoča tudi implementacijo sistemov za zgodnje obveščanje. Večina orodij za izdelavo poslovnih portalov, ki so trenutno na tržišču, poizkuša na tak ali drugačen način vključiti tudi XML. Tako je XML navadno uporabljen kot oblika shranjevanja podatkov. Najnovejša orodja pa uporabljajo tudi tehnologijo pretvorbe in prikaza XML na strani odjemalca. Problem pretvorbe in prikaza XML na strani odjemalca (brskalnik), je pomanjkanje odjemalcev, ki bi podpirali tehnologijo XML in XSLT. 7. Mobilni portali Že v prejšnjem delu članka smo spoznali tehnologijo za prenos najrazličnejših podatkovnih virov na poljuben tip odjemalca. Prav ta tehnologija nam omogoča, da v kratkem času obstoječe podatkovne vire prilagodimo za prikaz na mobilnih napravah. Pri tem moramo upoštevati posebnosti kot so majhen zaslon in tipkovnica (navadno je na voljo le številčna tipkovnica) ter manjša hitrost procesorja, ki je vgrajen v mobilno napravo. Tako je za mobilne portale značilna višja stopnja poosebitve in lokalizacije kot za običajne spletne portale, saj je uspeh mobilnih portalov odvisen prav od enostavnosti uporabe in dostave prave informacije v pravem trenutku. Zanimiva je ocena [Durlacher Research Itd. 2000], da vsak dodaten pritisk na tipko v komercialnem mobilnem portalu pomeni 50 odstotno zmanjšanje verjetnosti, da bo stranka opravila transakcijo. Pri poslovnem mobilnem portalu pomeni bolj zapleten vmesnik večjo možnost napake, zato je toliko bolj priporočljiv čim enostavnejši poosebljen vmesnik. Zelo pomemben je tudi trenutek dostave podatkov, saj so nepravočasno dostavljeni podatki lahko povsem brez vrednosti. Mobilni poslovni portali odpirajo povsem nove možnosti v poslovanju, saj omogočajo neposredno ažuriranje in branje podatkov v centralnem informacijskem skladišču. Tako podatkov, ki jih podjetje pridobi s terena, več ne vnašajo v bazo le ob koncu dneva, enkrat tedensko ali celo v daljših intervalih, ampak se transakcija opravi neposredno. Kot primer navedimo prodajo knjig na domu, kjer trgovski potnik v trenutku, ko proda knjigo, to tudi vpiše v centralno podatkovno skladišče. Njegov vnos je mogoče takoj uporabiti pri analiziranju prodaje, izdati novo naročilo za določeno knjigo, poslati na neko področje več trgovskih potnikov, itd. Po drugi strani lahko trgovski potnik preko mobilnega portala išče potencialne stranke, ki so v preteklosti že kupile določene knjige. Pri tem se lahko omeji le na območje v svoji neposredni bližini, na primer hišna številka bloka, in na podlagi preteklih izkušenj stranki ponudi knjigo, ki jo bo najverjetneje kupila. Danes se pojavlja vedno večje število mobilnih aplikacij, ki pa so zaradi posebnosti mobilnih naprav v primerjavi s spletnimi portali nekoliko omejene. Z razvojem zmogljivejših mobilnih terminalov in hitrejših tehnologij za prenos podatkov lahko v prihodnosti pričakujemo manjšanje razlik in še večjo uporabnost mobilnih portalov. 8. Zaključek Poslovni portali združujejo raznovrstne tehnologije informacijskih sistemov, ki se skupaj s tehnologijo poslovnih portalov neprestano razvijajo. Iz napovedi velikih svetovalnih hiš je razbrati, da poslovni portali niso »muha enodnevnica«, ampak tehnologija, ki naj bi podjetjem prinesla konkurenčno prednost in visoko vračanje naložb. V prihodnosti je pričakovati še večje vključevanje poslovnih portalov v poslovne procese podjetij in hkrati vključevanje novih tehnologij, kot je na primer tehnologija nevronskih mrež. V kolikšni meri bodo pričakovanja uresničena, bomo videli šele čez nekaj let. Literatura [1] Skupina Merrill Lynch (november 1998): »Enterprise Information Portals«, poročilo [2] Finkelstein, C., Alken, R H.(2000): »Buildingcorporate portals with XML«, McGraw-Hill [3] Reynolds, H. (2000): »Avoiding Information Overload«, DB2 Magazine, spletni naslov: http://www.db2mag.com/db_area/archives/ 2000/q2/reynolds.shtml [4] Nesek, V.(junij 2000): »Razdvajanje sadržaja i prikaza dokumenata pomoču XML-a i XSLT-a«, OTS 2000, zbornik 5. konference, Maribor [5] Durlacher Research Itd. (2000): »Mobile Commerce report«, poročilo, str. 16-17 [6j Kranjc, A.; VVelzer Družovec, Tatjana: XML in podatkovne baze, OTS 2000, zbornik 5. konference, Maribor, junij 2000 [7] Hill, J.(2000): »Navigating Deep VVaters«, GenisSvet 2000, povzetek predavanja Gartner Group [8J Hill, J.(2000): »Data VVarehouse Value Through Business Intelligence«, GenisSvet 2000, povzetek predavanja Gartner Group [9] Ferguson, M. (april 1999): »Distribution business«, Information-Age, str. 49-50 [10] Ferguson, M. (maj 1999): »Portal potential«, InformationAge, str. 26-27 [11] Karpinski, R. (marec 1999): »Howto build a corporate portal«, Planet IT, spletni naslov: http://www.planetit.com/ ♦ Damjan Vavpotič je že v času študija objavil več člankov v poljudnih računalniških revijah Moj Mikro, Win.ini, Programer in Monitor. Leta 2000 je diplomiral in se zaposlil na Fakulteti za računalništvo in informatiko. Letos je bil izvoljen v naziv asistent za področje Računalništvo in informatika. Podiplomski študij nadaljuje na Fakulteti za računalništvo in informatiko. ♦ Rok Rupnik je diplomiral leta 1994 na takratni Fakulteti za elektrotehniko in računalništvo, magistriral pa leta 1998 na Fakulteti za računalništvo in informatiko. Od leta 1994 je asistent za področje računalništva in informatike. Področja njegovih raziskav so razvoj informacijskih sistemov, elektronsko in mobilno poslovanje ter mobilne aplikacije. Je član slovenskega društva Informatika in AIS (Association for Information Systems). Strokovne ra/prave Splošen koncept NAČRTOVANJA TESTNIH PRIMEROV Tomaž Dogša cV&Vs Center za verifikacijo in validacijo sistemov Fakulteta za elektrotehniko, računalništvo in informatiko Univerza v Mariboru, Smetanova 17, 2000 Maribor E-pošta: tdogsa@uni-mb.si Izvleček Učinkovito testiranje zmanjša skupne stroške načrtovanja in vzdrževanja ter omogoča objektiven pogled na kakovost programske opreme. V prispevku bomo prikazali enega izmed možnih splošnih konceptov načrtovanja testnih primerov, ki temelji na testirnem modelu. Za zgled smo izbrali dve preprosti in najpogosteje uporabljeni strategiji. Abstract An effective testing reduces the costs of development and maintenance. At the same time it enables an objective view on software quality. in the paper we shall describe the general concepts of test čase design based on testing models. M/e have illustrated this with two simple and most widely used strategies. 1. Uvod Testiranje programske opreme je še vedno ena izmed najdražjih aktivnosti, ki jih izvajamo v življenjskem ciklusu programskega produkta. Učinkovito testiranje zmanjša skupne stroške in omogoča objektiven pogled na kakovost programske opreme. S pojmom testiranje označujemo skupek naslednjih aktivnosti: načrtovanje testnih primerov, izvajanje programa (ali pa samo njegove komponente), opazovanje in beleženje rezultatov tega poganjanja ter njihovo vrednotenje glede na določen vidik [IEEE, 1990b]. V skupini teh aktivnosti je načrtovanje testnih primerov zagotovo ena izmed najzahtevnejših nalog. Za sistematičen opis postopka načrtovanja testnih primerov obstaja več sinonimov. Myers govori o metodologiji načrtovanja testnih primerov ([MY-ERS,1979J, str. 36), Beizer o testirni strategiji [BF.1ZER, 1990], Binder uporablja testirne šablone ([BINDER, 2000], str. 338), mnogi drugi pa se zavzemajo za pojma: testirna metoda in testirna tehnika. V tem prispevku smo se odločili za testirno strategijo. Testni primer (test čase) je sestavljen iz opisa vhodnih podatkov in pričakovanega obnašanja. Kakovosten testni primer mora biti učinkovit, razumljiv in zagotoviti mora ponovljivost. Učinkovitost je povezana z verjetnostjo odkritja nepravilnosti. Razumljiv je takrat, ko ga lahko izvede oseba, ki ni avtor tega testnega primera. Če so testni primeri zadostno razumljivi, je izvedba testa v večini primerov najenostavnejša aktivnost v celotnem testirnem procesu (več o opisovanju testnih primerov glej v [DOGŠA,1999,a]). Načrtovanje testnih primerov poteka po podobnih korakih (fazah) kot načrtovanje programske opreme. Mnogi testni primeri so v bistvu programi (testni skripti), s katerimi delno ali pa popolnoma avtomatiziramo nekatere testirne aktivnosti [DUSTIN,1999]. Ker se program med razvojem spreminja, je potrebno ustrezno prilagajati tudi testne primere. Podobno kot pri programski opremi lahko tudi tukaj govorimo o načrtovanju, implementaciji, preverjanju, uporabi in vzdrževanju testnih primerov. S testiranjem nikakor ni mogoče dokazati odsotnosti napak ali pravilnost delovanja, saj bi zato potrebovali izredno veliko število testnih primerov. Izjema so skrajno preprosti programi, katere lahko preskusimo z vsemi možnimi kombinacijami vhodnih podatkov. Kratke programe lahko tudi formalno verificiramo (matematično dokazovanje pravilnosti) in tako dokažemo, da ne vsebujejo napak. S testiranjem lahko dokažemo samo: 1. prisotnost določene lastnosti in 2. prisotnost ene ali več napak. Vsak testni primer je načrtovan z nekim namenom. Glede na vrsto namena jih lahko razdelimo v dve veliki skupni: skupina pozitivnih (clean test čase, pozitive test čase) in skupina negativnih testnih primerov (negative test čase, dirty test čase). Namen pozitivnega testnega primera je dokazovanje prisotnosti določene lastnosti. Testni primer, s katerim npr. ugotavljamo, ali je sploh implementirana funkcija za izračun obresti, spada v skupino pozitivnih testnih primerov. Pozitivne testne primere je relativno enostavno načrtovati. Zal nas ne morejo prepričati o pravilnosti delovanja programa. Ker s testiranjem ni možno dokazati odsotnosti napak, je osnovni cilj testiranja dokazovanje njihove prisotnosti. Takim testnim primerom pravimo negativni testni primeri. Za učinkovito testiranje naj bo število negativnih testnih primerov večje od pozitivnih (Beitzer priporoča razmerje 5:1 [BE-ITZER,1995]). V prispevku bomo prikazali splošen koncept načrtovanja testnih primerov, ki temelji na testirnem modelu. Pobudnika za ta novejši pristop sta predvsem Binder [BINDER,2000] in Beizer [BEIZER,1990]. V drugem poglavju bomo opisali pomen predpostavke o napaki ali nepravilnosti, ki je začetno izhodišče za načrtovanje testnih primerov. Nato bomo opisali koncept testirnega modela in definirali osnovne zahteve za testirno strategijo. 2. Predpostavka o napaki ali nepravilnosti Ideja testiranja je zelo preprosta: preverjevalec vedno predpostavlja, da program vsebuje eno ali več napak oziroma, da ima določene nepravilnosti. Ta predpostavka (bug assumption, fault assumption) je zelo pomembno začetno izhodišče za načrtovanje testnih primerov. Obstoj te predpostavke je seveda samo-posebi umeven, saj če bi predpostavljali, da v programu ni nobenih napak, bi bilo testiranje nepotrebno'. Za ilustracijo je na sliki 1 prikazanih nekaj predpostavk. 1. Program bo pomotoma sprejel negativno vrednost. 2. V predikatu, ki se nahaja v odločitvenem stavku, je napaka. 3. Izpis tabele so pozabili implementirati. 4. Program ne bo deloval pravilno po letu 2000. 5. Če bo indeks M = 0, se vvhile zanka ne bo nikoli končala. 6. Pri določeni kombinaciji vhodnih podatkov bo program odpovedal. Slika 1: Niz predpostavk o napakah ali nepravilnostih Predpostavka o napaki ali nepravilnosti je v bistvu namen testnega primera. Pove, kaj želimo s testnim primerom dokazati. Zelo pogosto pretvorimo predpostavko v vprašanje, npr.: Ali je izpis tabele implementiran? S testnim primerom, ki izhaja iz te predpostavke, lahko enostavno dokažemo, ali tabela je ali ni implementirana. Ne glede na izid tega testa, dobimo vedno nedvoumen odgovor. Ker je pravilna postavitev predpostavke in namena testnega primera zelo pomemben korak pri načrtovanju, bomo navedli še nekaj napačnih oziroma neprimernih predpostavk. Npr.: 1. Namen testnega primera je preveriti pravilnost izračuna inflacije. 2. Namen testnega primera je ugotavljanje nepravilnosti. Kaj lahko sklepamo, če program testiramo in v prvem primeru ne odpove? Je brez napak? Kot smo že v uvodu opozorili, s testiranjem ni možno dokazati pravilnost, ampak samo prisotnost napak ali določenih lastnosti. Namen pri drugem zgledu je preveč splošen, saj velja za vse testne primere. Če je namen testnega primera preveč splošen, ga bomo s težavo vzdrževali. Če uporabimo analogijo z razvojnim modelom programske opreme, ima namen testnega primera enako vlogo kot jo imajo zahteve (requirements) za program. Po izboru namena testnega primera sledi njegova implementacija. Najprej si napravimo kratek osnutek, katerega nato postopoma izdelamo do zadostnih podrobnosti, ki zagotavljajo ponovljivost in razumljivost. Najbolj pogosta metoda, ki se v tem koraku uporablja, je postopno izboljševanje. Zgled1 2: Namen testnega primera: Ali je izpis tabele implementiran? Osnutek: Izpišemo tabelo. Izboljšan 1. osnutek: Odpremo datoteko s podatki, zahtevamo izračun stroškov. Nastalo tabelo izpišemo. Izboljšan 2. osnutek: .... Opis testnega primera: Odpremo datoteko testl.dat. V meniju Analiza zahtevamo izračun stroškov (opcija 7). Nastalo tabelo izpišemo (meni Tisk, opcija 2. Pričakovani rezultat: Izpisana mora biti celotna tabela. 3. Testirni model Analiza zahtev in postavitev specifikacij sta ena izmed najzahtevnejših faz v razvojnem ciklu programske opreme. Če so specifikacije pravilno zastavljene, postane implementacija v mnogih primerih rutinska zadeva. Analogno velja za načrtovanje testnih primerov. Če je namen pravilno izbran in opisan, postane realizacija testnega primera rutinska zadeva, ki jo lahko izvede preverjevalčev pomočnik. Takoj vidimo, da je izbor namena testnega primera ključni problem, ki 1 Nekateri enačijo pojma analiza ter meritve in testiranje. Za tiste ta trditev seveda ne vetja. Če želimo samo ovrednotiti lastnosti nekega produkta, je to v bistvu samo analiza, ne pa testiranje. Če vrednotenju dodamo še primerjavo z referenčnim podatkom, potem gre za testiranje. 2 Pri opisu testnega primera v prejšnjem zgledu smo zaradi preglednost prikazali le najnujnejše atribute. nastopa pri načrtovanju testnih primerov. Za rešitev tega problema si preverjevalci pomagajo z različnimi testirnimi modeli. Testirni model je pripomoček, ki preverjevalcu pomaga določiti namen testnega primera. V večini primerov je objekt, ki ga testiramo, zelo kompleksen. Testirni model je poenostavljen opis (obnašanja ali lastnosti) objekta (npr. programa). Izpuščene so vse podrobnosti, katerih preverjevalec ne potrebuje. Pogosto so testirni modeli podobni modelom, ki jih uporabljajo načrtovalci (graf prehajanja stanj, odločitvene tabele, diagram toka podatkov itd.). Večino modelov lahko predstavimo z grafom, z matriko ali s tabelo, pa tudi s seznamom. Prvi testirni model, ki so ga uporabili za tvorjenje testnih vzorcev, je bil krmilni diagram (flovvgraph, control flovvgraph) oziroma graf programa (glej sliko 2). Ta model lahko zelo hitro tvorimo iz diagrama poteka (flovvchart). Načrtovanju testnih primerov na podlagi krmilnega modela pravimo tudi testiranje poti (path testing). Ker je teorija testiranja programskih poti zelo dobro obdelana, se v literaturi z njo zelo pogosto srečamo [BPIZER,I990], [DOGŠA,1994], [MY-ERS,1979], [VLIET/1993], [JORGENSEN,1995]. Mnoge ideje, nastale v zvezi s tem modelom, je možno posplošiti in ustvariti splošen koncept testirne-ga modela. Najbolj preprost testirni model je seznam predpostavk o napakah ali nepravilnostih (glej sliko 1). Preproste testirne modele prikazujemo z usmerjenim grafom, kompleksnejše pa z matriko ali s tabelo. Vsak usmerjeni graf je sestavljen iz vozlišč in usmerjenih povezav. Razvoj testirnega modela poteka po naslednjih korakih: 1. določimo, kaj bodo predstavljala vozlišča 2. določimo, kaj bomo predstavili z relacijo med vozlišči 3. ustrezno povežemo vozlišča med seboj in 4. če je potrebno, opremimo vozlišča in povezave z dodatnim atributom, povezanim z določeno lastnostjo (npr. pogostost) 0 0 0 0 0 0 0 0 1. zahtevaj vpis imena datoteke 2. If datoteka ne obstaja then 3. izpiši obvestilo 4. else izpiši vsebino datoteke na ekran 5. zaključi program 0 0 0 0 0 0 0 0 izvorna koda 2 transformacija >- Slika 2: Graf programa je zelo pogost testirni model 4. Testirna strategija Za izborom testirnega modela sledi postavitev ustrezne testirne strategije. Njen osrednji del je seveda testirni model. Testirna strategija ima podobno vlogo kot sistemske specifikacije. Če je pravilno opisana, lahko tretja oseba (npr. preverjevalčev pomočnik) relativno enostavno tvori testne primere. Vsaka pravilno zastavljena testirna strategija mora odgovoriti na naslednja vprašanja (v oklepajih so predlogi za imena posameznih alinej): 1. Kdaj in kje je ta strategija uporabna? (Območje uporabnosti) 2. Katere vrste napak ali nepravilnosti odkriva in katerih ne? (Opis predpostavke o napakah) 3. Na kakšnem testirnem modelu temelji? (Opis testirnega modela) 4. Kako na podlagi testirnega modela tvorimo testne primere? (Navodilo za načrtovanje) 5. Kateri pogoji morajo biti izpolnjeni, da bomo lahko začeli z načrtovanjem? (Pogoji za načrtovanje) 6. Kdaj je strategija izčrpana? (Terminalna kriterijska funkcija za določeno strategijo) Omejili smo se samo na šest najpomembnejših elementov, ki tvorijo opis strategije. Nekateri dodajajo še alineje o avtomatizaciji, zgledu, morebitnih problemih in omejitvah (glej npr. [BEITZER,1995], [BINDER,2000]). Za zgled smo izbrali preprosto strategijo, ki uporablja pozitivne testne primere. Poimenovali jo bomo Preverjanje prisotnosti zahtev. Ker je ena izmed najpreprostejših in najpogosteje uporabljenih, navajamo njen opis: 1. Strategija je uporabna v vseh primerih, kjer so znane specifikacije in zahteve, med katerimi ni nobenih relacij. Uporablja se lahko za testiranje kompletnih programov ali pa samo komponent. 2. Predpostavka o napaki: določena zahteva ni implementirana. S to strategijo odkrivamo zahteve, ki niso implementirane. Razen zelo redkih izjem ne bomo odkrili napačno implementiranih zahtev in zahtev, ki so po nepotrebnem implementirane. 3. Testirni model je seznam zahtev. 4. Za vsako zahtevo tvorimo en testni primer. Vhodne podatke si poljubno izberemo. 5. Z načrtovanjem testnih primerov lahko začnemo, ko so zahteve postavljene. 6. Testirna strategija je izčrpana, ko preverimo prisotnost vsake zahteve v seznamu. S to testirno strategijo bomo samo ugotovili, ali so vse lastnosti in zahteve implementirane. Le v redkih primerih bomo odkrili tudi druge nepravilnosti. Za ugotavljanje prisotnosti napak moramo postaviti še najmanj eno ali več strategij, ki temeljijo na negativnih testnih primerih. Druga najpogosteje uporabljena strategija uporablja seznam nepravilnosti ali napak iz preteklih projektov (glej primer na sliki 1). Za vsako nepravilnost, za katero predpostavljamo, da je prisotna, tvorimo enega ali pa več testnih primerov. Če je ta seznam tudi formalno zapisan, lahko govorimo o sistematični strategiji, sicer pa o intuitivni. Zagotovo sta intuitivno ugibanje napak in nepravilnosti ter preverjanje prisotnosti zahtev najbolj uporabljeni strategiji, saj ju uporablja večina neprofesionalnih preverjevalcev. Slabost intuitivnega ugibanja napak in nepravilnosti je predvsem v tem, da je ta strategija tesno vezana na izkušnje preverjevalca. Z njegovim odhodom na drugo delovno mesto lahko zelo pade učinkovitost preverjanja. Rešitev je v sistematičnem zbiranju najdenih napak in nepravilnosti (glej sliko 3). Preverjevalec analizira vsako poročilo o najdenih nepravilnostih in poročilo o najdenih napakah. Glede na izbran tak-sonomijski sistem tvori seznam, ki ga kasneje uporablja pri načrtovanju testnih primerov (več o tem glej v [BEIZER,1990], [ZAVERSKI,1999], [KANER,1993]). Izbor in število strategij ter testirnih modelov sta odvisna predvsem od zahtevane kakovosti produkta, razpoložljivih resursov in vrste produkta ali projekta. Splošen postopek načrtovanja testnih primerov prikazuje slika 4. Uporabljene strategije so običajno opisane v testirnem načrtu ali pa v priročniku za kakovost. 5. Sklep Pri razvoju in kasnejšem vzdrževanju programske opreme se neprestano spreminjata izvorna koda in zahteve. Temu se mora prilagajati tudi preverjanje. Stroške načrtovanja in kasnejšega vzdrževanja testnih primerov lahko znižamo le s sistematičnim pristopom. Prikazali smo enega izmed možnih splošnih konceptov načrtovanja testnih primerov, ki temelji na testirnem modelu. Izbor in število strategij ter testirnih modelov sta odvisna predvsem od zahtevane kakovosti produkta, razpoložljivih resursov in vrste produkta ali projekta. Največ napora zahteva izbor pravega testirnega modela in njegovo vzdrževanje. Izhodišče za načrtovanje testnih primerov predstavlja predpostavka o napaki ali nepravilnosti, ki jo določimo s pomočjo modela. Za zgled smo izbrali dve preprosti in najpogosteje uporabljeni strategiji. Ideje za druge zahtevnejše modele lahko dobi preverjevalec v navedeni literaturi (npr. [BEIZER/1990], [BINDER,2000]. Slika 3: Sistematično zbiranje napak in nepravilnosti Slika 4: Model načrtovanja testnih primerov 6. Literatura [BEIZER,1990] B. Beizer: “Software Testing Techniques", Van Nostrand Reinhold, New York,1990, 2. izdaja. [BEIZER,1995] Boris Beizer: “Black-Box Testing, Techniques for Functional Testing of Software and Systems”, John Wiley and Sons, Inc., 1995. [BINDER,2000] Robert Binder: “Testing Object-Oriented systems: models, patterns and tools", Addion Wesley Longman, Inc. 2000. [DOGŠA, 1994] T. Dogša: "Verifikacija in validacija programske opreme", Tehniška fakulteta, Maribor, 1993. [DOGŠA,1999,a] Tomaž Dogša: “Dokumentiranje testnih vzorcev", Uporabna informatika, številka 1, letnik VII, 1999, str.9-16. [DOGŠA,1999] Tomaž Dogša: “Načrtovanje testnih vzorcev s pomočjo testirnih modelov”, Zbornik osme Elektrotehniške in računalniške konference ERK '99, 23. - 25. september 1999, Portorož, Slovenija. [DUSTIN.1999] E. Dustin, J. Rashka, J. Paul: “Automated Software Testing: intoduction, Management, and Performance", Addison-Wesley [IEEE,1990b] “IEEE Standard Glossary ofSoftware Engineering Terminology", IEEE Std. 610.12-1990, Revision and redesignation of IEEE Std. 792-1983, The Institute of Electrical and Electronics Engineers, USA, 1990. [J0RGENSEN.1995] Paul C.Jorgensen: “Software testing - A Craftsman’s Approach”, CRC Press LLC 1995. [KANER.1993] Cern Kaner, Jack Falk, Hung Quoc Nguyen: “Testing Computer Softvvare”, Van Nostrand Reinhold, 1993. [MYERS ,1979] J. G. Myers: “TheArt of Softvvare Testing", John Wiley and Sons, Inc., New York, 1979. [ZAVERSKI.1999] Igor Zaverski, Tomaž Dogša: “Ortogonalna klasifikacija napak programov v C+ +", Objektna tehnologija v Sloveniji ŠtudiČ OTS'99 : zbornik četrtega strokovnega srečanja, Maribor, 16. in 17. junij 1999. Maribor: Fakulteta za elektrotehniko, računalništvo in informatiko, Center za objektno tehnologijo, 1999, str. 209-217. ♦ Dr. Tomaž Dogša je docent na Fakulteti za elektrotehniko, računalništvo in informatiko v Mariboru, kjer predava na dodiplomski in podiplomski stopnji in vodi Center za verifikacijo in validacijo sistemov. Na raziskovalnem področju se ukvarja predvsem z V&V tehnologijo, tako tudi s testirnimi orodji. Poročila ČAS PRIBLIŽEVANJA1 Otto Spaniol Computer Science Department, Aachen University of Technology, Aachen, Germany spaniol@informatik.rwth-aachen.de Izvleček Prispevek obravnava nov vzorec razvoja informacijskih in komunikacijskih sistemov in sicer približevanje podatkovnih in telekomunikacijskih omrežij, ki so bila načrtovana izključno za prenos govora ali skoraj izključno za prenos podatkov. S prihodom interneta se je položaj močno spremenil: ločnica med podatki in telefonijo izginja. Omrežja naslednje generacije bodo uporabna za praktično vse vrste aplikacij. To bo imelo različne dodatne vplive: pojavljali se bodo novi mediji (in izginjali sedanji), nastajali bodo novi načini poslovanja. Članek opisuje, zakaj, kako in kdaj se bo zgodilo približevanje omrežij. Našteti so razlogi za in proti in obravnavanih je še nekaj problemov, ki še niso rešeni. Ključne besede: internet, približevanje omrežij, govor po IF? omrežne storitve. Abstract This contribution deals with a new paradigm for 'Information and communication systems: The convergence of data and telecommunication netvvorks which have been traditionaiiy designed exciusively for voice or (aimost) exclusively for data. With the advent of the Internet things have tremendously changed: the separation betvveen netvvorks for data and telephony will disappear. Next generation netvvorks will be in use for practically every kind of application. This will have lots ofother impacts: New media will appear (and oid ones wiil disappear), and new types of businesses will be created. The manuscript describes why, how and when netvvork convergence will come. Some pro' s and con's as well as some remaining probiems are a/so discussed. Keywords: Internet, netvvork convergence, voice over IF? Services. 1. TIME: NOV VZOREC ZA KOMUNIKACIJSKE SISTEME Nekaj let je že tega, kar smo pri komunikacijskih sistemih opazili nov vzorec: omrežja in mediji se približujejo. Pojavljata se digitalno približevanje in kreativno približevanje, to je vse večje število novih storitev in aplikacij za uporabnike. Novi trend lahko opišemo s kratico TIME (Telecommunication/Jnformation technology/Media/£ntertainment), ki označuje različna področja približevanja: ■ telekomunikacije (telefonija in podatki, fiksna in mobilna omrežja,...), ■ informacijsko tehnologijo (multimedijski terminali, strežniki, sistemi za shranjevanje podatkov,...), ■ medije (radio in televizija, knjige, cedeji,...) in ■ zabavo (igrice, filmi,...). Inačica te kratice je TIMES, kjer je za E uporabljen drug izraz in za S dodan pomemben vidik storitev: Telecommunication/7 nformation technology/Media/£-business/Services. Pojasnili bomo, zakaj je tak razvoj neizogiben. Poganjata ga dve sili: ■ tehnološki razvoj, posebej internet in ■ vse močnejši vplivi konkurence in stroškov. 2. PRIBLIŽEVANJE OMREŽIJ 2.1. Nekateri trendi komunikacijskih omrežij Razvoj v mnogih državah je dramatično pospešila deregulacija telefonskega trga, ki je bil prej monopol ene same ali majhnega števila javnih služb, ki so bile večinoma v lasti države. Javne službe so tesno sodelovale z maloštevilnimi in dokaj vplivnimi proizvajalci tako internih (telefonskih linij, stikal,...) kakor eksternih komponent (telefonskih aparatov, telefaksov itn.). Komunikacije, kjer sta prevladovali področji telefonije in telefaksa, so obsegale zelo omejen nabor storitev. Poslovanje je bilo zelo dobičkonosno, ker so bile stranke pripravljene plačevati skoraj vsako ceno, saj druge možnosti ni bilo. Stopnja inovativnosti je bila skromna, ker za kaj več ni bilo potrebe, dokler so bile stranke zadovoljne. Stranke pa so se le redkokdaj pritoževale, ker pač niso vedele za boljše, cenejše ali pri-ročnejše storitve. Visoka cena je bila seveda predmet stalnih negodovanj, vendar so imele stranke nanjo le skromen vpliv. Tako stanje, ki je bilo (za monopolnega lastnika) kar sprejemljivo, se je z začetki deregulacije 1 Prispevek je bil vabljeno predavanje na Dnevih slovenske informatike 2001. Avtorju se zahvaljujemo, da ga je dovolil prevesti in objaviti. radikalno spremenilo. Nova doba se je pričela s številnimi previdnimi koraki v nekaterih državah, ki so nameravale uveljaviti konkurenco in izboljšati stanje v sektorju informatike in telekomunikacij, ki se je začel razvijati. Rezultat večje konkurence je bil: ■ hitrejši razvoj novih sistemov; ■ pomembne finančne ugodnosti za uporabnike (na račun skromnejših dobičkov, kar je imelo za posledico, da so mnogi novi ponudniki izginili skoraj tako hitro, kakor so se pojavili); ■ več eksperimentiranja, to je poizkusov ponuditi nove vrste in več privlačnih storitev. Obdobje deregulacije je nastopilo skoraj istočasno s pojavom mobilnih in brezžičnih omrežij2 3. Mobilna omrežja napravijo komuniciranje dosti bolj prilagodljivo. Namestitev omrežja je precej hitrejša in manj odvisna od drage infrastrukture, kot je na primer oprema za optična vlakna in podobno. Mobilnost ima mnogo različnih vidikov: ■ mobilnost uporabnikov (mobilni telefoni, upravljanje voznega parka, komuniciranje med vozili,...), ■ mobilni terminali, ■ mobilnost storitev, ■ mobilnost sestankov. Na kratko bi lahko opisali trend z naslednjimi besedami: kakršnakoli storitev, kjerkoli, za kogarkoli in kadarkoli. Uporaba omrežij je tako široka in tako različna, da je postalo nameščanje posebnih omrežij za različne aplikacije (kot na primer ločena omrežja za telefonijo, podatke in grafiko) preveč dolgotrajno, preveč zapleteno, preveč neprijazno do uporabnikov in zlasti precej predrago. Zato so se morala odpreti za načine uporabe, ki zanja sprva niso bili predvideni: podatkovna omrežja so prevzela prenos govornih storitev ("govor po IP5 6"), telefonska so se poskušala prilagoditi prenosu podatkov in podobno. Vsi taki poizkusi niso mogli biti uspešni. Očitno zmaguje nov trend, namreč razvoj približanega omrežja, primernega za raznovrstne aplikacije in storitve. 2.2. Kaj je približevanje omrežij? Do sedaj (ali do nedavno), sta z izjemo radijskih in televizijskih oddajnih mrež prevladovala dva tipa komunikacijskih omrežij: A. Telekomunikacijska omrežja (pretežno za telefonijo in telefaksna sporočila) Njihova glavna značilnost je prenos podatkov z vodovno komutacijo4. Skoraj vsa »inteligenca« je znotraj omrežja (na primer v zelo dragi zasebni avtomatski naročniški centrali za govorno komunikacijo). Pri tem so običajni terminali dokaj preprosti (t. i. neinteligentni terminali). Pristop do omrežja še vedno določajo fiksna žična omrežja, vendar delež brezžičnega pristopa dramatično narašča, kar povzroča resne probleme pri dostopanju do omrežij. Te težave so pretežno še nerešene. 8. Podatkovna omrežja Osnova delovanja podatkovnih omrežij (na primer ARPANET) je bilo od vsega začetka paketna in ne vo-dovna komutacija. Razlog za to je podatkovni promet, ki poteka sunkoma, zato je rezervacija linije za komunikacijsko sejo neučinkovita. Podobna sunkovitost se dogaja tudi pri govorni komunikaciji, vendar je vpliv na omrežje bistveno manj dramatičen. Vseeno pa bi paketna komutacija povečala učinkovitost uporabe virov tudi pri govorni komunikaciji, s čimer bi postale nove možnosti, kot so govor po IP in elektronski5 radio, še bolj zanimive. Ena od posledic pristopa paketne komutacije je, da imajo končne točke omrežij (računalniki - gostitelji, terminali,...) pomembnejšo vlogo kakor v omrežjih z vodovno komutacijo. Pravzaprav se skoraj vsi postopki za učinkovito rabo virov opravijo v končnih točkah omrežja. Posledica je, da vsebuje omrežje le malo »inteligence« ali nič. S časom sta postala oba koncepta manj različna: telekomunikacije so prevzele nekaj načel podatkovne komunikacije, na primer celični prenos v ATM(’. Od ATM smo pričakovali, da bo postal dokončna rešitev komunikacijskih problemov vseh vrst, vendar se je to upanje uresničilo le delno (če sploh). Po drugi strani pa je posebej v usmerjevalnikih podatkovnih prenosnih omrežij vgrajene več »inteligence«. Zelo pogosto jih zato označujemo kot »aktivna omrežja« ali »pametna omrežja«. Primer aktivnosti ali pameti so omrežnim usmerjevalnikom dodani programi, s pomočjo katerih je iz podatkov v glavi paketa mogoče razlikovati med različnimi vrstami paketov. Ta informacija omogoča različno obravnavanje paketov različnih komunikacijskih sej, na 2 Kakor je v navadi, bomo izmenoma uporabljali izraza »mobilna omrežja« in»brezžična omrežja«, vedoč da sta oba pojma nekoliko zavajajoča: mobilno omrežje ni mobilno samo po sebi in brezžično je daleč od tega, da bi bilo brez žic. To, na kar mislimo v obeh primerih, je radijski prenos signala za razliko od prenosa signala po vodih. 3 Internet Protocol 4 angl. Circuit s v/itching. 5 angl. software radio 6 Asynchronous Transfer Mode primer odvisno od stopnje nujnosti, časovnih omejitev ali dopustne stopnje napake. Usmerjevalniški programi lahko posredujejo računalnikom - gostiteljem podatke, ki so potrebni za izboljšanje delovanja celega sistema. Tako so se začela podatkovna in glasovna omrežja približevati. Trend približevanja se bo še nadaljeval. Zmagala bo paketna komutacija, tehnika, ki je bila prej omejena pretežno na podatkovno komunikacijo. Nekateri razlogi za tako približevanje so: ■ IP-vmesniki so vsepovsod in njihova cena je glede na zmogljivost zelo konkurenčna. ■ "Omrežniki7" bodo zmagali v boju proti "glasovni-kom8". Nekoliko drzna trditev je, da je sodobna informatika boljša od klasične elektrotehnike. ■ Hibridne rešitve (t.j. kombinacije komutiranja paketov in zank) so okorne, zahtevne za upravljanje, dokaj neučinkovite in končno, vendar ne nepomembno, predrage. Vendar pa približevanje omrežij ni brez težav: kakovost storitev je nezadostna, možnost rasti je včasih negotova, na mnoga vprašanja delovanja in upravljanja še ni dokončnih odgovorov, varnostni vidiki so pogosto zanemarjeni, načini ustreznega evidentiranja in obračunavanja še niso opredeljeni, K tem in drugim problemom se bomo še vrnili. V teku sta intenzivno raziskovanje in razvoj, da bi ta vprašanja razrešili. Poizkusi se odvijajo v različnih smereh: pretirano oskrbovanje, rezervacija virov, vzpostavljanje zvez glede na prioriteto, prilagoditve in razširitve protokolov in podobno. 2.3. Področja približevanja Potem, ko smo obravnavali razloge, zakaj bo do približevanja neizogibno prišlo, odgovorimo še na vprašanje, kje se bo to zgodilo. Komponente Nove in izboljšane aplikacije - telefonija in internet - govor po IP - terminali - multimedijske aplikacije - IP in kabelska omrežja - podatki po kablu - fiksna in mobilna omrežja - mobilni IP - radio in internet - omrežni radio - televizija in osebni računalniki - omrežna televizija Našteta so le nekatera trenutno najbolj vidna področja, odpirajo pa se še mnoga druga. V nadaljevanju je prikazanih nekaj vplivov približevanja na primerih fiksnih in mobilnih omrežij: 7 Netheads 8 Bellheads m Storitve bodo postale neodvisne od zgradbe omrežja. ■ Eden od pozitivnih vidikov takega razvoja je prenosljivost številk, se pravi, da bodo imeli naročniki isti naslov (ne nujno številko, temveč verjetneje niz znakov, ki si ga je laže zapomniti) v fiksnem in mobilnem omrežju in bo veljal vse življenje ne glede na naročnikovo geografsko lokacijo. ■ Razpoložljive bodo storitve po meri uporabnika (splošne osebne telekomunikacije). Kljub strukturnemu in funkcionalnemu približevanju fiksnih in mobilnih omrežij moramo upoštevati, da bo ostala zmogljivost fiksnih omrežij opazno večja kakor zmogljivost, ki jo nudijo brezžična omrežja. To povzroča probleme v pristopnih omrežjih, to je za premostitev "zadnje milje" med mobilno lokacijo (nomadskega) naročnika in vstopno točko v pretežno žično jedrno omrežje. 2.4. Posledice približevanja omrežij Približevanje omrežij narekujejo večinoma ekonomski razlogi. Zato približano omrežje ne bo dopolnilo za obstoječe infrastrukture, temveč bo nadomestilo tradicionalna omrežja. Navedimo nekaj primerov: ■ Telefonska omrežja bodo zamenjana z internetnimi ter televizijskimi in kabelskimi omrežji. ■ Videotekst bo dopolnila in končno zamenjala omrežna televizija. ■ Zemeljske oddajnike bo zamenjalo satelitsko in internetno kabelsko omrežje. Za uporabnike ugodno je pri približevanju omrežij velikansko povečanje novih možnosti (tako po vrsti kakor po številu), ki jih bodo prinesla prihajajoča omrežja. Nekaj primerov za razširitev možnosti v novih omrežjih: ■ Multimedijske aplikacije bodo postajale standardne komponente osebnih računalnikov. ■ Stranke bodo postajale vse bolj enostavno dostopne. ■ Potem, ko bo problem prepoznavanja lokacije zadovoljivo razrešen, bo ponudba obsegala veliko število različnih storitev po meri. Nova ponudba bo zajemala posebne storitve za uporabnike, ki bodo odvisne od njihovih trenutne lokacije in njihove trenutne zahteve (na primer vremenska napoved; določeno dogajanje na področju, kjer je nekdo navadno na poti). ■ Interaktivne povezave med posamezniki bodo prožnejše in veliko bolj preproste. Zgornji primeri kažejo, da približevanje ne pomeni poenotenja omrežij. V resnici je prav nasprotno. Vsekakor pa bodo različna omrežja nudila strankam podobne možnosti. Tip omrežja bo za uporabnike vse manj viden in vse manj pomemben; omrežje bo postalo »transparentno«. Včasih se bodo morali uporabniki zaradi omejitev zmogljivosti sprijazniti z znižanjem kakovosti. Zmogljivost bo v fiksnih omrežjih značilno višja kakor v mobilnih in, ker bo zadnja milja v omrežju brezžična, bo v večini primerov zmogljivost večine omrežnih priključkov omejena na brezžični del omrežja. Prenosna zmogljivost, katere rast bo presegla rast procesne zmogljivosti, bo narasla tako zelo, da bodo različne vrste novih storitev na osnovi IP zelo hitro prodrle na trg. Te storitve bo ponujal večinoma ponudnik, ki bo nekdo tretji, in ponudniki si bodo konkurirali. To je dobro za stranke! Uspeh ali neuspeh novih produktov bo močno odvisen od enostavnosti upravljanja in preproste uporabe, kar je ključni in odločilni dejavnik sprejemljivosti za uporabnika. 2.5. Gonilne sile približevanja omrežij Dejali smo že, da je internet gonilna sila približevanja. Ogromna vlaganja v internet so v glavnem posledica združevanja telekomunikacijskih družb in ponudnikov podatkovnega prenosa. To se bo dogajalo še naprej in celo hitreje kakor danes. Vpliv interneta postane viden, če primerjamo stopnjo naraščanja tovrstnega prometa z ustrezno stopnjo v konvencionalnih omrežjih: telefonski promet narašča »samo« za 10% na leto, medtem ko je internetni promet v preteklosti in bo tudi v predvidljivi prihodnosti naraščal z dosti višjo stopnjo (podvojitev prometa v nekaj mesecih) kot pos- Standardizirane osnovne storitve Govor Video nizke in visoke ločljivosti Glasba Elektronska pošta Grafika Podatkovni paketi Podatkovni prenos male in velike bitne hitrosti Storitve po meri Delo na daljavo Prodaja na daljavo Učenje na daljavo Zabava Komunikacije v nuji Oddaljeni zdravnik Zaznavanje gibanja Identificiranje Sestavljene zveze Interaktivno usposabljanje Mnogočutna virtualna resničnost Sprotno opazovanje Nakupovanje od doma Omrežje osebnih računalnikov Proizvodnja na daljavo Osebe v omrežju Posvet na daljavo Osebna televizija Nadomestek za potovanja Oddaljeni senzorji Vzdrževanje na daljavo Pomoč prizadetim Nadzor Kontrola gibanja in obveščanje ledica »www prometa«, govora po IP in podobnih novosti. Upoštevaje število prenesenih bitov je internetni promet telefonskega že presegel. Drugo pomembno gonilo približevanja omrežij je poenostavitev infrastrukture omrežja (to je nižja cena namestitve, komunikacije, delovanja in upravljanja). 2.6. Storitve Poslovne priložnosti (za ponudnike in stranke) bodo zaradi hitre in prilagodljive namestitve novih storitev, ki bodo pogosto po meri posameznega uporabnika, neizmerno narasle. Ob posebnih so še različne osnovne storitve, ki so koristne in celo nujne za storitve po meri. V zgornji preglednici je prikazanih nekaj primerov osnovnih in posebnih storitev. 3. NASTOPANJE PRIBLIŽANIH OMREŽIJ NATRGU 3.1. Nekatere organizacije bodo hitrejše. Zakaj? Približana omrežja bodo verjetno nameščali prej v industrijskih okoljih, v vladnih ustanovah in v upravi kakor pa v javnih omrežjih. Zakaj? Omrežja v industriji in v vladnih ustanovah morajo biti posodobljena približno na tri leta. Nova omrežja bodo zanimiva razmeroma kmalu, ker bodo omogočala prihranke ■ z uporabo širokopasovnih linij v razsežnih omrežjih, ■ zaradi novih in posebnih storitev po meri (ki so enostavnejše za namestitev in uporabo) in ■ z zmanjšanjem stroškov infrastrukture (kot posledico tehnološkega razvoja in močnejše konkurence). Namestitev približanih omrežij bo neobhodna v mnogih dejavnostih. Javno ponudbo pa bo še nekaj časa obvladoval telefonski promet. Konvencionalne IP-telefonije v prihodnjih nekaj letih še ne bo v celoti nadomestil. Za razliko od tega pa se bo govorna komunikacija bolj in bolj prenašala s fiksnih omrežij na mobilna, ker število uporabnikov mobilnih telefonov skokovito narašča in ker se tarife za govorno komunikacijo v stabilnih omrežjih ne razlikujejo več bistveno od tarif v mobilnih omrežjih. Namestitev približanih omrežij, ki jih bodo upravljali javni ponudniki, bo dolgotrajna in zelo draga. Da bi upravičili visoko ceno, mora obstajati jasna predstava o donosnosti investicije. Investicija se lahko poplača samo s privlačnimi storitvami in aplikacijami (in s pripravljenostjo strank, da bodo plačale razumno visoko ceno za storitve). Ta denar pa bosta pobirala ponudnik storitev in - vendar s precej manjšo udeležbo - lastnik omrežja. + Prednosti: — Slabosti: Preprosta integracija številnih aplikacij kot na primer: - Netscape Navigator z možnostjo govora, - poenotene storitve (govor, telefaks, elektronska pošta), - govorni intranet (kot privlačna alternativa za telefonijo). Nizka (včasih nesprejemljiva) kakovost storitev, zlasti če je vključenih mnogo uporabnikov. Dragi terminali (to se bo spremenilo šele potem, ko bodo na razpolago izdelki masovne proizvodnje). Uporabniki še vedno niso seznanjeni z delovanjem sistema, kar je lahko začasna težava, vendar pa le omejuje njegovo sprejemljivost. Znižanje cene klasične telefonije. Negotovost uporabnikov glede možnih bodočih prihrankov. 3.2. Nekatera dogajanja zaostajajo za pričakovanji: primer govora po IP Široka tržna uvedba govora po IP je bila najavljena že razmeroma dolgo časa (pri čemer se "čas" meri z internetnim časom, kjer šteje eno leto za sedem človeških). Dejanska razpoložljivost telefonije govora po IP je v precejšnjem zaostanku za napovedmi. Naj naštejemo nekaj prednosti in slabih strani, ki so prikazane v zgornji tabeli. Primerjava (zlasti navedene slabosti) pojasnjuje, zakaj se govor po IP dejansko še ni zgodil. 4. OVIRE ZA UVAJANJE PRIBLIŽANIH OMREŽIJ Uvedba novih sistemov je vedno težavna. Isto velja za približana omrežja. Viri težav in ovir so v tem primeru trije: ■ ekonomske ovire, ■ politične ovire in ■ tehnične težave. V nadaljevanju se bomo dotaknili teh vprašanj. 4.1 Ekonomske ovire Videli smo, da (in zakaj) je bila do sedaj telefonija govora po IP sprejeta razmeroma slabo glede na pretirano optimistična pričakovanja. Namestitev približanih omrežij še naprej zamuja zaradi tega, ker privlačnih storitev z dodano vrednostjo še vedno ni ali pa so v fazi preizkušanja (spomnimo se samo številnih poizkusov učenja na daljavo, ki so v večini primerov še daleč od popolnosti). Nove storitve pa morajo biti seveda na razpolago, če naj jih uporabniki sprejmejo. Drugi ekonomski problem (govora po IP) je višja cena investicije za nove sisteme, če naj dosežejo kakovost, ki bi bila primerljiva s tisto v klasični telefoniji. Dokler bo uporaba omrežja brezplačna (kakor je danes internet za mnoge ustanove, kot so univerze in podobne), se bodo stranke sprijaznile z razmeroma nizko kakovostjo. Ko pa bodo morale za storitve plačevati, se bodo zahteve glede kakovosti dramatično zviševale. Končno, vendar ne nepomembno, je dodatni strošek za pristopna omrežja resnično ogromen. 4.2. Politične ovire Približevanje omrežij precej pospešuje IP-telefonija. Vendar so mnogi pravni vidiki IP-telefonije še vedno nerazčiščeni. Tudi prihodnja struktura tarife (majhne stopnje, obračun na osnovi prometa in podobno) je še vedno nedoločena. Uporabnik zato ne more biti prepričan v to, ali bo z IP-telefonijo kaj prihranil (in če bo, kolikšen bo prihranek). Še en pomemben vidik je, da telefonske družbe dejansko niso zainteresirane za zamenjavo klasičnih sistemov (razlog za to so stroški). Uvedbo približanih omrežij bodo poskusile odložiti tako dolgo, dokler se bo dalo - na primer z nizkimi cenami klasične telefonije. 4.3. Tehnične ovire Glavna tehnična težava je v tem, da podatkovna o-mrežja, na primer internet tak, kakršen je danes, še vedno niso zelo primerna za sočasni promet. Zakasnitve paketov od mesta, kjer nastane, do namembne točke, so na isti relaciji različne. Trepetanje1', to je časovna varianca različnih paketov, je zelo pogosto nesprejemljivo veliko. Kompenzacija tega efekta zahteva na sprejemniku izdatno blaženje. V mnogo primerih zahtevanih kratkih časov (na primer pogovorni telefoniji) ni mogoče zagotoviti. Za aplikacije, ki zahtevajo velike prenosne hitrosti podatkov (na primer video prenos), je zmogljivost omrežja, bodisi pristopnega ali jedrnega (ki si jo delijo mnoge konkurenčne povezave), pogosto nezadostna. Naj povzamemo: kakovost storitev omrežij na osnovi IP še ni zadovoljiva. Spoštovanje časovnih omejitev in sprejemljivo trepetanje sta le dva parametra z obsežnega seznama, za katera danes internet še nima zadovoljive rešitve. To dejstvo je posledica načela projektiranja interneta: omrežje je bilo zasnovano za vojaške potrebe z glavnim poudarkom na zanesljivosti 9 angl. jitter in trpežnosti. Bistveno je bilo, da ima omrežje zadostno zmožnost prenosa podatkov tudi v najslabših pogojih. Zato je bila primernost za promet v realnem času za načrtovalce dosti manj pomembna. Da bi omrežje delovalo v vsakršnih pogojih, je bil prenos podatkov zasnovan na datagramu in neodvisen od vstopne in izstopne točke. Tako so lahko potovali paketi na isti relaciji do cilja po različnih poteh in obremenitev posamezne povezave je bila zelo različna. Zato je bila tudi zakasnitev paketov od vira do končne postaje na isti relaciji zelo različna. To za podatke (kot na primer elektronska pošta) ni nikakršen ali skoraj nikakršen problem, zelo resno pa je, če se internet »zlorabi« za aplikacije, kot je internetni radio ali govor po IP (za kar to omrežje ni bilo nikoli mišljeno). Različne aplikacije imajo različne zahteve glede števila napak10 11, sprejemljive zakasnitve na celi poti, zmogljivosti in drugih parametrov in bi morale biti zato obravnavane različno. To je tudi izhodišče za nove pristope, kot je DiffServ11, kjer je za vsako aplikacijo mogoča drugačna kvaliteta storitev. Še en (tehnološki in socialni) problem za vsako vrsto omrežja je to, da mnoge zahteve glede varovanja še vedno niso izpolnjene. Medtem, ko je bilo doslej realiziranih zelo malo varnostnih mehanizmov, pa postajajo uporabniki v tem pogledu vse bolj zahtevni. Dobro načrtovani zaščitni ukrepi so brezpogojno potrebni. Varovanje bo narekovalo dodatne stroške, vendar bi se utegnilo neupoštevanje zahtev izkazati za še mnogo dražje. Med drugimi nerešenimi tehnološkimi problemi naj omenimo, da standardov in programov za nadzor delovanja omrežij v glavnem še vedno ni. 10 angl. errorrate 11 Different Services 4.4. Posledice Seznam navedenih ovir zapusti močan vtis, vendar prevladujoče mnenje ne bi smelo biti zavajajoče ali negativno. Gotovo je, da so te težave ali neprijetnosti začasne in nikakor ne stalne. Tehnični problemi bodo razrešeni v razmeroma bližnji prihodnosti. Novih problemov, ki bodo posledica novih in nekonvencionalnih aplikacij, se bodo tisti, ki bodo imeli tako nalogo ali interes, lotili in jih bodo tudi rešili. Ekonomske težave bodo izginile, ko bo na razpolago zadostno število privlačnih storitev. Politične ovire so bolj zapletene in jih je tudi teže odpravljati. Za to bo potreben čas. Vsekakor pa bodo dejavniki, ki vplivajo na približevanje omrežij, končno prevladali. 5. DVA ZAKLJUČKA Prvi zaključek je, da ni nobenega zaključka! Približevanje omrežij poteka in vpliv tega procesa se bo povečeval. Nikoli pa ne bo dokončan ali zaključen. Trend je nepovračljiv in ga lahko ekonomske, tehnične ali politične ovire zaustavijo le začasno. Drugi zaključek ni v celoti resen, vendar pa je vseeno vreden razmisleka. Približevanje omrežij je poizkus narediti eno samo poenoteno omrežje, ki je do popolnosti primerno za vse aplikacije. Vendar pa je globalno optimalna rešitev razmeroma slaba z vidika lokalnih rešitev. Naj to dejstvo ilustriramo s primerom. Denimo, da hočemo žival, ki bo lahko tekla, plavala in letela. Rezultat je ta, da je upoštevaje lokalni optimum najboljši tekač leopard, najboljši plavalec morski pes in najboljši letalec kondor. Globalno pa je optimalna žival raca! Raca zmore vse troje: lahko teka, lahko plava in lahko leta, vendar je v vsaki od disciplin zelo slaba. Omrežje, ki zadošča vsaki zahtevi, utegne imeti podobne lastnosti. Velika spodbuda za načrtovalce omrežij je najti primerne prijeme za odpravo pomanjkljivosti približanih omrežij. Iz angleščine prevedel Niko Schlamberger Rešitve Uporaba metodologije TAD in UML ZA RAZVOJ APLIKACIJE TRANZIT Nadja Damij Šišenska 27, 1000 Ljubljana nadja.damij@uni-lj.si Izvleček Članek obravnava uporabo dveh objektno-usmerjenih metodologij. To sta TAD in UML. Metodologija TAD je primerna za uporabo na področjih prenove poslovnih procesov in razvoja informacijskih sistemov. Značilnost te metodologije je v tem, da za razvoj informacijskega sistema uporablja različne tabele. UML je znan kot zbirka osmih diagramov, s katerimi si pomagamo pri načrtovanju objektno-orientiranih projektov. Za implementacijo korakov obeh metodologij obravnavamo delovni proces Tranzit, ki je le eden izmed delovnih procesov, ki sestavljajo poslovni proces Trgovanje. Na končuje podana tudi primerjava med omenjenima metodologijama. Abstract The a/m of the article is to represent the use of two object-oriented methodologies: TAD and UML. TAD metodology is suitable for use in the field of business proces s reengineering and information system deveiopment. This metodology uses severa/ specific tabies to develop the information system. UML is known as a set ofeight diagrams which couid be used to design object-oriented projects. This article iilustrates the use of both metodoiogies in developing a transit information system. The article a/so shovvs a comparison between both used metodoiogies. 1 Uvod Članek obravnava uporabo objektno-orientiranih metodologij TAD in UML za razvoj informacijskega sistema. Za implementacijo korakov obeh metodologij obravnavamo problem tranzitnega poslovanja. Tranzit pomeni, da podjetje blaga ne skladišči, ampak dobavitelj blago dostavi direktno kupcu, ki ga je naročil. Kupec v podjetju naroči potrebno blago, kjer komercialist zapiše naročilo. Ker v podjetju želenega blaga na zalogi nimajo, kontaktirajo ustreznega dobavitelja. Tranzit se začne, ko kupec pošlje zahtevek za predračun komercialistu v podjetju, ki formira predračun in ga pošlje kupcu. Kupec predračun plača v celoti ali pa samo delno. Komercialist nato zaključi predračun in na podlagi zahtevka za naročilo formira naročilo kupca (vnese podatke v računalnik). Iz teh podatkov se formira naročilo dobavitelju, ki pošlje blago kupcu in račun podjetju. Komercialist kontrolira prejeti račun z naročilom dobavitelju. V primeru, da se prejeti račun ne ujema z naročilom, skupaj z dobaviteljem reši ugotovljene nepravilnosti, nato pa preda račun v oddelek Komercialne dokumentacije. Komercialist tudi napravi račun in ga pošlje kupcu. Na podlagi tega računa referent v oddelku Saldokonti sprejme kupčevo plačilo. 2 Metodologija TAD Metodologija Tabular Application Deveiopment (TAD) je objektno orientirana metodologija, ki se uporablja predvsem na področju prenove poslovnih procesov in razvoja informacijskih sistemov. Metodologija predstavlja realni svet z uporabo različnih tabel. Metodologija TAD je sestavljena iz šestih faz. Prva faza je definiranje problema, v okviru katere se kreira tabela entitet. Ta tabela prikazuje predvsem vitalne analize, ki jih zahteva management na različnih nivojih organizacije. V drugi fazi opišemo funkcioniranje sistema, na podlagi katerega razvijemo tabelo aktivnosti in tabelo nalog. Tretja faza je prenova poslovnih procesov, kjer se analizirajo obstoječi strateški, poslovni in operativni cilji ter se iščejo možnosti za uvedbo novih ciljev oziroma spreminjanje obstoječih. V četrti fazi se razvije objektni model. Sistem načrtujemo v peti fazi, rezultat katere je aplikacijski model. Zadnja faza pa se ukvarja z implementacijo sistema. Definiranje problema Definiranje problema se začne z intervjuji managemen-ta, tako na strateškem, kot tudi poslovnem in operativnem nivoju. Rezultati intervjujev managemcnta so: ■ definiranje strateških ciljev podjetja, ■ določitev izhodov, ki so povezani z definiranimi strateškimi cilji podjetja, ■ definiranje analiz za podporo odločanja, ■ spoznavanje organizacijske strukture organizacije, ■ definiranje poslovnih ciljev, ■ definiranje operativnih ciljev. TAD uporablja termin entiteta, ki pomeni uporabnik, skupina uporabnikov ali izvor informacij. Ločiti moramo med internimi in eksternimi entitetami. Interne entitete so tiste, ki so znotraj sistema. Eksterne entitete pa so tiste, ki niso del sistema, so pa s sistemom povezane. Za definiranje problema metodologija TAD uporablja tako imenovano tabelo entitet. Tabelo entitet razvijemo na podlagi rezultatov intervjujev z man-agementom. V stolpcih tabele entitet prikažemo interne entitete, v vrsticah pa prikažemo analize, ki so povezane s strateškimi, poslovnimi in operativnimi cilji. Neprazno križišče v tabeli entitet prikazuje, katera entiteta potrebuje določeno analizo. V skladu s prvo fazo TAD metodologije sem začela z organizacijo intervjujev z uporabniki sistema. Kot rezultat intervjujev sem definirala tabelo entitet (Tabela 1), ki prikazuje štiri entitete in analize, ki so pomembne na področju tranzita. 2.2 Funkcioniranje sistema Ta faza je sestavljena je iz treh korakov: identifikacija aktivnosti, definiranje nalog ter identifikacija delovnih in poslovnih procesov. Aktivnosti Za identifikacijo aktivnosti, ki jih uporabniki izvajajo pri svojem delu, je potrebna nadaljnja organizacija intervjujev z vsemi uporabniki sistema. V ta namen metodologija TAD razvije posebno tabelo, ki se imenuje tabela aktivnosti. Tabela je strukturirana tako, da so v stolpcih predstavljene entitete, medtem ko so aktivnosti zapisane v vrsticah. Istočasno s tabelo aktivnosti razvijemo tudi tabelo nalog, ki podrobno opisuje posamezno aktivnost. Neprazno križišče (i,j) v tabeli aktivnosti pomeni, da entiteta definirana v stolpcu j opravlja določeno nalogo znotraj aktivnosti i, kjer je i=l,...,št.aktivnosti in j = l,...,št.entitet. Posamezna aktivnost lahko vsebuje eno ali več nalog, ki jih lahko opravlja ena ali več entitet. V tabeli aktivnosti definiramo horizontalno in vertikalno povezavo. Horizontalna povezava pove, katere entitete sodelujejo pri izvajanju posamezne aktivnosti. V ta namen uporabljamo dve črki: S in T, kjer S pomeni vir (Source) in T pomeni cilj (Target). Črka S v križišču (i,j) pomeni, da je entiteta j izvorna entiteta za aktivnost i. To pomeni, da entiteta j izvaja neko nalogo v okviru aktivnosti i. Črka T v križišču (i,j) pomeni, da je entiteta j ciljna entiteta za aktivnost i. To pomeni, da sprejme nek vhod od dane izvorne entitete. Ena aktivnost ima lahko eno ali več izvornih in ciljnih entitet, zato črki S in T indeksiramo z indeksom izvorne entitete. Vertikalna povezava ponazarja vrstni red aktivnosti za vsako entiteto posebej. To pomeni, da v okviru vsakega stolpca definiramo vrstni red aktivnosti entitete, definirane v tem stolpcu. Pri tem uporabimo črki P in U. Črka P pomeni predhodnik (Pre-decessor), črka U pa ponazarja naslednik (Successor). Črka P v križišču (i,j) pomeni, da je aktivnost i predhodnica določene aktivnosti (določenih aktivnosti), označene s črko U v koloni j. Črka U v križišču (i,j) pomeni, da je aktivnost i naslednica druge aktivnosti (drugih aktivnosti), označene s črko P v koloni j. Katerakoli aktivnost ima lahko eno ali več predhodnic in ravno tako eno ali več naslednic. Zato sta črki P in U indeksirani z indeksom predhodne aktivnosti. Poudariti je potrebno, da vertikalno povezavo definiramo samo pri internih entitetah. Za razvoj tabele aktivnosti sem organizirala intervjuje s predstavniki naslednjih oddelkov: Komerciale, Programov, Vhodov za DDV, Komercialne dokumentacije in Saldokontov. V tabeli aktivnosti (Tabela 2) je predstavljenih sedem entitet in deset aktivnosti. Prvih pet entitet je internih, zadnji dve pa sta eksterni. Prva aktivnost 'Zahteva za predračun' pomeni, da kupec zahteva od komercialista predračun. To označimo tako, da zapišemo S(l v križišče (1,6) in T6 v križišče (1,1). Druga aktivnost 'Formiranje predračuna' pomeni, da komercialist kreira predračun in ga pošlje kupcu, zato to označimo z zapisom S, v križišču (2,1) in T, v križišču (2,6). Tretja aktivnost 'Plačilo predračuna' pomeni, da kupec plača (delno ali v celoti) predračun in o tem obvesti komercialista. Na podlagi tega napišemo v križišče (3,6) m T6 v križišče (3,1). Vse ostale aktivnosti označimo z uporabo istega koncepta. Vertikalno povežemo aktivnosti vsake interne entitete. Tako naprimer je v zvezi s prvo entiteto, prva aktivnost 'Zahteva za predračun’ predhodnica druge aktivnosti 'Formiranje ZAHTEVE ENTITETE ANALIZE Komercialist Vodja programa Direktor Direktor sektorja za grosizem Poročilo po dobaviteljih * * * 5 >o Poročilo po artiklih na različnih nivojih 0E * * o er o CL Poročilo o prodaji po strankah * * Poročilo o prodaji po artiklih * * Tabela 1: Tabela entitet za proces Tranzit predračuna1, kar označimo s P, v križišče (1,1) in U, v križišče (2,1). Druga aktivnost 'Formiranje predračuna' je predhodnica tretje aktivnosti 'Plačilo predračuna', zato zapišemo P2 v križišče (2,1) in U2 v križišče (3,1). Vse ostale aktivnosti vertikalno povežemo po istem konceptu. 2.2.2 Naloge Vsaka aktivnost je sestavljena iz ene ali več nalog in zaseda eno vrstico v tabeli aktivnosti. Naloge določene aktivnosti so označene z nepraznimi križišči v vrstici te aktivnosti. Za definiranje nalog razvijemo posebno tabelo, ki jo imenujemo tabelo nalog. Tabela nalog je organizirana tako, da so naloge podane v vrsticah, medtem ko so karakteristike nalog definirane v stolpcih tabele. Iz tega sledi, da vsaka naloga, ki je predstavljena z nepraznim križiščem v tabeli aktivnosti, zaseda eno vrstico v tabeli nalog. Vsaka naloga je predstavljena s šifro Kjj, kjer K pomeni nalogo (Task), i in j so indeksi vrstice in stolpca, kjer je naloga definirana v tabeli aktivnosti. V stolpcih tabele nalog definiramo lastnosti nalog kot so: opis, čas, pogoj in vhod/izhod. V stolpcu Opis podamo kratek opis naloge. Čas lahko uporabimo za določanje časa, potrebnega za izvajanje naloge. V stolpcu Pogoj lahko definiramo vse pogoje, ki so potrebni pri opisani nalogi. V stolpcu Vhod/Izhod pa definiramo vse vhode in izhode, ki so povezani z nalogo K^. Tabela 3 prikazuje tabelo nalog pri primeru Tranzit. Vsaka naloga je predstavljena skladno z zgoraj opisanim korakom. 2.2.3 Delovni procesi in poslovni procesi V tem koraku analitik analizira tabelo aktivnosti in poskuša grupirati aktivnosti v ustrezne grupe. Vsaka grupa aktivnosti predstavlja določen delovni proces. Iz tega sledi, da je delovni proces zbirka ene ali več aktivnosti in zato zaseda eno ali več vrstic tabele aktivnosti. Analitik nadaljuje delo z grupiranjem delovnih procesov v ustrezne grupe. Vsaka od teh grup predstavlja določen poslovni proces. Skladno s tem korakom sem ugotovila, da tvorijo vse aktivnosti tabele 2 delovni proces Tranzit, kar sem definirala v drugem stolpcu tabele. Tranzit je eden od delovnih procesov poslovnega procesa trgovanje, kar sem definirala v prvem stolpcu tabele aktivnosti. 2.3 Prenova poslovnih procesov Ta faza se ukvarja z možnostjo izboljšanja funkcioniranja sistema. Prenova poslovnih procesov je metoda za identificiranje, definiranje in implementiranje sprememb (VVatson, 1994). To je možno doseči z vzpostavljanjem V) CD U v> o 21 < 6. Formiranje Si Ti o er £ naročila u4 u5 P6 Pe 7. Podpis vodje t2 s2 U6 P/ u6 8. Pošiljanje Si naročila dobavit. U7P8 Ti 9. Pošiljanje t7 s7 računa v odd. Vhodi za DDV P9 10. Vnos računa v t3 s3 knjigo računov Pio u9 ustrezne povezave med strateškim, poslovnim in operativnim nivojem organizacije. Strateški nivo organizacije je predstavljen z analizami, definiranimi v tabeli entitet, in povezanimi s strateškimi cilji organizacije. Poslovni nivo organizacije je predstavljen z analizami, ki so defnirane v tabeli entitet, povezanimi s poslovnimi cilji. Poleg tega pa je poslovni nivo predstavljen z množico poslovnih procesov, definiranih v tabeli aktivnosti. Operativni nivo je ravno tako predstavljen z določenimi analizami v tabeli entitet, ki so povezane z operativnimi cilji. Ta nivo je tudi predstavljen z množico delovnih procesov, definiranih v tabeli aktivnosti. Z namenom izvedbe te faze se ustanovi projektni tim. Tim je sestavljen iz analitika in predstavnikov vseh treh nivojev organizacije. Projektni tim analizira obstoječi strateški plan in obstoječe strateške cilje ter predlaga ustrezne spremembe oziroma nove strateške cilje, če je to potrebno. Ustrezno s spremembami na strateškem nivoju se predlagajo spremembe v poslovnih ciljih, po potrebi pa tudi novi poslovni cilji. Spremembe v poslovnem planu se morajo odražati na operativnem nivoju tako, da se izvedejo nujne spremembe v delovnih procesih ali da se uvedejo novi delovni procesi in nove aktivnosti. Ker se ta primer ukvarja s samo enim delovnih procesom, ni bilo ne potrebe ne možnosti za izvedbo te faze. 2.4 Objektni model Četrta faza metode TAD obravnava razvoj objektnega modela. Ta faza je sestavljena iz dveh korakov. V prvem koraku identificiramo razrede objektov, njihove atribute in asociacije. Informacije o razredih dobimo z analizo tabel entitet, aktivnosti in nalog. Običajno začnemo z analizo tabele nalog. Posebno skrbno analiziramo vsak opis, podan v stolpcu Opis. Nadaljujemo z analizo vhodov in izhodov, definiranih v stolpcu Vhod/Izhod. Poleg tega analiziramo tabelo aktivnosti in tabelo entitet. Rezultat omenjenih analiz je množica razredov, njihovih atributov in asociacij, ki jih uporabimo za razvoj začetnega objektnega modela. V ta namen uporabimo tri vrste struktur, ki lahko eksistirajo med razredi in atributi. To so: Je-del (is-part-of), Je-povezan-z (is-associated-with) in Je (isa). Struktura Je-del se uporablja za prikaz, da je lahko neka stvar konstruirana oziroma kreirana iz določenih elementov oziroma komponent. Na primer: Ime Je-del Stranka in Naslov Je-del Stranka opisuje agregacijo atributov razreda Stranka. Nadalje NarociloArtikel Jedel Naročilo opisuje agregacijo razredov. Struktura Je-povezan-z se uporablja za prikaz obstoja določene asociacije med dvema razredoma. Na primer: Naročilo Je-povezan-z Stranka opisuje asociacijo med razredoma Naročilo in Stranka. Struktura Je se uporablja za opis dedovanja med razredi. Iz opisa sledi, da v prvem Karakteristike AKTIVNOST Koda naloge OPIS ČAS POGOJ VHOD/ IZHOD 1. Zahteva za predračun Ki,i Kupec pošlje zahtevek po predračunu komercialistu. 2. Formiranje predračuna 1^2,1 Komercialist formira predračun in ga pošlje kupcu. Predračun 3. Plačilo predračuna K3,l Komercialist sprejme plačilo predračuna. Predračun 4. Zaključitev predračuna 1^4,1 Komercialist zaključi predračun. Predračun 5. Zahtevek za naročilo ^5,1 Kupec pošlje zahtevek za naročilo komercialistu. 6. Formiranje naročila he.i Komercialist formira naročilo in ga pošlje vodji programa. Naročilo 7. Podpis vodje ^7,2 Vodja programa podpiše naročilo in ga vrne komercialistu. Naročilo 8. Pošiljanje naročila dobavitelju Kfti Komercialist pošlje naročilo dobavitelju. Podpisano naročilo Naročilo 9. Pošiljanje računa v odd. Vhodi za DDV ^9,3 Referent sprejme račun. Dobaviteljev račun Dobaviteljev račun 10. Vnos računa v knjigo računov K10,3 Referent zavede račun v knjigo računov in ga pošlje komercialistu. Račun koraku razvijemo začetni objektni model z uporabo strukture Je-del in Je-povezan-z. V drugem koraku poskušamo organizirati razrede tako, da implementiramo dedovanje med razredi z uporabo Je strukture. Dedovanje je najzanimivejši element objektnega modeliranja. Dedovanje pomeni identifikacijo in definiranje sistema hierarhij med razredi tako, da pod-razred lahko podeduje atribute in operacije nadrazre-da. Skladno s prvim korakom te faze prikazuje slika 1 objektni model procesa Tranzit. 2.5 Načrtovanje Peta faza se ukvarja z načrtovanjem sistema. Faza je sestavljena iz dveh korakov. V prvem identificiramo operacije objektnega modela. V drugem koraku razvije analitik tako imenovani aplikacijski model. 2.5.1 Operacije Identifikacija operacij teče na podlagi opisov nalog v tabeli nalog. V ta namen mora analitik dodobra analizirati vsak opis obravnavane naloge in iz opisa identificirati operacije, ki so povezane z enim ali več razredov objektnega modela. Slika 1 prikazuje objektni model obogaten z operacijami, ki sem jih definirala z analizo opisov v tabeli 3. Aplikacijski model Aplikacijski model predstavlja preslikavo informacij zbranih v tabelah. Aplikaciji model je sestavljen iz več delov. Prva dva dela sta izdelana iz informacij, registriranih v tabeli entitet. Prvi del prikazuje vitalne analize, drugi pa probleme za podporo odločanju. Ostali deli aplikacijskega modela so izpeljani iz tabele aktivnosti. Za vsak poslovni proces kreiramo poseben del aplikacijskega modela. Slika 2 prikazuje aplikacijski model obravnavanega problema tranzita. Prvi del modela prikazuje poročila, ki so povezana s tranzitom, drugi pa prikazuje delovni proces Tranzit in njegove aktivnosti. Aplikacijski model predstavlja preslikavo informacij zbranih v tabelah. Aplikacijski model je sestavljen iz več delov. Prva dva dela sta izdelana iz informacij, registriranih v tabeli entitet. Prvi del prikazuje vitalne analize, drugi pa probleme za podporo odločanju. Ostali deli aplikacijskega modela so izpeljani iz tabele aktivnosti. Za vsak poslovni proces kreiramo poseben del aplikacijskega modela. Slika 2 prikazuje aplikacijski model obravnavanega problema tranzita. Prvi del modela prikazuje poročila, ki so povezana s tranzitom, drugi pa prikazuje delovni proces Tranzit in njegove aktivnosti. KONTAKT JDSEBA DOBAVITELJ davčnaJst DRŽAVA PLAČNIK operacije NAZIV NASLOV MESTO PODJETJE operacije NAR ART KOLIČINA NAROČENA KOLIČINA PAKIRANA_KOLIČINA RABAT POPUST kreiraj_naročilo j. <1 « ► RAC ART KOLIČINA RABAT sprejmi_račun ARTIKEL ŠIFRA NAZIV DODATNI_NAZIV POREKLO ENOTA CENA BREZ DDV ST_DAVKA CENA operacije PRED ART KOLIČINA RABAT POPUST kreiraj_predračun V v NAROČILO DATUM MAČIM_NAROČILA ZASTOPNIK DATUM_DOST A VE NAČIN DOSTAVE VRSTA_NA6AVE ODPREMA DATUM_ODPREME kreiraj_naročilo potrdijiaročilo prirnerjaj_naročilo RAČUN DATUM DATUM JZDAJE DATUM_ZAPADLOSTI MESTO" VALUTA sprejmi_račun zavedi_račun primerjaj_z_naročilorn reši_napravilnosti knjižijačun likvidirajjačun izpiši_račun potrdijačun podpiši_račun dokumentiraj_račun KUPEC DAVČNA_ŠT NAZIV NASLOV MESTO operacije PREDRAČUN DATUM DATUM_VEL JAVNOSTI NAROČILO# VALUTA kreiraj jiredračun plačaj joedračun zaključijo edračun Poročila po dobaviteljih po artiklih na različnih nivojih OE o prodaji po strankah o prodaji po artiklih o Trgovanje Tranzit Zahteva za predračun Formiranje predračuna Flačilo predračuna Zaključitev predračuna Zahtevek za naročilo Formiranje naročila Podpis vodje Pošiljanje naročila dobavitelju Pošiljanje računa v odd. Vhodi za DDV Vnos računa v knjigo računov Slika 2: Aplikacijski model za proces Tranzit 2.6 Implementacija Zadnja faza se ukvarja z implementacijo sistema. Vhodi v to fazo so objektni model in aplikacijski model, ki jih analitik prevede v bazo podatkov in programsko kodo. 3 Modeliranje informacijskega sistema z jezikom UML Prikazati želim razvoj informacijskega sistema za podporo delovnemu procesu Tranzit z drugega zornega kota. Odločila sem se za uporabo jezika UML (Unified Modeling Language), saj je le-ta standardni modelir-ni jezik. UML je jezik za specificiranje, vizualiziranje, konstruiranje in dokumentiranje programskih sistemov (UML version 1.1). UML je zbirka standardnih modelov, ki jih uporabljamo za načrtovanje objektno orientiranega projekta (Sturm, 1999). UML je samo modelirni jezik. UML je torej vizualni modelirni jezik, ki omogoča opisovanje modelov tako, da uporablja standardno notacijo in na ta način omogoča izmenjavo modelov (pogledov) med strokovnjaki. UML uporablja objektno-orientirane koncepte in je neodvisen od programskega jezika in razvojnega procesa. V splošnem jeziki za modeliranje uporabljajo diagrame za predstavitev entitet in njihovih povezav. Tako se tudi v jeziku UMI. za predstavitev uporablja različne grafe, ki jih uporabnik izbere sam, glede na to, kateri so zanj najbolj uporabni. Zaradi pomanjkanja prostora bom prikazala samo nekatere diagrame jezika UML. 3.1 Diagrami primerov uporabe Diagram primerov uporabe je dokument, ki jasno opisuje zaporedje akcij akterja, ki uporablja sistem za izpolnitev procesa (Larman, 1998). Je prikaz uporabniških zahtev. Razvoj diagrama primerov uporabe predstavlja prvi korak pri uporabi UML-ja. Začnemo z vidika uporabnikov sistema in prevedemo uporabnikove potrebe v lahko razumljiv model. Ta diagram torej predstavlja, kako sistem ali del sistema deluje z vidika uporabnika. Diagram primerov uporabe sestavljajo akter, primer uporabe in povezave med akterji. Akterje oseba ali drug eksterni sistem, ki ima določene interakcije z opazovanim sistemom. Delimo jih na primarne in sekundarne akterje. Primarni akter je tisti, ki začne uporabljati primer uporabe oziroma tisti, ki primer uporabe sproži, sekundarni akter pa v njem le sodeluje. Akter je torej vloga, ki jo oseba ali skupina igra v povezavi z uporabo obravnavanega sistema. Akterja predstavljamo z likom človeka. Primer uporabe izdela analitik na osnovi intervjujev z uporabniki na različnih organizacijskih nivojih in predstavlja dobro definirano delovanje sistema. Vsako dobro definirano delovanje definiramo kot primer uporabe, ki ga prikažemo v obliki elipse. Primer uporabe podrobno tekstovno opišemo. V ta namen uporabimo obrazec, ki je prikazan na sliki 3. Primeri uporabe in akterji so med seboj povezani. V ta namen se uporabljajo asociacija, generalizacija, stereotip 'vsebuje' in stereotip 'razširja'. Stereotip 'vsebuje' pomeni, da pri uporabi enega primera uporabe lahko pride do uporabe drugega primera uporabe. Ta tip povezave uporabljamo, kadar se določeno delovanje ponavlja pri določenem številu primerov uporabe. Namen tega je, da odpravimo specifično podvajanje. Za to delovanje moramo kreirati nov primer uporabe, PRIMER UPORABE: KREIRATI PREDRAČUN Namen: Formirati predračun. Primarni akter: Komercialist. Sekundarni akter: / Začetna točka: Prejeti zahtevek za predračun. Končna točka: Predračun je kreiran ali razveljavljen. Tok dogodkov: Komercialist prejme kupčev telefonski ali pisni zahtevek za predračun. Kreira predračun tako, da vpiše podatke o kupcu in o artiklih, ki jih kupec želi naročiti, ter izračuna znesek, ki naj bi ga kupec plačal. Alternativni tok dogodkov: / Merljiv rezultat: Kreiran predračun. Razširitev primera uporabe: / ki ga imenujemo klientni primer porabe (client use čase). Smer povezave vsebuje je usmerjena k klientne-mu primeru uporabe. Stereotip 'razširja' se uporablja takrat, ko ima neki primer uporabe poleg normalnega toka dogodkov še alternativen tok dogodkov. V tem primeru definiramo poseben nov primer uporabe za alternativni tok dogodkov, ki ga povežemo z baznim s stereotipom 'razširja'. Asociacija je logična povezava med dvema akterjema, to je med akterjem in primerom uporabe. Prikazana je s puščico, na kateri lahko definiramo tudi ime asociacije. Zaradi omejenega prostora v nadaljevanju podajam samo opis primera uporabe 'Kreirati predračun' z uporabo prej omenjenega obrazca. c Kreirati Zaključiti O Slika 4 prikazuje del diagrama primerov uporabe za proces Tranzit. 3.2 Interakcijski diagrami Naslednji korak pri načrtovanju sistema so interakcijski diagrami, kjer prevedemo narisane primere uporabe v diagrame, ki grafično prikažejo časovno zaporedje komunikacij, interakcij med akterji in komponentami, objekti primera uporabe in objekti samimi. Ti diagrami prikazujejo dinamično obnašanje sistema. Ločimo dva tipa interakcijskih diagramov in sicer diagrame zaporedja in diagrame sodelovanja. Oba tipa diagramov predstavljata isto informacijo na različne načine. Pri diagramu zaporedij ima bistveno vlogo časovno zaporedje dogodkov, medtem ko ima diagram sodelovanja večji poudarek na povezavi med elementi sistema. S pomočjo teh diagramov lahko Komercialist vidimo, ali obstaja določen vzorec v sistemu, hkrati pa nam pomagajo zgraditi uporabniške vmesnike. 3.2.1. Diagrami zaporedja Diagrame zaporedja uporabljamo za pretvorbo diagramov primerov uporabe v vizualni model, ki prikazuje, kako objekti, povezani s posameznim primerom uporabe, komunicirajo drug z drugim v času. Z diagrami zaporedja prikažemo, kako si časovno sledijo sporočila med objekti sistema. Diagram zaporedja služi za jasno identifikacijo zaporedja dogodkov, ki se odvijajo znotraj določenega primera uporabe. V diagramih zaporedja poleg akterja in objektov uporabljamo še naslednje elemente: ■ življenjsko črto, ki izhaja iz vsakega akterja in objekta navpično navzdol, kjer se čas obstoja objekta meri od vrha diagrama navzdol. ■ puščice, ki povezujejo življenjske črte, prikažemo med akterji in različnimi objekti. Na puščice napišemo imena sporočil. Sporočila si slede v časovnem zaporedju, ki ponazarja zaporedje dogodkov. Posebna vrsta sporočil so refleksivna sporočila, kjer objekt komunicira sam s sabo. ■ pravokotnike, ki jih rišemo na življenjske črte, pomenijo pa aktivacije oziroma časovno obdobje, ko je akter ali objekt odgovoren za akcijo. Dvopičje pred imenom objekta pomeni, da gre za objekt razreda in ne razred. Objekti sodelujejo drug z drugim, razredi pa ne. V diagramih zaporedja nastopajo samo objekti in akterji. Tako torej časovna premica teče od posameznega objekta in predstavlja obdobje, ko objekt obstaja. Sodelovanje med akterji in objekti ter objekti samimi prikazujejo sporočila, ki se kasneje, v diagramu razredov, pretvorijo v operacije razredov. Slika 5 prikazuje diagram zaporedij za primer uporabe Kreirati predračun. Na diagramu ni narisan alternativni tok dogodkov, ki se sproži v primeru, ko Vmesnik Predračun Baza podatkov Vnesi predračun <] Shrani predračun ► Shrani predračun Shrani predračun Zapis ie shranjen Zapis je shranjen r Slika 5: Diagram zaporedij Kreirati predračun komercialist prekliče vnos predračuna v bazo podatkov, ker orodje Rational Rose ne dovoljuje prikazovanje alternativnih tokov na istem diagramu. 3.2.2 Diagrami sodelovanja Diagrami sodelovanja poudarjajo povezave med objekti ter povezave med objekti in akterji, ne pa trajanje posamezne interakcije. Tako prikazujejo strukturo sistema. Diagrami sodelovanja prikažejo sporočila, ki potujejo med objekti ter med primarnimi akterji in objekti. Predstavljajo lahko celoten primer uporabe ali pa samo del. 3.3 Razredni diagram Diagrami razredov se ukvarjajo s sistemskim načrtovanjem. Razred je opis skupine objektov, ki imajo enake atribute, operacije in relacije; torej razred predstavlja skupino objektov s podobnimi lastnostmi in skupnim obnašanjem. Vsak objekt je primerek nekega razreda. Razredi med seboj niso v interakciji, lahko pa so v medsebojni interakciji objekti iz različnih razredov. Diagram razredov torej prikazuje množico razredov in relacij med njimi. Predstavlja statičen pogled sistema. Diagram razredov prikazuje javne in privatne operacije ter lastnosti razredov. Izdelamo ga na podlagi informacij iz diagrama primera uporabe in diagramov zaporedja. Lastnosti posameznega razreda ugotovimo s pomočjo primerov uporabe, medtem ko nekatere operacije razberemo iz diagramov zaporedja. Razrede določimo iz opisov primerov uporabe. Povezave med razredi spadajo v tri kategorije: Asociacija med dvema razredoma: en razred ne zahteva obstoja drugega razreda. Vsak razred ima enako odgovornost v partnerstvu. Predpostavimo jih s polno črto, ki povezuje oba razreda. Generalizacija: pomeni, da je vsak objekt razreda posebna verzija objekta drugega razreda. Generalizacijo prikažemo s trikotnikom usmerjenim k starševskemu objektu. Agregacija (sestavljena agregacija): je relacija med razredoma, kjer en razred ne more obstajati brez drugega razreda. To je ponavadi enosmerna relacija, ki je prikazana z rombom. Lastnosti razredov dobimo iz tekstualnih opisov primerov uporabe. Operacije razredov dobimo iz analize vsakega zaporednega diagrama. Če objekt pošlje sporočilo drugemu objektu, to pove, da je potrebno definirati operacijo znotraj objekta, ki prejme sporočilo, pri čemer pa ima lahko več razredov enake operacije. Slika 1 prikazuje diagram razredov za proces Tranzit. 3.4 Aktivnostni diagrami Aktivnostih diagrami so podobni diagramom poteka. Uporabljajo se lahko v različne namene in sicer za prikazovanje delovanja sistema, za opis primera uporabe ali za podoben opis operacij razrednega diagrama. 4 Primerjava metodologij V ta namen bomo uporabili kriterije, ki jih v svojem prispevku Object-Oriented Technology predlaga avtor Josie Lam (Lam, 1997): 1. kriterij: ustreznost metodologije za definiranje zahtev in pokrivanje faz razvoja programske opreme. 2. kriterij: koliko vplivajo razvijalčeve izkušnje z metodologijo na uporabnost metodologije. 3. kriterij: kakšno podporo ima metodologija. 4. kriterij: enostavnost metodologije za uporabo in razumevanje. V povezavi s prvim kriterijem ugotavljam, da metodologiji temeljita na različnih konceptih. UML pokriva vse faze razvoja programske opreme z uporabo različnih diagramov kot so diagrami primerov uporabe, zaporedja, sodelovanja, razredov, aktivnosti in drugi. TAD metodologija bazira razvoj programske opreme na tabelah entitet, aktivnosti in nalog. Poleg tega razvija model objektov in aplikativni model. Drugi kriterij govori o vplivu izkušenj z metodologijo na uporabi metodologije na dejanskem primeru. Ugotavljam, da je za učinkovito uporabo ene ali druge metodologije potrebno nekaj izkušenj razvijalca, vendar mislim, da za uporabo UML potrebujemo veliko več izkušenj. V zvezi s tretjim kriterijem ugotavljam, da ima UML dobro razvito podporo, ki razvijalca pripelje do implementacije, medtem ko je podpora metodologije TAD še v razvoju. Glede na zadnji kriterij menim, da sta obe metodologiji jasni in razumljivi za uporabo. Moje mnenje pa je, da je uporaba tabel v metodologiji TAD enostavnejša in natančnejša, kot pa risanje diagramov pri UML-ju. Slabost UML-ja je ta, da v končni fazi dobimo precejšnjo število diagramov. Vsak diagram predstavlja določeno delovanje sistema. Posledica tega je, da sistem postane neobvladljiv pri razvoju kakšnega večjega informacijskega sistema. Prednost metodologije TAD je v tem, da tabela aktivnosti omogoča prikazovanje delovanja celotnega sistema, kar omogoča razvijalcu obvladovanje sistema. Nadaljna prednost je v enostavnem prehodu iz faze analize v fazo načrtovanja s prevedbo tabele entitet in aktivnosti v aplikacijski model. 5 Zaključek Eden naj večjih problemov tradicionalnih metodologij razvoja informacijskih sistemov je v nepovezanosti, ko projekt napreduje iz faze konceptualnega modeliranja, v fazo načrtovanja in kasneje v fazo implementacije. Razvijalci UML-ja so vložili precej truda v izdelavo metodologije in orodja, ki omogoča spojitev korakov razvoja informacijskega sistema, vendar pa še zmeraj obstaja nepovezanost med različnimi koraki UML-ja. Metodologija TAD je izjema v svoji edinstveni specifikaciji konstruktov modeliranja, v katerih uporablja enostavne tabele za popolno specifikacijo sistema tako v fazah analize kot načrtovanja in implementacije. Metodologija TAD povezuje tabele in elemente tabel v celovit načrt sistema. Uporablja iste elemente tako za prikaz strukture kot tudi za prikaz funkcionalnih odvisnosti končnega sistema. Zahteve uporabnikov, ki so definirane v prvi fazi, so ponovno uporabljene in preizkušene v zadnjih fazah metodologije. Ta natančna implementacija zahtev uporabnikov je vključena neposredno v postopek metodologije TAD. 6 Literatura in viri Damij Talib: Development of a Hospital Information System using the TAD Method. Journal of the American Medical Informatics Association, Chatsvvorth, 5(1998), 2, str. 16-20. Damij Talib: An Object-Oriented Methodology for Information Systems Development and Business Process Reengineering. Journal of Object-Oriented Programming, Chatsvvorth, 13(2000), 4, str. 23-34. VVatson Gregory H.: Business Systems Engineering: Managing Breakthrough Changes for Productivity and Profit. John Wiley & Sons, New York, 1994, 287 str. Sturm Jake: VB6 UML Design and Development. Wrox Press, Birmingham, 1999, 581 str. Rumbaugh James, Jacobson Ivar, Booch Grady: The Unified Modeling Language Reference Manual. Addison Wesley Longman Inc., Reading, Massachusetts, 1998, 550 str. La rman Craig: Applying UML and Patterns. Prentice Hall, 1998, 507 str. Unified Modeling Language version 1.1. [URL: http://www.rational.com/uml/resources/ documentation/formats.jsp], 15.05.2001. Lam J.: Object-Oriented Technology. [URL: http://disc.cba.uh.edu/-rhirsch/spring97/laml/ hope.htm], 12.05.2001. ♦ Nadja Damij je študentka četrtega letnika na Ekonomski fakulteti v Ljubljani na smeri Poslovna informatika. V kratkem bo zagovarjala svoje diplomsko delo s področja objektno-orientiranega modeliranja. Izrazje Razvoj SLOVENSKEGA RAČUNALNIŠKEGA IZRAZJA OSEBNI POGLED Vladimir Batagelj Fakulteta za matematiko in fiziko, Univerza v Ljubljani Vladimir. batagelj@uni-lj. si Izvleček V prispevku je podan izbor pomembnejših dogodkov pri nastajanju slovenskega računalniškega in informatičnega izrazja dopolnjen z osebnim pogledom na nekatera vprašanja s tega področja. Abstract In the article a selection of key events in the development of slovenian Computer and informatics terminology is presented, complemented with personal viern on some related questions. 1. UVOD V tem sestavku bom poskusil narediti pregled pomembnejših dogodkov in dejanj pri nastajanju slovenskega računalniškega izrazja. Stvari sem zbral po spominu. Zato najbrž še marsikaj manjka. Zapisano pa je tudi precej osebno obarvano. Po svoji osnovni stroki sem matematik. Matematika in računalništvo imata precej skupnega - pravzaprav je računalništvo plod prizadevanj ustvariti računske in logične stroje. V matematiki skrb za slovensko izrazje sega nazaj v drugo polovico 19. stoletja. Z uveljavljanjem slovenščine v šolah se je pojavila tudi potreba po slovenskem strokovnem izrazju. Matematika France Močnik in Blaž Matek sta bila priznana pisca učbenikov, ki so se uporabljali po vsej Avstro-Ogrski in celo čez njene meje [30, 26,27]. V slovenskih izdajah njunih učbenikov srečamo izraze, ki smo jih tudi sami spoznavali v osnovni in srednji šoli: seštevanje, odštevanje, množenje, poštevanka, deljenje, deljencc, delitelj, količnik, ulomek (drobec), števec, im-enovavcc, desetiški številski sestav, naravno število, praštevilo, odstotek, sklepni račun, najmanjši skupni mnogokratnik, največja skupna mera, sorazmerje, koren, razstavljanje, mnogočlenik, enačba, ničla, enačaj, enota, ... štirjak (kvadrat), pakrog (elipsa), ... Nadaljnje širjenje izrazja so po prvi svetovni vojni zahtevali univerzitetni predmeti na novo-ustanovljeni Univerzi v Ljubljani. Posebej opazen je prispevek njenega prvega rektorja in profesorja matematike Josipa Plemlja. Za računalništvo je pomemben njegov prispevek na področju algebre in teorije števil [32], kjer najdemo pojme kot so: množica, skupina (grupa), odsek, edinka, obseg, algoritem, krožna delitev, tretinjenje, verižni ulomek, ostanek, razširjenje, ... Ko govorimo o izrazju na področju računalništva in informatike, ne smemo pozabiti tudi na druge računske naprave in pripomočke [12]. V prvi polovici šestdesetih let je v zbirki Sigma izšlo več knjižic, ki so v slovenski prostor vnašale nova področja matematike povezana z računalništvom in orale ledino tudi pri izrazju za ta področja: verjetnostni račun, teorija informacij [17], matematična logika [33],... Precej novosti, tako po vsebini, kakor po izrazju, je uvedel tudi France Križanič [24] v svojih matematičnih učbenikih za gimnazije, ki so izhajali v tem času. Prizadevanja pri izgradnji slovenskega matematičnega izrazja so povzeta v Matematični terminologiji, ki jo je pripravil Alojzij Vadnal [40]. Žal nima naslednika. V zadnjih letih je bilo opravljeno še pomembno delo na področju statističnega izrazja [20]. 2. RAZVOJ RAČUNALNIŠKEGA IZRAZJA 2.1. Zuse Z-32 Med svojim študijem v Moskvi je profesor Križanič napisal knjigo o elektronskih računalnikih [23J, ki je prav tako izšla v zbirki Sigma leta 1960. V njej je opisal osnove številskih sestavov (s poudarkom na dvo-jiškem), vezij, programiranja in uporabe računalnikov. 15. novembra 1962 je v Računskem centru Inštituta za matematiko, fiziko in mehaniko (IMFM RC) začel delovati računalnik ZUSE Z-32. Ob njem se je porajalo slovensko računalništvo. Egon Zakrajšek je napisal osnovne priročnike [45,46], Zvonimir Bohte s sodelavci pa je začel z razvojem numerične analize pri nas [9, 41]. Na Inštitutu Jožef Stefan je v drugi polovici šestdesetih let nastala okrog profesor Železnikarja skupina, ki se je ukvarjala s teoretičnimi vprašanji računalništva (teorija vezij, programski jeziki in prevajanje, kasneje tudi umetna inteligenca). Skupina je med drugim skrbela za vsakoletno (1965-1981) mednarodno računalniško srečanje FCIP/Informatika. Tudi sam sem svojo Vajeniško' obdobje opravil v tej skupini. Konec šestdesetih let so bila tri računalniška 'gnezda': IMFM, IJS in FE. 2.2. IFIP71 Pomembna spodbuda nadaljnjemu razvoju računalništva pri nas je bil kongres mednarodnega računalniškega združenja IFIP, ki je bil leta 1971 v Ljubljani. Ob tej priliki je Elektrotehniška zveza izdala obsežno knjigo Elektronski računalniki [34], ki vsebuje tudi slovarček z več kot 500 izrazi s področja računalništva. To leto smo na RRC dobili tudi, za tiste čase, zelo zmogljiv CDC-jev računalnik CYBER. Z delom je začel tudi Seminar zn numerično in računalniško matematiko IMFM - Sredin seminar [4]. Na kongresu IFIP smo srečali tudi D.E. Knutha, ki je ravno v tistem času izdal svoje prve knjige iz zbirke The Art of Computer Programming. Te so precej vplivale na vsebine predavanj pri računalniških predmetih na Matematiki — in zahtevale ustrezne jezikovne rešitve. Leta 1970 je na Zavodu za šolstvo RS postal svetovalec za računalništvo Branko Roblek. Začele so se priprave za uvajanje računalništva v srednje šole [35,31]. Poskrbeti je bilo potrebne tudi za slovensko izrazje. Nekakšen vrh teh prizadevanj predstavlja srednješolski učbenik Uvod v računalništvo, ki sta ga napisala Ivan Bratko in Vladislav Rajkovič [10]. Leta 1974 smo v Ljubljano dobili programski jezik pascal [47]. Naslednje leto smo ga, skupaj z obema VVirthovima knjigama, na Matematiki začeli uporabljati pri predavanjih. Novejši programski jeziki so prinesli podporo raznim podatkovnim strukturam. V fortranskih časih so nekateri za spremenljivko z indeksi uporabljali besedo polje (nekateri to počno še danes). Algol 68 je za ta pojem vpeljal izraz večkratna vrednost, polje pa je del zapisa. Tudi pascal pozna zapise in polja. Leta 1976 sta FE, Katedra za računalništvo in informatiko ter FNT, Matematika začeli skupni študij računalništva. Razvoj predmetov na tem študiju je zah- teval tudi ustrezno slovensko izrazje. Med pomembnejše prispevke v tej smeri sodijo prav gotovo Vilfanova prevoda obeh VVirthovih knjig [50], Virantov Uvod v računalništvo [44] in Kozakove Podatkovne strukture in algoritmi [21]. 2.3. Mikroračunalniki Prva polovica osemdesetih let je prinesla mikroračunalnike. Sprva kot hišne računalnike (Spectrum, Commodore-64, Partner, ...). Računalnik je postal dostopen posamezniku (in šolam). Omogočal je tudi uporabo slike in zvoka. Računalnik je vse bolj postajal potrošno blago in zanj se je zanimalo vse več ljudi - nestrokovnjakov. Vstopati je začel tudi v osnovne šole. Ciril Velkovrh, urednik pri DMFA RS, nam (V. Batagelj, J. Kozak, B. Mohar, T. Pisanski) je proti koncu leta 1984 dal v pregled prevode štirih knjig o računalništvu. Zgrozili smo se - in 'morali' nato knjige sami ponovno prevesti [25, 11]. V knjigi [25] je tudi slovarček pojmov s področja hišnih računalnikov. Na Sredinem seminarju [4] smo imeli več pogovorov o računalniškem izrazju (328./1983; 375., 376./ 1984; 406./1985). Matjaž Gams je s sodelavci izdal Računalniški slovarček [13]; Slobodan Simič pa Pojmovnik računalniških komunikacij [36]. Nekoliko kasneje je Ivan Turk s sodelavci izdelal Pojmovnik poslovne informatike [39]. Leta 1985 so pri podjetju Apple v sodelovanju s podjetjem Adobe, ki je zanj razvilo jezik PostScript, dali v prodajo laserski tiskalnik. Ta je na področju priprave tiskanih gradiv in založništva naredil pravo malo revolucijo - namizno založništvo je postalo eno izmed pomembnih področij uporabe računalnikov (TpX, Word). Jezik 'tiskarskega ceha' je prestopil svoje običajne okvire [8, 48, 7]. Proti koncu osemdesetih let smo uporabniki DEC-ovih računalnikov povezanih v SLON vse bolj uporabljali razne načine računalniške izmenjave sporočil. Med drugim je Mark Martinec odprl 'jezikovne pomenke', ki so bili nekaj let zelo dejavni. Pomembno vlogo pri skrbi za slovensko računalniško izrazje v osemdesetih in tudi naprej v devetdeseta leta imata reviji Moj Mikro in nekoliko mlajši Monitor, ki sta za to pokazali veliko skrb in posluh. 2.4. Večpredstavnost in omrežja Devetdeseta leta so tudi na PCjih prinesla operacijski sistem s slikovnim vmesnikom - Windows, ki je omogočal tudi uporabo različnih oblik podatkov (besedilo, slika, zvok, video) in kmalu še povezovanje v omrežje [2, 3,19]. Računalnik postaja stroj za vsakogar - podobno kot so pralni stroj, telefon, televizija, avtomobil, ... S tem tudi osnovno računalniško izrazje postaja del vsakdanjega jezika. Leta 1993 so se pri podjetju MacAda odločili za prevajanje Systema 7 (OS na Macih). Aprila 1993 me je obiskala njihova sodelavka Maja Vidmar in mi predlagala sodelovanje. Začel naj bi s pregledom slovarčka prevodov besed, ki se pojavljajo v Systemu. Izkazalo se je, da je večina prevodov neustreznih. Pripravili smo popravke; kar nekaj izrazov pa je ostalo brez ustreznih rešitev. Medtem je Maja odšla drugam. Oktobra 1993 smo z delom nadaljevali, tako da je ostalo še kakih 10 odstotkov nerazrešenih izrazov. Okrog novega leta smo se odločili, da začnemo z neposrednim prevajanjem in sprotnim reševanjem odprtih vprašanj. Posebne težave smo imeli, ker System 7 ni predvideval dvojine in sklanjatev. Med zimskimi počitnicami 1994 sva z Imrom Bartha prevedla System (jedro OS). Za podporo nadaljnjega dela je bila nato ustanovljena jezikovna skupina, v kateri so poleg naju sodelovali še Samo Kuščer, Muster, Bogdana Herman in David Pahor. Sestajali smo se ob četrtkih ob 15h. Tudi sam sem se umaknil med 'svetovalce'. Zanimiva so načela, ki smo si jih postavili [5]: ■ Če je mogoče, slovensko. ■ Vikanje uporabnika. ■ Brezosebnost prevoda. Zagotavljala sta jo uporaba slovarja in pregledi prevodov. m Varčnost - prostor v sporočilih OS je omejen. m Imena izbir se v besedilu pišejo z veliko začetnico v prvem sklonu. ■ Računalnik ni oseba (sogovornik) - odgovori OS uporabniku niso v prvi osebi. ■ Pri prevajanju je potrebno ohraniti pomen in zagotoviti usklajenost izrazja. V tabeli 1 je prikazan izbor prevodov. Prevajanje je teklo še nekaj mesecev in sčasoma zamrlo. Uspešneje se je nekoliko kasneje izteklo prevajanje operacijskega sistema VVindovvs. (Podzavestni) vpliv programa (npr. OS), s katerim smo pogosto v stiku, je neprimerno večji, kot besedila v časopisu, TV ali celo knjigi. Zato se mi zdi v teh primerih skrbno prevajanje posebej pomembno. Leta 1995 je Matjaž Zaveršnik napisal program Trubar za podporo dela s spletnimi katalogi. Za preskus njegovega delovanja sva pripravila spletni računalniški slovarček http://vlado.finf.uni-Ij.si/dic/comp/ Bogat računalniški slovarček s področja telekomunikacij je pripravil tudi Pavel Meše s sodelavci [28]. Leta 1998 sta bila pripravljena nova učna načrta za računalništvo in informatiko v osnovni in srednjih šolah, ki upoštevata velike spremembe, ki so se dogodile v zadnjem desetletju na tem področju. Rado VVechtersbach je s sodelavci napisal tudi učbenika za obe stopnji [49]. Začetki LUGOSa — Društva uporabnikov Linuxa Slovenije (angl. Linux User Group Of Slovenia) segajo v leto 1996. Od 23. julija 1997 obstajajo tudi uradno. Pomembna dejavnost LUGOSa je tudi slovenjenje Linuxa. Več izveste na spletišču http://www.lugos.si/ Priprava slovenskih različic programov ni preprosto delo. Orodja namenjena za to praviloma ne podpirajo posebnosti slovenščine. Kot zanimivost naj omenim, da se je pri predstavitvi, na Sredinem seminarju, orodja gettext izkazalo (Roman Maurer), da je glede izpisa številnosti (kdelibs/kdecore/klocale.cpp) čase 6: // Slovenian EXPECT_LENGTH( 4 ); if ( n%100 = = 1) return put_n_in( forms[l], n); // ena datoteka else if ( n%100 = = 2 ) return put_n_in( forms[2], n); // dve datoteki else if ( n%100 == 3 || n%100 == 4 ) return put_n_in( forms[3], n); // tri datoteke else return put_n_in( forms[0], n); // sto datotek break; slovenščina najzapletenejša med podprtimi jeziki. angleško slovensko angleško slovensko desktop namizje record snemati, zapis edit urediti, urejanje Play predvajati brovvse pregledovati update prenoviti, posodobiti browser pregledovalnik dialogbox pogovorno okno view ogledati, ogledovanje button gumb preferences prilagoditve ok potrdi control panel nastavitve cancel prekliči clipboard odložišče scroll bar drsnik, drsna letev menu izbira title bar naslovna letev option možnost help nasveti cut izrezati, izrez, rez document spis copy razmnožiti font pisava paste vstaviti install namestiti insert vriniti text besedilo 3. NEKAJ MISLI Jezik odseva življenje njegovih nosilcev-uporabnikov in se z njimi spreminja. Tako na primer človek s podeželja loči: hrast, gaber, bukev, javor, jesen, ... smreka, jelka, bor,..., ki so za marsikaterega meščana le še (listnato) drevo in smreka (iglavec). Besednjak živega jezika se tako manjša, za nove stvari in pojave pogosto vdirajo tujke. V Idriji, kjer sem preživel svoje zgodnje otroštvo, smo za večino orodij uporabljali ponašene nemške besede. V obdobju nastajanja strokovnih slovenskih izrazij so bili poslovenjeni predvsem nemški izrazi. Do besed latinskega ali grškega izvora pa so bili, po moje preveč, popustljivi. Zadnja desetletja angleščina dobiva vlogo nove latinščine in vsepovsod vdira v vsakdanji jezik. Ne smemo dopustiti, da slovenščina zdrsne na raven zasebnega jezika. Če si ne bomo zavestno prizadevali za ohranjanje in razvoj slovenščine, se bo hitro poangležila. Vse prehitro namreč prevzamemo angleške besede. Kaj je razlog za to? ■ neznanje - slabo poznavanje slovenščine ■ škrtost - škoda denarja za slovarje [15, 22,42] ■ lenoba - ni časa za brskanje po slovarjih ■ imenitnost - z uporabo tujk kažemo svojo "izobraženost", učenost, strokovnost, drugačnost, pripadnost, ... Z nobenim izmed njih se ne bi hvalil. V tabeli 2 so zbrane 'slovenske' besede iz prispevkov v lanskoletnem zborniku DSI'2000 in iz dveh doktoratov na FRI. Kako potuhnjeno vdira angleščina, priča primer 'alfa žarkov’ if stavek, ČASE orodja, ISO 9001 standard, Internet GIS aplikacija, CGI program, ISDN priključek, Gini indeks, xz porazdelitev, ... Posmehujemo se Hrvatom [29] in Francozom pri njihovi (morda) pretirani skrbi za jezik. Toda najbrž je to prava pot. Pustiti lastnemu jeziku, da polno zaživi. Poskušati, in obdržati dobre rešitve. Če že ne ustvarjamo novih stvari, poskusimo poiskati vsaj svoja imena zanje. Bojimo se ustvarjati nove besede. Kako bi tej stvari rekli, če bi si jo sami izmislili? Večina novoustvarjenih besed bo sprva čudno zvenela. Zato vsako vsaj 10 krat ponovi, preden rečeš NE. Novo besedo je potrebno preveriti tudi v besednih zvezah in izpeljankah. 'slovensko' slovensko 'slovensko' slovensko inštalacija namestitev repozitorij shramba implementacija izvedba formula obrazec aktivnost dejavnost ekran zaslon kreacija stvaritev atribut lastnost deklaracija najava, napoved princip načelo notacija zapis klasifikacija uvrstitev, razvrstitev resurs vir efektiven učinkovit binarni dvojiški teza ver geslovnik interpreter tolmač rotacija vrtenje, vrtež, zasuk inštitucija ustanova partner družabnik, sodelavec adresa naslov externi zunanji servis storitev, usluga elaborat razdelava mapiran preslikan kontrola nadzor fleksibilnost prožnost modifikacija sprememba konsistentnost usklajenost rizik tveganje performanse zmogljivost prezentacija predstavitev integriteta celovitost predikcija napoved verzija različica segment kos, del komplementaren dopolnjujoč referenca sklic, vir ekstenzija razširitev distribucija porazdelitev dimenzija razsežnost distribucija razpečevanje skala lestvica heterogenost raznorodnost skalabilnost prilagodljivost dokument spis, listina arhitektura zgradba aplikacija uporaba, rešitev reprezentant predstavnik kvaliteta kakovost kompleksnost zahtevnost ilustrirati ponazoriti, prikazati redundantni odvečni numeričen številski nominalna imenska ažurirati obnoviti proporcionalni sorazmerni kopija izvod sortiranje urejanje aplikacija uporaba, rešitev reprezentant predstavnik konsenz soglasje ekvivalenten enakovreden senzitivnost občutljivost deviacija odklon korekcija popravek signifikantne značilne, opazne kombiniran sestavljen Tabela 2: Slovensko Zelo koristno bi bilo tudi zagotoviti (npr. z državnimi projekti) javna jezikovna podatkovja potrebna za razvoj jezikovne programske podpore za preverjanje pravilnosti besedil, odstanjevanje tujk, prevajanje,... 4. ZAKLJUČEK Lani je končno zaživela tudi terminološka sekcija Slovenskega društva Informatika, ki naj bi skrbela za nadaljnji razvoj računalniškega in informatičnega izrazja v novem tisočletju. Spletni računalniški slovarček SDI najdete na http://www.ef.uni-lj.si/terminoloskislovar/ Spletna različica tega sestavka, opremljena s slikovnim gradivom, je dostopna na http://vlado.fmf.uni-lj.si/dic/doc/dsiOl.htm Viri [1] Adamič Š.: Terminološki slovar informatike. Samozaložba, Ljubljana 1990. [2] Adlešič M.: Svet svet/obe in barv. MK, Ljubljana 1957. [3] Adlešič M.: Svet zvoka in glasbe. MK, Ljubljana 1964. [4] Batagelj V.: 1001 sredin seminar. Pregled tem na Sredinih seminarjih 1971-2000. Ljubljana, november 2000. [5] Batagelj V.: Prevajanje - osebni pogled. Predstavljeno na Dnevi slovenskega izobraževanja 94, 19. april 1994, Ljubljana. [6] Batagelj V.: Kratek pojmovnik skrivnoslovja. Uporabna informatika 2 (1994)3, 36-38. (Vladimir Batagelj): Računalništvo — varovanje podatkov, najnujnejše o skrivnopisju. Mladina (1993)43, 33. [7] Batagelj V., Golli B.: 7eX, Povabilo v TeX, LaTeX, TeX, PiCTeX. DMFA RS, Ljubljana 1990. [8] Blejec M.: Priročnik za ročne stavce. Združenje grafičnih podjetij Jugoslavije, Ljubljana 1957. [9] Bohte Z.: Študij numeričnih metod in izdelava osnovnih podprogramov za računalnik Z-23. Poročilo, IMFM RC, Ljubljana 1964. [10] Bratko L, Rajkovič V: Uvod v računalništvo. DZS, Ljubljana 1973. [11] Curran S., Curnow R.: Prvi koraki v Bašiču / Igre, grafika in zvoki / Učenje z računalnikom. Kozak J., Mohar B. in Pisanski T, prevod. Presekova knjižnica, Delavska enotnost in ZOTKS, Ljubljana 1985. [12] Čuček L: Računski stroji. DZS, Ljubljana 1953. [13] Gams M.: Računalniški slovarček. CZ, Ljubljana 1985. [14 Gorjanc V.: Terminologija novejših naravosiovno-tehničnih strok. Jezik in čas, ZIFFj Ljubljana 1996, 251-260. [15] Grad A, Škerlj R., Vitorovič N.: Veliki angleško-slovenski slovar. DZS, Ljubljana 1978. [16] Hladnik M.: Odločno zoper slovenščino. Nova Atlantida 3(1996)1/2, 204-211. [17] Jamnik R.: Elementi teorije informacij. Sigma, MK, Ljubljana 1964. [18] Jež-Grgič M.: Slovensko računalniško izrazje. vJeziktako in drugače. Štrukelj L, ur., Ljubljana 1993, 410-419. [19] Ježovnik V.: Predlog izdelave terminologije iz področja prostorske informatike. FAGG, Ljubljana 1991. [20] Košmelj B. s sodelavci:Statistična terminologija. RSS, Ljubljana 1987. [21] Kozak J.: Podatkovne strukture in algoritmi. DMFA SRS, Ljubljana 1986. [22] Kraynak J.: Računalniški slovar. Kuščer S., prevod. MK, Ljubljana 1994. [23] Križanič F.: Elektronski aritmetični računalniki Sigma, MK, Ljubljana 1960. [24] Križanič F: Aritmetika, algebra in analiza /za gimnazije. (1-4. del), DZS, Ljubljana 1963-66. [25] Lafferty R: Uvod v računalništvo. Batagelj V, prevod. Presekova knjižnica, Delavska enotnost in ZOTKS, Ljubljana 1985. [26] Matek B.: Aritmetika za nižje razrede gimnazije. Ig. pl. Kleinmayr& Fed. Bamberg, Ljubljana 1896 (1. del), 1898 (2.del). [27] Matek B.: Geometrija za srednje in višje gimnazijske razrede. Katoliška bukvama, Ljubljana 1909. [28] Meše R s sodelavci: Slovar telekomunikacijskih izrazov. http://www.ltfe.org/Slovar.aso [29] Mihaljevič M.:Hrvatsko računatno nazivlje. Flrvatska sveučilišna naklada, Zagreb 1993. [30] Močnik F.: Računica za obče ljudske šole. Cesarsko kraljeva zaloga šolskih knjig, Dunaj 1915, ponatis Cerkno 1995. [31] Novo računstvo. 4. seminar iz matematike, 31. jan. - 3. feb. 1972. DZS, Ljubljana 1972. [32] Plemelj J.: Algebra in teorija števil. SAZU, Ljubljana 1962. [33] Prijatelj N.: Logika. Sigma, MK, Ljubljana 1962. [34] Elektronski računalniki. Uredil Spiller-Muys F. Elektrotehniška zveza Slovenije, Ljubljana 1971. [35] Računalništvo, gradivo s tečaja za srednješolske profesorje. Roblek B., ur. Zavod za šolstvo SRS, Ljubljana 1972. [36] Simič S.: Pojmovnik računalniških komunikacij. IKI, Ljubljana 1983. [37] Slovar tehniških izrazov s področja telekomunikacij in računalništva. Iskra Telematika, Kranj 1986. [38] Švagelj J.: Računalniška slovenščina. Delo 36 (25.5.1994) 119, (15.6.1994)317. [39] Turk I. s sodelavci: Pojmovnik poslovne informatike. Društvo ekonomistov, Ljubljana 1987. [40] Vadnal A.: Matematična terminologija. DZS, Ljubljana 1953. [41] Vencelj M., Vrabec J., Zakrajšek E.: Prispevek k zbirki osnovnih podprogramov za elektronski računalnik ZUSE Z-23. Poročilo, IMFM RC, Ljubljana 1963. [42] Verbinc E: Slovar tujk. CZ, Ljubljana 1991. [43] Verdenik D.-.Jezik v operacijskem sistemu Windows. Diploma, PeF, Maribor 2000. [44] Virant J.: Uvod v računalništvo. FE, Ljubljana 1983. [45] Zakrajšek E.: Programiranje v simboličnem jeziku računalnika Z-23. IMFM RC, Ljubljana 1965. [46] Zakrajšek E.: Programiranje v Algolu. IMFM, Ljubljana 1996. [47] Zakrajšek E.: Programski jezik Pascal. DMFA SRS, Ljubljana 1975. [48] Žiljak V.: Namizno založništvo. Odbor za grafično dejavnost, Ljubljana 1989. [49] VVechstersbach R., Lokar M.: Informatika. Učbenik za 1., 2. in 3. letnik srednjih šol. DZS, Ljubljana 1997. [50] VVirth N.: Računalniško programiranje. Prevod Vilfan B., DMFA SRS, Ljubljana 1979 (1. del), 1983 (2. del). ♦ Vladimir Batagelj je redni profesor za diskretno in računalniško matematiko na Univerzi v Ljubljani. Ukvarja se predvsem s teorijo grafov, algoritmi na grafih in omrežjih, kombinatorično optimizacijo, analizo podatkov (razvrščanje v skupine, analiza in prikaz omrežij) in uporabo informacijske tehnologije v izobraževanju. Je član več domačih in mednarodnih strokovnih združenj. Dogodki in odmevi Priznanja in nagrade na Dnevih slovenske informatike 2001 Dolžnost Slovenskega društva INFORMATIKA kot ustanove civilne družbe je, da si prizadeva za večjo strokovno odličnost. Eden od načinov je javna podelitev priznanj za strokovne dosežke in sodelovanje na področju informatike. Letos so bila podeljena tri in sicer eno strokovnjaku - informatiku ter dve gospodarskima družbama. Mag. Peter Jermol je prejel priznanje za dosežke pri informatizaciji delovanja in zakonodajnega postopka Državnega zbora. Rezultat skoraj šestletnega razvoja je računalniško podprti sistem delovanja Državnega zbora, ki je viden in priznan dosežek v svetovnem merilu. Družbi Oracle Softvvare je bilo podeljeno priznanje za trajno sodelovanje s Slovenskim društvom INFORMATIKA. Na različne načine je udeležena pri posvetovanju že vsa leta, kar ga prireja SDI, in s tem je pomembno povečala prepoznavnost DSI. V imenu družbe ga je sprejel njen direktor Vasja Herbst. Družba Telekom Slovenije je prejela priznanje za prispevek k vidnosti Slovenskega društva INFORMATIKA v javnem življenju. S svojimi nastopi, ki so postali del posvetovanj DSI, je Telekom Slovenije opazno prispeval k temu, da je postal SDI viden v državi in mednarodno, s tem pa še bolj vpliven in pomemben tudi kot razvojni dejavnik v Sloveniji. V imenu Telekoma je priznanje sprejel njegov predstavnik Vojko Petrič. Nagrade za referate na DSI 2001 so izglasovali udeleženci posvetovanja. Najzanimivejši je bil referat z naslovom Osebni računalniki med študenti avtorice Metke Kuhar, študentke Fakultete za družbene vede. Nagrada, ki jo poklanja Oracle Softvvare, je kotizacija za konferenco SIOUG 2001 junija 2001 v Portorožu. Isti referat je tudi predstavila najbolje, nagrada pa je kotizacija za posvetovanje Dnevi slovenske informatike 2002, ki jo poklanja Slovensko društvo INFORMATIKA. Za najaktualnejši referat je bil izglasovan prispevek z naslovom Vrednost informacijskih tehnologij v poslovnem svetu avtorja Marka Stem-bergerja. Nagrada, ki jo poklanja International Federation for Information Processing (IFIP), je kotizacija za udeležbo na svetovnem kongresu IFIP leta 2002 v Montrealu, Kanada. Vsem prejemnikom priznanj in obema nagrajencema čestitamo, Oraclu in IFIP pa se za podarjene nagrade prisrčno zahvaljujemo. AKTUALNOSTI PRI UVAJANJU PROGRAMA ECDL V SLOVENIJI 1. Novi testni centri Slovensko društvo INFORMATIKA (SDI) je v letošnji prvi številki Uporabne informatike in na svojih spletnih straneh objavilo, da išče nove interesente za izvajanje usposabljanja po programu ECDL in za testne (izpitne) centre, ki bodo preverjali znanja kandidatov za Evropsko računalniško spričevalo (na kratko certifikat ECDL). Posebna komisija, ki jo je imenoval Izvršni odbor SDI, je pregledala prispele ponudbe in ugotovila, da 10 ponudb ustreza zahtevanim pogojem za sklenitev koncesijske pogodbe o izvajanju naštetih storitev. V začetku julija bomo sklepali pogodbe z izbranimi ustanovami in družbami. Koncesija postane operativna, ko ima izvajalec vsaj dva izprašana inštruktorja-izpraševalca. Kandidati morajo najprej pridobiti certifikat ECDL in šele nato lahko položijo test za izpraševalca. 14. junija je potekala prva delavnica za kandidate za inštruktorje in izpraševalce. Obravnavali smo licenčno pogodbo med Ustanovo ECDL in SDI. Pri tem je bil poudarek na standardih in navodilih Ustanove, ker so sestavni del licenčne pogodbe in so vključeni tudi v koncesijske pogodbe s testnimi centri. V drugem delu so predstavniki družbe ISA.IT iz Ljubljane opisali svoje izkušnje pri usposabljanju po programu ECDL in pri testiranju kandidatov za Evropsko računalniško spričevalo. Posebna pozornost je bila namenjena prevodu in pripravi za delovanje testne baze (vsebuje enotna izpitna vprašanja in navodila za odgovore). Poznavanje te baze je za inštruktorje in izpraševalce še kako pomembno. 2. Dan odprtih vrat v testnem centru družbe SPIN, d.o.o. V izobraževalnem in testnem centru družbe SPIN iz Nove Gorice so 1. junija organizirali dan odprtih vrat z bogato vsebino (brezplačno poskusno preverjanje znanja, prestavitev nove verzije operacijskega sistema MS VVindovvs SP in produkta MS Office SR druga javna podelitev certifikatov ECDL, podelitev indeksov ECDL severno primorskim županom in srečanje s predavatelji-izpraševalci). Ob zglednem številu obiskovalcev, zlasti mladine, je program ubrano potekal, dokler ni prišla na vrsto podelitev indeksov županom. Od 14 povabljenih se je podelitve udeležil le novogoriški podžupan. Medtem ko v drugih evropskih državah državna uprava zahteva od svojih sodelavcev certifikat ECDL, pri nas žal opažamo, da niti ne vedo za ta program niti nam ne dajo možnosti, da bi jim neposredno razložili uvajanje programa ECDL drugje, zlasti pri članicah Evropske unije. Pohvaliti pa velja nekatere regionalne zavode za zaposlovanje, ki samoiniciativno šolajo in tudi testirajo svoje registrirane nezaposlene ljudi. Franc Žerdin Koordinator programa pri SDI Obvestila The 6th International Symposium on Operations Research (S0R’01) 26. - 28. september 2001 Preddvor, Slovenija Organizator: Slovensko društvo INFORMATIKA - Sekcija za operacijske raziskave (Slovenian Society INFORMATIKA - Operations Research Group - SOR) http://www.drustvo-informatika.si/index.html/. Cilji srečanja: Področje operacijskih raziskav in aplikacij operacijskih raziskav v ekonomijo, poslovne znanosti, organizacijo, proizvodnjo, ekologijo, itd. se v svetu in pri nas zelo hitro razvija. Da bi sledili najnovejšim dognanjem na tem področju v svetu in doma, je potrebno najmanj vsako drugo leto organizirati mednarodni simpozij s tega področja. Tako je osnovni namen tega simpozija popularizacija operacijskih raziskav in stimulacija k novim raziskavam. Na mednarodnem simpoziju iz operacijskih raziskav The 6lh International Symposium on Operations Research in Slovenia (SOR’01) pričakujemo izmenjavo izkušenj, pretok novih spoznanj in rešitev v mednarodnem in slovenskem okviru, identifikacijo praktičnih problemov ter operativen pristop k tržni ekonomiki. Tridnevni program simpozija sestavljajo različne tematske sekcije: ■ Metodologija in tehnike operacijskih raziskav (kombinatorična optimizacija, teorija odločanja, strateške igre, linearno programiranje, celoštevilsko programiranje, večkri-terialno odločanje, mrežno planiranje in grafi, nelinearno programiranje, numerične metode, simulacija, statistika, stohastični procesi, vektorska optimizacija, itd.) ■ Aplikacije operacijskih raziskav v agronomiji, bančništvu, ekologiji, ekonomskih sistemih, energiji, varovanju okolja, financah, proizvodnji, zalogah, transportu, itd. ■ Informatika in računalništvo v operacijskih raziskavah (umetna inteligenca, sistemi za podporo odločanja, ekspertni sistemi, informacijski sistemi, računalniški programi s področja operacijskih raziskav, itd.) Začetek vsakega programskega dne je namenjen vabljenim predavateljem: . prof. dr. A. Schaerf, University Padova, Italija , prof. dr. J. S. Shawe-Taylor, Royal Holloway, University of London, Velika Britanija a doc. dr. Kristina Sorič, Ekonomska fakulteta, Zagreb, Hrvaška a prof. dr. F. Rendl, Univerza v Celovcu, Avstrija , prof. dr. E. Ferrari, University of Bologna, Italija Kot običajno bo tudi letos izdan zbornik recenziranih prispevkov. Vabilo udeležencem: Na konferenco vabimo vse, ki pri svojem delu razvijajo ali uporabljajo operacijske raziskave. Prosimo vas, da izpolnite prijavnico in jo pošljete na naslov: Slovensko društvo INFORMATIKA - Sekcija za operacijske raziskave, Organizacijski odbor SOR’01, Vožarski pot 12, 1000 Ljubljana. Udeleženci, ki želijo na simpoziju predstaviti svoje prispevke, prosimo, naj prispevek pošljejo organizatorju najkasneje do 15. junija 2001. Obvestilo o sprejetju prispevka boste prejeli do 15. julija 2001. Prijavnico in navodilo za pisanje prispevka dobite na naslovu: http://www.drustvo-informatika.si/index.html/. ali pa svoj interes sporočite na e-mail: lidija.zadnik@uni-lj.si in vam bomo navodila poslali na želeni naslov. Jezik: Uradni jezik simpozija je angleščina. Kotizacija: - za člane SDI-SOR je 200 DEM za nečlane SDI-SOR je 300 DEM - za študente (zbornik vključen) 40 DEM za študente (brez zbornika) prost vstop. Informacijo za nakazilo kotizacije dobite na naslovu: http://www.drustvo-informatika.si/index.html/. Koledar prireditev g 8 e E "o? g S Gr a O i 5 1 ii | i o ro 1 S S S 1 ? f I f 1 "53 | St O 8 5 CN <“ •a ^ I ^ -§ 5 I •2, f i •s g 1 S 1 L ii > s S (8) 1 § i 1 tu) 5 1 I f 8 H y e> CO 1 ! j | ©) 1 l.i 1 S CD .d .E || 1 s £2 S 1 8 2 (g) it "H II s @ ¥ i I 1 £ 1 tl II § 1 2 | ti j •II (e) || 3 £ E § = S 11 1 1 s s 1“ II 11 s a E ii 15 M « 5- n S 5 i o O o" 1 s i IFIP TC3 o g IFIP 6.1 ti s S -i I i = -S, 1 s §> 3 f f 11 O o i g 3 11 g š a 8 O CZ) 6 1 S & Č2 ,-r S 1 ■S >- S S S 3 g I & I of 6 ra oZ 1" 6 ra 1 g g 1 f o ra o V) O) 1 f I ti S? I 1 O I Š > ra x: 1 1 1 M M 1 1 i g 5 T—1 s s o g g g g 8 g 8 8 8 8 8 8 8 8 8 8 s S S CN S S S S jT jr oi §-- Včlanite se v Slovensko društvo INFORMATIKA. Članarina SIT 5.200,- (plačljiva v dveh obrokih) vključuje tudi naročnino za revijo Uporabna informatika. Študenti imajo posebno ugodnost: plačujejo članarino SIT 2.400,-in za to prejemajo tudi revijo. Izpolnjeno Naročilnico ali Pristopno izjavo pošljite na naslov: Slovensko društvo INFORMATIKA, Vožarski pot 12,1000 Ljubljana. Lahko pa izpolnite obrazec na domači strani društva http://www.drustvo-informatika.si NTERNET ■ INTERNET ■ INTERNET ■ INTERNET ■ INTERNET ■ INTERNET Vse člane in bralce revije obveščamo, da lahko najdete domačo stran društva na naslovu: http://www.drustvo-informatika.si Obiščite tudi spletne strani mednarodnih organizacij, v katere je včlanjeno naše društvo: IFIP: www.ifip.or.at ECDL: www.ecdl.com CEPIŠ: www.cepis.com NTERNET ■ INTERNET ■ INTERNET ■ INTERNET ■ INTERNET ■ INTERNET Naročilnica Naročam(o) revijo UPORABNA INFORMATIKA [J s plačilom letne naročnine SIT 4.600 Q ......izvodov, po pogojih za podjetja SIT 13.800 za eno letno naročnino in SIT 8.900 za vsako nadaljnjo naročnino Q po pogojih za študente letno SIT 2.000 Naročnino bom(o) poravnal(i) najkasneje v roku 8 dni po prejemu računa (ime in priimek, s tiskanimi črkami) (podjetje) (davčna številka) (ulica, hišna številka) (pošta) Datum: Podpis: X - UPORABNA INFORMATIKA ISSN 1318-1882 Ustanovitelj in izdajatelj: Slovensko društvo Informatika, 1000 Ljubljana, Vožarski pot 12 Glavni in odgovorni urednik: Mirko Vintar Uredniški odbor: Dušan Caf, Aljoša Domjan, Janez Grad, Andrej Kovačič, Tomaž Mohorič, Katarina Puc, Vladislav Rajkovič, Ivan Rozman, Niko Schlamberger, Ivan Vezočnik, Mirko Vintar Tehnična urednica: Katarina Puc Oblikovanje: Zarja Vintar, Dušan Weiss, Ada Poklač Naslovnica: Bons Tisk: Prograf Naklada: 700 izvodov Revija izhaja četrtletno. Cena posamezne številke je 3.500 SIT. Letna naročnina za podjetja SIT 13.800, za vsak nadaljnji izvod SIT 8.900. Letna naročnina za posameznika SIT 4.600, za študente SIT 2.000. SIOUG in Oracle iVVorld konferenca. Uporabniške rešitve Partnerske aplikacije Računalniške delavnice ef Managerski forum Najava Oracle 9i iDevelop konferenca Grand hotel Emona Portorož 23. - 26. september 2001 Prijave in informacije na: www.oracle.si in www.sioug.si ORACLE' SOFTVVARE POVVERS THE INTERNET1" Cisco Svstems COMPACl EmPOWERING THE Internet Generation™ SIOUG SLOVENSKO UFISTVC UPCFABNIKCV PROGRAMSKE OPREME OFABLE STROKOVNE RAZPRAVE Tomaž Mohorič, Marjan Krisper O razširljivem označevalnem jeziku XML in njegovi uporabi Maja Miličic Zadovoljstvo uporabnikov s kakovostjo storitev v bančnem kartičnem poslovanju Damjan Vavpotič, Rok Rupnik Poslovni portali Tomaž Dogša Splošni koncept načrtovanja testnih primerov POROČILA Otto Spaniol Čas za konvergenco REŠITVE Nadja Damij Uporaba metodologije TAD za razvoj aplikacije Tranzit