 |


Miro Lozej, MAOP Računalniški inženiring d.o.o.
Objekti so najprej v glavi
Ob razvoju tehnologije uporabniki zahtevajo rešitve, ki jih z objektnim
pristopom gradimo najlažje. Objektno usmerjena razvojna orodja podpirajo koncepte,
v veliki meri pa jih lahko koristno upoštevamo tudi ob drugih razvojnih orodjih.
V prispevku bomo opisali izkušnje, ki smo jih na MAOP pridobili pri razvoju poslovnih
aplikacij z orodji Oracle Designer/2000 in Developer/2000, in pri tem uporabili
nekatera načela objektne usmerjenosti.
Matevž Rostaher, Andrej Kline, Peter Repinc, , OdaTeam d.o.o.
Proces skupinskega razvoja kakovostnih objektnih in komponentnih aplikacij (Extreme Programming)
V podjetju OdaTeam se že celo desetletje uspešno ukvarjamo s projekti, ki temeljijo
na objektni tehnologiji. Objektna tehnologija sama še ne zagotavlja uspeha. Zelo pomembni
so odnosi, ki vladajo v razvojni skupini. Ideja ekstremnega programiranja temelji na udarni
skupini, ki goji skupinsko zavest in razmišljanje ter si sama postavlja pravila. Za delo v
skupini je pomembna dobra komunikacija tako med stranko in razvijalci kot med razvijalci
samimi. Prav tako pomembno je tudi testiranje, ki nam omogoča, da preverimo ali je skupina
uspešna. Če želimo delati udarno je ključnega pomena tudi enostavnost. Razvijamo natančno to
kar stranke potrebujejo in ne funkcionalnosti, ki bo morda potrebna v prihodnosti. Zgoraj
naštete cilje dosežemo s t.i. lahkim procesom razvoja, ki se izogiba nepotrebni dokumentaciji
in drugim balastom ter uvaja metode dela kot so skupinsko lastništvo izvorne kode,
programiranje v parih in uporaba vzorcev. Naše izkušnje v zadnjem letu so pozitivne.
Zvišala se je kakovost produktov in zadovoljstvo razvojne skupine.

Marko Krajnc, Andrej Krajnc, David Gorišek
XML - stari prah ali novi adut
Extensible Markup Language (XML) je novorojenec, katerega starši živijo že desetletja.
Kljub delnemu uspehu njegovih prednikov mu mnogi napovedujejo svetlo prihodnost in so ga
krstili za standard standardov. Prispevek obravnava poglavitne prednosti novinca, ki mu
omogočajo izpolnitev svetlih napovedi, hkrati pa predstavlja področja na katerih bo XML
odigral najpomembnejšo vlogo.
Robert Leskovar, FERI Maribor, Inštitut za informatiko
V novo tisočletje z Javo in XML
Svetovni splet predstavlja ocean podatkov, ki so v veliki večini predstavljeni brez
znanja o njihovem pomenu. Ob današnjih potrebah in težnjah po sodelovanju organizacij
in ljudi enakih strok, po sodelovanju podjetij v globalnem elektronskem poslovanju in
po krojenju Spletnih storitev ter izdelkov glede na želje in potrebe posameznikov so
stare tehnologije, ki so vezane v veliki meri na proizvajalca, preokorne in neprimerne.
Verjetno je v tem razlog, da so prihod programskega jezika Java in jezika Extensible
Markup Language (XML) spremljali navdušenje, odobravanje, pretiravanje in delovna
vnema številnih podjetij, organizacij in posameznikov. V prispevku bomo pogledali,
kakšne prednosti prinaša XML, kakšne so potrebe današnjih Spletnih aplikacij in kako
jim lahko zadosti, ujemanje XML in Jave ter princip dela v Javi z dokumenti v XML.
Andrej Koman, Matjaž Trtnik, Robert Zevnik, Marko Šmid, Marko Kejžar, SRC INFO d.o.o.
Kaj je novega v svetu Jave
Ena od glavnih značilnosti uspešnih podjetij, ki si želijo zagotoviti prednost v boju
s konkurenco je tudi uporaba sodobnih tehnologij. Prispevek opisuje novosti na področju
JAVA tehnologije in projekt, na katerem smo jih uporabili pri enem od naših naročnikov.
Projekt predstavlja hkrati tudi enega od možnih načinov prehoda iz starih aplikacij tipa
odjemalec/strežnik na spletno arhitekturo.

Žiga Vaupot, Oracle Software d.o.o.
Java v podatkovni bazi
Oracle je z novo različico svoje podatkovne zbirke Oracle8i naredil zelo velik korak k
uresničitvi svoje vizije internet računalništva. Oracle8i je danes na voljo in omogoča
dostop do podatkov preko standardnih programskih vmesnikov, kot so različni tipi JDBC
vmesnikov, ki so namenjeni različnim tipom uporabnikov. V Oracle8i je prvič implementiran
nastajajoči standard SQLJ, ki bistveno poenostavlja dostop do podatkov iz Java aplikacije
do relacijske baze podatkov. Osrednji del Oracla8i je vgrajena Java VM, ki omogoča zelo
učinkovito, varno in prilagodljivo izvajanje Java aplikacij v podatkovni bazi. Oracle
je v okviru Java VM zagotovil podporo izvajanju več programskim modelom, kot so Java
shranjene procedure v bazi, Enterprise JavaBeans in CORBA objekti v bazi, ter Java
Servlets. V Oracu8i je podprt dostop do baze tudi preko drugih protokolov, kot sta
na primer HTTP in IIOP in ne več izključno z uporabo protokola Net8. Pri razvoju
Java VM in ostalih elementov Oracle JServerja, Oracle sledi vsem dogovorjenim
standardom in implementira svoje rešitve v skladu z njimi.
Boris Cimperman, Dominik Roblek, Marand d.o.o.
Sodobni aplikacijski strežniki
V prispevku so opisani glavni koncepti modernih aplikacijskih strežnikov. Predstavljena
je kratka zgodovina razvoja aplikacijskih strežnikov. Zaradi velikega števila ponudnikov,
so v glavnem delu prispevka predstavljeni kriteriji, ki naj bi vplivali na odločitev o
izbiri produkta. Opisanih je več ponudnikov aplikacijskih strežnikov ter njihovih produktov,
na koncu pa je izvršena krajša primerjava.
Matjaž B. Jurič, FERI Maribor, Inštitut za informatiko
Objektne transakcijske storitve modela CORBA
Vloga objektnih transakcijskih storitev je neprecenljiva pri izgradnji porazdeljenih
objektnih informacijskih sistemov, pri razširitvi obstoječih sistemov in pri
spletno-orientiranih aplikacijah. V prispevku je opredeljena vloga transakcijskih
storitev napram sorodnim tehnologijam. Prikazana je arhitektura in način delovanja
transakcijskih storitev modela CORBA in njihova povezava z obstoječimi sistemi. Narejen
je pregled najpomembnejših implementacij omenjenega standarda in prikazani so kriteriji
za njihovo izbiro.

Simon Beloglavec, FERI Maribor, Inštitut za informatiko
Prednosti in pasti ogrodij poslovnih objektov na primeru spletne aplikacije SFCash
Članek podaja izkušnje pridobljene na projektih, kjer je razvoj informacijskega sistema
temeljil na uporabi objektno orientiranih poslovnih ogrodij. Uporaba ogrodja pri razvoju
pomeni preskok v razvojni paradigmi in zahteva pridobitev novih znanj in izkušenj. Če govorimo
v kontekstu spletnega informacijskega sistema, se ne moremo izogniti spoznavanju Jave in
objektno orientiranega jezika za modeliranje UML. Za razvijalce obstoječih informacijskih
sistemov to pomeni sprejetje novih načinov dela in skoraj praviloma popolno nov nabora
načrtovalskih in razvojnih orodij. Vodja projekta pa mora pri določanju časovnega plana
upoštevati množico dejavnikov, ki se pojavljajo z razvojem same Jave in spletnih tehnologij
in v dosedanjih projektih niso bili toliko očitni. Namen članka je opozoriti na nekaj teh
dejavnikov in opozoriti na prednosti ter slabosti, ki jih prinaša preskok paradigme.
Franjo Pustoslemšek, Anton Rozman, Matjaž Terglav, EMG d.d.
Izkušnje z razvojem in uporabo poslovnih objektov v Javi
Objektna tehnologija in Java ponujata edinstveno priložnost tistim podjetjem v IT
industriji, ki hočejo iti v korak s hitro rastočo tehnologijo in hitrimi spremembami
na tržišču zahtev. S tehnološke perspektive je potreba po neodvisnih rešitvah glede
na strojno opremo in platformo večja kot kadarkoli prej. Prav tu igra Java zelo
pomembno vlogo. Java dokazuje, da jo lahko uporabljamo za projekte, kjer se maksimalno
približamo zahtevam podjetij ali ustanov glede na njihove posebnosti. IBM SanFrancisco
lahko močno zmanjša trud, potreben za izgradnjo novih aplikacij.
Andrej Krajnc, Bojan Štok, Marjan Vaupotič, Institut informacijskih znanosti Maribor
Oblikovanje poročil z uporabo objektne in XML tehnologije
V času informacijske dobe postaja hitro in kvalitetno pridobivanje informacij vedno
bolj pomemben dejavnik za uspešnost organizacij. Novim razmeram se morajo prilagoditi
tudi sistemi za generiranje poročil, ki morajo vključiti čimveč prednosti, ki jih
prinašajo nove tehnologije, kot so internet, java, XML, porazdeljeni sistemi (CORBA,
DCOM, Enterprise JavaBeans) itd. Uporaba objektne tehnologije in tehnologije XML nam
prinaša številne prednosti, ki jih prej nismo bili deležni. V sklopu programske
opreme COBISS3 je bil razvit tudi segment COBISS3/Izpisi, ki se ukvarja z
definiranjem in kreiranjem izpisov. V procesu prenove programske opreme COBISS
je bila implementirana prva verzija segmenta COBISS3/Izpisi, ki temelji na uporabi
objektne tehnologije in tehnologije XML.




David Gorišek, iFace AG
Zagotavljanje trajnosti Java objektov
Prispevek predstavlja možnosti shranjevanja Java objektov v podatkovne baze in
različne pristope k implementaciji trajnih objektov. Poudarek prispevka je na interakciji
med programerjem in podatkovno bazo. Na kratko so predstavljeni standardni Java vmesniki
za dostop do podatkov v relacijskih in objektnih podatkovnih bazah, kot so JDBC, SQLJ in
ODMG Java jezikovna povezava. Glede na to, da ima izbrana podatkovna baza in način
interakcije z njo daljnosežen vpliv tako na arhitekturo celotnega sistema, kot tudi
na potek projekta, je potrebno pri odločitvi upoštevati več vidikov. Potrebno je
natančno definirati pravila za preslikavo objektnega modela v podatkovno bazo in
določiti programski vmesnik za interakcijo s podatkovno bazo. Če tega predhodno ne
definiramo bo postal razvoj vsake večje aplikacije z njeno rastjo vedno bolj nepregleden,
njeno vzdrževanje pa bo zelo drago.
Janko Mivšek, EraNova d.o.o.
Zanesljivost in razpoložljivost objektnih sistemov
Objektni sistemi, ki temeljijo na troslojni arhitekturi, zahtevajo veliko zanesljivost
drugega sloja - poslovnega modela ter tretjega sloja - podatkovne baze, saj v primeru izpada
kateregakoli izmed njih izpade celoten sistem. V prispevku bomo predstavili naše rešitve za
povečano odpornost proti izpadom obeh slojev na primeru sistema AIDA/Web - spletnega strežnika
ter ogrodja za dinamične Internet/Intranet sisteme. AIDA/Web teče v okolju Smaltalk, ki je
tesno povezan z objektno podatkovno bazo Gemstone. Prikazati želimo tudi ideje za še večjo
razpoložljivost sistemov s povezovanjem le-teh v gručo (cluster), samodejnim prenašanjem
poslov med njimi v primeru izpadov (failover) ter samodejnim razporejanjem poslov glede na
obremenitev (load balancing).
Milan Gabor, FERI Maribor & HERMES SoftLab d.d.
Preverjanje varnosti računalniških sistemov ali pasti in nevarnosti omrežnega računalništva
V članku je predstavljen problem varnosti računalniških sistemov in način kako preveriti,
ali je računalniški sistem varen. Predstavil bom tudi pričakovanja za letošnje leto in
napovedi glede varnosti računalniških sistemov. Poleg tega se bom dotaknil problema
komercialnih varnostnih orodij in na drugi strani orodij, ki so dostopna v celoti,
torej s celotno izvorno kodo.

Bojan Štok, Robert Vehovec, Marko Krajnc , Institut informacijskih znanosti Maribor
Spletna arhitektura programske opreme COBISS3
V članku je predstavljena spletna arhitektura programske opreme COBISS3. Predstavljeno
je tudi ogrodje, ki smo ga razvili in uporabili pri razvoju programske opreme COBISS3.
Ogrodje na eni strani programerja razbremenjuje ponavljajočih se del, na drugi strani
pa končnemu uporabniku nudi enoten uporabniški vmesnik za vse dele sistema. Pri razvoju
aplikacije je potrebno opisati metamodel aplikacije, ki ga ogrodje uporablja za
avtomatsko oblikovanje uporabniškega vmesnika, navigacijo, zaklepanje, odpiranje
in zapiranje transakcij ter dostop do porazdeljenih objektov.
Mojca Indihar Štemberger, Jurij Jaklič, Ekonomska fakulteta Ljubljana
Vloga spletnega dokumenta v troslojni arhitekturi
V praksi se je pri razvoju informacijskih sistemov objektni pristop s svojimi
prednostmi, ki jih prinaša, že dodobra uveljavil. Prav tako se širi uporaba troslojne
arhitekture informacijskih sistemov, ki jo v večini primerov implementiramo z uporabo
spletne tehnologije. Vendar je prav pri spletnih aplikacijah in dokumentih uporaba
objektnega pristopa še vse preskromna. Za modeliranje spletnih aplikacij je možno in
koristno uporabiti jezik UML z nekaterimi razširitvami. Novi standardi na področju
tehnologije spleta, kot so HTML 4.0, CSS, XML in DOM, bodo prinesli mnoge pozitivne
spremembe tudi pri razvoju in vzdrževanju spletnih dokumentov.
Štefan Trčko, IBM Slovenija d.o.o., Matija Drobnič, Alcad d.o.o.
Ogrodje za aplikacije elektronskega poslovanja in WebSphere
Internet je od svojih začetkov prehodil dolgo pot od vojaškega projekta prek akademskih
okolij do svetovnega fenomena, danes pa predstavlja osnovo za nov tehnološki preskok. V
svetu in pri nas podjetja pri načrtovanju in razvoju informacijskih sistemov vse bolj
sprejemajo internetne tehnologije. Pri tem nova troslojna arhitektura informacijskih
sistemov zamenjuje dosedanji model odjemalec-strežnik, tako da vse bolj govorimo o
modelu odjemalec-storitev. Del poslovne logike se pri tej arhitekturi prenese na vmesni
sloj, aplikacijski strežnik, s čimer povečamo robustnost in razširljivost sistema. Kot
programski jezik za razvoj poslovnih aplikacij na aplikacijskem strežniku se spričo
prednosti, ki jih prinaša njena predmetna usmerjenost in prenosljivost med različnimi
platformami v zadnjem času vse bolj uveljavlja java.
Matej Trampuš, Matjaž Trontelj, ZASLON d.o.o.
Odprte tehnologije - osnova razvoja sodobnega elektronskega poslovanja
Za sodobne sisteme elektronskega poslovanja je značilno: široka paleta podprtih
distribucijskih kanalov, uporaba odprtih standardov in povezljivost, visoka stopnja
varnosti in zaščite, porazdeljenost in večkrat tudi decentraliziranost, tesno povezovanje
z drugimi informacijskimi sistemi. Odprte tehnologije so osnova, ki omogoča razvoj in
uporabo takih rešitev. V prispevku so z vidika medsebojnega povezovanja in dopolnjevanja
opisane spletne tehnologije, komponento objektni model gradnje aplikacij, mehanizmi za
dostop do različnih virov podatkov, uporaba XMLja, povezovanje brkljalnikov in klasičnih
aplikacij, digitalni certifikati, certifikatski strežniki ter pametne kartice. V prispevku
je poudarek dan na praktičnem znanju in izkušnjam s tega področja, ki so jih avtorji
pridobili pri razvoju sistemov za elektronsko bančnitvo.

Aleš Živkovič, Ivan Rozman, FERI Maribor, Inštitut za informatiko
Značilnosti uspešnih projektov
Vedno znova se srečujemo z zastrašujočimi podatki o neuspešnosti programskih projektov.
Razgrnili bomo rezultate, dobljene z izvedeno anketo, v kateri je bilo zajetih 106
programskih projektov, izvedenih v slovenskem prostoru in poskušali ocenit upravičenost
do zaskrbljenosti. Nadalje bomo poiskali tiste dejavnike, ki ločijo uspešen projekt od
neuspešnega in spregovorili o merilih uspešnosti. Ker na vseh področjih iščemo možnosti
izboljševanja, je tudi na področju projektnega vodenja, le to aktualno in zaželeno. S
vzpostavitvijo modela, ki omogoča ovrednotenje projekta pri določenem naboru parametrov
in zbiranjem metričnih vrednosti za izvedene projekte lahko pripomoremo k boljšim
rezultatom, manjšemu tveganju in večjemu deležu uspešnih zaključkov.
Robert Prebil
Vpliv obvladovanja zahtev na uspešnost projektov
Znano je dejstvo, da je so projekti v drugih industrijskih panogah precej bolj uspešni
kot projekti razvoja programske opreme. Ali drugače povedano, statistike pravijo, da je
verjetnost, da bo vaš IT projekt predrag, da bo zamujal in da ne bo zadovoljil pričakovanj
vašega naročnika, približno 3-krat večja, kot pa, da bo projekt uspešen. Raziskave
navajajo za to več vzrokov. Eden izmed njih je izvajalčevo slabo obvladovanja tako
naročnikovih, kot pričakovanj, želja in zahtev končnih uporabnikov. Sestavek osvetljuje
problematiko obvladovanja zahtev in poskuša odgovoriti na vprašanje, koliko lahko uspešno
obvladovanje zahtev izboljša možnosti za uspeh projektov razvoja programske opreme.
Ninoslav Šimunović, TIS Zagreb
Novi pristopi k projektom z novimi tehnologijami
Pri projektih z uporabo nove tehnologije (to delo govori o novih tehnologijah za razvoj
aplikacij) najpogosteje ne dosežemo želenih rezultatov. Morda pri projektih ni le tehnologija
ključ uspeha. Zelo pogosto moramo hkrati z novo tehnologijo menjati tudi sebe in svoje
okolje, da bi dosegli želene rezultate. Menjati tehnologijo ni lahko, menjati sebe in
okolje pa je najpogosteje nemogoče. Projekti, ki jih začenjamo z novimi tehnologijami
so običajno pilot projekti, ki nam lahko dajo grobo sliko, kako bi tehnologija pripomogla
k reševanju specifičnih problemov. Realnost kaže, kako so lahko takšni projekti dober
pokazatelj uporabe tehnologije. Še vedno je veliko število aplikacij narejenih z obstoječo
(legacy) tehnologijo in gotovo jih je nemogoče v trenutku zamenjati. Praksa kaže, kako
je večina današnjih projektov v bistvu kombinacija obstoječe in nove tehnologije in da
pristopi k takšnim projektom zahtevajo določeno specifičnost.

Tomaž Domajnko, FERI Maribor, Inštitut za informatiko
Vzorci in Java
Kljub temu, da objektna tehnologija vzpodbuja delo na višjih nivojih abstrakcije,
pa se največkrat ne zadevamo, da te pristope uporabljamo tudi na nivoju programske kode.
V prispevku bomo prikazali, da predstavlja uporaba naprednih pristopov k razvoju enega
od osnovnih načinov dela s programskim jezikom Java. Pravzaprav edini način. Pokazali bomo,
da lahko skozi delo z jezikom Java identificiramo mnoge vzorce, ki so sicer v literaturi
opisani kot element ponovne uporabe na najvišjem nivoju abstrakcije. V sklopu prispevka
bomo prikazali, kako lahko tudi manj izkušeni razvijalci izkoristijo to lastnost jezika
in s tem produktivneje in natančneje rešujejo problemske situacije.
Uroš Grajfoner, Matevž Rostaher, OdaTeam d.o.o.
Testiranje objektnih programskih sistemov
Objektna tehnologija nudi nove možnosti pri gradnji informacijskih sistemov, po
drugi strani pa povzroča večjo nedoločenost pri definiciji tako vhodnih podatkov kot
rezultatov. Zagotavljanje kakovosti je torej pred novimi izzivi. Na voljo je veliko
strategij, ki dajejo smernice za pisanje kakovostne kode z izogibanjem nepotrebnih
napak. Prav tako obstaja kopica metodologij in strategij testiranja, ki so v svetu
dobro znane. V praksi pa se uporablja samo majhen delež le-teh, saj so večinoma zelo
zapletene in časovno zelo zahtevne. Produkcijski termini in konkurenca terjajo od
proizvajalcev vedno krajše razvojne cikle, zato se povpraševanje omejuje na hitre
in enostavne metodologije, ki dajejo oprijemljive rezultate. Za ta prispevek sem
izbral nekaj najatraktivnejših testnih metodologij in strategij izboljševanja
kakovosti kode, na kratko pa sem predstavil tudi proces testiranja v našem podjetju.
Igor Zaverski, IZUM Maribor, Tomaž Dogša, FERI Maribor
Ortogonalna klasifikacija napak programov v C++
V prispevku je predstavljena klasifikacija napak, ki so značilne za objektno
orientirane programe v C++. Obravnavana je tudi vloga taksonomije napak pri testiranju
in tudi v drugih fazah razvoja programske opreme. Za primerjavo so kratko predstavljene
nekatere obstoječe taksonomije napak, med katerimi je najbolj znana Beizerjeva, ki pa
razvrščajo le napake v tradicionalnih programih. Opisana so tudi priporočila za
tvorjenje lastnega taksonomijskega sistema.

Generalni pokrovitelj
|
Nosilni pokrovitelji
|
|