Developer Portalin avulla tukea Platform Engineering -toimintamalliin
Kirjoitin aiemmin blogitekstin otsikolla ”Ketterästi kohti korkeampaa laatua: Platform Engineeringin rooli nykyaikaisessa ohjelmistokehityksessä”. Kyseisessä kirjoituksessa käsiteltiin modernin sovelluskehityksen monimutkaisuuden lisääntymistä ja sen aiheuttamia vaikutuksia.
Tämä kirjoitus on jatkoa aiheeseen ja esittelee yhden tavan tukea alustakehitys- eli Platform Engineering -toimintamallia painottaen erityisesti työkalunäkökulmaa. Työkalua ja ratkaisumallia kutsutaan sovelluskehittäjän portaaliksi (Internal Developer Portal).
Itse törmäsin aiheeseen ja alueeseen viime kesänä, ja perehdyttyäni siihen tarkemmin vakuutuin aiheen mielenkiintoisuudesta, potentiaalista ja ajankohtaisuudesta. Maailmalla edelläkävijäyritykset ovat jo pitkällä tämäntyyppisten teknologioiden ja työkalujen hyödyntämisessä, mutta Suomen markkinassa kokemuksia on vielä varsin harvassa. Upeasti täällä Suomessakin muutamia pioneerejä kuitenkin jo löytyy!
Developer Portal -Sovelluskehittäjän portaali
Sovelluskehittäjän näkökulmasta Developer Portal on yksinkertaistettuna käyttöliittymä organisaation tai tiimin sovelluskehitysympäristöön ja infrastruktuuriin. Portaali yhdistää kaikki työkalut, sovelluskehityksen komponentit, infrastruktuurin, datan ja dokumentaation yhden käyttöliittymän alle.
Portaalin tarkoituksena ei ole korvata sovelluskehityksessä käytettyjä työkaluja, vaan muodostaa ymmärrettävä, selkeä ja kontekstuaalinen näkymä ja pääsy oikeaan tietoon ja käytettyihin työkaluihin.
Useimmiten portaalin ytimenä toimii katalogi, johon kerätään kaikki organisaation sovelluskehityksen elementit eli artefaktit. Näiden luokiteltujen ja viitetiedotettujen artefaktien ympärille nivoutuu suuri osa portaalin toiminnallisuuksista ja hyödyistä, esim riippuvuussuhteiden hahmottaminen, CI/CD -putken tila, dokumentaatio ja ennen kaikkea kattavat ja tehokkaat hakutoiminnot.
Olemassa olevan tiedon tehokkaamman löytymisen ja sen ympärille nivoutuvan toiminnallisuuden lisäksi monet Developer Portalit sisältävät Template-toiminnallisuuksia. Tämä tarkoittaa sitä, että aloitettaessa uusien komponenttien koodausta, työ voidaan aloittaa ennalta tehdyn mallin pohjalta. Näihin malleihin toteutetaan yhteisesti organisaatiossa sovittujen koodauskäytäntöjen mukaisia asioita, esim boiler-tekstejä, dokumentaatiopohjia, kirjastoja, käytettäviä työkaluja tai esimerkiksi CI/CD -työnkulun aktivoinnin. Template-toiminnallisuus mahdollistaa erityisen hyvin sovelluskehityksen pelikirjojen viemisen käytäntöön ja kannustaa sovelluskehittäjiä ja tiimejä yhdenmukaisiin toimintatapoihin.
Tavoiteltavia hyötyjä
Kehittäjäportaaleista haettavia hyötyjä on hyvä katsoa kahdesta suunnasta. Ensisijaisesti hyötyjä on syytä tarkastella sovelluskehittäjän ja kehitystyöhön suoraan osallistuvien henkilöiden näkökulmasta. Näiden hyötyjen on tärkeää olla konkreettisia ja riittävän merkittäviä, jotta usein autonomiaa arvostavat tiimit ja sovelluskehittäjät kokevat portaalin käyttämisen järkeväksi. Hyödyistä merkittävimmät liittyvät oman työ- ja vastuukentän hahmottamiseen ja toimintaympäristön selkeyttämiseen ja työn sujuvoittamiseen. Käytännössä tämä tarkoittaa sitä, että mikäli olen vastuussa jonkun komponentin kehittämisestä, pääsen helposti tähän kyseiseen komponenttiin liittyviin tietoihin, työkaluihin, ihmisiin, ympäristöihin ja työnkulkuihin käsiksi. Työstä tulee tällöin selkeämpää ja mielekkäämpää.
Organisaation näkökulmasta hyödyt ovat vieläkin merkittävämpiä, mutta ne eivät toteudu, elleivät kehitystyötä tekevät henkilöt käytä portaalia.
Kehittäjäportaalien kattava hyödyntäminen auttaa organisaatioissa parempaan tuottavuuteen, tehokkuuteen ja laatuun. Hyvä läpinäkyvyys ja tiedon helppo löydettävyys tukevat olemassa olevien komponenttien uudelleen hyödyntämistä ja toisaalta selkeys, parempi tiedonkulku ja yhtenäisemmät toimintamallit tuottavat entistä parempaa laatua.
Ja onpahan sitäkin mitattu, että kehittäjäportaalia hyödyntävien kehittäjien piirissä ollaan hieman tyytyväisempiä omaan työhön ja sen sisältöön 🙂
Mikäli kiinnostuit aiheesta, ota yhteyttä ja pyydä meiltä vaikka demoa!