Isännöintijärjestelmän kehittäminen – Kaikki on mahdollista, tai sitten ei

Isännöintijärjestelmän kehittäminen

”Kaikki on mahdollista”

Kehitysprojekteihin liittyen olen kuullut usein sanottavan, että ”Kaikki on mahdollista, jos on resursseja ja aikaa”. Tämä voi pitää paikkansa unelmamaailmassa, mutta todellisuudessa missään ei ole käytössään rajattomasti resursseja, tai erityisesti aikaa. On ollut mielenkiintoista käydä keskusteluja henkilöiden kanssa, jotka vastaavat ohjelmistokehityksestä isommissakin yrityksissä. Kaikilla tuntuu olevan sama haaste, backlog on nälkävuoden mittainen ja resursseja ei ole tarpeeksi tyydyttämään mielikuvia, mitä löysät ”kaikki on mahdollista”-heitot synnyttää. Mitä keinoja backlogin hallitsemiseen sitten on, jos 3 hengen kehitystiimillä on samat bagklog-haasteet, kuin 20 tai 50 hengen tiimilläkin? Itse pyrimme tekemään tarkat strategiset rajaukset, mitä tehdään itse ja mihin etsitään kumppanit. Lisäksi kehitysprosessin ja eri ominaisuuksien vaatiman vaatimustason yhteinen ymmärtäminen koko tiimin kesken edesauttaa backlogin ja odotusten hallintaa.

Isännöintijärjestelmä
Kehitysprosessin pohjaksi on lukematon määrä konsulttien metodeita ja kirjallisuutta, mutta ainut keino löytää omalle tiimille sopiva tapa on kokeilla, ja sen jälkeen kyseenalaistaa olemassaolevat tavat ja iteroida prosessia jatkuvasti.

Ohjelmistokehityksen trendit ja kaunopuheet vs. käytäntö

Ohjelmistokehitysprosessit elävät voimakkaasti globaalien trendien mukana. Vesiputousmallista on tultu kohti Scrum- ja Agile-tyylisiä metodologioita, joissa kehitysprosessin joustavuutta pitäisi olla enemmän. Design thinking:ksi kutsuttu tapa miettiä käyttäjälähtöisesti palveluita, on suuri trendi ohjelmistojen suunnittelussa ja kehityksessä tänä päivänä.

Design thinking-metodeissa on hieno ja jalo teoreettinen lähtöajatus, mutta käytännössä nämä teoriat on hyvin haastava toteuttaa monimutkaisten ja moniulotteisten verkkopalvelujen kanssa, erityisesti alustapalveluiden kanssa. On todella helppo sanoa, että ”tehdään käyttäjäystävällinen palvelu”, mutta kuinka se sitten käytännössä toteutetaankaan, on ydinkysymys. Vastaavat lauseet jää usein palaverien käsienheilutteluksi ja kaunopuheeksi. Ei riitä, jos yrityksen johto julistaa ja ylistää Agilea ohjelmistokehitysprosessia ja käyttäjäystävällisyyttä. Tekijöiden pitää nähdä ja tuntea että joustavuutta, vaikutusvaltaa, liikkumatilaa, ja jopa mahdollisuus tehdä virheitä on olemassa. Tämän kaltaisessa kehitysympäristössä käyttäjäystävällisyyttä ja innovatiivisuutta on vasta mahdollista synnyttää.

Kaikki se luovuus, mitä digitaalisten palvelujen rakentaminen vaatii, syntyy suunnittelijoiden (nykyään trendikkäästi myös palvelumuotoilijoiden) ja erityisesti ohjelmoijien työpöydällä, kun he yrittävät tulkita liiketoiminnan tarpeita ja viestejä, asiakkaiden palautetta, sekä dataa, ja muokata nämä heikot signaalit halutuiksi, hyödyllisiksi ja helppokäyttöisiksi ominaisuuksiksi. Ideasta powerpoint-slidella on pitkä matka toimivaksi ja helppokäyttöiseksi todelliseksi ominaisuudeksi.

Taloyhtiön palvelualusta
Avaa.io on kokonaisvaltainen taloyhtiön palvelualusta

Avaa.io:n tapa tehdä kehitystyötä

Avaa.io:n kehityksessä meille on ollut alusta asti tärkeää löytää omaan työtapaan, tiimiin ja työympäristöön sopiva tapa tehdä kehitystyötä. Emme ole orjallisesti seuranneet jotain tiettyä oppikirjoissa määriteltyä Scrum-prosessia, vaan yrityksen ja erehdyksen kautta löytäneet tiimillemme erinomaisen tavan tehdä tehokkaasti ja bugittomasti tuotantoon päätyvää koodia. Emme ole (ja tuskin koskaan tulemmekaan valmiiksi kehitysprosessin kanssa), mutta etsimme jatkuvasta tapoja tiimin yhteistyön parantamiseksi. Olennaisin asia on yrittää ymmärtää loppukäyttäjiä, ja tulkata heidän tarpeitaan tietokantarakenteiksi, funktioiksi ja muuttujiksi.

Käytännössä tehokkaan ja tarkoitusta palvelevan kehitystyön meillä mahdollistaa jatkuva läheinen vuoropuhelu kumppani-isännöitsijöiden ja kumppanitaloyhtiöiden kanssa. Vaikka ominaisuuksien suunnittelu olisi tehty kuinka tarkasti, ja post-it-lappuja laitettu valkotaululle miten paljon tahansa, niin uusien ominaisuuksien ensimmäiset versiot ovat aina kehitystiimin arvauksia. Tukeeko ominaisuus lopulta käyttötarkoitusta, näkyy vasta oikeassa käytössä. Kun ominaisuudet ovat käytössä tuotantoympäristössä ja oikeassa asiakastyössä, niin alkaa vasta selviämään, että mitä pitää parantaa, lisätä tai poistaa.

Isännöintijärjestelmä
Tarkoitusta palvelevan tietojärjestelmän suunnittelu vaatii sekä post-it-lappuja että rautaista yhteistyötä ja ymmärrystä eri alan asiantuntijoiden välillä.

 

Iterointi on ainut keino miten monimutkaiset prosessit saadaan helppokäyttöisiksi ominaisuuksiksi, ja jotta pääsee iteroimaan, niin pitää olla ensin arvaus. Uusien ominaisuuksien kanssa tavoittelemme tuotantokelpoisuutta kumppanikäyttäjien käyttöön mahdollisimman nopeasti, ja sen jälkeen raivokkaasti iteroimme palautteen perusteella, jotta ominaisuus voidaan julkaista laajemmalle. Tyypillisesti ensimmäisestä prototyypistä helppokäyttöiseksi laajaan käyttöön soveltuvaksi ominaisuuksi meillä tarvitaan 7-10 iterointikierrosta. Pystymme tähän jopa yhden 1kk kestävän kehityssprintin aikana, mikä on mahdollistanut nopean kehitystahtimme.

Isännöintijärjestelmä
Tammikuu 2021 julkaisutiedot. Kehityssprinttimme kestää 1 kuukauden. Julkaisemme päivityksen siis kerran kuukaudessa.

Kun aloitimme Avaa.io:n kehitystyön, niin rehellisesti sanottuna emme olleet valmistautuneet siihen, miten monimutkainen ja moniulotteinen kokonaisuus isännöintijärjestelmä on konepellin alta. Puhumattakaan siitä, että tarjoamme myös taloyhtiöiden osapuolille mahdollisuuden käyttää samaa järjestelmää mobiilisovelluksella. Kun olemme nyt päässeet vaiheeseen, missä rakennamme kiinteistötiedonhallinnan lisäksi taloyhtiön taloushallintomoduuleita, en ihmettele enää, miksi markkinoilla on vain kourallinen toimijoita, jotka vastaavia ominaisuuksia tarjoaa. Avaa.io on erinomaisessa asemassa tulevaisuutta varten, koska olemme voineet alusta asti valmistautua maanmittauslaitoksen huoneistotietojärjestelmän vaatimuksiin.

Avaa.io:n kehitystä ohjaa loppumaton uteliaisuus ja nykyisten toimintatapojen kyseenalaistaminen ja tehostaminen teknologian avulla. Meidän mielestämme ”näin on aina tehty” ei ole tarpeeksi hyvä syy tehdä asioita, vaikka se olisikin helppo tapa.

”Näin on aina tehty” sijasta ”Näin kannattaa tehdä” ohjaa meidän toimintaa ja kehitystyötä.

Tomi Salo CTO

 

Ps. Maa- ja metsätalousministeriön blogista voi lukea mitkä valtion visiot ovat huoneistotietojärjestelmän (eli ASREKin) tulevaisuudelle:

https://mmm.fi/blogit/-/blogs/huoneistotietojarjestelma-kehittyy-todelliset-tuottavuusharppaukset-vasta-edessa