Povzetki prispevkov

S R E D A , 15. junij 2005

9:00
Otvoritev konference
 

prof. dr. Ivan Rozman,
rektor Univerze v Mariboru

prof. dr. Igor Tičar,
dekan Fakultete za elektrotehniko, računalništvo in informatiko

mag. Jože Zrimšek

v.d. generalnega direktorja, Ministrstvo za visoko šolstvo znanost in tehnologijo, Direktorat za informacijsko družbo
9:20
Vabljeno predavanje

Model Driven Development – The Role of Models in Software Engineering
Dave Thomas

It has taken decades to get consensus that software engineering is really a modeling activity in which models are successively refined from requirements. Unfortunately it appears at times that the software press wants to divide the world into MDD believers - UML 2, MDA, Software Factory and disbelievers – Agile, DSL instead of hearing the real message – software is about models, lots of different kinds expressed in different ways.

The recent emphasis on model engineering builds on numerous best practices from different software engineering communities. Research progress in meta-modeling and model transformation promises powerful tool support for model definition and refinement.

In this talk we discuss our experiences using MDD to build a wide variety of software from embedded systems to OLTP applications. We also discuss our experience building and using MDD tools to support development. We focus on the role of models in software engineering and discuss the benefits as well as limitations of different models, modeling languages and tools.

   
10:45 - 12:15
Storitvene arhitekture

Storitvena arhitektura – zgolj kompozicija spletnih storitev?
Matjaž B. Jurič

V prispevku se bomo ukvarjali s storitvenimi arhitekturami (SOA – Service Oriented Architecture) in poskušali odgovoriti na vprašanje, kaj storitvena arhitektura je, kako se razlikuje od obstoječih arhitektur informacijskih sistemov, katere koncepte uporablja in osvetlili pomen storitvenih vodil (ESB – Enterprise Service Bus). Proučili bomo dva pristopa k razvoju SOA: pristop od spodaj navzgor, ki temelji na spletnih storitvah in pristop od zgoraj navzdol, ki temelji na definiciji poslovnih procesov na osnovi kompozicije storitev z uporabo jezika WS-BPEL ( Business Process Execution Language).

Koncepti in semantike storitvenih pogodb
Matevž Gačnik

Koncept storitvene pogodbe predstavlja osnovo in skupni imenovalec za izvorno in ponorno končno točko, torej oba konca komunikacije. Definiramo ga s pogodbo obnašanja, ki definira izmenjevalni sporočilni vzorec ali način komunikacije ter s podatkovno pogodbo, ki definira tipe, ki se v komunikaciji prenašajo. Storitvene pogodbe predstavljajo sporočilni filter in omogočajo gradnjo javne fasade v obliki programskega vmesnika. Prispevek opisuje mehanizme in možne definicije različnih storitvenih pogodb, ki se nahajajo v tehnologiji Microsoft »Indigo«

Modeliranje in orkestracija procesov za storitveno usmerjeno arhitekturo
Tomaž Poštuvan

Storitveno usmerjena arhitektura kot temelj za ohlapno povezane sisteme predstavlja način, kako lahko različne dele poslovnih procesov povezujemo med seboj v celoto, pri čemer so posamezni deli med seboj neodvisni, tečejo lahko na različnih sistemih, povezave med njimi pa so standardizirane. Prinaša kar nekaj prednosti – poslovno programje lahko razvijamo in testiramo po korakih, posamezne gradnike (spletne storitve) brez težav ponovno uporabimo, nov poslovni proces pa zgradimo brez večjega truda in stroškov.
BPEL postaja de-facto standard za ohlapno povezovanje storitev pri integracijskih procesih. Oracle BPEL Process Manager je orodje, ki podjetjem omogoča modeliranje in izvajanje poslovnih procesov, ki se naslanjajo na standard BPEL ( Business Process Execution Language ). Na ta način lahko proces integracije posameznih storitev precej skrajšamo, ob istočasnem zmanjšanju stroškov. Sestavljeno je iz BPEL Designerja, kjer na grafični način BPEL procese sestavimo in povežemo med seboj, strežnika, ki služi poganjanju BPEL procesov, ter spletnega vmesnika, ki je namenjen upravljanju in razhroščevanju nameščenih procesov.

   
13:15
Vabljeno predavanje

Lean Process Management in Software Engineering – an Oxymoron
Giancarlo Succi

Lean process management has been a common buzzword among researchers and consultants since the mid 80s. Some of its tenets have been extensively preached also to software engineers. However, it ideas have emerged only with the pioneering work of Boehm.

Some of the ideas of lean management appear quite obvious to software engineers, other not so much. Measurement and process improvement are among the most controversial: they remind people of very heavy weighted processes.

However, there are ways to implement such concepts in certain lightweight environment, ensuring high quality of the development, parsimonious usage of resources, and fast turnaround time. It is not easy, though, to determine when such implementation is feasible.

   
14.30 - 16:15
Agilne metode, inteligentne storitve

Sociološki vidiki uporabe ekstremnega programiranja
Andrej Kline

Namen prispevka je predstaviti sociološko plat uporabe metodologije XP pri razvoju poslovnih aplikacij. Torej dejavnikov, ki se v okvirjih discipline in ekstremnega sodelovanja posameznikov v skupini odrazijo na posamezniku in na skupini.

Poizkusil bom odgovoriti na naslednja vprašanja, ki so se mi porodila skozi spremljanje faz uvajanja in preoblikovanja metodologije:

Ustreznost metodologije glede na velikost razvojne skupine?

Po definiciji obvelja metodologija za skupine do 10 uporabnikov. Skupino velikosti 30+ razvijalcev sicer lahko »razkosamo« na pod-skupine po 10 članov, vendar to ne reši skupnega:

  • Izvajanja in vzdrževanja avtomatskih testov
  • Projektnega planiranja
  • Prenosa znanja o celotnem sistemu

Identifikacija, pripadnost XP-ju?

Pripadnost posameznika manjši skupini je močnejša kot v večji skupini. Nasploh pridejo vrednote XP-ja dosti bolj do izraza v manjših skupinah; pogum, komunikacija, odziv, preprostost.
Samo vprašajmo se: »Kaj je vrednota preprostosti, če jo je v večji skupini težko dosegati?«

Podpora uporabe?

Na tem mestu je potrebno ponovno poudariti sprejemanje metodologije s strani vseh projektnih strani, tudi projektnega managementa. Če s strani le tega ni zaupanja in podpore, lahko pride do nesoglasij znotraj razvojne skupine.

Spremembe, preoblikovanje metodologije.

Niso enostavne. V večji skupini nastopi mnogo interesov in pristopov, ki jih je potrebno usklajevati in razsojati z veliko mero opreznosti in psihologije, da se posamezniki v skupini ne počutijo užaljene.

Razmišljanja bom podkrepil z izkušnjami skupine OdaTeam, kot smo jih pridobili in kritično ocenili v zadnjih 5+ letih.uporabe metodologije.

 

Neprekinjeno testiranje aplikacij
Jernej Srebrnič, Peter Brajak

Neprekinjena integracija, je proces pri katerem sproti preverjamo če aplikacija deluje. Ko razvijalci oddajo svojo kodo v sistem za nadzor verzij, se preveri prevajanje in sprožijo testi. Razvijalcem pa se sproti posreduje poročilo o morebitnih težavah. Na ta način se hitro ugotavljajo možni problemi v sistemu. Pomembnost integracije narašča z velikostjo ekipe in kompleksnostjo aplikacije. CruiseControl je okolje za neprekinjeno integracijo. Med ostalim vsebuje možnost obveščanja preko elektronske pošte, izvajanja Ant skript in podporo za razne sisteme za nadzor verzij. Za uspešno testiranje aplikacije je pomembno, da vemo kako obsežni so testi. Obsežnost testov ne pomeni število testov, temveč koliko kode programa preverjajo. To je delež pokritosti. Cobertura je eno od orodij, ki meri pokritost kode. Med izvajanjem testov pregleduje kateri del programa se je izvedel. Končni produkt je poročilo, ki nam pove pokritost po vrsticah programa.

V tem članku bomo predstavili različne koncepte in način izvajanja neprekinjenega testiranja s pomočjo orodij CruiseControl in Cobertura. Poseben poudarek bo na izkušnjah in meritvah pri preverjanju kvalitete testov in ugotavljanjem kateri deli kode so potrebni dodatnega testiranja.

Ogrodje za agilni razvoj programske opreme za vgrajene sisteme
Boris Benko

Agilne metodologije za razvoj informacijskih sistemov so pokazale svoje prednosti na področju razvoja programske opreme. Zmožnosti agilnega razvoja se čedalje bolj uporabljajo v domeni vgrajenih sistemov (mobilne naprave, transportni sistemi, medicinske naprave), vendar so, predvsem varnostni, kriteriji bistveno strožji (standardi IEC 61508, DO-178b). Ogrodje za agilni razvoj programske opreme AGILEKapion postavlja smernice za razvoj programske opreme na področju vgrajenih sistemov, s poudarkom na telekomunikacijskih sistemih.

OSGi implementacija kot temelj nadzora in upravljanja s storitvami inteligentnega doma
Dejan Jovanović

Prispevek predstavlja standard OSGi kot temelj storitvene platforme, ki omogoča poenoten razvoj, namestitev in upravljanje življenjskega cikla programske opreme vgradnih sistemov: tako strežnikov nasploh, predvsem pa hišnih strežnikov in rastočega števila programirljivih krmilnikov v vsakdanjih napravah. Dodan je opis mrežne arhitekture sistema konkretne realizacije storitvene platforme na osnovi OSGi.

   
16:30 - 18:15
Izbira in uporaba orodij/ogrodij


Andrej Krajnc


mag. Bojan Štok

Razvojna okolja kot ogrodja
Andrej Krajnc, Ciril Petr, Gorazd Kos, Bojan Štok

Uporaba integriranih razvojnih okolij (integrated development environment oz. IDE) za programski jezik java je v zadnjih letih šla skozi precejšnje spremembe. Dolgo časa se je kakovost razvojnih okolij ocenjevala predvsem glede na vgrajeno funkcionalnost. Večina največjih ponudnikov v preteklosti (Borland JBuilder, IBM VisualAge, Symantec VisualCafe, Sun Java Studio, itd.) je produkte razdelila v več kategorij, pri kateri so najcenejši vsebovali najmanj funkcionalnosti, največ funkcionalnosti pa smo bili deležni le pri najdražjih orodjih. Pred nekaj leti se je uveljavil trend uporabe orodij istega proizvajalca. Tako so tisti javanski razvijalci, ki delajo na Oraclu, začeli uporabljati Oracle JDeveloper, IBM-ovi uporabniki so začeli uporabljati IBM WebSphere Studio, BEA uporabniki so začeli delati z Bea Weblogic Workshop, Sun je začel ponujati Sun Java Studio, itd. Na ta način so lahko proizvajalci razvojna okolja tesno integrirali z drugimi produkti, ki jih ponujajo (podatkovne baze, EJB aplikacijski strežniki, sporočilni sistemi itd.), kar bi naj povečalo produktivnost, zmanjšal pa naj bi se čas in strošek uvajanja (imamo orodja zgolj enega proizvajalca).

Ena od glavnih težav tradicionalnih okolij pa je bila razširljivost. Nove želene funkcionalnosti je bilo sicer možno dodajati, vendar je bilo to relativno težko. Že nekaj časa je jasno, da je potrebno vzpostaviti enostaven način razširjanja razvojnih okolij. V zadnjem času se je pojavilo kar nekaj novih razvojnih okolij (npr. IntelliJ IDEA, Eclipse, NetBeans), ki temeljijo na uporabi dodatkov (plug-in), s katerimi lahko na relativno lahek način razširimo razvojno okolje. Podporo za dodatke so vključila tudi nekatera tradicionalna orodja, npr. v JBuilder je mogoče dodajati dodatke z uporabo orodja OpenTools.

Vedno večja popularnost teh novih orodij in vedno večje število dodatkov kaže na to, da je to prav tisto, kar si razvijalci želijo. Tudi zaradi tega so v okviru Java Community Process ustanovili delovno skupino, ki dela na definiranju standardnega opisov dodatkov za razvojna okolja. Na ta način bo možno iste dodatke uporabiti v različnih razvojnih okoljih. Na novodobna razvojna okolja torej ne moremo gledati zgolj kot na zaključene produkte, temveč so predvsem razširljiva ogrodja, ki jih lahko razvijalci prilagodijo svojim potrebam v veliko večji meri, kot je to bilo možno do sedaj.


Uroš Jurglič


Matej Pangerc

Ogrodje za izgradnjo večuporabniških interaktivnih okolij s primerom praktične aplikacije
Uroš Jurglič, Matej Pangerc

Komunikacijsko ogrodje, ki smo ga v Parsek Systems razvili na platformi Java, krmili večuporabniška okolja z različnimi možnimi vmesniki in tipi interakcij v realnem času. Arhitekturno je zgrajeno iz treh plasti, ki abstrahirajo različne ravni procesiranja.

rvo plast predstavlja nizkonivojski komunikacijski strežnik, ki skrbi za zanesljiv prenos podatkov med uporabniki in zagotavlja skalabilnost komunikacijskega sistema, pri čemer se opira na sodobne prijeme razvoja tovrstnih rešitev kot so asinhrona komunikacija, multipleksiranje komunikacijskih zahtevkov, bazen niti ipd. Na njem temelji lahko in gibko aplikacijsko ogrodje za izgradnjo večuporabniških aplikacij, ki razvijalcem omogoča, da s pomočjo prijaznih knjižnic oblikujejo aplikacije, pri čemer se namesto na tehnične podrobnostmi nižje plasti osredotočijo na vsebino rešitve. Ogrodje že ponuja vrsto zaokroženih funkcionalnosti, kot so infrastruktura 'kanalov', osnovna hierarhija prenosnih sporočil, procesna infrastruktura in časovni nadzor izvajanja uporabniških akcij. Tretje plast je aplikacijska, ki jo bomo predstavili iz perspektive realne komercialne rešitve, ki pokriva interaktivni del domene e-nakupovanja.

Na isti tehnološki platformi tečeta zabavni del multimedijske klepetalnice in svetovalni del prodajne podpore. Klepetalnica je postavljena v grafično bogato okolje navideznega izometričnega sistema sob, v katerem lahko uporabniki interaktivno sodelujejo v družbeni skupnosti. Podpira različne izvedbe prostorov, izgradnjo avatarjev po uporabnikovih željah, pošiljanje zasebnih sporočil in integracijo s sistemom za upravljanje z vsebinami oziroma spletno trgovino. Svetovalni del rešitve uporabnikom v realnem času omogoča kontekstno pomoč specializiranih skrbnikov med spletnim nakupovanjem.

Predavanje bo poskušalo predstaviti pomembne arhitekturne koncepte pri zasnovi sistema s poudarkom na inovativnih prijemih. Tehnični predstavitvi pa bo sledila demonstracija primera iz prakse v domeni e-nakupovanja v živo, ki temelji na tehnologijah Java, Flash in .NET.

Razvoj bogatih namiznih aplikacij
Tomaž Furlan, Tomaž Ipavec, Peter Brajak

Okolje RCP (“Rich Client Platform”) je tesno povezano z odprto kodnim projektom Eclipse in konceptom razvoja bogatih namiznih aplikacij. Okolje omogoča, da so javanske grafične aplikacije enakega videza in hitrosti kot “native” aplikacije, da je instalacija in vzdrževanje avtomatično in centralizirano, kot pri spletnih aplikacijah, da RCP “plug-in” arhitektura zagotavlja enostavno vključevanje in izključevanje modulov v aplikacijo, da je razvojno okolje zasnovano na visokonivojskem grafičnem ogrodju (“workbench framework”) in ne na grafičnih komponentah ("widgets"), da obstaja velik nabor komponent za internacionalizacijo, pomoč, distribucijo, ter da izkorišča vse prednosti strežniške J2EE arhitekture, kot je to centralizacija poslovnih pravil, transakcijsko delovanje, ter objektni pristop do relacijskih podatkov.

V tem članku bomo predstavili vse ključne koncepte razvoja namiznih aplikacij v okolju Eclipse Rich Client Platform. Predstavili bomo razloge zakaj je razvoj aplikacij v RCP okolju za faktorje hitrejši od razvoja podobnih spletnih aplikacij. Predstavili bomo tudi razloge zakaj je vzdrževanje neprimerno lažje, ker temelji na enotni tehnologiji za razliko od spletnih aplikacij, ki vključujejo različne tehnologije programiranja (Java, Html, Jsp, JavaScript, CSS, itd.) in različna okolja (JSF, Struts, Spring, Tapestry, WebWorks, itd.). V članku bodo predstavljeni tudi primere različnih RCP aplikacij iz področij kot so to upravljanje z dokumenti, administracija elektronskih trgovin, maske za masoven “data entry”, itd.

Uporaba arhitekturnih sklopov J2EE platforme
Matic Petek

Prepogosto arhitekti poslovnih aplikacij izumljajo »toplo vodo« pri zasnovah aplikacij. Razvijajo naprimer svoje sisteme za hranjenje povezav do podatkovnih baz, preslikave med relacijskih svetom podatkovnih baz in objektnim svetom programskih jezikov ali pa module za avtorizacijo pri spletnih aplikacijah.

Avtorji specifikacije Java 2 Enterprise Edition (v nadaljevanju J2EE) so že od samega začetka predvideli modularno zasnovo J2EE platforme. Arhitekti naj bi za pogoste sklope (dostop do podatkovne baze, avtorizacija, uporaba spletnih storitev, upravljanje aplikacij, asinhrono sporočanje, itd.) uporabljali že pripravljene arhitekturne sklope (vmesnike). Implementatorji J2EE specifikacije pa naj bi zagotovili dostop do implementacije preko predpisanih vmesnikov. Slednji (v večji meri tudi zaradi strogih testov, ki so del Java Application Verification Kit - AVK) dobro opravljajo svojo nalogo – v primeru, da uporabljamo samo standardne dele J2EE platforme, je aplikacija enostavno prenosljiva med različnimi implementacijami J2EE specifikacije (aplikacijskimi strežniki). Na žalost pa premajhna osveščenost arhitektov java aplikacij zavira polno uporabo J2EE platforme.

Predavanje bo vsebovalo predstavitev najpomembnejših arhitekturnih sklopov J2EE platforme, kot so naprimer JavaServer Pages (JSP), Enterprise JavaBeans (EJB), podpora za spletne storitve (JAX-RPC, SAAJ), podpora za XML shrambe (JAXR), upravljanje s aplikacijami (JMX), asinhrono sporočanje (JMS), izvajanje daljših transakcij (JTS), podpora za elektronsko pošto (JavaMail), itd. Uporabo tehnologij bo predstavljena na enostavni spletni aplikaciji. Pogledali si bomo tudi razdelitev nalog pri razvoju J2EE aplikacija, kot jih predlagajo avtorji J2EE specifikacije. Na koncu bomo omenili tudi nekatere novosti, ki nas čakajo v J2EE 1.5

   
18:30

Druženje in proslavitev desetih let
konferenc OTS in COT-a

Retrospektiva in ovrednotenje dosežkov 1996 -2005
v sklopu družabnega srečanja in nastop Dua Nika & Marko

 

Č E T R T E K, 16. junij 2005

9:00 - 10:40
Kam z objekti in kako do podatkov?

Objektno-relacijske baze?
Dejan Sarka

V zadnjih letih se raziskovalci in razvijalci intenzivno trudijo premostiti luknjo, ki zija med objektim modelom aplikacij in relacijskim modelom baz podatkov. Pojavljajo se takoimenovane objektne ter objektno-relacijske baze. V prispevku bomo po kratki ponovitvi, kaj je to razred in kaj je to relacija, prešli na zahtevnejše teme logičnih razlik. Pokazali bomo na logične razlike med spremenljivkami in vrednostmi; med modelom in implementacijo; vrednostmi in prikazi vrednosti. Nato bomo poskusili rešiti temeljno vprašanje objektno-relacijskega pristopa: kaj je v relacijskem modelu tisto, kar ustreza razredu? Po tej temeljni definiciji bomo umestili v razvito teorijo praktično izpeljavo glavnih novosti, ki jih na področju možnosti modeliranja prinaša SQL Server 2005. Uporabili bomo CLR in XML podatkovne tipe. Pokazali bomo, da objektno-relacijskega modela ni; sta objektni in pravi relacijski model, ki ju potrebujemo oba in ki nista daleč narazen. Predvsem pa bomo dali udeležencem predavanja veliko snovi za razmišljanje.

Shranjevanje podatkov v programski opremi COBISS3
Vojko Ambrožič, Robert Vehovec

Konec leta 1996 smo začeli tehnološko prenovo sistema COBISS s ciljem, da bi razvili tretjo generacijo programske opreme COBISS. Imenovali smo jo COBISS3 in od leta 2000 že tudi operativno deluje.

Za izhodišče prenove smo postavili prehod na objektno orientirani sistem, za tehnološko platformo smo izbrali programski jezik java, za objektno bazo podatkov pa ObjectStore. Od začetka prenove smo si pri razvijanju programske opreme nabrali precej izkušenj, v tem času pa so se na tržišču prav tako pojavila tudi številna nova orodja. Na osnovi izkušenj in spremljanja razvoja teh orodij smo se lotili različnih izboljšav in preoblikovanj programske opreme. Eden od pomembnejših mejnikov je bila odločitev, da razvijemo ogrodje za razvoj aplikacij. Takšno ogrodje na eni strani programerja razbremenjuje ponavljajočih se del, na drugi strani pa končnemu uporabniku ponuja enoten uporabniški vmesnik za vse dele sistema. Ker je ogrodje zasnovano večslojno, omogoča tudi uporabo različnih komponent, ki jih lahko nadomeščamo na različnih nivojih programske opreme, med drugim tudi relativno enostavno menjavo baze podatkov.

V prispevku opisujemo probleme shranjevanja podatkov v programski opremi COBISS3. Podrobneje opisujemo tudi slabosti objektne baze podatkov ObjectStore, ki so se ob pričakovanih prednostih pokazale pri njeni praktični uporabi v programski opremi COBISS3.

V novi verziji programske opreme COBISS3, v kateri se zaradi razširjenih fukcionalnosti pričakuje večja količina podatkov in zahtevnejše iskanje po bazah podatkov, smo želeli premostiti slabosti objektne baze podatkov. Odločili smo se, da dodamo iskalnik s področja odprte kode Pears, ki je prevzel funkcijo iskanja po bazah podatkov.

Iskali smo tudi alternativne možnosti za shranjevanje podatkov. Želeli smo omogočiti delo z relacijskimi bazami podatkov, pri tem pa se izogniti nezaželenim velikim spremembam poslovne logike. Problem preslikave objektne strukture podatkov v relacije smo rešili z orodjem Oracle TopLink, ki trenutno velja za vodilno orodje te vrste. TopLink omogoča oboje: ročno preslikavo s priloženimi urejevalniki in programsko preslikavo z bogatim vmesnikom API. Tudi samo kreiranje tabel, polj in indeksov je mogoče izvesti s tem vmesnikom. TopLink omogoča dostop do poljubnih relacijskih baz podatkov preko gonilnikov JDBC, če se pri razvoju uporabi le tisti del programskega vmesnika, ki ni vezan na določeno bazo podatkov. Zaradi velikih razlik pri dostopu do podatkov v relacijski in objektni bazi podatkov smo morali nekoliko dopolniti tudi poslovno logiko. V prispevku opisujemo, na katere probleme smo pri tem naleteli in kako smo jih rešili.

Na koncu je prikazanih še nekaj primerjav zmogljivosti za polnjenje, konverzijo in reindeksiranje objektne baze podatkov ObjectStore z iskalnikom Pears ter relacijskimi bazami podatkov Oracle ali MySQL.

Razvoj inteligentnih iskalnih in klasifikacijskih komponent
Andraž Škorič, Andrej Orešnik, Peter Brajak

“Full-text” iskanje in Bayesov klasifikator sta ključni tehnologiji pri razvoju inteligentnih sistemov za hitro in avtomatično klasifikacijo dokumentov, ter pregled vsebine ne samo na osnovi celotnega besedila, ampak na osnovi kombinacije besedil, ter strukturiranih podatkov shranjenih v relacijski bazi.

V tem članku bomo predstavili koncepte in način uporabe knjižnic iskalnega ogrodja Lucene, ter opisali komponente in koncepte, ki smo razvili za potrebe “full-text” iskanja, ter avtomatične klasifikacije velikega števila tekstualnih dokumentov različnih tipov (ASCII, HTML, Word, PDF, itd.) shranjenih na različnih medijih (RDBMS, datoteke, spletne strani, itd). Predstavili bomo EJB implementacijo iskalnih in klasifikacijskih algoritmov, izvedli primerjavo hitrosti z različnimi komercialnimi in odprto kodnimi sistemi, ter predstavili nekaj aplikacij razvitih v okolju RCP (“Rich Client Platform”), ki izkoriščajo različne lastnosti knjižnice Lucene, kot so to analizatorji teksta, optimizacija, napredni pogoji iskanja, itd.

XML podatkovna baza - praktični primer implementacije tehnologije in arhitekture
Pavel Reberc

XML Query je ena najpomembnejših tehnologij v XML svetu, ker šele XQuery omogoča zares "domoroden" način dela s XML dokumenti v bazah podatkov.

Čeprav se XMLQuery specifikacija razvija že od leta 1999 in formalno standard še vedno ni sprejet, je že sedaj na voljo kar nekaj Xquery implementacij, v verziji Oracle10gR2 pa bo XQuery standard implementiran tudi v Oracle bazo podatkov. V prispevku bi predstavili XQuery standard, implementacijo v Oracle 10GR2 ter način uporabe in primere iz prakse

   
11:00-13:00
Zaupanje in varnost

e-dokumenti kot dokazna listina
Cvetka Tinauer

V mnogih organizacijah se sprašujejo, kako se znebiti papirja – papirne dokumentacije, še zlasti tiste, ki jo je potrebno za potrebe DURSA in drugih organov, kot so sodišča in podobno, hraniti tudi 10 in več let.

Na to vprašanje nam daje odgovor Zakon o elektronskem poslovanju in elektronskem podpisu (Ur.list RS, št.57/2000). Ta zakon ureja elektronsko poslovanje, ki zajema poslovanje v elektronski obliki na daljavo z uporabo informacijske in komunikacijske tehnologije in uporabo elektronskega podpisa v pravnem prometu, kar vključuje tudi elektronsko poslovanje v sodnih, upravnih in drugih podobnih postopkih (1. člen ZEPEP).

Hitro, varno, enostavno in poceni izmenjavo poslovnih dokumentov omogoča elektronsko poslovanje, ki pa mora omogočati tako izmenjavo dokumentov, da bodo ti dokumenti tudi v elektronski obliki ohranili veljavnost pred sodišči in drugimi organi, institucijami idr., brez dodatne potrebe po dokazovanju s papirnimi dokumenti.

Cenovno nedostopna rešitev bi omogočala elektronsko izmenjavo pravnoveljavnih dokumentov le nekaterim, kar bi oviralo učinkovitost procesa elektronske izmenjave dokumentov. Zato je potrebno zagotoviti storitve tako, da lahko elektronsko izmenjujejo dokumente vsi subjekti enakovredno, ne glede na njihovo velikost.

Učinkovitost elektronske izmenjave pravnoveljavnih dokumentov med gospodarskimi subjekti zagotavlja poslovni model, v katerem infrastrukturo za elektronsko poslovanje skupaj s strateškimi partnerji in institucijami podpornega okolja, zagotavlja agencija za elektronsko poslovanje.

Agencija za elektronsko poslovanje deluje kot pošta za digitalno podpisane dokumente in je zasnovana kot agencija zato, da uporabnike razbremeni investicij v informacijsko infrastrukturo.

Globalni trg povečuje konkurenčnost, kar od poslovnih subjektov terja hitro odzivanje na dogodke oziroma tudi povzročanje le teh. Na drugi strani pa globalni trg povezuje na enem poslovnem primeru med seboj poslovne subjekte, ki so zelo oddaljeni drug od drugega. To in še drugi dejavniki vplivajo na potrebo, da se poleg splošnega elektronskega komuniciranja, vzpostavi tudi elektronsko poslovanje s pravno veljavnimi e-dokumenti med različnimi poslovnimi subjekti.

Od posameznika oziroma od posameznega podjetja pa je odvisno, kdaj se bo v sistem elektronskega poslovanja vključil. Povsem jasno je, da bodo tisti, ki bodo med prvimi, v prednosti pred ostalimi, saj bo to predstavljalo v obdobju prehoda vseh poslovnih subjektov na elektronski način poslovanja, njihovo pomembno konkurenčno prednost.

Modeli zaupanja in digitalni certifikati
Dušan Zupančič

Sodobno poslovanje sloni na zaupanju, ki velikokrat počiva na certifikatih. V prispevku so predstavljeni modeli zaupanja, ki jih uporabljajo certifikati in kaj moramo storiti v aplikaciji, da se prepričamo ali je zaupanje upravičeno.

Praktični vidiki zagotavljanja varnosti pri razvoju informacijskih rešitev
Boštjan Kežmah

Varnost je ena ključnih lastnosti sodobnih informacijskih rešitev, kar so mnoga podjetja žal spoznala prepozno. Da je možno takšno situacijo obrniti sebi v prid so med drugimi dokazali pri podjetju Microsoft, kjer so pod lupo kritike svoje izdelke temeljito prevetrili in sedaj celo ponujajo celo množico rešitev in storitev za zagotavljanje varnosti informacijskega sistema. Razvili so celo vrsto postopkov, metod in najboljših praks ter k sodelovanju pritegnili zavidljivo število strokovnjakov.

Če se želimo tudi sami preizkusiti v razvoju varnih rešitev, kar je v današnjem času z ozaveščenimi kupci pravzaprav neizogibno, lahko sežemo po literaturi, ki so jo pripravili tisti, ki so se v tem preizkusili pred nami.

Na papirju marsikaj deluje jasno, razumljivo in uporabno. Kako pa je v praksi? Predstavili bomo nekaj zanimivih izkušenj, ki smo jih pridelali tekom razvoja za platformo .NET.

  Varnostni mehanizmi in pomen elektronskega arhiva
Boštjan Lavuger
   
14:00-15:40
Integracija in učinkovitost

Integracija v praksi
Uroš Mesarič Kunst

Le kaj je bolj mamljivega kot nove tehnologije in metodologije. Vzemimo SOA (Service Oriented Architecture) Storitveno usmerjena arhitektura kot primer. Ali si ne želite podati na tako zanimivo področje in hkrati še rešiti vse »probleme«, ki tarejo vaše podjetje. Sisteme razbijete na podsisteme, jih s pomočjo novih tehnologij šibko povežete ter jim dodate novo - dodano vrednost.

Vse lepo in prav, toda začeti je treba na začetku. Eden od korakov na tej poti je prav gotovo integracija, integracija obstoječih sistemov. ni veliko tistih, ki začnejo povsem na začetku in si dovolijo prosto izbiro pri sistemih in arhitekturi. Torej, večina nas je na istem vlaku, ali bolje postaji, obremenjeni s težko prtljago obstoječih sistemov (legacy). Te sisteme je potrebno integrirati preko neke skupne točke, ki jo sedaj ponujajo integracijske platforme. To pa ni vedno lahko, vendar skoraj vedno mogoče. Vprašanje je le koliko dela in znanja smo pripravljeni vložiti.

Pri tem nam lahko veliko pomagajo nove tehnologije (jeziki, orodja) in metodologije. SOA pogosto razlagajo tudi kot – Same Old Architecture - Stara dobra arhitektura, ali nekaj kar že vsi poznamo. Mislim, da je to krivično, saj včasih ni bilo ne orodij, ne prijemov s katerimi, bi enostavno rešili tako kompleksne probleme. Poudarek je na enostavno.

V tem prispevku bo kratko opisan pristop k integraciji, kot se ga lotevamo v Telekomu Slovenije. Pristop ni namenjen reševanju celotne integracije vseh sistemov, temveč le enemu od ključnih delov poslovnega informacijskega sistema. Ta del je skrb za kupce, saldakonti ter sam sistem zaračunavanja (billing). To pomeni integracijo sistema razvitega v Sysdulu, jeziku četrte generacije, katerega izvorna sintaksa je v norveščini. Integracija je izvedena z uporabo Jave kot programskega jezika ter njenih načinov povezovanja, kot je JNI (Java Native Interface) na nivoju programskih knjižnic ter RMI (Remote Method Invocation) na nivoju komunikacije. Končna integracijska točka pa je J2EE na BEA Weblogic platformi. Seveda pa te zveneče kratice in produkti ne pomenijo nič brez znanja ljudi, ki delajo z obstoječim sistemom in hkrati poznajo vse naštete tehnologije.

Če imate v podjetju »legacy«, v katerega ste zadnjih pet let vlagali znanje in denar, ne zavrzite ga, temveč ga s pomočjo novih tehnologij in orodji povežite z ostalimi, tudi novimi, sistemi in vsem skupaj dodajte novo vrednost. Vrednost, ki jo prinaša integracija.

Integracija poslovnih rešitev v celovit sistem
Primož Grajžl, Gregor Kovač

Poslovni svet je prežet z aplikacijami napisanimi v različnih programskih jezikih, od COBOL-a, Smalltalk-a, FORTRAN-a, do novejših C, C++ in Jave. Ko hočemo vse te aplikacije povezati med seboj v delujoč in zanesljiv sistem naletimo na probleme različnih protokolov. Do nekaterih dostopamo neposredno, do drugih preko sporočilnih sistemov, spet pri drugih se skozi čas spreminja način dostopa do njih. Vsaka takšna sprememba povzroči spremembo v kodi, ki pa se ji vedno želimo izogniti. Tega problema se rešimo z uporabo tehnologije WSIF - Web Services Invocation Framework. WSIF temelji na opisnem jeziku WSDL s pomočjo katerega opišemo različne dele aplikacije, kot tudi način dostopa do njih, ki je neodvisen od protokola ali lokacije.

Uporaba spletnih storitev v geografskih informacijskih sistemih
Mirjan Hajnc, Matic Petek

Uporaba spletnih storitev se je v praksi pokazala kot zelo dobra odločitev, ki nam zagotavlja visoko skalabilnost, zanesljivost in navzen odprtost neglede na platformo na kateri se izvaja oz. na kakšni palatformi delajo uporabniki.

Valu novih tehnologij pa se ni izognilo tudi področje Geografskih informacijskih sistemov (v nadaljevanju GIS). Ko govorimo o spletnih storitvah v GIS-u, se moramo zavedati predvsem naslednjih težav. Prvič, močno procesorsko enoto za kompleksne izračune, ki temeljijo na geografskih podatkih. Drugič, GIS stortve pogosto prenašajo veliko količino podatkov, kot so slike, vektorski ali atributni podatki. Tretjič, uporabniki GIS spletnih storitev so pogosto kompleksna programska orodja kot so CAD sistemi. Open GIS Consortium (OGC) je vzporedno z razvojem spletnih storitev razvijal različne standarde za podporo GIS sistemom. Dva najpomembnejša sta OpenGIS Web Map Server in standard za opis podatkov GML (Geography Markup Language). Web Map Server (v nadaljevanju WMS) omogoča dinamično povezovanje geografskih podakov (točke, linije, poligoni, slike,...) iz različni virov v eno mapo, ki jo distribuira poljubnemu uporabniku. Zraven tega WMS vključuje Web Coverage Service (WCS) in Web Feature Service (WFS), ki omogočata storitve z vektorskimi oz. rasterskimi geometrijskimi in atributnimi podatki. Predavanje bo vsebovalo predstavitev najpomembnejših standardov v GIS spletnih storitvah, kot je prej omenjeni WMS z vključujočima WCS in WFS storitvama, predstavljene bodo še preostle OGC specifikacije standardov (WFS-G atributno povraševanje, WTS 3D pogledi, WCTS transformacija koordinat) in GML standard za opis podatkov.

Povezljivost geografskih informacijskih sistemov preko spletnih aplikacij pa ni samo odvisena od pripravljenih in potrjenih specifikacij, temveč predvsem od implementatorjev aplikacij za GIS in njihove zavezanosti in spoštovanju standardov. Za konec si bomo v prispevku pogledali kaj ponuja trg GIS aplikacijskih strežnikov, ki vključije podpora za WFS/WMS spletne storitve. Prevsem se bomo osredotočili na dva komercialna izdelka (ESRI ArcIMS in IONIC RedSpider) ter ju primerjali s odprtokodnimi rešitvami (deegree).

Vpliv apliciranja vzorcev na zmogljivost aplikacij
Denis Rojs, Martina Krančan, Primož Žvižaj, Štefan Trčko

Uporaba vzorcev pri razvoju programske opreme je uporaben in preverjen koncept, saj predstavlja neko splošno rešitev konkretnega problema. Vzorci so se prvotno uporabljali zaradi: prilagodljivosti, razumljivosti, preverjenosti in ponovne uporabe. Predstavili bomo kako načrtovalski vzorci vplivajo na performance J2EE aplikacij. Osredotočili se bomo na poslovni sloj, katerega lahko v J2EE realiziramo z EJB-ji. Skozi primere vzorcev za EJB-je, bomo opisali njihovo uporabo in izrazili kaj pridobimo z uporabo vzorca za določen problem. Primerjava testnih rezultatov brez rešitve vzorca in z rešitvijo vzorca, pokaže smernice za kvaliteno in zmogljivo J2EE aplikacijo. Performanca je izražena kot razmerje števila zahtev na enoto časa.

   
16:00 - 17:40
Portalom znanja naproti

Poslovna inteligenca kot naravna nadgradnja sistema ERP
Goran Radonić

Kvalitetna implementacija korporativnega portala poslovne inteligence zahteva poznavanje veščin dveh disciplin: ERP sistema in BI sistema. V uvodu so navedene lastnosti ERP in BI sistema ter pričakovanja od projekta integracije ERP in BI sistema. Opisan je konkreten primer pristopa k implementaciji BI portala iz prakse. Uporabljena je paradigma inkrementalnega programiranja v paralelnem razvoju in produkciji obeh sistemov. Poudarjena je pomembnost tehnološko odprte platforme in fleksibilnost ERP-ja, ki doživlja tekom integracije z BI sistemom spremembe. Opisane so faze projekta in angažmaja soudeležencev v posamičnih fazah. Posebej je omenjen pomen multidisciplinarnosti razvojnega tima ter vključevanja večjega števila soudeležencev v projekt. Napravljen je poskus primerjave teoretičnega in praktičnega pristopa k tej problematiki. V zaključku so prikazani učinki integracije dveh sistemov ter predvidena projekcija razvoja BI in ERP sistema v prihodnosti.

Upravljanje z digitalnimi identitetami
Matjaž Ladava

Upravljanje z digitalnimi identitetami, ali bolje rečeno digitalnimi personami, je v zadnjem času postal zelo pereč problem vseh večjih organizacij, kjer se uporabniki soočajo z t.i. pojavom razcepljene osebnosti. Gre za to, da ljudje, v informacijskem sistemu niso predstavljeni kot identiteta, temveč kot skupek različnih uporabnikov, ki so med seboj popolnoma ločeni. Tu se pojavljajo problemi kot so neusklajenost podatkov čez različne sisteme, neskladnost gesel z varnostno politiko podjetja, neenotna prijava na sisteme in aplikacije znotraj podjetja ter kontrola pristopa različnim sistemom. Tako kot upravljamo z ljudmi znotraj podjetja, mora obstajati koncept upravljanja z njegovo digitalno osebnostjo, ki je prisotna v informacijskem sistemu. Na trgu obstaja več različnih rešitev ki poskušajo doseči t.i. »identity life cycle management«, vendar kje so problemi, kje zagate in kje rešitve?

Izvedba portala s pomočjo tehnologije ASP.NET
Rado Jelen

Svetovni splet je postal pomembno orodje oglaševanja in informiranja. V internet se seli velik del poslovanja. E-poslovanje ponuja menedžmentu nove izzive in priložnosti ter predstavlja hitro rastoč trend v poslovnem svetu.Običajne spletne strani so zgrajene tako, da jih je brez ustreznega programerskega znanja nemogoče spreminjati, ko so enkrat izdelane, objavljene informacije pa hitro zastarajo. Stranke in poslovni partnerji si želijo vedno tekočih informacij, nenehno obnavljanje vsebine spletnih strani pa je lahko zelo drago.V ta namen smo v podjetju Comtron d. o. o. razvili orodje TRONPortal, ki omogoča hitro in preprosto spreminjanje ter dodajanje vsebine na internet. Ko je portal postavljen v splet, bo spletna vsebina vedno aktualna, urejali pa jo boste sami brez dodatnih stroškov. Orodje smo razvili v tehnologiji ASP.NET 1.1., ki je danes Microsoftova najbolj podprta tehnologija za gradnjo spletnih aplikacij.

e-storitve zaposlovanja za delodajalce
Mitja Kovačič

V okviru Ministrstva za delo, družino in socialne zadeve ter lastnih projektov smo na Zavodu RS za zaposlovanje poskrbeli za razvoj in delovanje elektronskih storitev za delodajalce, ki so med drugim tudi opredeljene z akcijskim načrtom vlade.
Storitev »Prijava prostih delovnih mest« omogoča interaktivni vnos prijav prostih delovnih mest s strani delodajalcev, za kar so zakonsko obvezani.
Storitev »Obvestila o sklenjenih avtorskih pogodbah« omogoča interaktivni vnos obvestil o sklenitvi avtorske pogodbe delodajalca z pogodbenim izvajalcem del.
Storitev «Izmenjava dokumentacije z izvajalci programov zaposlovanja« je na voljo delodajalcem, ki so tudi izvajalci javnih del in omogoča interaktivni vnos liste prisotnosti na delu udeležencev javnih del za izvajalce programov javnih del, kar je podlaga za izračun in izplačilo plač ter drugih stroškov v povezavi z delom.
Storitev »Ažuriram svoje podatke« omogoča interaktivno ažuriranje statusnih podatkov o delodajalcu iz registra delodajalcev pri Zavodu za zaposlovanje.

   
17:45
Zaključek desete konference OTS’2005
Čas pričetka naknadno
Glasbeni večer
DADA in Marko
   









 
 
O konferenci | Vabljena predavanja | Pokrovitelji | Za avtorje | Pomembni datumi | Odbori konference
© 2005 Center odličnosti za sodobne informacijske tehnologije in storitve