Avuksi palveluarkkitehtuuri

Tavoite

Liikennevirasto halusi uudistaa tienpidon paikkatietojärjestelmänsä SOA-arkkutehtuurin mukaiseksi päästäkseen eroon vanhan järjestelmänsä ongelmista, kuten suurista joustamattomista sovelluksista, jotka eivät olleet yleiskäyttöisiä ja joiden versionvaihdot olivat työläitä.

Ratkaisu

Palveluperusteinen arkkitehtuuri toteutettiin hyödyntämällä Esrin rajapintoja sekä valmiita ArcGIS-työkaluja ja niiden palvelumahdollisuuksia.

Hyödyt

Sovelluksien toteuttaminen ja testaaminen on nopeaa, samoin virheiden löytäminen ja korjaaminen. Yhden suuren sovelluksen sijasta käyttäjä tai järjestelmä hyödyntää eri työvaiheiden yhteydessä pieniä yleiskäyttöisiä apusovelluksia. Palveluista muodostuu ketjuja, joissa palvelut käyttävät toisia palveluja. Rajapinnat ja vastuut eri järjestelmien välillä ovat selkeitä, versionvaihdot aiempaa kevyempiä ja sovellusten elinkaari aiempaa pidempi.

Liikennevirasto on uudistanut tienpidon paikkatietojärjestelmänsä keskeiset osat palveluperusteiseksi. Palvelut ovat yleiskäyttöisiä, nopeasti toteutettavia ja mahdollisimman pitkälle ArcGISin valmistyökaluja hyödyntäviä.

Palveluarkkitehtuurin kehittämisen syynä olivat ylitarkastaja Esko Hätälän mukaan vanhan järjestelmän lukuisat ongelmat. Sovellukset olivat suuria joustamattomia kokonaisuuksia, joiden versionvaihdot olivat työläitä ja elinkaari liian versiosidonnainen. Ongelmien selvittäminen ja korjaus oli usein hidasta, ja korjaamisen jälkeen piti testata yleensä paljon muutakin kuin vain korjattua osuutta.

"Sovellukset eivät myöskään olleet yleiskäyttöisiä, vaan tietylle järjestelmälle tarkoitettuja. Useat sovellukset sisälsivät päällekkäisiä toimintoja. Rajapinnat ja termit olivat kirjavia", Hätälä listaa.

Palveluarkkitehtuuria varten virastossa piti kehittää palveluiden toteuttamiselle periaatteet ja määrittelyt. Koodaamaan jouduttiin edelleen, mutta tavoitteet olivat Hätälän mukaan erilaisia.

"Tehtiin pienempiä yleiskäyttöisiä sovelluksia, joita toiset palvelut ja järjestelmät kutsuvat, ja pyrittiin välttämään perinteisiä mammuttimaisia sovelluksia."

Työvaiheet voitiin ajatella prosesseina. Yhden suuren sovelluksen sijasta henkilö tai järjestelmä hyödyntää työvaiheiden yhteydessä pieniä yleiskäyttöisiä apusovelluksia.

Palveluista haluttiin muodostaa ketjuja, joissa palvelut käyttävät toisia palveluja. Mahdollisimman paljon pyrittiin hyödyntämään Esrin rajapintoja, valmiita ArcGIS-työkaluja ja niiden palvelumahdollisuuksia.

"Tavoitteena oli, että sovellukset olisivat nopeita toteuttaa ja testata. Käyttäjien koulutuksen piti olla nopeaa, samoin virheiden löytämisen ja korjaamisen. Koska tavoitteena oli yleiskäyttöisyys ja tehokkuus, rajapintojen täytyi olla standardeja ulos ja tehokkaita sisäisesti."

Palveluiden toteuttamisessa hyväksyttiin palvelun tiukkaa määrittelyä vapaampi lähestymistapa ja se, että kehitystyössä kannattaa edetä vaiheittain kohti standardoidumpia palveluita.

Rajapinnat ja vastuut eri järjestelmien välillä haluttiin selkeiksi, sovellusten elinkaari pidemmäksi, versionvaihdot kevyemmäksi ja kaikki termistö yhdenmukaiseksi.

Mietittävä, mitä palvelut palvelevatHatala.gif

Uudistuksen toteuttamisen yhteydessä piti Hätälän mukaan ottaa huomioon muun muassa seuraavia asioita:

  • sisäiset ja ulkoiset käyttäjät ja käyttäjämäärät
  • mahdollisuus laajentaa palvelun käytettävyyttä pienten muutosten avulla myös muihin vastaaviin tarpeisiin
  • intranet- ja internet-käyttö ja niihin liittyvät tietoturva-asiat
  • palvelun resurssien riittävyys ja tarve resurssien priorisointiin
  • toiminnallinen ja tekninen laajennettavuus
  • standardirajapinnan käyttö verrattuna nopeaan ei-standardiin ratkaisuun sekä
  • yhden tai useamman koodauskielen käyttö. 



Palveluperusteisen paikkatietojärjestelmän kehittäminen on Esko Hätälän mukaan jatkuva prosessi, sillä uusia palveluja voidaan lisätä järjestelmään nopeasti aina tarpeiden mukaan.

Kun näitä asioita käytiin läpi, niissä jouduttiin Hätälän mukaan tekemään enemmän tai vähemmän myös kompromisseja.

 

"Kaikki nämä asiat on kuitenkin hyvä käydä läpi, koska silloin tulee mietittyä tarkemmin, miten palvelulla oikeasti halutaan palvella ja mitä sen pitäisi palvella", hän huomauttaa.

Laajan kokonaisuuden hallinnassa lähdettiin Hätälän mukaan siitä, että arkkitehtuurikuvaus on palveluarkkitehtuurin hallinnan keskeinen apuväline. Hallinnan perustana ovat toiminnalliset arkkitehtuurikuvaukset, jotka tukevat operatiivista toimintaa ja kehitystyötä.

"Niiden etuna on selkeys. Pystymme selkeästi hahmottamaan pitkiäkin palveluketjuja ja seuraamaan, minne tieto alkuperäisestä lähteestä loppupäässä menee. Vastuunjako on selkeä ja selkeästi esitettävissä. Valitun arkkitehtuurikuvaustavan ansiosta eri tason tietoja voidaan päivittää muista riippumattomasti."

Järjestelmän arkkitehtuurin kuvaustapa ja rakenne on Hätälän mukaan mahdollista alkuvaiheessa toteuttaa myös kevyemmin ilman erityistä arkkitehtuurikuvausohjelmistoa. Nyttemmin Liikenneviraston arkkitehtuuria on ryhdytty hallitsemaan ARIS-ohjelmistolla.

Tavoitteet toteutuivat

Järjestelmäuudistuksen kaikki keskeiset tavoitteet on saatu Hätälän mukaan toteutettua ja vanhan järjestelmän ongelmat ratkaistua.

Uuden järjestelmän rakentamisessa suurimmaksi haasteeksi osoittautui tietoliikenneyhteyksien moitteeton toiminta, jonka varmistamiseen kannattaa Hätälän mukaan varautua käyttämään paljon aikaa ja vaivaa.

Palveluarkkitehtuurin yhdeksi varjopuoleksi on Liikennevirastossa tunnistettu ketjuuntuviin palveluihin liittyvä vaara. Palvelun kaatuessa myös muut sitä hyödyntävät sovellukset lakkaavat toimimasta.

Palveluihin tukeutuva tienpidon paikkatietojärjestelmä saatiin pystyyn reilussa vuodessa. Keskeisten palveluiden toteutuksen jälkeen voidaan kehittämistä jatkaa olemassa olevien palveluiden standardoinnilla, toiminnallisella parantamisella ja palvelutarjonnan laajentamisella.

"Kun aloitetaan helposta päästä, liikkeelle päästään nätisti. Kun ensimmäiset palvelut saadaan tehtyä, palveluarkkitehtuuri lähtee tavallaan itse kehittämään itseään. Alkaa löytyä pieniä järjestelmän kannalta keskeisiä palikoita, joista saa tehtyä palveluita, ja ne alkavat lopulta ketjuuntua keskenään", hän toteaa.

(Artikkelin pidempi versio julkaistu Esri Finland -asiakaslehden numerossa 1/2011)