Integraatio, jota ei ollutkaan
Miksi ”yhteensopiva nykyisten järjestelmienne kanssa” pitää harvoin paikkansa
Jossain kohtaa jokaista toimittajan esitystä on integraatiokalvo. Eri järjestelmien kuvakkeita, joita nuolet yhdistävät. ERP, MES, laatujärjestelmä ja uusi laite, kaikki keskustelemassa keskenään saumattomasti. Sana ”saumaton” esiintyy useammin kuin kerran. Todellisuus on kaikkea muuta.
Integraatio on se kohta, jossa teknologiaprojektit tulevat kalliiksi. Ei laite, eivät ohjelmistolisenssit eikä asennus, vaan liimakoodi. Kuukausien työ sen selvittämiseksi, miten järjestelmä A saadaan puhumaan järjestelmälle B, kun ne on suunniteltu eri yrityksissä, eri vuosikymmenillä ja erilaisin oletuksin siitä, miten data pitäisi jäsentää.
”Yhteensopiva” tarkoittaa yleensä ”siinä on rajapinta” tai ”se tukee standardiprotokollia”. Tämä on teknisesti totta ja käytännössä merkityksetöntä. Rajapinta on lähtöpiste, ei määränpää. Työ on teidän datanne sovittamisessa heidän dataansa, poikkeusten käsittelyssä silloin, kun sovitus ei istu, ja virheenkäsittelyn rakentamisessa yhteyksien katketessa. Ja tämän kaiken ylläpidossa, kun molemmat järjestelmät kehittyvät omaan tahtiinsa.
Olen nähnyt integraatioprojektien budjettien kaksin- ja kolminkertaistuvan. Ei siksi, että joku olisi ollut osaamaton, vaan siksi, ettei kukaan hahmottanut laajuutta alussa. Monimutkaisuus ei näy ennen kuin ollaan syvällä yksityiskohdissa: kenttä, joka on pakollinen yhdessä järjestelmässä ja valinnainen toisessa; tilakoodi, joka tarkoittaa eri asioita eri yhteyksissä; aikaleimamuoto, joka melkein täsmää mutta ei ihan. Jokainen poikkeama on päätös, pala koodia, testitapaus ja mahdollinen vikaantumistapa.
Toimittajat osoittelevat toisiaan. Nykyisen järjestelmänne toimittaja sanoo, että uuden laitteen pitää mukautua teidän standardeihinne. Uuden laitteen toimittaja sanoo, että heidän rajapintansa on hyvin dokumentoitu ja integraatio on teidän vastuullanne. Molemmat ovat teknisesti oikeassa. Kumpikaan ei rakenna siltaa ilmaiseksi.
Standardiprotokollien pitäisi ratkaista tämä. OPC-UA teollisuuslaitteille, REST-rajapinnat ohjelmistoille, standardit tiedostomuodot datan vaihtoon. Standardit auttavat, mutta ne eivät poista työtä. Ne standardoivat kuljetuskerroksen, eivät merkityskerrosta. Kaksi järjestelmää voi kommunikoida OPC-UA:n yli täydellisesti ja ymmärtää toisensa täysin väärin, koska ne mallintavat saman käsitteen eri tavoin.
On yksi tietty palaveri, jossa integraation laajuus aliarvioidaan. Joku kysyy, kuinka vaikeaa uuden järjestelmän liittäminen nykyiseen ympäristöön on. Toimittaja vastaa ”meillä on siihen valmiit liittimet” tai ”se tukee alan standardeja”. Kaikki nyökkäävät, ja siirrytään eteenpäin. Kukaan ei kysy, mitä tapahtuu, kun liitin ei katakaan juuri teidän ERP-versiotanne, kun protokolla on tuettu mutta tietomalli ei ole yhteensopiva tai kun reaaliaikavaatimukset ylittävät sen, mihin integraatiokerros pystyy.
Rehellinen vastaus kysymykseen ”kuinka vaikea integraatio on” kuuluu: ”riippuu yksityiskohdista, joita emme vielä tiedä”. Se vastaus ei mahdu projektiehdotukseen. Niinpä ehdotuksessa on arvio, joka perustuu parhaan tapauksen oletuksiin, ja projekti syö arvion ensimmäisen integraatiokuukauden aikana.
Yritykset, jotka hoitavat tämän hyvin, tekevät kaksi asiaa. Ensinnäkin ne budjetoivat integraation omana rivinään, tyypillisesti 30–50 % teknologian hinnasta, sen sijaan että hautaisivat sen asennukseen. Toiseksi ne ottavat nykyisiä järjestelmiä ylläpitävät ihmiset mukaan varhain. Eivät hyväksymään, vaan kertomaan, missä sudenkuopat ovat. ERP:tä hallinnoiva IT-tiimi tietää, mitkä integraatiot ovat kaatuneet aiemmin. Kunnossapito tietää, mitä protokollia nykyiset laitteet oikeasti tukevat ja mitä ne datalehden mukaan vain väittävät tukevansa.
Integraatiokalvon nuolet valehtelevat. Eivät väittämällä väärää, vaan vaikenemalla: nuoli näyttää yhteyden, mutta ei sitä työtä, jonka toimiva yhteys vaatii. Jokainen nuoli on oma projektinsa.