Slovenska podjetja že od časov Iskre niso kaj prida opozorila nase z razvojem strojnih računalniških rešitev, se pa zato razvijalci programske opreme redno pojavljajo na različnih natečajih in izborih z velikimi uspehi. Tej druščini se je sredi poletja pridružilo tudi podjetje Agito, ki je prejelo Microsoftovo nagrado za najboljšega razvojnega partnerja v regiji Srednje in Vzhodne Evrope v kategoriji razvoja rešitev po meri. Na naša vprašanja o zahtevnosti razvoja rešitev po meri je odgovarjal Mišo Brus, direktor podjetja Agito.

Z rešitvijo Hilti PROFIS Anchor ste se uvrstili tudi med tri svetovne finaliste za partnerske nagrade podjetja Microsoft v kategoriji Razvoj po meri. Lahko na kratko predstavite vašo rešitev?
Naj najprej opišem poslovni model in namen rešitve Hilti PROFIS Anchor. Predstavljajmo si projekt v gradbeništvu, ki zahteva pritrjevanje v betonsko podlago. Denimo viadukt, na katerega je treba namestiti zaščitno ograjo ali protivetrno zaščito. Za to potrebujemo posebna sidra, s katerimi pritrdimo konstrukcijo ograje v beton. V aplikaciji Hilti PROFIS Anchor najprej opišemo problem: lastnosti betona, zunanje dejavnike, kot sta temperatura in vlaga, upoštevamo sile in navore (obremenitve, nalet vozil, veter), zahteve za protipožarno zaščito … Aplikacija nam nato ponudi matriko možnih rešitev s tolerancami glede na varnostne standarde. Seveda se ti standardi in certificirana sidra od države do države ali regije spreminjajo, zato so tudi možne rešitve temu prilagojene. Ko izberemo neko rešitev, aplikacija ponudi podroben izračun statike in pripravi del projektne dokumentacije za ustrezno postavitev in namestitev.

Aplikacija Hilti PROFIS Anchor ponudi rešitev gradbenega problema z izključno Hiltijevimi sidri, stroji, orodji, materiali … Če bi želeli uporabiti druge izdelke, izračuni ne zagotavljajo več absolutne oziroma ustrezne pravilnosti in varnosti. Aplikacija končnim uporabnikom, predvsem inženirjem, pomeni orodje, s katerim bistveno hitreje in lažje pridejo do rešitve, saj skrajša čas načrtovanja ter zapolni vrzel med načrtovanjem in izvedbo. Tako Hilti zadrži obstoječe stranke in pridobiva nove, pospešuje prodajo svojih izdelkov ter gradi zaupanje v blagovno znamko. Morda bi še dodal, da je Hilti PROFIS Anchor uporabnikom na voljo brezplačno. Gre za primer programske opreme, ki pomeni vrednost za naročnika, uporabnika in samo okolje.

Kako zahteven je razvoj programskih rešitev »po meri«? Kaj vse morate pri tem upoštevati?
Res dobro vprašanje. Večina ljudi si pri razvoju po meri predstavlja klasično programiranje ali razvoj programske opreme, tisti, ki so to že kdaj okusili, pa si zraven predstavljajo še dolg proces razvoja programske opreme. Oboje seveda drži, a poleg naštetega sodi še kopica drugih stvari.

V časih poplave najrazličnejše programske opreme je treba najprej najti pravo mesto za rešitev po meri. Dokumentnega sistema ali poslovnega sistema denimo ne pišemo več na novo in po meri, no, poznam le par izjem. Torej, najprej je treba ugotoviti, kdaj je razvoj po meri smiseln in to že spada v področje poslovne analize, ki mora biti začetek vsakega projekta po meri. Poleg teoretičnega in praktičnega poznavanja poslovne analize se je treba prilagoditi še ciljnemu področju in poslovnemu modelu stranke. Vse to mora izvajalec nato znati podrobneje analizirati in s stranko narediti načrt izvedbe. Potem pa sledi prav tako zelo nevarna faza, kako vse skupaj iz načrta pretvoriti v delujočo programsko opremo. Za konec so tu seveda še vpeljava h končnim uporabnikom, vzdrževanje, nadgradnje … V Agitu imamo ljudi, ki to znajo.

Če gre za aplikacijo, katere končni uporabnik je »neznan«, pri rešitvi Hilti PROFIS Anchor to pomeni okoli 40.000 neznanih uporabnikov z vsega sveta z različnimi problemi, znanjem in pričakovanji, vsaka stranka pa ima specifičen poslovni model, potem je vse skupaj še toliko težje. Narediti takšno rešitev, ki deluje, se mi zdi velik podvig.

Dva pomembna dejavnika razvoja sta tudi čas izvedbe ter potrebno znanje. Kako se soočate z njima, imamo v Sloveniji dovolj kakovostnih programerjev, ki so kos takšnim izzivom, ali si pomagate tudi s tujci?
Oboje. Imamo zgledne domače sodelavce, ne rečem pa, da jih je ravno lahko najti. Zaposlujemo tudi tujce, ravno pri novem projektu, ki ga delamo za Hilti, je glavni tehnik Poljak, ki se je poročil v Slovenijo. Po dobrem letu dni že govori tekoče slovensko in bi ga mimoidoči težko označili za tujca.

Ne morem si kaj, da ne bi k temu dodal, da imamo kar precej težav pri izboru kakovostnih sodelavcev za razvoj programske opreme. Zdi se, da prihajajo zelo mladi fantje in dekleta, ki bi radi kar takoj samo nekaj »vodili«, bili menedžerji. Nabiranje izkušenj iz razvoja programske opreme traja več let in je naporno, delavnik praktično nikoli ne traja zgolj osem ur. Če želi posameznik to zdržati in postati strokovnjak na tem področju, mora to delo imeti rad in zanj živeti. Na nekajdnevno izobraževanje o razvoju programske opreme se človeka preprosto ne da poslati, pomembnejša je »kilometrina« v praksi. Navsezadnje pa mora celo rešitev narediti ekipa, v kateri morajo ljudje sodelovati med projektom in tudi potem, ko je rešitev že v produkciji. Vsakdo ne spada ali se ne vključi v ekipo, in to še dodatno omejuje možnosti izbire zaposlenih.

Če vse skupaj seštejemo, potem lahko v kratkem času kakovostno rešitev naredi le usklajena ekipa, katere posamezniki bodo strokovnjaki z različnih področij. Kot rečeno, v Agitu imamo nekaj takšnih ekip, ne zgolj ene, se mi pa zdi, da je usklajene ekipe težje sestaviti in traja dlje časa. Ko enkrat imaš pravo ekipo, je lažje narediti takšno rešitev, kot je naša, in z njo pobirati nagrade.

Kakšna je tipična vloga naročnika v projektu razvoja rešitve po meri? Kako bi opredelili naročnikovo sodelovanje?
Brez naročnika in njegovega sodelovanja preprosto ne gre. Naročnik mora podati vsebinsko znanje, predstaviti poslovne procese, algoritme, formule … Skratka, mora dnevno sodelovati in odgovarjati na vprašanja, se odločati o alternativah, sprejemati kompromise, testirati in potrjevati vmesne rešitve. Določiti mora kompetentno osebo ali več oseb in zagotoviti ustrezno koordinacijo med njimi in nami. Za večje projekte, kakršen je primer Hiltija, pa mora imeti naročnik še jasno vizijo, poslovno strategijo in popolno podporo vodstva ter vseh sodelujočih organizacijskih enot.

Ste z naročnikom že prej sodelovali?
Preden smo prejeli naročilo za izdelavo rešitve Hilti PROFIS Anchor, smo izdelali primerjalne analize konkurenčnih produktov in drugih podobnih produktov znotraj Hiltija. Te analize, ki so jih v Hiltiju označili za odlične, so nam odprle pot v nove projekte.

Po čem se rešitev Hilti PROFIS Anchor razlikuje od konkurenčnih rešitev?
Naša deluje. Pravijo, da je najboljša, kar pomeni, da se je ljudje hitro naučijo uporabljati in jo uporabljajo. Seveda mora delovati pravilno in hitro, da premore samodejno posodabljanje, pa je tako ali tako samoumevno. Zelo pomemben je tudi všečen grafični vmesnik. Naš se je izkazal za zelo domiselnega in uporabnega. Danes se uporabnikom zdi samoumevno, da ima rešitev vgrajen t. i. »Microsoftov trak«, ki služi kot meni, a pred tremi leti, ko smo Hiltiju predstavili prvi osnutek vmesnika, so bili osupli, predvsem skeptični. A smo precej tvegali in se bojevali s prepričevanjem. Leto dni zatem, po mesecih uporabe v praksi, so po našem konceptu vpeljali interni standard, kako naj bodo videti vse interne po meri razvite aplikacije.

A pristop in všečen grafični vmesnik nista dovolj. Nam je uspelo, da smo napisali uporabno ter logično aplikacijo tako za manj kot zelo zahtevne uporabnike. »Vse« je na pravem mestu, intuitivno in preprosto uporabno, pravilnost vnosov in izračunov se sproti preverja, aplikacija pa uporabnika opozarja na odstopanja. Prilagojen je tudi izris, saj se rešitev sproti predstavi v 2D- in 3D-pogledu.

Glede na vaše izkušnje, ali slovensko poreklo rešitve pomeni oviro pri njenem uveljavljanju v tujini?
Rekel bi, da je prej obratno! Slovensko poreklo rešitve je večkrat ovira pri slovenskih naročnikih. Ne morem verjeti, kako slabšalno se obnašajo nekateri slovenski naročniki do slovenskih rešitev. Ne vem, ali je težava v razmišljanju, da je tuje zagotovo boljše od slovenskega, ali pa so se že neštetokrat opekli s slabimi slovenskimi izvajalci? Namreč, slednje tudi nam povzroča težave, saj vsakdo, ki zna »malo programirati« za nizko ceno, meni, da lahko izdeluje programsko opremo. Težko je dobiti priložnost, da se dokažeš, ker te dajejo v isti koš. Tudi slovenskim (IT) podjetjem je lažje prodajati tuje rešitve kot lastne.

Pri Hiltiju česa takega ni bilo nikoli opaziti. Vse je in še vedno temelji na kakovosti izdelkov in odnosov. Morebiti je to del kulture, saj je Hilti korporacija s sedežem v Liechtensteinu – uradni jezik pa je angleščina. Prisotni so v več kot 120 državah, pri čemer se nihče ne sprašuje, od kod si, dokler si dober. Menim, da je tako v vseh pravih korporacijah.

Pri drugih tujih stikih sem sicer opazil dodatne ovire, vendar bi težko rekel, da zato, ker izviramo iz Slovenije, ampak bolj zato, ker že oddaljenost in tuj jezik sama po sebi povzročata dodatna tveganja, dodaten napor in dodatne stroške. A to je pač del projekta.

Koliko sredstev/virov podjetje Agito vlaga v razvoj?
Z eno besedo – ogromno. Prizadevamo si, da čim več stvari odpade kot del projektnih aktivnosti posameznega projekta, a zelo pogosto to ne gre. Tehnologije in celo povsem novi koncepti ali arhitekture se ves čas spreminjajo in ves čas ocenjujemo, kaj je že dovolj zrelo za uporabo ali kaj bo sploh preživelo. Pri tem pogosto tudi tvegamo. Stranke pričakujejo, da smo vsevedi in da je tovrstno svetovanje o tehnologiji, arhitekturi in pristopu del zastonjskega »prodajnega procesa«. Ocenjujem, da je več kot 40 odstotkov naših del zunaj konkretnih projektov, zato moramo pač z drugimi zaslužiti dovolj, da vse našteto povrnemo.

Se pri razvoju srečujete s kakšnimi večjimi težavami, katerimi? Kako jih odpravljate?
Znotraj ozkega projektnega tima v Agitu ni velikih težav, saj že s samo selekcijo gradimo ustrezne ekipe in vse spremljamo ter izboljšujemo pristope. Male napake so vedno prisotne in se jih zelo hitro odpravlja, denimo različna odstopanja v ustrezni komunikaciji, tehnologiji, kakovosti … Večje težave, sicer redke, pa vendarle nastopajo, so na relaciji z naročnikom. To zahteva veliko napora v komunikaciji in nenehno pozornost. Naročnik in njegovi predstavniki so pač različni. Lastno projektno ekipo že izbereš, na naročnikovo pa nikoli ne moraš vplivati. Lastno ekipo večinoma poznaš in se lahko izogibaš težavam, z naročnikovo je drugače. Zato skrbimo, da so prvi stik z naročnikom osebe, ki obvladajo komunikacijo in so tehnološki in vsebinski strokovnjaki. Poleg tega pa vedno postavimo okolje za različne nivoje komunikacije in, če je le mogoče, to nikoli ni izključno elektronska pošta. Če uspemo z naročnikom dogovoriti protokol komuniciranja, potem je vedno vse v redu, če pa naročnik tega ne zmore, je treba stvari vzpostaviti postopoma. Komunikacija je bistvo.

Kako dolgo traja razvoj vrhunske programske rešitve in od katerih dejavnikov je odvisen?
Zelo različno. V našem primeru smo prvo produkcijsko različico nagrajene aplikacije, ki je šla do končnih uporabnikov, izdelali v približno petih mesecih. To je bil res uspeh in presežek. Treba je poudariti, da je naročnik z nami sodeloval dnevno. Delali smo čez vikende, po cele dneve in tudi noči. Naročnik pa tudi.

Sicer traja razvoj programske opreme zelo različno. Lahko da na projektu delajo 2 do 3 osebe po nekaj tednov, do velikih skupin, ki delajo po leto ali več. Vse je odvisno od obsežnosti vsebine, velikosti ekipe, razpoložljivih informacij, sodelovanja in potreb naročnika. Različno organizirani in različno dolgi projekti imajo drugačne prijeme – od komunikacije, motiviranja in vodenja do arhitekture, tehnologije, grafične podobe …

Po najnovejših tujih rešitvah sodeč, vse večjo vlogo pri programski rešitvi prevzema uporabniški vmesnik, ki se končnim uporabnikom zdi celo pomembnejši od same funkcionalnosti. Spet drugim pa tak pristop lepšanja vmesnikov (prosojnost, zaobljeni gumbi, orodne vrstice z barvitimi ikonami ...) niti najmanj ni všeč. Kdo odloča o razvoju uporabniškega vmesnika in njegovi podobi?
Drži, uporabniški vmesnik je vsekakor izjemno pomemben. Morebiti ne ravno prosojnost in zaobljeni gumbi, ampak bolj uporabnost in všečnost celote. Večina uporabnikov kakovost aplikacije sodi po tem, kako se v aplikaciji znajde in kako hitro mu ta reši problem. Če pri tem pomaga prosojnost, tudi prav, večinoma pa temu ni tako. Če okrogli gumbi spadajo v celostno grafično podobo in nimajo negativnih vplivov na uporabnost, potem naj bo. Barve spadajo v celostno grafično podobo in niso naključna izbira. Korporacije imajo za to svoje oddelke in tudi ikone v rešitvi Hilti PROFIS Anchor so nastale usklajeno. Sicer pa smo v zadnjih letih že nekajkrat na začetku projekta kar sami izdelali celostno grafično podobo aplikacije.

Zelo »posloven« odgovor na vprašanje, kdo odloča o uporabniškem vmesniku, se glasi: končni uporabnik. Če pa sem konkretnejši, potem povem, da grafični vmesnik izdela načrtovalec v sodelovanju z naročnikom in vse skupaj s ciljem, da bo po eni strani usklajen s celostno grafično podobo podjetja ali produkta, po drugi strani pa usklajen s potrebami končnega uporabnika.

Kako menite, da bo nagrada »Microsoft Partner of the Year« vplivala na bodoče priložnosti in poslovanje?
Že sam notranji občutek je pomemben. Vsi v podjetju smo ponosni in še bolj samozavestni kot do zdaj. Tudi naše obstoječe stranke so dobile še dodatno potrdilo, da so izbrale pravega izvajalca. Dobili smo potrditev, da delamo pravilno. Namreč, Agito zelo hitro raste – tudi zdaj, v času recesije, rastemo za več kot 25 odstotkov letno, pa kljub temu zelo obvladujemo in celo izboljšujemo kakovost, učinkovitost, odnose … Prav tako še zdaleč nismo najcenejši in razloge za to je v teh časih težko braniti. Bi pa rekel, da je pri nas razmerje med kakovostjo in ceno najugodnejše. Da ne bo pomote, ne gre za to, da bi Agito imel višje cene zaradi dobljene nagrade, ampak obratno – nagrada je le potrditev ustreznega dela. Naša poslovna in tehnološka širina ter kakovostni izdelki ter izvedba projekta pri nas zahtevajo veliko investicij ter dodatnega dela, ki se ga s površnim pogledom na projekt niti ne opazi – najlažje je ob ponudbi »pozabiti« na strošek analize, načrta, testnih primerov, testiranja in ostale dokumentacije. S strankami, ki jim je najnižja cena edino merilo, programska oprema pa le strošek, in ne vrednost, tako ali tako ne moremo delati. Vse stranke, ki želijo zmanjšati tveganje v projektu in vsaj za obdobje nekaj let ocenjujejo vrednost in strošek programske opreme, pa bodo, upam, dale prednost oziroma priložnost nam. Brez domišljavosti, od tu naprej, pa je na nas, da jim dokažemo, da je odločitev za Agito pravilna.

Moj mikro, december 2010 | Miran Varga