Modulaarinen kehittäminen

Hankkeessa haluttiin lisätä kuntien ymmärrystä siitä, miten verkkosivustoja voitaisiin suunnitella ja kehittää siten, että säästettäisiin resursseja ja luotaisiin aidosti käyttäjälähtöisiä ja saavutettavia ratkaisuja. 

Verkkopalvelun avoimen koodin hyödyntäminen oli ollut haastavaa

Monenlaisia avauksia yhteiskehittämisen suuntaan oli aiempina vuosina jo tehty. Turun kaupunki esimerkiksi avasi oman verkkopalvelunsa lähdekoodin muiden kuntien hyödynnettäväksi vuonna 2015. Tätä koodia hyödynsivät mm. Jyväskylän, Porin ja Varkauden kaupungit. Yhteistyöstä käytettiin nimitystä KADA (kts. lisätietoa osoitteesta: kada.fi). 

Toisen kunnan lähdekoodin hyödyntäminen osoittautui kuitenkin suhteellisen haastavaksi. Jotta koodia voisi helposti hyödyntää, tulisi tuotoksesta julkaista ns. white label eli riisuttu versio, joka ei sisällä kuntaspesifejä ominaisuuksia. 

KADA-kuntien (Jyväskylä, Pori, Varkaus, Turku) verkkopalvelualustat alkoivat vuonna 2019 olla jälleen vailla päivitystä ja yhdessä mietittiin, mikä voisi olla järkevin tapa uudistaa kaikilla näillä kunnilla käytössä oleva Drupal7, ja tehdä yhteiskehittämistä yksinkertaisesti ja kustannustehokkaasti. 

Headless-teknologiaa harkittiin

Syntyi ajatus ns. headless-teknologiasta, jossa uudistetaan ainoastaan verkkopalvelun näyttävä kerros ja annetaan vanhentuvalle sisällöntuotantojärjestelmälle pidempi elinkaari pitämällä se suojattuna taustajärjestelmänä ja tuomalla sen rinnalle muitakin datan lähteitä. Näistä taustajärjestelmistä data näytettäisiin uudessa front-kerroksessa. 

Ajatuksen toimivuutta lähdettiin koeponnistamaan yhteistyössä Kuntaliiton ja KADA-kuntien kanssa kahden PoCin eli Proof of Conceptin avulla. (PoCit ajoittuivat hankekautta edeltäneisiin kuukausiin, jälkimmäinen vuodenvaihteeseen 2019-2020). Teknisesti headless-malli toimi, tieto saatiin liikkumaan taustajärjestelmistä näyttävään kerrokseen, joten eteneminen tuntui varsin järkevältä. 

Hankekauden alettua headless-mallin kustannustehokkuus haluttiin kuitenkin vielä varmistaa. Päädyttiin tilaamaan asiaa koskeva selvitys. Asiantuntijaksi valikoitui verkkopalveluiden kehittämisen, kumppanivalintojen ja web-teknologioiden asiantuntija North Patrolin Perttu Tolvanen. Työn tärkeimpänä tavoitteena oli perehtyä kuntayhteistyön tilanteeseen ja tavoitteisiin sekä arvioida etenemisen realistisuus ja tarvittaessa ehdottaa vaihtoehtoisia etenemismalleja.

Arvio kehittämis- ja ylläpitokustannuksista muutti suunnitelmia

Otteita North Patrolin selvityksestä:

”Tyypillisesti ehdotetun kaltaista monikerroksista arkkitehtuuria käytetään tilanteissa, joissa ylläpidettäviä sisältöjä julkaistaan huomattavan monessa eri kanavassa ja käyttäjille näkyvä kerros halutaan toteuttaa hyvin sovellusmaisena (esim. asiointipalveluiden kohdalla). 

Monikerroksisen arkkitehtuurin toteutus ja ylläpito tulee huomattavasti kalliimmaksi kuin julkaisujärjestelmän päälle tehtävä toteutus. North Patrolilla on käytettävissään huomattavan paljon referenssitietoa vastaavista projekteista ja näiden kustannuksista. Työn aikana on arvioitu, että ehdotettu headless-arkkitehtuuri tuottaa pelkästään erillisen esityskerroksen ja tiedonsiirtoon tarvittavan API-yhdyskäytävän osalta useamman sadan tuhannen euron lisäkustannukset (arviolta 200 000–300 000 euroa projektikustannuksiin verrattuna esim. Drupal 8/9 -toteutukseen). Tämän lisäksi kokonaisuuden ylläpitokustannukset elinkaaren aikana ovat 1,5x–2x verrattuna tavanomaisempaan toteutukseen.”

Päädyttiin kokeilemaan modulaarista kehittämistä

Selvityksessä tarkennettiin ehdotettua arkkitehtuuria, ja esitettiin vaihtoehtoinen ratkaisumalli, joka vastaisi paremmin hankekuntien vaatimuksiin ja kustannustavoitteisiin. Päädyttiin siihen, että sen sijaan, että yritetään saada kokonaisesta sivustosta tai sen esityskerroksesta kaikkia palveleva, niin etsitään verkkosivustolta sellaisia elementtejä ja moduuleja, joita on mahdollista kehittää itsenäisesti ja alustariippumattomasti. Näitä modulaarisia osioita voidaan helpommin ottaa osaksi kunnan omaa sivustoa.

Yhdeksi modulaarisen kehittämisen ehdokkaaksi nousi itsenäinen, keskitetty hakuratkaisu, josta kaikki hyötyisivät. Sen MVP (minimum viable product) toteutettiin hankkeessa. Lue lisää osiosta: Keskitetty hakuratkaisu

Aika näyttää miten kustannustehokasta modulaarinen kehittäminen on ja ottavatko kunnat ratkaisuja käyttöön. Aito hyöty syntyy vasta siitä kuntien oivalluksesta, että muiden kehittämiä ratkaisuja kannattaa rohkeasti hyödyntää, jatkokehittää ja jakaa edelleen.

Lue lisää muista hankkeiden kehittämistä modulaarisista ratkaisuista: