Mika Mokaalle
Kuten jo korjasitkin, oleellista on avoimet rajapinnat ja oikeastaan tarkemmin vielä avoimet ja standardin mukaiset rajapinnat. Ei tarvitse välttämättä olla avoin toteutus! Vientiin menevät hyvinvoinnin ratkaisut ovat pakotettuja käyttämään avoimia standardin mukaisia rajapintoja mutta valitettavasti kotimaassa hyvinvoinnin ratkaisutoimittajatkin saavat vielä "rellestää" kuten haluavat, koska asiakkaat (=kunnat) eivät osaa vaatia eikä tilata.
"Avoimet standardit ja avoimet rajapinnat"
Mitäs nuo nyt oikeasti tarkoittaakaan? En nyt muista olitko sinä vai Ossi ;-) kun mainostit, että MS tarjoaa järjestelmiinsä avoimia rajapintoja. No joo, ovathan ne avoimia määrittelyjä, joiden pohjalta voi toteuttaa niiden mukaisia rajapintoja ja näin kutsua rajapinnalla MS-järjestelmiä. Eli voit toteuttaa järjestelmääsi kutsut MS-järjestelmään (MS tilalle voi vaihtaa tietysti jonkin muunkin järjestelmän). Mutta se että rajapinta on avoimesti tarjolla käytettäväksi ei nyt ole sitä mitä tässä haetaan!
Ideana on, että avoimia standardirajapintoja käytetään ja toteutetaan useisiin eri järjestelmiin, ei siis siten että yksi järjestelmätoteutus tarjoaa omaan toteutukseensa omaa "avointa" rajapintaa, jolla tätä toteutusta voidaan käyttää. Jos sama rajapinta on toteutettu useisiin järjestelmiin puolin ja toisin, voi minkä tahansa järjestelmän periaatteessa vaihtaa parempaan tai edullisempaan.
Tehdään tästä asiasta yksinkertaisempi esimerkillä. Oletetaan, että olisin labrajärjestelmän toteuttaja ja labrajärjestelmästäni pitäisi hakea tietoja terveyskeskuksen (tk) järjestelmään (joka on toisen toteuttajan tekemä). En ota kantaa siihen haetaanko käytännössä labratiedot labrajärjestelmästä vai lähettääkö labrajärjestelmä tiedot, tämä tässä nyt vain esimerkin vuoksi näin.
Vaihtoehtoja:
1. Ilmoitan tk-järjestelmän toteuttajalle, että järjestelmässäni on tällainen meidän labrajärjestelmä oma avoin rajapinta, jota voit kutsua, että voit hakea labratiedot.
2. Ilmoitan tk-järjestelmän toteuttajalle, että järjestelmäni käyttää avoimen standardin mukaista avointa rajapintaa, jota kutsumalla labratiedot voi hakea.
Vaihtoehto 1 seuraukset:
- kunta on hommannut labrajärjestelmäni ja tk-järjestelmän on näin pakko toteuttaa rajapinta omaan järjestelmäänsä
- tk-järjestelmän toteuttaja saa laskutetettua tuon rajapinnan toteutuksesta kuntaa, sillä se on uusi tk-järjestelmään toteutettava rajapinta (ja voin kertoa että lasku ei ole pieni!)
- oletetaan että kunta haluaa vaihtaa labrajärjestelmän -> uusi labrajärjestelmä käyttää jälleen omaa rajapintaa -> tk-järjestelmään toteutetaan uusi rajapinta ja laskutus juoksee
- oletetaan, että kunta vaihtaa tk-järjestelmän -> uusi tk-järjestelmä joutuu toteuttamaan labrajärjestelmäni rajapinnan ja laskuahan siitäkin taas tulee
- Jokainen ymmärtää mitä tämä tarkoitaa, jos avoimella rajapinna tarkoitetaan yhden toteutuksen tarjoamaa kaikille avointa rajapintaa omaan toteutukseen. Ja kun tämä casen siirtää vaikkapa sairaalaan, jossa järjestelmien välisille rajapinnoille on kymmenien integrointien tarve!
Vaihtoehto 2 seuraukset:
- ideaalitilanne: kunta on hommannut labrajärjestelmäni. Koska järjestelmäni toteuttaa avoimen standardin mukaista avointa rajapintaa, niin tk-järjestelmä on jo toteuttanut tämän rajapinnan aiemmin. Integrointi on näin helppoa ja laskua on vaikea kirjoittaa jo olemassa olevan käyttämisestä. Eli kunnalle tulee säästöä. Joku valveutunut kunta on jopa saattanut järjestelmiä hankkiessaan jo vaatinut standardiarajapintojen käyttämistä.
- oletetaan, että kunta vaihtaa labrajärjestelmä -> uusi labrajärjestelmä toteuttaa standardirajapinnan -> järjestelmän vaihto vaivattomampaa ja myös lasku pienempi, kun uutta rajapintaa ei tarvitse toteuttaa
- oletetaan, että kunta vaihtaa tk-järjestelmää -> uusi tk-järjestelmä toteuttaa standardirajapinnan -> järjestelmän vaihto jälleen vaivattomampaa ja myös lasku pienempi, kun uutta rajapintaa ei tarvitse toteuttaa
Summa suurum, avoimien standardirajapintojen käyttö ideaalitilanteessa mahdollistaa järjestelmienn vaihtamisen parempiin tai edullisempiin, ilman että kunta on ajautunut vendor-lockiin.