DevOps (automatisoidut IT-palvelut) tarjoaa monia hyötyjä järjestelmäprojekteissa, mutta kiteyttäen se varmistaa, että uusia toiminnallisuuksia saadaan tuotantoon nopeasti niin kehitys- kuin ylläpitovaiheessa. Malli säästää ennen kaikkea liiketoiminnan aikaa. Keskustelimme asiantuntijoidemme, Janne Takalan ja Jussi Kauhasen, kanssa DevOpsin hyödyistä.

Ketterästi kehittäen

– DevOpsin tärkein hyöty on ketteryys ja nopeus, jota se tarjoaa. Siinä ei ole perinteistä byrokratiaa, jossa kehittäjät kehittävät toiminnallisuuksia, minkä jälkeen ne menevät jonkin putken kautta jollekulle, joka varmistaa laadun. Mallissa samat henkilöt kehittävät ja asentavat toiminnallisuuksia, ja parhaimmillaan asiat toimivat nappia painamalla ja niihin voidaan reagoida nopeasti, kertoo Jussi.

Asiakkaan näkökulmasta DevOps mahdollistaa uusien toiminnallisuuksien tehokkaan tuomisen testaukseen tai ylläpitovaiheessa tuotantoon.

– Tuotantoon voidaan päivittää jatkuvasti virheenkorjauksia tai tuoda uusia toiminnallisuuksia eikä siinä mene kuukausia tai pahimmissa tapauksissa useita vuosia. Kehitysprojektissa asiakkaalle saadaan ensimmäinen demo julkaistua jo muutamassa viikossa, jatkaa Janne.

Pipeline pilvessä: enemmän automatisaatiota, vähemmän virheitä

Pilvi mahdollistaa ympäristöjen automaattisen perustamisen. Esimerkiksi uusi testiympäristö saadaan käyttöön minuuteissa ilman fyysisiä asennuksia. Eteneminen on flow-tyyppistä, julkaisuja tehdään jatkuvasti automatisoituna. Kun päivitykset tuotantoon tehdään automaattisesti, minimoidaan samalla virheet.

– Laatu voidaan varmistaa monin keinoin, mutta se myös maksaa. Automaattitestauksen avulla hoidamme asioita, jotka olisivat muuten testaajan työlistalla. Tämä tuo myös työhön mielekkyyttä, kun samoja regressiotestejä ei tehdä käsin uudelleen ja uudelleen, sanoo Jussi.

devops-software-development-operations-infinity-symbol-programmer-administration-system-life-cycle-quality-coding-building-testing-release-monitoring-online-freelance-vector-illustration

Laadukasta koodia

DevOps tarkoittaa myös automatisoitua julkaisuputkea kehittäjän työpöydältä tuotantoon. Kun tiimissä tehdään koodiin muutoksia, tehdään julkaisuputkessa aina koodikatselmointi ja staattinen analyysi sekä ajetaan yksikkötestit.

– Kehittäjän tekemät muutokset katselmoidaan aina vähintään kahden muun kehittäjän toimesta, minkä jälkeen ne viedään testiympäristöön ja ajetaan integraatiotestit. Vasta tämän jälkeen muutokset julkaistaan eteenpäin, selventää Janne.

– Ajamme samat testit kaikissa ympäristöissä. ”Putki” ohjaa työtä ja koko prosessi on pitkälle automatisoitu, minkä avulla inhimilliset virheet voidaan välttää. Meillä on työkalut automaattiseen laadunvarmistukseen ja automaattitestit käytössä. Pysymme koko ajan kartalla siitä mikä toimii, ja että kaikki toimii oikein. Asiakkaan liiketoimintaosaajien aikaa ei tarvitse käyttää testaukseen, sillä automaattitestaus estää regressiot, summaa Jussi.

Työnkulkuprosessi. Yksinkertaisimmillaan asiaa voidaan kuvata niin, että kirjoitat kirjeen, laitat sen kirjekuoreen, liimaat postimerkin ja viet kirjeen postilaatikkoon. Jos kyseessä onkin paketti, viet sen postitoimipaikkaan. Ja jos kyseessä on verkko-ostosten palautus, et tarvitse postimerkkiä.

Myös antolainauksessa työnkuluissa on paljon erilaisia yksityiskohtia: esimerkiksi luottolimiitin hyväksyminen on monivaiheisempi prosessi kuin jo hyväksytyn limiitin käyttö. Myös luoton määrä vaikuttaa hyväksymisportaaseen ja hyväksyjien määrään. Työnkuluissa on lukuisia yksityiskohtia ja kun prosesseja digitalisoidaan, pitää kaikki yksityiskohdat sisällyttää järjestelmän ohjelmakoodiin. Tämä siksi, että prosessien tai tuotteiden muuttuessa myös koodia pitää muuttaa.

gear-1-272x300-2391540– Muutosten nopeuttamiseksi olemme ottaneet käyttöön konfiguroitavan työnkulkumoottorin. Perusideana on, että asiakkaan liiketoimintaprosessit määritetään käyttöliittymällä graafisesti, eikä ohjelmakoodia tarvitse muuttaa, kertoo tuotepäällikkö Janne Takala.

Rahoituspäätöksissä työnkulku on kaiken ydin. Esimerkiksi leasingrahoituksessa tai yritysrahoituksessa tarvitaan erilaisia tietoja ja työnkulkumoottorin avulla järjestelmä ohjaa automaattisesti prosessia ja tarjoaa käyttäjälle valmiiksi oikeat asiat käyttöliittymälle.

Tehokkuus ennen kaikkea

Työnkulkujen automatisointi tuo tehokkuutta. Esimerkiksi olemassa olevan asiakkaan kohdalla tietyn rajan alle jäävän lainan hyväksynnässä voidaan osa vaiheista ohittaa automaattisesti. Näin rahoituksen asiantuntijoiden aikaa vapautuu rutiineista toimintaan, joka tuottaa enemmän lisäarvoa.

Työnkulkumoottorin etu on, että asiakkaan prosessien muuttuessa, ei muutoksia tarvita ohjelmakoodiin. Kun tiedot ovat työnkulkumoottorissa, voidaan konfiguraatiomuutokset tehdä minuuteissa ilman sovelluksen asennusta tai käyttökatkoja.

– Voidaan ajatella, että tuote on moottori, jonka päälle rakennetaan tarkemmat säännöt. Niitä voidaan muuttaa tarvittaessa, samaan tapaan kuin autossa vaihdetaan vaihdetta, tiivistää Takala.

(*) Workflow engine