Kuinka Wilmaa tehdään?

Wilma Koodaus

Jo 18 vuotta täyttänyt Wilma on mukana noin kahden miljoonan käyttäjän arjessa. Toisinaan putkahtaa esiin kysymyksiä: miten sitä Wilmaa oikein kehitetään ja millainen on ohjelmistokehittäjän arki meillä täällä Wilman parissa työskentelevillä? Avaan tätä asiaa nyt hiukan koodarin näkökulmasta.

Wilman kehitystyö eli koodaaminen tapahtuu tuotekehitystiimeissä, joissa käytetään Scrumia, joten Wilma-ohjelmistokehittäjän arki ei varmastikaan poikkea sen kummemmin muista Scrumia käyttävistä kehitystiimeistä. Scrum tarjoaa raamit sille, kuinka kehitystyötä tai projektia ohjataan. Scrumiin kuuluu sprinttejä, eli kehitysjaksoja, joiden aikana kehitystyötä tehdään. Wilman sprintti on kaksi viikkoa, jonka jälkeen alkaa aina uusi kehitysjakso.

Syksyn aikana olemme työskennelleet mm.  KOSKI-muutoksiin ja varhaiskasvatuksen VARDAan liittyvien asioiden parissa, edistäneet varhaiskasvatuksen Wilmaan tulevia ominaisuuksia ja parantaneet myös PrimusQuerya.

 

Toiveesta Wilman ominaisuudeksi

Wilmalla on suuri määrä käyttäjiä, ja saammekin paljon palautetta ja toiveita Wilmaan liittyvistä toiminnoista. Miten jokin asia sitten päätyy Wilman kehityslistalle ja jokin taas ei?

Paljon Wilman tuoteperheeseen liittyvästä kehityksestä tulee lakisääteisistä tarpeista, niistä esimerkkeinä juuri KOSKI ja VARDA -palveluihin liittyvät asiat. Osa kuitenkin on asiakkaidemme toivomia ominaisuuksia, ja myös ohjelmien loppukäyttäjillä on mahdollisuus vaikuttaa. 

Kehitysehdotukset kannattaa suunnata omalle koululle, jonka kautta ne menevät kunnan tai oppilaitoksen Wilma-pääkäyttäjälle. Joskus tarpeeseen on suora ratkaisu tai toivottu ominaisuus ei vain ole kunnassa käytössä. Jos pääkäyttäjä näkee ehdotuksen kehityskelpoisena, hän vie sen asiakkaiden omaan asiakasyhteisöön. Siellä muut pääkäyttäjät voivat myös kannattaa ehdotusta. Tuotepäälliköt tekevät lopullisen arvion siitä, otetaanko tietty ehdotus kehityslistalle ja roadmapille, minkä verran työtä se vaatii, ja millaisella aikataululla asia otetaan lopulta työn alle.

 

Sprintti käyntiin ja hommiin!

Kehitysjakso aloitetaan aina suunnittelulla, eli mitä kaikkea tulevan kahden viikon aikana kehitystyössä edistetään. Toisinaan keskitymme enemmän tuleviin ominaisuuksiin, joskus taas tekniseen parannukseen, lakisääteisiin muutoksiin tai bugikorjauksiin. Pääasiassa kaikkia osa-alueita edistetään sprintin aikana sopivassa suhteessa.

Suunnittelutyössä pyrimme hyödyntämään tarpeen mukaan myös ulkopuolisia asiantuntijoita, esimerkiksi varhaiskasvatuksen suhteen olemme toteuttaneet käyttäjätestejä, joissa on ollut päiväkodinjohtajia kommentoimassa kehityksen alla olevia toimintoja. Palautteet auttavat meitä kehittämään toimintoja entistä paremmiksi.

Työtä tehdään tiiminä ja tiimityössä vastuu jakaantuu ja kaveria autetaan eteenpäin pääsemiseksi. Suunnittelutyö ottaa aikansa ja samoin täytyy välillä suunnitella toteutettujen asioiden testaamista tarkemmalla tasolla. Päivittäin käymme läpi tehtävien etenemistä ja aikataulua. Sprintin aikana julkaistaan versio, johon koostetaan kaikki julkaisuvalmiit ominaisuudet, bugikorjaukset ja tekniset parannukset, jotka on valittu julkaistavaan versioon. Työhön kuuluu toki kiinteästi myös version testaaminen. Testauksessa hyödynnetään automaatiotestejä, kuormitustestausta kuin myös ihan käsinkin testattavia asioita, jotta voimme mahdollisimman hyvin varmistua tuotteen toimivuudesta.

Jokaisen sprintin päätteeksi käydään läpi mitä kehitysjaksossa on saatu aikaiseksi. Tähän palaveriin kutsutaan myös muita sidosryhmiä, ja heiltä saamme myös arvokkaita kommentteja ja tarvittaessa kehitysehdotuksia tehtyihin asioihin. Tämän jälkeen tuotekehitystiimit pitävät vielä oman loppuyhteenvedon sprintin loppuun ennen kuin uusi kehitysjakso taas alkaa.

0