Ohjelmistorobotiikka

Ohjelmistorobotiikka (robotic process automation - RPA) on varsin uusi teknologia, jonka avulla automatisoidaan rutiiniprosesseja tietotyössä. Ohjelmistorobotti voi perustua konfiguroituun standardoituun työnkulkuun tai tekoälyn avulla toteutettuun itseoppivaan ohjelmistoon. == Uudenlaista toimistoautomaatiota == 'Ohjelmistorobotti' käyttää erilaisia tietojärjestelmiä samoin kuin normaali käyttäjä (ihminen) tekisi. Sen avulla pystytään automatisoimaan erilaisia tietotyön työnkulkuja (prosesseja). Ohjelmistorobotti voi esimerkiksi syöttää tietoja ERP -järjestelmään, hakea tietoja tietojärjestelmästä, muodostaa raportteja tai yhdistellä tietoa eri tietojärjestelmien välillä kuten ihminenkin tietojärjestelmän käyttäjänä tekisi. Ohjelmistorobotti ei vaadi tietojärjestelmältä erillisiä ohjelmointirajapintoja (API), vaan käyttää järjestelmiä normaalin käyttöliittymän kautta. == Historia == Ohjelmistorobotiikan edeltäjiä ovat testiautomaatiojärjestelmät ja 'botit'. Näiden ohjelmistojen kyky suorittaa isojen organisaatioiden prosesseja järjestelmällisesti ja valvotusti on kuitenkin varsin rajallinen ja varsinaisiin ohjelmistorobotiikkajärjestelmiin on kehitetty työkalut määritellä ja muuttaa työnkulkuja helpolla tavalla. Samoin niihin on lisätty työkaluja hallinnoida prosessien lopputuloksia ja poikkeamia. Ohjelmistorobotteja ovat soveltaneet ensimmäisenä erityisesti suuret organisaatiot http://www.hfsresearch.com/Robotic-Automation-as-Threat- to-Traditional-Low-Cost-Outsourcing , joilla on isot yksiköt tukitoimintoja varten sekä ulkoistuspalveluja tarjoavat toimijat. == Ohjelmistorobotiikka vs perinteinen ohjelmisto == Ohjelmistorobotit käyttävät tietojärjestelmiä täysin samalla tavalla kuin normaali käyttäjä (ihminen) tekisi. Siksi ohjelmistorobottien määrittelyä ei yleensä kutsutakaan ohjelmoinniksi vaan virtuaalisen työntekijän kouluttamiseksi (konfiguroinniksi). Koska robotin opettaminen ei muuta muiden järjestelmien toimintaa, on robotin opettaminen ja testaaminen myös merkittävästi helpompaa ja nopeampaa verrattuna perinteiseen tietojärjestelmäkehitykseen. Ohjelmistorobotiikalla pystytäänkin toteuttamaan prosessien automatisointia huomattavasti nopeammin ja ketterämmin kuin perinteisellä tietojärjestelmällä. Liiketoiminnan vaatimia muutoksia voidaan tällä tavoin toteuttaa nopeammin ja ilman, että muutokset hidastavat muuta tietojärjestelmäkehitystä. Niitä käytetäänkin esimerkiksi nopeuttamaan palvelukehitystä tai lisäämään automaatiota tapauksissa, jossa tapahtumamäärät eivät riitä perustelemaan perinteistä järjestelmäintegraatiota tai järjestelmä on esimerkiksi 'eläköitymässä' kohtuu pian. == Ohjelmistorobotiikan tunnusmerkkejä == === Ei koodausta === Ohjelmistorobotiikka ei vaadi perinteisiä ohjelmistokehitystaitoja, mutta ne helpottavat työtä. Robotin konfigurointi tapahtuu yleensä graafisilla työvälineillä ja yksinkertaisen robotin konfigurointi on mahdollista oppia jo muutamassa kuukaudessa. Konfigurointi tapahtuu yleensä graafisen käyttöliittymän kautta ja robotin työnkulku määritellään vuokaaviona, jonka osien järjestystä ja sisältöä voi muuttaa hiirellä raahaamalla ja siirtelemällä. === Ei muutoksia tietojärjestelmiin === Perinteisiin tietojärjestelmämuutoksiin sisältyy aina isoja riskejä, kun vanha tietojärjestelmä poistetaan käytöstä ja uusi otetaan samanaikaisesti käyttöön. Samalla tietosisällöt muunnetaan uuden järjestelmän ymmärtämään muotoon. Uuden järjestelmän myötä käyttäjien käyttökokemus ja prosessi muuttuu merkittävästi. Tietojärjestelmät joudutaan myös usein integroimaan useisiin vanhoihin järjestelmiin tai korvaamaan monta vanhempaa järjestelmää kerralla. Ohjelmistorobotiikan käyttöönotto ei vaadi muutoksia olemassa oleviin järjestelmiin. Robotille myönnetään käyttäjätunnukset ja käyttöoikeudet kuin se olisi normaali käyttäjä. Tämän lisäksi robotille konfiguroidaan prosessin työnkulku ja dialogi käyttöliittymän kanssa. === Liiketoiminnasta lähtien === Ohjelmistorobotiikan soveltaminen ei vaadi syvällisiä IT-taitoja. Tärkeämpää on liiketoiminnan ja sen tarpeiden ymmärtäminen. Niinpä ohjelmistorobottihankkeita johdetaankin usein liiketoimintalähtöisesti ja niillä pyritään esimerkiksi tehostamaan yksikön toimintaa, parantamaan laatua, parantamaan palveluaikaa, vastaamaan kausivaihteluihin tai nopeuttamaan uusien palveluiden vientiä markkinoille. === Ohjelmistorobotiikan rajoitteet === Ohjelmistorobotiikka ei korvaa tietojärjestelmiä. Se käyttää olemassa olevia järjestelmiä ja osa prosessin logiikasta voidaan konfiguroida ohjelmistorobotin tehtäväksi. Tietojärjestelmien kehitystä tarvitaan kuitenkin edelleen ja monet palvelut saattaa kannattaa siirtää tietojärjestelmän tehtäväksi jatkossa, jotta ohjelmistorobottien ylläpito ja jatkokehitys puolestaan yksinkertaistuu. Nykyisin käytössä olevat ohjelmistorobotit eivät tyypillisesti ole tekoälypohjaisia eivätkä osaa suorittaa omaehtoista päättelyä tai oppimista, joten ne pystyvät suorittamaan prosesseja, joissa ohjeistus on määrämuotoinen ja yksiselitteinen (toki se voi olla myös monimutkainen ja moniportainen). Ohjelmistorobottien kyky ymmärtää luonnollista kieltä tai kuvia on rajallinen. Niinpä ne ovat parhaimmillaan prosesseissa, jossa tieto on jo saatavissa esimerkiksi tietojärjestelmästä määrämuotoisena ja lopputuotoksena syntyvä tieto on edelleen määrämuotoista. == Ohjelmistorobotiikan vaikutuksia == === Vaikutukset työntekijän arkeen === Tutkimusten mukaan monissa tehtävissä iso osa ihmisten työajasta kuluu automatisoitavissa oleviin rutiinitehtäviin (esimerkkinä terveydenhoitoalalla tehty tutkimus hoitohenkilökunnan ajankäytöstä http://digitalworkforce.fi/valtakunnallinen-tutkimus-osoittaa- kolmannes-laakareista-kayttaa-6-tuntia-tyovuorosta-tietotyohon/ ). Useat organisaatiot, jotka ovat soveltaneet ohjelmistorobotiikkaa, eivät ole vähentäneet työvoimaa vaan muuttaneet henkilöiden toimenkuvia mielekkäämmiksi ja esimerkiksi lisänneet resursointia asiakaspalveluun https://hbr.org/2015/06/what-knowledge-workers-stand-to-gain-from-automation. Muutamien selvitysten mukaan työntekijät myös ottavat robotit virtuaalisiksi tiiminjäseniksi kuten uuden työntekijän http://www.xchanging.com/system/files/dedicated-downloads/robotic-process- automation.pdf. Ulkoistustoimialalla ohjelmistorobotiikka muuttanee merkittävästi toimintamalleja. Aiemmin ulkoistustoimijat ovat siirtäneet merkittäviä määriä työntekijöitään halvemman kustannustason maihin. Nyt ohjelmistorobotiikka antaa mahdollisuuksia suorittaa vastaavat tehtävät joko asiakkaan sijaintimaassa tai joidenkin analyytikkojen mielestä asiakas itse tuottaa jatkossa aiemmin ulkoistetut palvelut https://www.gartner.com/doc/2656215/predicts--business-it-services. === Ohjelmistorobotiikan merkitys yhteiskunnalle === Useiden tutkimusten mukaan ohjelmistorobotiikka tulee tehostamaan rutiiniprosesseja tietotyössä merkittävästi ja muuttaa globaaleja työmarkkinoita. http://eprints.lse.ac.uk/64032/1/blogs.lse.ac.uk- Nine%20likely%20scenarios%20arising%20from%20the%20growing%20use%20of%20robots.pdf Oxfordin yliopiston tutkimuksen mukaan 47% työpaikoista korvautuu tekoälyllä ja automaatiolla seuraavan 20 vuoden aikana. http://yle.fi/uutiset/lahes_puolet_tyopaikoista_on_vaarassa_kadota/6872845. Etla puolestaan arvio, että 36% suomalaisten työpaikoista korvautuu vastaavalla tavalla tekoälyllä ja automaatiolla http://www.digitoday.fi/yhteiskunta/2015/05/27/pelottava-ennustus-naissa- ammateissa-robotti-korvaa-ihmiset/20156721/66. == Jatkokehitys == Ohjelmistorobotiikka on teknologiana käytössä jo monissa organisaatioissa, mutta tulee kehittymään edelleen merkittävästi. Seuraavina askeleina ennustetaan esimerkiksi ohjelmistorobottien kykenevän tekoälypohjaiseen päättelyyn. Myös Business Process Management (PBMS) -työkalujen ja robotiikan rajojen arvioidaan jatkossa hämärtyvän. == Lähteet == Luokka:Ohjelmistot