Sitemap
Bitti poikittain

Riku ja Olli kirjoittavat tietotekniikasta, digitalisaatiosta, tietoyhteiskunnasta ja kaikesta muusta tietokoneisiin liittyvästä.

Ohjelmistorobotti? — mieluummin ei

3 min readJan 5, 2019

--

Press enter or click to view image in full size

Ohjelmistorobotit eli RPA-sovellukset ovat työkaluja, jotka toimivat ihmisen lailla muiden järjestelmien käyttöliittymissä automatisoidusti. Useimmiten niitä käytetään kun halutaan automatisoida toistuvaa, rutiininomaista työtä. Esimerkkinä vaikkapa asiakastietojen siirtäminen järjestelmästä toiseen. Ohjelmistorobotit klikkailevat, kirjoittavat ja siirtävät kursoria kuin kyseessä olisi tietokonetta oikeasti käyttävä ihminen.

Erityisesti taloushallinnon alalla ohjelmistorobotiikka on ollut viimevuosina melkoisen hypetyksen kohteena. Kuten hypeilmiöitä yleensäkin, myös ohjelmistorobotiikkaa on tarpeellista tarkastella kriittisesti. Tässä tekstissä avaamme näkemyksiämme siitä, miten ohjelmistorobotteihin pitäisi suhtautua osana organisaation muita järjestelmiä.

Ohjelmistorobotiikka ≠ automatisointi

Joissain yhteyksissä ohjelmistorobotiikan käsitettä käytetään synonyymina kaikelle automatisoinnille. Näin asia ei ole. Sen sijaan ohjelmistorobotiikkaan tulisi suhtautua yhtenä automatisoinnin toteutustapana.

Sen sijaan että kysyisimme “Millaisissa käyttötarkoituksissa voisimme hyödyntää ohjelmistorobotiikkaa?” tulisi kysyä “Millaista toistuvaa työtä voisimme automatisoida?”.

Vastattuamme tähän kysymykseen, voimme miettiä keinoja, joilla tätä automatisointitarvetta lähdemme ratkaisemaan. Voi hyvinkin olla, että valitsemme juuri ohjelmistorobotiikan, mutta sitä ei kuitenkaan tulisi pitää kaiken automatisoinnin lähtökohtana.

Onko ohjelmistorobotti kestävä ratkaisu?

Ohjelmistorobottien eduiksi luetaan yleensä ainakin käyttöönoton helppous ja suhteellisen alhaiset käyttöönoton kustannukset. Lisäksi automatisoitavan prosessin mallintaminen robotin suoritettavaksi on helppoa, sillä yleensä robotti ohjelmoidaan tekemään täsmälleen samat asiat kuin ihminenkin tekisi. Erityisen hyödyllistä ohjelmistorobotiikka on kun halutaan nopeasti automatisoida yksittäisen työntekijän rutiinitehtäviä.

Ohjelmistorobotteihin liittyy kuitenkin haasteita, joista on hyvä olla tietoinen. Järjestelmäarkkitehtuurin näkökulmasta katsottuna, ohjelmistorobotti luo uuden kerroksen jo olemassa olevien kerroksien päälle. Uudet ohjelmistokerrokset tuovat mukanaan tarpeen dokumentaatiolle ja ylläpidolle. Lisäksi ne saattavat hidastaa uusien ohjelmistojen kehitystä, vanhojen jatkokehitystä ja pahimmassa tapauksessa voivat hankaloittaa alla olevien ohjelmistojen vaihtamista tai tehdä sen mahdottomaksi. Ohjelmistorobotti on aina riippuvainen sen kontrolloimasta ohjelmistosta, ja ohjelmiston vaihtuessa myös robotti on tarpeen päivittää.

Get Bitti poikittain’s stories in your inbox

Join Medium for free to get updates from this writer.

Toiseksi ohjelmistorobottien irrallisuus automatisoitavista ohjelmistoista voi tarkoittaa myös heikkoa toimintavarmuutta, sillä ohjelmistoja ei useinkaan suunnitella automatisoitaviksi robottityöläisen ehdoilla. Pienikin visuaalinen muutos robotin käyttämän järjestelmän graafisessa käyttöliittymässä, esimerkiksi ohjelmiston versiokorotuksen yhteydessä, saattaa aiheuttaa robotin hajoamisen. Tällainen toimintavarmuus ei ole riittävää varsinkaan jos kyseessä on ydinliiketoimintaan liittyvä automaatio.

API eli Application Programming Interface

Erityisesti silloin, kun puhutaan organisaatiolle mittatilaustyönä kehitetyistä ohjelmistoista, on kohtuullista olettaa, että järjestelmät voidaan integroida toisiinsa. Useimmat nykyaikaiset ohjelmistot mahdollistavat tämän ohjelmointirajapintojen, eli APIen avulla.

Press enter or click to view image in full size

APIt ovat ohjelmistojen tarjoamia liitoskohtia, joiden avulla sovellusta voidaan lukea ja käskyttää ohjelmallisesti. Tällaista ohjelmointirajapintaa voisikin ajatella putkena, johon työnnetään ohjelmiston tukemia käskyjä, ja josta sen jälkeen saadaan vastauksena haettu data tai tieto siitä onnistuiko käsky. Usein rajapintoja yhdistävänä liimana toimii ohjelmistokoodi, joka vastaa käskyjen lähettämisestä ja siitä mitä palautuvalla tiedolla tehdään.

APIt yhtenäistävät ohjelmistojen välistä kommunikaatiota, tuovat joustavuutta käyttötarpeiden muuttuessa sekä mahdollistavat valmiiden ohjelmistojen räätälöinnin vastaamaan organisaation todellista liiketoimintaa.

APIt muuttuvat harvemmin kuin graafiset käyttöliittymät, ja mahdolliset muutokset ovat paremmin ennakoitavissa. Hyvään API-suunnitteluun kuuluukin muutosten tarkka dokumentointi ja muutoksista ilmoittaminen APIn hyödyntäjille hyvissä ajoin. Erityisesti silloin kun muutokset voisivat hajottaa jotain.

Lopuksi

Ohjelmistorobotiikka on monissa tapauksissa hyvä ratkaisu rutiinityön automatisoimiseen, mutta siihen liittyy ongelmakohtia, jotka ovat tärkeää huomioida. Usein ohjelmistojen välisen integraation rakentaminen on sekä mahdollista että kustannustehokkaampaa erityisesti pitkässä juoksussa, eikä ohjelmistorobotille ole varsinaista tarvetta. Teknologisesta näkökulmasta paras ratkaisu on laittaa järjestelmät kommunikoimaan toistensa kanssa APIen kautta graafisten käyttöliittymien sijaan.

--

--

Bitti poikittain
Bitti poikittain

Riku ja Olli kirjoittavat tietotekniikasta, digitalisaatiosta, tietoyhteiskunnasta ja kaikesta muusta tietokoneisiin liittyvästä.