JHS 179 Kokonaisarkkitehtuurin suunnittelu ja kehittäminen

Liite 8. Integraation ja rajapintojen kuvaus

  • Versio: 2.0
  • Julkaistu: 7.2.2017
  • Voimassaoloaika: toistaiseksi

    1 Johdanto

Tämä liite täydentää JHS 179 -suositusta ohjeistamalla kokonaisarkkitehtuuriin sisältyvän integraatioarkkitehtuurin suunnittelun ja kuvaamisen. Erilaisiin yhdistämisiin ja koostamisiin eli integraatioihin liittyvät rakenteet ovat osa kokonaisarkkitehtuuria ja yhteentoimivuuden perustaa. Integraatiosuunnittelun ohjeistus koskee kaikkia kokonaisarkkitehtuurin näkökulmia ja etenee toiminta-arkkitehtuurista tarkentuen kohti teknologia-arkkitehtuurin fyysistä tasoa. Tarkasteluun on otettu myös ratkaisuarkkitehtuuri, koska yhteentoimivuuden tekniset vaatimukset vaikuttavat juuri siihen. Organisaatio voi hyödyntää ohjeistusta tarpeidensa mukaiselle tarkkuustasolle asti.

Vaatimukset integraatioarkkitehtuurille johdetaan toiminnan tiedonvaihtotarpeista. Integraatioita voidaan kuvata monesta arkkitehtuurinäkökulmasta ja monella tarkkuustasolla. Keskeisenä tavoitteena on yhteentoimivuuden varmistaminen EU:n EIF-kehyksen1 (The European Interoperability Framework) mukaisesti. Integraatio- ja rajapintakuvaukset laaditaan kokonaisarkkitehtuuria tarkentaen esimerkiksi rajapintojen ja tietoliikennearkkitehtuurin kuvauksilla.

Integraatiosuunnittelu aloitetaan tunnistamalla palveluiden ja palvelukokonaisuuksien integrointitarve, hyödyntämällä tehtyä kehitettävän kohteen kokonaisarkkitehtuuria sekä tunnistamalla ja analysoimalla kohdearkkitehtuurista integraation kannalta olennaiset kohdat, kuten:

  • tavoitteet, palvelut ja palvelumalli liiketoimintamallin avulla.
  • yleiset tavoitteet ja reunaehdot integraatioarkkitehtuurille.
  • arkkitehtuuri- ja tietoturvaperiaatteiden antamat integraatioita koskevat linjaukset ja vaatimukset (JHS 179 -suosituksen mukaisesti).
  • integraatiotoimintojen organisointi ja vastuutus.
  • integroinnin kehittämisen tiekartta.
  • riippuvuudet muihin toimijoihin ja sidosryhmiin.
  • integraatiota koskevat vaatimukset, kuten suorituskyky ja tietoturva.
  • tietomallin kuvaus eli dokumentaatio integraatiossa käsiteltävistä tietosisällöistä.
  • strategiset teknologiavalinnat, esim. XML, JSON, REST.

Integroitaessa eri tietojärjestelmiä keskenään on kiinnitettävä huomiota järjestelmien ja niissä käsiteltävien tietojen suojaustasoluokitteluun.

  • Korkeampaa suojaustasoa olevaa tietoa ei saa siirtää alempaa suojaustasoa toteuttavaan järjestelmään.
  • Tiedot, myös saman suojauksen vaativat, on pystyttävä pitämään erillään toisistaan. Tämä korostuu erityisesti, kun käsitellään korkeampaa suojaustasoa vaativia tietoja, jolloin ne on pystyttävä pitämään fyysisestikin erillään toisistaan. Lisätietoja on VAHTI-ohjeissa2.
  • Tietojen siirto pitää tehdä luokittelujen edellyttämällä suojauksella ja suojauksen täyttävällä välitysjärjestelmällä.
  • Siirretyn tiedon suojaustaso täytyy siirtyä vastaanottavalle osapuolelle, kuten muidenkin siirrettäviin tietoihin liittyvät käytön ja toiminnan kannalta tarpeelliset metatiedot.
  • Siirrettäessä tietoja eri tietoturvaluokkiin kuuluvien järjestelmien välillä, pitää huomioida yhdyskäytäväratkaisut ja varmistaa, että siirretään ainoastaan se tieto, joka on sallittua siirtää.
  • Tietojärjestelmien välisessä tiedonsiirrossa tarvittava suojaus hoidetaan salauksella tai muilla menetelmillä, sanomarakenteeseen ei puututa, vrt. suomi.fi-palveluväylä.

Organisaation johto, palveluiden ja toiminnan suunnittelijat, ohjelmoijat sekä tietoturva-asiantuntijat ja -arkkitehdit tarvitsevat kukin näkökulmaansa sopivat kuvaukset. Samaa kohdetta tarkastellaan näissä kuvauksissa eri lähtökohdista ja tarpeista. Tyypillisesti johdon ja ydintoiminnan osaajille tarkoitetut kuvaukset koskevat kokonaisuutta, palveluja, prosesseja ja tietovirtoja. Toimittajille, ohjelmoijille ja teknisestä tietoturvasta vastaaville tarkoitetut kuvaukset ovat puolestaan yleensä teknologialähtöisiä ja yksityiskohtaisempia. Lisäksi ketterän kehittämisen arkkitehtuuriohjauksessa on tyypillistä, että kuvaukset tehdään ensin ylätasolla ja yksityiskohdat tarkentuvat toteuttamisen yhteydessä.

Integraatioiden elinkaaren hallinnan, versioinnin ja ylläpidon haasteet on huomioitava jo integraatiosuunnittelua aloitettaessa, jotta mm. kustannukset ovat hallittavissa. Muutostilanteet on hyvä ennakoida ajoissa, esimerkiksi miten tiedon muuttumisen vaikutukset huomioidaan. Myös integraatiotoiminnon suorituskyvyn mittaaminen on hyvä huomioida jo alusta asti.

Standardien, viitekehysten ja mallinnustapojen hyödyntäminen luo pohjaa yhtenäisille suunnittelu- ja kuvauskäytännöille. Käytettävissä on mm. seuraavia viitekehyksiä tai mallinnuskieliä:

  • TOGAF (The Open Group Architecture Framework, viitekehys 3 )
  • Archimate® 4
  • BPMN5
  • UML6

Osana ratkaisuarkkitehtuuria valitaan teknologiat, joilla integraatio toteutetaan. Kaikki tekniset integraatiot edellyttävät luotettavaa tietoliikennearkkitehtuuria, josta kerrotaan tarkemmin luvussa 5. Kansallista palveluväylää integraation näkökulmasta on käsitelty luvussa 6. Teknisiin integraatioihin sisältyy aina valvonta- ja monitorointiratkaisujen huolellinen suunnittelu ja kuvaaminen.

Integraation suunnitteluvaiheet ovat:

  1. Tunnista integraation kohteena oleva palvelukokonaisuus ja integraatiotarve.
  2. Tunnista ja kuvaa kehittämiskohteen kokonaisarkkitehtuurista integraatioon vaikuttavat kohdat ja muut olennaiset seikat (esim. vastuut ja roolit, tietojen master data -käytännöt, soveltamisprofiilit jne.).
  3. Suunnittele ja kuvaa toimijoiden välinen ja prosessien välinen vuorovaikutus.
  4. Määrittele ja kuvaa tietojärjestelmien/sovellusten välinen vuorovaikutus.
  5. Määrittele ja kuvaa kukin rajapinta hyödyntäen aikaisempia määrittelyitä ja linjauksia.
  6. Suunnittele ja kuvaa ratkaisumalli (huomioiden erilaiset integraatiopalvelut, verkkorakenteet, palomuurikäytännöt jne.)
  7. Määrittele ja kuvaa loogisen ja fyysisen verkon liitynnät, verkkoliikennettä tukevat järjestelmäpalvelut, referenssipisteet ja yhteyspisteet.

Suunnitteluvaiheiden yksityiskohtainen sisältö on esitetty luvuissa 2-5.

Oheiseen taulukkoon on koottu kokonaisarkkitehtuurin 1) peruskuvauksista ja 2) laajennetuista kuvauksista ne, joita integraatiosuunnittelussa käytetään ja 3) tuotetaan.

1) Peruskuvaukset (JHS 179)

- integraatiosuunnittelussa tarvittavat kuvaukset

2) Laajennetut kuvaukset (JHS 179) -integraatiosuunnittelussa tarvittavat kuvaukset

3) Integraatiot ja rajapinnat - integraatiosuunnittelun lopputuotokset

Periaatteellinen taso

  • Integraatiotarpeen kuvaus
  • Integraation kohteen kuvaus
  • Tunnistetut integraatioon vaikuttavat periaatteellisen tason kuvaukset JHS 179-suosituksen mukaisesti

Toiminta-arkkitehtuurin kuvaus

  • Palvelukartta
  • Toimijoiden välinen vuorovaikutus
  • Prosessikartta
  • Prosessien välinen vuorovaikutus
  • Prosessien kuvaus
  • Palveluiden ja prosessien riippuvuus (Toiminnan palvelut-prosessit -matriisi)

Toiminta-arkkitehtuurin kuvaus

  • Toiminnan palvelut
  • Toiminta-arkkitehtuurin kuvaus

    • Tarvittaessa TOGAF in mukaiset footprint-kaaviot
    • Tarkenna Toimijoiden välinen vuorovaikutus -kaaviota (KA-kuvausten visualisointi, Toimijoiden välinen vuorovaikutus)
    • Tarkenna kehittämisen kohteen Prosessien välinen vuorovaikutus -kuvausta (KA-kuvausten visualisointi, Prosessien välinen vuorovaikutus)

    Tietoarkkitehtuurin kuvaus

    • Käsitteistö
    • Käsitemalli
    • Sanastot

    Tietoarkkitehtuurin kuvaus

    • Tietovirrat
    • Loogiset tietomallit
    • Soveltamisprofiilit
    • Prosessit-tiedot -riippuvuudet (matriisi)
    • Toimijat-tiedot -riippuvuudet (matriisi)

    Tietoarkkitehtuurin kuvaus

    • Integraation kohteen keskeinen käsitteistö
    • Soveltamisprofiilit

    Tietojärjestelmäarkkitehtuurin kuvaus

    • Arkkitehtuurin kerrosnäkymä
    • Tietojärjestelmien välinen vuorovaikutus

    Tietojärjestelmäarkkitehtuurin kuvaus

    • Tietojärjestelmien loogiset rajapinnat (KA-taulukot, Loogiset rajapinnat)
    • Tietojärjestelmien fyysiset rajapinnat (KA-taulukot, Fyysiset rajapinnat)

    Tietojärjestelmäarkkitehtuurin kuvaus

    • Arkkitehtuurin kerrosnäkymä
    • Tietojärjestelmien välisen vuorovaikutuksen kuvauksen tarkennus (KA-kuvausten visualisointi)
    • Tietojärjestelmien välinen vuorovaikutus ja integraatiot
    • Tarkka integraatiokuvaus
    • Sovellusten rajapinnat
    • Karkean ja yksityiskohtaisen tason sekvenssikaaviot
    • Loogiset rajapinnat (KA-taulukot, Loogiset rajapinnat)
    • Fyysiset rajapinnat (KA-taulukot, Fyysiset rajapinnat)

    Teknologia-arkkitehtuurin kuvaus

    • Teknologiavalinnat

    Teknologia-arkkitehtuurin kuvaus

    • Teknologiapalvelut
    • Looginen alustajäsennys
    • Loogisen verkkokaavion kuvaus (KA-taulukot, looginen verkkokaavio)
    • Fyysinen verkkokaavio soveltuvana kuvana

    Teknologia-arkkitehtuurin kuvaus

    Tarkennetut teknologiavalinnat

    Tietoliikennearkkitehtuurin rakenne

    • Looginen verkkokaavio kuvaus domaineineen (sisäiset, ulkoiset)
    • Verkkodomain-rajapinnat ja referenssipisteet

    Looginen verkkokaavio -taulukko

    • Tietoliikenneyhteydet
    • Tietoliikenneyhteyksiin liittyvät sovelluskerroksen palvelut (tarjotut/hyödynnetyt)
    • Tietoliikenneyhteyksien luokittelu vaatimuksia vastaaviksi

    Fyysisen verkkokaavion tiedot (liittyvät loogisen verkkokaavion tietoliikenneyhteyksiin)

    • Fyysisen yhteyden/kaapelin ID
    • Gateway-laite/kortti/portti -ID
    • Tietoliikennelaite- ja palvelinlaitetiedot

      2 Integraatiokokonaisuuden analyysi

    Integraatiosuunnittelu kannattaa aloittaa analysoimalla integraation kohteena oleva palvelukokonaisuus ja sen keskeisten elementtien vuorovaikutus selkeästi ja johdonmukaisesti (integraatioprosessin vaiheet 1 ja 2). Osa tarvittavista vuorovaikutuskaavioista on usein tehty jo toiminta-arkkitehtuurin suunnittelussa. Nyt kaaviot pitää vain tarvittaessa täydentää integraationäkökulmasta. Verkostoituminen palvelun tuottamisessa edellyttää yhteisten integraatioratkaisujen ja rajapintojen tai rajapintapalveluiden käyttöönottoa ja johtaa usein strategisiin valintoihin, esimerkkinä Kansallinen palveluväylä Suomi.fi7.

    Toiminta- ja tietoarkkitehtuurien kuvauksista edetään kohti yksityiskohtia ja teknologisia ratkaisuja. Kaikkien kuvausten tulee perustua käytännön tarpeisiin ja olla loogisesti selkeällä paikalla integraatiokokonaisuudessa, joka voi edelleen olla osa vielä laajempaa palvelujen kokonaisuutta.

    Esimerkki palvelukokonaisuudesta on kansalaisen tekemän hakemuksen käsittely julkishallinnon sähköisessä asiankäsittelyssä. Hakemukseen liittyvä tietokokonaisuus syntyy ja liikkuu eri käsittelyvaiheiden ja järjestelmien kautta lopulta tiedon loppusijoituspaikkaan, esimerkiksi sähköiseen arkistoon.

    Integraatiokuvauksissa kerrotaan mitä palvelua ja toiminnallista tarvetta varten integraatiokokonaisuus on olemassa. Tietovirtakuvauksissa keskitytään analysoimaan mitä reittejä pitkin tieto liikkuu kokonaisuuden keskeisten elementtien välillä. Tietoarkkitehtuurissa kuvataan integraatioissa tarvittavan tiedon rakenteet (loogiset tietovarannot, käsitemallit, skeemat jne.).

    Tietosisältöihin liittyvien sanastojen ja käsitejärjestelmien päivittämiseen ja käsitemallien laatimiseen voidaan käyttää yhteentoimivuusmenetelmää. Sen tavoitteena on yhteisten sanastojen täydentäminen koko julkista hallintoa kattavaksi. Yhteentoimivuusmenetelmän avulla kokonaisarkkitehti laatii tarkasteltavaa kokonaisuutta kuvaavan käsitemallin. Käsitemalleissa tulee käyttää mahdollisimman paljon yhteisiä käsitteitä, jotka on kuvattu menetelmän tietokomponenttikirjastossa. Harmonisoitujen käsitemallien pohjalta laaditaan siirrettävien tietojen soveltamisprofiilit ja sanomarakenteet. Käsitteistöä ja sanastoa voidaan täydentää tarvittaessa. (Ks. liite 7 Semanttisen yhteentoimivuuden menetelmäohje).

    Palvelukokonaisuutta voidaan jäsentää Arkkitehtuurin kerrosnäkymän avulla. Kerrosnäkymä on yksi visuaalinen ja palvelukeskeinen kokoava esitys ja näkymä organisaation tai kehitettävän kohteen kokonaisarkkitehtuuriin (ks. liite 6 KA-kuvausten visualisointi kohta Arkkitehtuurin kerrosnäkymä).

    image11.jpg

    Kuva 1. Pelkistetty ja yleistetty malliesimerkki arkkitehtuurin kerrosnäkymästä.

    Kuvattavassa integraatiokokonaisuudessa on tyypillisesti useita rajapintoja järjestelmien välillä.

      3 Toiminta-arkkitehtuurin täydentäminen integraatioiden näkökulmasta

        3.1 Toiminnan palvelut

    Toiminnan suunnittelussa määritellään toimijat, toimijoiden väliset vuorovaikutukset ja palvelut. Palveluista voidaan koota esimerkiksi asiakkaan elämäntilanteen mukaisia palvelukokonaisuuksia, joiden väliset suhteet on yleensä järkevää kuvata palveluiden tuottamiseen tarvittavien prosessien välisenä vuorovaikutuksena (ks. kohta 3.3). Tunnistetut toiminnalliset organisaatiorajapinnat tukevat palveluiden suunnitteluvaiheen määrittelytyötä.

    Kehittämiskohteen arkkitehtuurissa toiminnan palvelut on kuvattu liitteen 5 KA-taulukot välilehdelle Toiminnan palvelut. Liitteen 6 KA-kuvausten visualisointi -kohdan Palvelukartta esittää palvelut karttamaisessa muodossa. Toiminnan palveluiden ja prosessien riippuvuus on kuvattu liitteen 5 KA-taulukot välilehden Toiminnan palvelut-prosessit -avulla.

    Palvelun tuottamisen kokonaisuus voidaan myös kuvata tarkemmin esimerkiksi TOGAFissa esitellyllä Business Footprint Diagramilla8. Tämän tyyppiset kaaviot kuvaavat linkkejä toiminnan tavoitteiden, organisaatioyksiköiden, palveluiden ja toimintojen välillä sekä yhdistävät nämä toiminnot niihin teknologioihin, joita tarvitaan haluttujen kyvykkyyksien toteuttamiseksi.

    Vaiheen lopputuloksia ovat:

    • Business Footprint Diagram -kuvaukset (tarvittaessa).

        3.2 Toimijoiden välinen vuorovaikutus

    Toimijoiden välisen vuorovaikutuksen selvittäminen (integraatiosuunnittelun vaihe 3) on integraatiotarpeiden ja -vaatimusten määrittelyn perusta. Vuorovaikutuksesta kuvataan palvelujen käyttäjät (asiakkaat) ja palvelujen tuottajat sekä ja näiden välinen toiminta. Tulos esitetään vuorovaikutuskaaviona, jota voidaan hyödyntää myös organisaatiorajat ylittävän palvelutuotannon, palveluketjujen ja -verkostojen suunnittelussa

    Vuorovaikutuksessa esiintyvät keskeiset tietovirrat ja siirrettävät tiedot kuvataan yleisellä tasolla toiminnan kieltä käyttäen. Tietovirtoihin kirjataan karkealla tasolla myös tiedot palveluihin liittyvistä sopimuksista, tavara- ja rahavirroista ja muista vastaavista vuorovaikutuksen tietolähteistä.

    Kuvaus laaditaan liitteen 6 KA-kuvausten visualisointi -kohdan Toimijoiden välinen vuorovaikutus avulla. Toimijoiden välisen vuorovaikutuskaavion käyttö on ohjeistettu suosituksen kappaleessa 7.2 Toiminta-arkkitehtuurin kuvaus.

    Toimijoiden vuorovaikutuskaaviota voidaan tarvittaessa täydentää liiketoiminnan käyttötapauskaavioilla (UML:n Business Use Case), joissa esitetään tarkemmin palveluiden käyttötilanteita ja -tapoja.

    Vaiheen lopputuloksia ovat:

    • toimijoiden välinen vuorovaikutus liitteen 6 KA-kuvausten visualisointi -kohdan Toimijoiden välinen vuorovaikutus avulla.
    • liiketoiminnan käyttötapauskaaviot tarvittaessa.

        3.3 Prosessien välinen vuorovaikutus

    Prosessien välinen vuorovaikutus on selvitettävä (integraatiosuunnittelun vaihe 3) palvelutuotannon sisäisten palveluketjujen optimoimiseksi. Oleellista on prosessien välisen tiedonvaihdon ja tietovirtojen suunnittelu ja eri vaihtoehtojen tarkastelu. Vuorovaikutuksen selvittämisessä prosesseja voi tarkastella myös loogisina prosessiryhminä, esimerkiksi:

    • liiketoiminta-alueittaiset ryhmät tai
    • tiettyyn, kohteena olevaan palveluun liittyvät prosessit.

    Prosessien välinen vuorovaikutus esitetään liitteen 6 KA-kuvausten visualisointi -kohdan Prosessien välinen vuorovaikutus avulla suosituksen luvussa 7.2.2 Toiminta-arkkitehtuurin kuvaus loogisella tasolla esitetyllä tavalla. Prosessien vuorovaikutuskaavion avulla voidaan hahmottaa prosessissa vaikuttavia toimijoita, jotka voivat olla esim. rooleja ja sovelluksia. Kaaviossa tulee näkyä selkeästi ja yksikäsitteisesti prosessien väliset tietovirrat, jotta kuvauksesta olisi hyötyä integraatiosuunnittelussa.

    Vaiheen lopputuloksia ovat:

    • prosessien välinen vuorovaikutus liitteen 6 KA-kuvausten visualisointi -kohdan Prosessien välinen vuorovaikutus avulla.

      4 Tieto- ja tietojärjestelmäarkkitehtuurien suunnittelu integraation näkökulmasta

    Tässä luvussa käsitellään tieto- ja tietojärjestelmäarkkitehtuurien suunnittelua yhteentoimivuuden ja integraatioarkkitehtuurin näkökulmasta. Integraatioarkkitehtuurilla tarkoitetaan kokonaisarkkitehtuurin rakenneosien osajoukkoa, jonka yhdistävinä tekijöinä ovat tietojen siirto ja rakenneosien keskinäinen vuorovaikutus. Integraatioarkkitehtuuri leikkaa KA-kehyksen neljää näkökulmaa. Luvussa käytetään läpäisevänä esimerkkinä kansallisen palveluarkkitehtuurin (KaPA) integraatiokuvauksia.

    Luvussa ei käsitellä tietoliikenneprotokollia ja vastaavia teknisen tason ratkaisuarkkitehtuurin asioita.

    Tietoarkkitehtuurin suunnittelu ja kuvaukset on esitetty suosituksen luvussa 7.3 Tietoarkkitehtuurin kuvaus. Tietojärjestelmäarkkitehtuurin suunnittelu ja kuvaukset käsitellään suosituksen luvussa 7.4 Tietojärjestelmäarkkitehtuurin kuvaus.

        4.1 Loogiset tietomallit ja soveltamisprofiilit

    Tietojenvaihtoa varten voidaan loogisista tietomalleista muodostaa yksi tai useampi soveltamisprofiili, jonka pohjalta luodaan sanomarakenne. Semanttisen ja teknisen yhteentoimivuuden varmistamiseksi sanomarakenteen tietosisältö tulee kuvata soveltamisprofiilina, jonka muodostaminen on kuvattu tarkemmin liitteessä 7 Semanttisen yhteentoimivuuden menetelmä.

    Seuraavassa työnkulkukaaviossa on esitetty, miten yhteentoimivuusmenetelmää käytetään integraation suunnittelussa tietoarkkitehtuurin näkökulmasta.

    image13.jpg

    Kuva 2. Työnkulkukaavio yhteentoimivuusmenetelmän hyödyntämisestä tietointegraatiossa.

    Soveltamisprofiilin muodostamisessa on huomioitava toimialakohtaiset, kansalliset ja kansainväliset yhteentoimivuutta tukevat suositukset ja standardit. Yhteentoimivuuden huomioiminen on tärkeää erityisesti organisaatioita tai toimialoja yhdistävissä poikkihallinnollisissa integraatioissa. Soveltamisprofiilien tekniset rakennemääritykset voidaan esittää XML-skeemoina JHS 170 Julkishallinnon XML-skeemat9 -suosituksen mukaisesti tai muilla vaihtoehtoisilla sanomarakenteen merkkauskielillä, kuten JSON.

        4.2 Tietojärjestelmien välinen vuorovaikutus

    Tietojärjestelmien välisen vuorovaikutuskaavion (integraatioprosessin vaihe 4) avulla esitetään tietojärjestelmien ja tarvittaessa tarkemmalla tasolla sovelluskomponenttien väliset tietovirrat. Kaaviossa ei kuitenkaan määritellä tarkemmin, miten tieto kulkee sovellusten välillä.

    Vuorovaikutuskaavioon valitut tietojärjestelmät tai sovelluskomponentit voidaan ryhmitellä ja kaavion informaatiosisältöä kasvattaa esimerkiksi seuraavasti:

    • tietojärjestelmät tai sovelluskomponentit ryhmitellään ja värjätään käyttäen sovelluskartan logiikkaa.
    • tietovirtoihin liitetään otsikkotekstiä siirrettävien tietojen sisällöstä vähintään päätietoryhmien tai tietoryhmien tarkkuudella.

    Image1

    Kuva 3. Tietojärjestelmien välinen vuorovaikutus (lähde: Jyväskylän kaupunki).

    Kuvassa 3 on esitetty sovellusten ja sovelluskomponenttien (esim. Effica-kotihoito) välisiä tietovirtoja (ks. liite 6 KA-kuvausten visualisointi kohta Tietojärjestelmien välinen vuorovaikutus ja suosituksen luku 7.4 Tietojärjestelmäarkkitehtuurin kuvaus).

    Tietojärjestelmien välistä integraatiota suunniteltaessa kuvataan integroitavat tietojärjestelmät tai sovelluskomponentit sekä niiden välillä siirrettävät tiedot.

    Huomioi integraatiokehityksessä mukana olevien järjestelmien rajoitukset ja mahdollisuudet. JHS 166 Julkisen hallinnon IT-hankintojen yleiset sopimusehdot -suosituksen liitteessä 9 (Tukimateriaalia: Avoimista rajapinnoista tietojärjestelmä- tai palveluhankinnoissa)10 on määritelty, mitä tarkoitetaan avoimilla rajapinnoilla julkisissa hankinnoissa ja mitä vaatimuksia avoimille rajapinnoille on. Huomioi myös nämä vaatimukset.

    Esimerkkinä (ks. kuva 4) kuvaus Jyväskylän kaupungin kotihoitopalvelusta, jossa kullakin integraatiolla on tunniste (id, APn).

    Image2

    Kuva 4. Tietojärjestelmien vuorovaikutus ja integraatiot (lähde: Jyväskylän kaupunki).

    Palveluväyliin, integraatioalustoihin yms. viitataan kuvauksissa loogisella tasolla, esimerkki on esitetty kuvassa 5.

    Image3

    Kuva 5. Tarkka integraatiokuva (VTJ-kysely, Palveluväylä).

    Vaiheen lopputuloksia ovat:

    • tietojärjestelmien vuorovaikutus liitteen 6 KA-kuvausten visualisointi kohdan Tietojärjestelmien välinen vuorovaikutus avulla.
    • tietojärjestelmien vuorovaikutuskaavio tunnistettuine rajapintoineen.
    • tarkemmat kuvaukset integraatioratkaisusta.

        4.3 Rajapintojen kuvaaminen

    Yleistä

    Tarkemman tason integraatiokuvauksia tarvitaan toteutusarkkitehtuuria varten. Integraatio (liittymä, vuorovaikutus, yhteistoiminta) voi käyttää useita rajapintoja, sovitinpalveluita tai liityntäpalveluita.

    Keskeisiä suunnittelukohteita teknisissä rajapintakuvauksissa ovat standardeilla ohjelmointirajapinnoilla, kuten Web Services, REST tai JSON, koodattavat yhteiset tiedon rakenteet sekä integraatio-patternit, integraatioalustat ja palveluväylät. Rajapintojen välistä vuorovaikutusta ja välitettävän tiedon rakennetta kuvataan esimerkiksi UML-sekvenssikaavioilla, WSDL-määrityksillä ja XML-skeemoilla.

    Rajapintoja tulisi tulevaisuudessa kehittää rajapintapalveluina, jotka sisältävät teknisen toteutuksen lisäksi palvelutason, dokumentaation, kehittäjäkokemuksen huomioimisen sekä sovittamisen osaksi liiketoimintaa ja organisaation palvelukehitystä. Julkisen sektorin organisaation tulisi toteuttaa avoin rajapinta osana API-perhettään aina kun mahdollista (lue lisää osoitteesta avoinrajapinta.fi). Avointa tietoa tarjoavan rajapinnan kohdalla tulee noudattaa suositusta JHS 189 Avoimen tietoaineiston käyttölupa11.

    Keskeisten tietovarantojen ja toimintojen rajapinnat pitää ymmärtää tuotteina, joilla on itsessään elinkaari ja arvo. Rajapintojen ja rajapintapalveluiden elinkaaren hallintaan kuuluu ketterä suunnittelu, toteutus nykyaikaisilla menetelmillä, hallittu käyttöönotto, rajapintojen hallinta ja suunniteltu poistaminen käytöstä sekä selkeä versiointi.

    Rajapintojen suunnittelu

    Rajapintojen suunnittelussa voidaan hyödyntää mm.:

    • ajantasaista rajapinta- ja liittymälistausta.
    • käytössä mahdollisesti olevaa ESB-välineen dokumentaatiota.
    • käytössä mahdollisesti olevaa CMDB-välineen dokumentaatiota.
    • UML-kuvauksia
    • integraatioprofiileja.

    Tarvittavalta osa-alueelta laaditaan kuvaukset, jotka sisältävät rajapinnat, integraatioelementit, adapterit ja mahdollisesti käytössä olevat integraatioprofiilit. Integraatioprofiili kuvaa tyypillisesti tarkalla tasolla transaktiot, tuettavat tiedostoformaatit, kyselyiden yhdistelyn tai monimutkaisten tapahtumien käsittelyn. Kukin rajapinta kuvataan erikseen (integraatioprosessin vaihe 5).

    Rajapintapalveluiden kuvaus

    Rajapintapalvelut ovat teknisen staattisen rajapinnan yleiseksi hyödyntämiseksi ohjelmoituja digitaalisia palveluita, kuten esimerkiksi rajapinnan kautta haettavien tietojen siirtopalvelu. Rajapintapalvelut voidaan koostaa useista tarjolla olevista rajapintapalveluista, joista valitaan vain osa (esim. kaikkia tiedon eri formaatteja ei oteta käyttöön). Rajapintapalvelut voidaan kuvata ja koota liitteen 5 KA-taulukot välilehdelle Tietojärjestelmäpalvelut.

    Tietojärjestelmäpalveluilla tarkoitetaan JHS 179 -suosituksessa käyttöliittymän sisältäviä loppukäyttäjäpalveluita sekä rajapinnan sisältäviä automatisoituja sovelluspalveluita. Toimijan omassa käytössä olevat sovellukset käyttävät myös samoja rajapintapalveluja, kuin mitä tarjotaan muille sovelluksille, eli käyttäjiä ovat sisäiset sovellukset, toimijan tarjoamat asiakassovellukset sekä jatkojalostajien sovellukset.

    Rajapintapalveluiden toteuttamiseksi on ohjeita esimerkiksi Kansallisen palveluarkkitehtuurin liityntäkatalogiohjeissa12 tai toimijoiden omissa ohjeissa.

    Rajapintapalveluun kuuluvat mm:

    • kuvaus palvelusta.
    • palvelutason määrittely.
    • dokumentaatio.
    • pääsynhallinta ja käyttäjäroolien hallinta.
    • kehittäjäkokemuksen huomiointi.
    • versiointi.
    • elinkaaren hallinta.

    Sovelluskerroksen palvelun rajapinta (tietojärjestelmäpalvelu) tulee kuvata KA-taulukoihin (ks. liite 5 KA-taulukot välilehti Tietojärjestelmäpalvelut) sisältyvien tietojen osalta mahdollisimman yhtenäisellä tavalla. Esimerkiksi käytettävyyden, palvelutason ja tietoturvan tietojen osalta yhtenäinen kuvaustapa mahdollistaa vertailun ja analysoinnin useiden palveluiden kesken. Laajemmin käytettävyys, palvelutaso ja tietoturva tulisi kuvata mahdollisimman yhtenäisesti muissakin KA-taulukoihin sisältyvissä tiedoissa.

    Kunkin rajapinnan perustiedot esitetään liitteen 5 KA-taulukot välilehden Loogiset rajapinnat mukaisesti. Fyysisten rajapinnoista kuvataan tiedonsiirrossa toteutettavat rajapinnat, esim. WSDL- ja/tai REST-skeemat (ks. liite 5 KA-taulukot, Fyysiset rajapinnat). Tiedonsiirtoskeemojen tulee perustua loogisiin tietomallikuvauksiin, esimerkiksi soveltamisprofiileihin, jotka muodostetaan Semanttisen yhteentoimivuuden viitekehyksen osoittamalla tavalla (ks. liite 7 Semanttisen yhteentoimivuuden menetelmäohje).

    Rajapintojen vuorovaikutuksen kuvaaminen

    Rajapintojen vuorovaikutuksen kuvaamisessa voidaan käyttää UML-mallinnuksen mukaisia kaavioita, esimerkiksi kuvan 6 mukaista UML Interaction Overview Diagramia. Kaaviossa yhdistetään useita sekvenssikaavioita samaan kaavioon.

    image24.png

    Kuva 6. UML Interaction Overview Diagram.

    Toiminta-arkkitehtuuria tarkennetaan tarvittaessa integraatioarkkitehtuurissa esim. sekvenssikaavioilla. Samoin teknologia-arkkitehtuuria tarkennetaan tarvittaessa teknisen sanomarakenteen määrittelyllä. Osiot, joissa kuvassa 6 lukee ”ref”, kuvataan edelleen tarkemmin sekvenssikaaviona. Sekvenssikaavio on UML-mallinnuksessa käytettävä olioiden välistä vuorovaikutusta kuvaava kaavio.

    Sovellustasolla voidaan ensiksi laatia kuvan 7 mukainen karkean tason sekvenssikaavio, jota tarkennetaan UML-sekvenssikaaviolla.

    Sekvenssikaavio laaditaan keskeisille operaatioille ja tilanteisiin, joissa kaavioiden käyttö edistää rakenteiden ymmärtämistä. UML-sekvenssikaaviossa kuvataan tietyn sovelluksen komponenttien/olioiden välinen viestien järjestys.

    image23.png

    Kuva 7. Esimerkki karkean tason sekvenssikaaviosta.

    Sekvenssikaavio voidaan kuvata myös tarkemmalla tasolla, josta on esimerkki kuvassa 8.

    image27.png

    Kuva 8. Esimerkki tarkemmasta sekvenssikaaviosta.

    Pilvipalveluiden rajapinnat

    Pilvipalveluna hankittavan tietojärjestelmäpalvelun integraatio ja rajapinnat kuvataan loogisella ja fyysisellä tasolla sekä omassa että toimittajan hallinnassa olevien tietojärjestelmien osalta. Lisätietoja pilvipalveluista ja esim. SaaS-palvelusta (Software as a Service) on suosituksen liitteessä 9 Virtualisointi ja pilvipalvelut teknologia-arkkitehtuurin suunnittelussa.

    image25.png

    Kuva 9. SaaS -palveluiden mallintaminen.

          4.3.1 Esimerkki ESB-palvelun käytöstä (VIA)

    Valtion yhteisen integraatiopalvelun (VIA) avulla valtionhallinnon organisaatiot voivat siirtää tietoja (sanomia) omien tietojärjestelmiensä ja muiden organisaatioiden tietojärjestelmien välillä tai omien tietojärjestelmiensä välillä.

    VIA-integraatiopalvelu on keskitetty sanomanvälityspalvelu, jonka avulla organisaatiot voivat toteuttaa integraatioita. Keskitetty palvelu tarjoaa mahdollisuuden vähentää järjestelmien välisten erilaisten integraatioiden määrää ja helpottaa niiden valvontaa. VIA-palvelua käyttämällä integraatioarkkitehtuurista saadaan hallitumpi ja kokonaisarkkitehtuurista selkeämpi.

    VIA on korotetun turvatason järjestelmä ja sillä voi siirtää turvatason III aineistoa.

    VIA (tai perinteinen väyläratkaisu) soveltuu parhaiten tapauksiin, joissa jokin seuraavista toteutuu:

    • siirrot halutaan tehdä käyttäen REST-protokollaa.
    • välitettävät viestit ovat isoja tai sisältävät liitetiedostoja.
    • tarvitaan perinteisiä eräsiirtoja (SFTP-siirrot).
    • siirrettävä aineisto on tietoturvatasoa III tai vaaditaan korotettua tietoturvatasoa.
    • siirrot halutaan tehdä VY-verkon sisällä.
    • tarvitaan siirtoja IV-tason ja III-tason välillä.
    • tarvitaan sanoman validointia.
    • tarvitaan virusskannausta.
    • tarvitaan muunnoksia sanoman sisällössä, kuten:
    • CSV -> XML/JSON.
    • Määräpituiset / flatfile -> CSV/XML/JSON.
    • XML -> JSON -> XML.

    Kansallinen palveluväylä soveltuu toteutettavaan integraatioon hyvin, jos viestinvälitys voidaan toteuttaa käyttäen

    • SOAP-protokollaa.
    • pienikokoisia viestejä.
    • julkista tai tason IV-aineistoa.
            4.3.1.1 Sanomapohjaiset integraatiot

    VIA tukee perusintegraatio-patterneja, kuten:

    • sisältöön perustuva reititys.
    • protokollamuunnos.
    • tiedostosiirto.
    • viestinmuunnos.
    • sisällön rikastus / suodatus.
    • pyyntö-vastaus (asynkroninen).
    • kutsu ilman paluuarvoa (fire-and-forget).

    Sanomapohjaisten viestien muunnokset voivat olla esimerkiksi REST-protokollalla tulevan sanoman muuttaminen SOAP-sanomaksi. Oheisessa kuvassa 10 on hahmoteltu erityyppisiä muunnosskenaarioita.

    image30.png

    Kuva 10. SOAP/REST -sanomien muunnokset VIA:n avulla.

            4.3.1.2 Suurten liiteaineistojen siirto SOAP/REST-kutsuissa

    Suurten liitetiedostojen siirtoon VIA:lla on oma menetelmänsä, jossa liitetiedosto aineisto siirretään erillisenä siirtona ja varsinainen sanoma omana synkronisena kutsunaan. Tiedonsiirron ensimmäisessä vaiheessa lähetetään liite VIA:lle. VIA virustarkastaa liitteen ja lähettää tarkastuksen jälkeen aineistosta uniikin id-tiedon. Tällä id-tiedolla Lähettäjä viittaa varsinaisessa SOAP/REST-sanomassa aiemmin toimitettuun liiteaineistoon. VIA lähettää SOAP/REST-muotoisen kutsun eteenpäin lisäten viestiin mukaan URI-linkin, jonka avulla Vastaanottaja voi hakea liiteaineiston.

    Tämä siirron periaate/sekvenssikaavio on esitetty kuvassa 11.

    image28.png

    Kuva 11. Suurten tiedostojen siirtoratkaisun periaate/sekvenssikaavio.

            4.3.1.3 Tiedostojen siirrot (SFTP)

    VIA mahdollistaa myös eräajotyyppiset (ajastetut tai ajastamattomat) siirrot käyttäen SFTP-protokollaa. Kuvassa 12 on esitetty vaihtoehtoja tiedostonsiirroille.

    image29.png

    Kuva 12. Tiedoston siirrot VIA:n avulla.

    Luvun 4 lopputuloksia ovat:

    • Loogiset rajapinnat -taulukko.
    • Fyysiset rajapinnat -taulukko.
    • UML Interaction Overview Diagram.
    • Sekvenssikaaviot.

      5 Teknologia-arkkitehtuuri integraation näkökulmasta

    Teknologia-arkkitehtuurin tekemistä ja sen tuotoksia kuvataan suosituksen luvussa 7.5 Teknologia-arkkitehtuurin kuvaus. Tässä luvussa keskitytään tietoliikennearkkitehtuurin kuvaamiseen.

        5.1 Tietoliikennearkkitehtuuri osana IT-infrastruktuuria

    Tietoliikennearkkitehtuuri kuvaa ne verkkorakenteet ja mekanismit, joilla tiedonsiirtoa voidaan tarjota päästä-päähän sovelluskerroksen järjestelmien tarpeisiin (integraatioprosessin vaihe 6).

    Tietoliikennearkkitehtuuri koostuu usean tyyppisistä laite- ja ohjelmistoelementeistä, jotka muodostavat tietoliikenneverkot, niiden fyysiset resurssit, kuten tiedonsiirtokaapelit, verkkolaitteet (laite/kortti/portti), laitetilat sekä vastaavat loogiset resurssit ja niitä yhdistelemällä syntyvät loogiset elementit, kuten polkuyhteydet (link/transport) tai kerrokselliset (VLAN, MPLS, ym.) yhteydet.

    Tietoliikennearkkitehtuurin tulee tarvittaessa kattaa esimerkiksi fyysiset kaapelitiedot, ristikytkennät, reititin- ja kytkinlaiteportit, palvelinnoodit ja -liitännät, vuokrattujen verkkopalveluiden tai yhteyksien liitäntäpisteiden kuvaukset sekä keskinäiset riippuvuudet niiden välillä ja laitetilojen infrastruktuurin13.

    Sovellettavia periaatteita

    Arkkitehtuuriperiaatteet kuvataan suosituksen luvun 6.3.4.2 Arkkitehtuurin tavoitetilan kuvaus perus- ja laajennetuin kuvauksin mukaisesti (ks. myös liite 5 KA-taulukot välilehti Arkkitehtuuriperiaatteet).

    Tietoliikennearkkitehtuuria ohjaavien periaatteiden osalta huomiota tulee kiinnittää seuraaviin periaatteisiin:

    • Tietoliikennearkkitehtuuri tulee kuvata loogisella ja fyysisellä tasolla.
    • Kukin Toimija vastaa omistamiensa toimialueiden (toimialue = domain) tietoliikennearkkitehtuurin kuvauksista (loogisista ja fyysisistä verkkokaavioista).
    • Tietoliikennearkkitehtuurin kuvaamista on lähestytty kahdesta suunnasta:
    • Verkon näkökulma tietoliikennearkkitehtuuriin luo infrastruktuurin edellytykset sovellusten kommunikoinnin kuvaamiselle. Käsitteitä ovat esimerkiksi Solmu (Node), Alue (Domain), Laite (Device), Kortti (Card), Portti (Port), Yhteys (Connection), Kaapeli (Cable), jne.
    • Sovelluskerroksen palveluiden näkökulma tietoliikennearkkitehtuurin mallinnukseen asettaa vaatimuksia tietoliikenneverkon toteutukselle ja sen kuvaamiselle. Sovelluskerroksen palveluiden vaatimukset tietoliikenneinfrastruktuurille ovat laadullisia (käytettävyys, varmistukset, palvelutaso, viive, jne.), määrällisiä (datavolyymit, siirtonopeudet, jne.) tai tietoturvaa (esim. turvaluokka) koskevia.
    • Tietoliikennearkkitehtuurin kuvaaminen loogisella ja fyysisellä tasolla voidaan toteuttaa näihin erikoistuneilla kuvaustyökaluilla, mutta tässä esitettävät minimivaatimukset tulee toteuttaa kuvaustyökalusta riippumatta.

        5.2 Tietoliikennearkkitehtuuri verkon näkökulmasta (alhaalta ylös)

    JHS 179 -suosituksen teknologia-arkkitehtuuria käsittelevissä luvuissa 7.5.2 – 7.5.3 ohjeistetaan loogisen ja fyysisen tietoliikennearkkitehtuurin kuvaus ja annetaan kuvauspohja loogiselle verkkokaaviolle (ks. liite 5 KA-taulukot välilehti Looginen verkkokaavio). Kuvissa 13 ja 14 on esitetty liittymä loogisen ja fyysisen verkkokaavion välillä.

    Tietoliikennearkkitehtuurin tulee tukea:

    • tarkkuustasoa (granulariteetti) analysointivaatimusten edellyttämälle tasolle,
    • toimijan domain-alueiden tunnistamista ja
    • domain-alueiden rajapintojen kuvaamista referenssipisteitä käyttäen.

    Tietoliikenneverkkojen yhteydessä domain-käsite voi perustua toimijan vastuualueeseen, sovellettavaan verkkoteknologiaan, vyöhykearkkitehtuuriin, alihankkijan operointialueeseen tai muuhun vaatimukseen. Tietoliikenneverkon kuvauksissa domain-alueet voivat olla päällekkäisiä14.

    Kuvan 13 mukaisessa esimerkissä on identifioitu kolme vakioitua domain-tyyppiä ja niiden välille neljä referenssipistettä, joilla voidaan mallintaa yhtenäiseen toimintorooliin muita vastaavia nykytilan (As-Is) tietoliikenneverkkoja. Jatkossa tullee tarve vakioida uusia domain-tyyppejä ja niihin liittyviä uusia referenssipisteitä, mutta vakioitujen domain-tyyppien ja referenssipisteiden määrä tulee minimoida.

    image31.png

    Kuva 13. Verkkodomainit.

        5.3 Tietoliikenneverkon liityntärajapinnat (RP = ReferenssiPiste)

    Kokonaisarkkitehtuurimallin tietoliikennearkkitehtuurissa tulisi olla käytettävissä rajallinen määrä yhdenmukaisesti kuvattavia (standardoituja) liityntärajapintoja. Kuvassa 14 on esitetty loogisen tietoverkon liityntä fyysiseen tietoverkkoon.

    Tällaisia liityntärajapintoja ovat myös tietoliikenneyhteyksien rajapinnat ja eri domain-vastuualueiden tietoliikenneverkkojen liitäntärajapinnat (yhteenliittämisrajapinnat). Näiden kuvaamiseen on Looginen verkkokaavio -taulukkopohja (ks. liite 5 KA-taulukot välilehti Looginen verkkokaavio).

    image32.png

    Kuva 14. Liityntärajapinnat.15

        5.4 Tietoliikennearkkitehtuurin verkkokuvaukset

    Sovelluskerroksen palvelun rajapinta (tietojärjestelmäpalvelu) tulee kuvata KA-taulukoihin sisältyvien tietojen osalta mahdollisimman yhtenäisellä tavalla. Esimerkiksi käytettävyys-, palvelutaso- ja tietoturvatietojen osalta yhtenäinen kuvaustapa mahdollistaa vertailun ja analysoinnin useiden palveluiden kesken. Laajemmin käytettävyys, palvelutaso ja tietoturva tulisi kuvata mahdollisimman yhtenäisesti muissakin KA-taulukoihin sisältyvissä tiedoissa, kuten Loogisessa verkkokaaviossa. Näin voidaan varmistaa sovelluskerroksen palveluiden vaatimusten toteutuminen tietoliikenneinfrastruktuurille ja yksittäisille tietoliikenneyhteyksille.

    Tietoliikennearkkitehtuurin kuvaaminen osana kokonaisarkkitehtuuria tulee tehdä sellaisella tarkkuustasolla, joka mahdollistaa analysoinnin yksittäisen sovelluskerroksen palvelun (tietojärjestelmäpalvelun) ja siihen liittyvän tietoliikenneyhteyden (IP-flow) tasolla osana tietoliikenneverkon arkkitehtuurin suunnittelua.

    Tällöin tulee mahdolliseksi analysoida sovelluskerroksen palvelun (tietojärjestelmäpalvelun) ja tietoliikenneyhteyden (looginen ja fyysinen) keskinäisiä riippuvuuksia (dependency) ja vaikutuksia (impact) KA-mallissa käytettävissä olevien erilaisten parametrien suhteen, esim.

    • tietojärjestelmäpalvelun ja tietoliikenneyhteyden käytettävyys (on, off, % availability).
    • tietojärjestelmäpalvelun ja tietoliikenneyhteyden palvelutaso (SLA, OLA, quality).
    • tietojärjestelmäpalveluun liittyvän tai tietoliikenneyhteyden siirtämän tiedon suojaustasojen analysointi.
    • kokonaisuuden kriittisten komponenttien ja solmujen analysointi.

    Liitteen 5 KA-taulukot pohjien Looginen verkkokaavio ja Loogiset rajapinnat avulla tietoliikenneverkkojen/domainien välinen referenssipiste-ID voidaan liittää sen välittämään tietoliikenneyhteys-ID -arvoon ja edelleen siihen liittyvään looginen sovellusrajapinta-ID:hen.

    Tietoliikenneverkkojen/domainien välinen referenssipiste-ID voidaan edelleen liittää sen toteuttavaan fyysiseen yhteyteen, kuten kaapelin ID:hen tai gateway-laite, -kortti- tai -portti -ID:hen. Fyysinen tietoliikenneinfrastruktuuri kuvataan osana muuta teknologia-arkkitehtuuria sisältäen tietoliikennelaite- ja palvelinlaitetiedot.

    Teknologia-arkkitehtuurin tarkka kuvaus ylläpidetään usein tähän kehitetyillä työkaluilla, esim osana CMDB-järjestelmää tai erityisellä laite- tai verkkotiedon inventori-järjestelmällä, joka pitää tietokannassaan kaikki tarvittavat laitetyypit, niiden instanssit, laitteiden kortti/portti -väliset relaatiot ja tarvittavan kaapeli- ja kytkentätiedon. CMDB- ja inventorityökaluilla voidaan kuvata tarkan fyysisen kuvauksen lisäksi loogiset päästä-päähän yhteydet (esim L1-, L2- ja L3-yhteystyypit). Tietojen ylläpito CMDB- tai inventorityökaluilla hyödyntää verkon aktiivilaitteista luettavaa discovery-tietoa.

    Fyysisen ja loogisen verkon kuvaustyökalulla (inventori tai CMDB-työkalu) kuvataan mm. seuraavat tiedot:

    • laitetiedot ja liitäntäpistetiedot.
    • kaapelointi- ja kytkentäkuvat.
    • verkkojen referenssipistetiedot.
    • loogiset päästä-päähän -yhteydet.
    • sijaintitiedot.

        5.5 Tietoliikennearkkitehtuuri sovellusmallintajan näkökulmasta (ylhäältä alas)

    image33.png

    Kuva 15. Tietojärjestelmäpalvelut tietoliikenneverkkoon liityttäessä.

    Tietoliikennearkkitehtuurin tarkastelussa ylhäältä alas lähdetään siitä, että tietoliikennearkkitehtuuri on kytketty kokonaisarkkitehtuuriin (integraatioprosessin vaihe 7). Tässä tapauksessa on luontevinta kytkeä tietoliikennekuvaukset tietojärjestelmien sovelluspalveluiden avulla kokonaisarkkitehtuuriin.

    Kuvassa 15 on tietojärjestelmä, joka koostuu palvelinsovelluksesta ja asiakassovelluksesta. Palvelinsovellus tarjoaa järjestelmäpalvelun, jonka hyödyntäjänä on asiakassovellus. Tietojärjestelmäpalvelu julkaistaan sovelluskerroksen palveluna. Palvelinsovellus voi tuottaa useita tietojärjestelmäpalveluita.

    Kuvassa 15 esitetään tietojärjestelmäpalvelun kuvaaminen kahdella vaihtoehtoisella tavalla:

    • Ensimmäinen tapa on käyttää mallinnustyökalun ovaalia symbolia, johon tulee tietojärjestelmäpalvelun nimi. Palvelun tarjoajan kytkentä kuvataan realisaatio-nuolella. Palvelun hyödyntäjän kytkentä kuvataan käyttö-nuolella.
    • Toinen tapa on käyttää ”tikkari -haarukka” -kuvausta, jossa palvelun tarjoaja julkaisee ”tikkarin”, jota palvelun hyödyntäjä käyttää ”haarukalla”.

    Molempia tapoja voidaan käyttää rinnakkain. Tällöin ovaali symboli kuvaa loogisen yhteyden ja ”tikkari-haarukka” -osuus voidaan purkaa auki ja siten havainnollistaa tietojärjestelmään kytketyn tietoliikennearkkitehtuurin koostuminen eri osioista.

    Kuvassa palvelun tarjoajan noodi toteuttaa sovelluskerroksen palvelun tuottamisen/julkaisemisen ja palvelun hyödyntäjän noodi toteuttaa palvelun käyttämisen.

    Eri verkko-osioiden kuvaaminen tehdään loogisten osien ja pilven (fyysinen toteutus) avulla. Tällöin voidaan selkeästi erottaa loogiset (yleiset) osat ja fyysiset (yksityiset) osat omiksi kokonaisuuksikseen.

    Sovelluskerroksen palvelut kuvataan palvelun rajapintana (Palvelun tarjoajan rajapinta, Palvelun hyödyntäjän rajapinta).

    Tietoliikenneyhteydet kuvataan verkkojen/domainien ja niiden välisten referenssipisteiden (RP) avulla.

    Jokaisella verkko-osion osapuolella on vastuu kuvata toimivat/toteutetut yhteydet oman pilven ”yli”. Tällöin voidaan koostaa kunkin palvelinsovelluksen ja asiakassovelluksen väliset tietoliikenneyhteydet.

    Palvelun tarjoajan sovellusmallintaja julkaisee sovelluksensa palvelun:

    • Palvelun tarjoajan sovellusmallintaja kuvaa sovelluskerroksen palvelun rajapinnan - mitä toimenpiteitä tehdään ja millä tiedoilla palvelun tarjoajan rajapinnassa.
    • Palvelun tarjoajan sovellusmallintaja määrittelee myös ei-toiminnalliset vaatimukset palvelun tarjoajan rajapinnassa.

    Palvelun hyödyntäjän sovellusmallintaja kytkee sovelluksensa julkaistuun palveluun:

    • Palvelun hyödyntäjän sovellusmallintaja kuvaa palvelun hyödyntäjän rajapinnan - mitä toimenpiteitä tarvitaan ja millä tiedoilla palvelun hyödyntäjän rajapinnassa.
    • Palvelun hyödyntäjän sovellusmallintaja huomioi ei-toiminnalliset vaatimukset palvelun hyödyntäjän rajapinnassa.

    Esimerkki 1. Looginen- ja Fyysinen verkkokaavio.

    Kuvassa 16 on visualisointiesimerkki VY-verkon rajapinnassa kahdennettujen fyysisten tietoliikennereittien kuvauksesta loogisena tietoliikenneyhteytenä.

    image34.png

    Kuva 16. Esimerkki loogisesta ja fyysisestä verkkokaaviosta.

    Esimerkki 2: Esimerkki loogisesta päästä päähän -kuvauksesta

    Jos on käytössä arkkitehtuurikuvaustyöväline, sillä on mahdollista kuvata loogisen tietoliikenneyhteyden päällä olevien tietojärjestelmäpalveluiden liittäminen yläpuolisiin tieto- ja toiminta-arkkitehtuuriin rakenneosiin, kuten tietoryhmiin ja prosessien toimintoihin (ks. kuva 17).

    image35.png

    Kuva 17. Esimerkki työvälineellä kuvatusta verkkokaaviosta.

    Luvun 5 lopputuloksia ovat:

    Tarkennetut teknologiavalinnat

    Tietoliikennearkkitehtuurin rakenne

    • Looginen verkkokaavio -kuvaus domaineineen (sisäiset, ulkoiset)
    • verkkodomain-rajapinnat ja -referenssipisteet

    Looginen verkkokaavio-taulukko

    • tietoliikenneyhteydet
    • tietoliikenneyhteyksiin liittyvät sovelluskerroksen palvelut (tarjotut/hyödynnetyt)
    • tietoliikenneyhteyksien luokittelu vaatimuksia vastaaviksi

    Fyysisen verkkokaavion tiedot (liittyvät loogisen verkkokaavion tietoliikenneyhteyksiin)

    • Fyysisen yhteyden, kaapelin ID
    • Gateway-laite, -kortti tai -portti -ID
    • Tietoliikennelaite- ja palvelinlaitetiedot

      6 Kansallinen palveluarkkitehtuuri integraation näkökulmasta

    Kansallinen palveluväylä16 on yksi kansalliseen palveluarkkitehtuuriin (KaPA) kuuluvista julkisen hallinnon yhteisistä sähköisen asioinnin tukipalveluista. Näitä ovat myös mm. palvelutietovaranto, tunnistuspalvelu, valtuuttaminen ja palvelunäkymät. Kansallinen palveluväylä on integraatioratkaisu, joka mahdollistaa organisaatioiden tietoturvallisen tiedonvaihdon tietoliikenneverkon yli. Sama organisaatio voi toimia sekä tiedon tarjoajana että hyödyntäjänä.

    image36.png

    Kuva 18. Julkisen hallinnon tietoliikenneverkkoarkkitehtuuri.

    Kansallinen palveluväylä koostuu julkisesta palveluväylästä sekä erillisistä vyöhykkeistä, joilla voi olla omia integraatioratkaisuja. Julkinen palveluväylä on hallittu ja turvallinen internetverkon tiedonvälityspalvelu. Sen toteutus perustuu Suomessa X-Road17 -teknologian päälle.

    Vyöhyke on alue, jonka sisällä voidaan käyttää julkisesta palveluväylästä poikkeavaa tiedonvaihtoratkaisua tai -määrityksiä. Se on usein SLA-taattu tai korkeamman tietoturvatason rajattu osaverkko tai toimialakohtainen kokonaisuus. Vyöhykkeen sisällä tiedonvaihdon infrastruktuurissa voidaan käyttää vyöhykekohtaisia ratkaisuja huomioiden suojaustasot. Kansallinen palveluväylä toimii hyödyntäen julkista internetiä, kun taas vyöhykekohtaiset ratkaisut operoivat vyöhykkeen sisällä.

    Liityntäkatalogissa18 kuvataan kaikki palveluväylän19 liitynnät kehittäjiä varten. Palvelutietovarannossa (PTV) oleva tieto on tarkoitettu palvelujen loppukäyttäjille (kansalaisille, yrityksille, viranomaisille). Kansallinen palveluväylä (X-Road) on SOAP-protokollaa käyttävä sanomanvälitysväylä, joka on tarkoitettu vakioituun tiedonsiirtoon organisaatioiden välille. Palveluväylä myös salaa sanomaliikenteen. Kuvassa 18 on havainnollistettu eri vyöhykkeitä ja niiden liittymistä julkiseen palveluväylään.

    Palveluntarjoaja voi tarjota rajapintoja palveluunsa julkisessa palveluväylässä, erillisen vyöhykkeen avulla tai kansallisen palveluväylän ulkopuolella. Tarpeet on analysoitava ennen valinnan tekoa. Kansalliseen palveluväylään kytketään pääsääntöisesti tunnistamista edellyttävät palvelut. Mikäli palvelua käytetään vyöhykkeen sisällä, kannattaa integraatio rakentaa vyöhykkeen sisäisenä, jotta vältytään julkisen internetin käytöltä viestinvaihdossa.

    Isoja asynkronisia tiedonsiirtoja ja eräajoja ei välitetä sellaisenaan julkisen palveluväylän kautta, eikä niitä kannata pääsääntöisesti rakentaa esim. liiteratkaisuilla X-Road -tekniikan päälle. Avoimen tiedon palveluissa taustalla oleva tiedonsiirto voi tapahtua erityisjärjestelyin julkisessakin palveluväylässä. Organisaation sisäisten järjestelmien välistä liikennettä ei suositella välitettäväksi julkisen palveluväylän kautta.

    Kansallinen palveluväylä on organisaatioiden liityntäpalvelimien muodostama kokonaisuus, jolla ohjataan kansallisesti tietojen ja palveluiden yhdistämistä. Palveluväyläarkkitehtuuri luo yhteisen ratkaisumallin organisaatioiden tietojen vaihtoon. Tämä poistaa kahdenvälisten räätälöityjen liittymien tarpeen sekä edesauttaa digitaalisten palveluiden kehittämistä.

    • Kansalliseen palveluväylään liitettävien palvelujen tulee tukea reaaliaikaisuutta, mikäli selkeää perustetta muunlaiseen ratkaisuun ei ole.
    • Palveluväylän avulla integroidussa palveluprosessissa tulee olla mukana julkinen taho.
    • Palvelun kuvaus on oltava yhteismitallinen. Tekniset tiedot, kuten rajapinnat oltava kuvattuna Liityntäkatalogissa ja palveluiden sisällön kuvaukset puolestaan palvelutietovarannossa (PTV).
    • Kansallinen palveluväylä tarjoaa vain oleelliset palvelut tiedonvaihtoa varten. Muiden palveluiden tuottaminen jää liittyvän organisaation vastuulle.

    Kansallisen palveluväylän viitearkkitehtuurissa tuodaan esiin tarve erilaisille integrointiratkaisuille julkisen palveluväylän rinnalla. Tämä tarve pyritään kattamaan palveluväylän vyöhykemallin avulla.

    Julkisessa palveluväylässä on tarkasti määritelty viestien siirtokehys (protokolla), jota valittu tuote toteuttaa. Muilla vyöhykkeillä ei ole kovin laajasti vakiintuneita käytäntöjä rajapintojen yhdenmukaistamisesta. Useilla organisaatioilla on standardeihin pohjautuvia ratkaisuja organisaation sisäisesti käytössä ja palveluita julkaistaan myös ulkoisille tahoille näitä rajapintoja hyödyntäen.

    Suunnittelun lähtökohdaksi on huomioitava se, että palveluväylä ei mm. varastoi tietoa, muunna välitettyjä tietoja, yhdistä tai jaa välitettyjä tietoja eikä lähtökohtaisesti tarjoa laskentakapasiteettia tietoa välittäville organisaatioille.

    Kansalliseen palveluväylään liittyvien järjestelmien tulee olla riittävällä tietoturvatasolla käsiteltävän tiedon salausluokitukseen nähden. Julkisen palveluväylän osalta liittyvän organisaation liityntäpalvelin on organisaation omalla vastuulla, samoin siihen kytkettyjen tietojärjestelmien hallinta ja tietoturvallisuus.

    Palveluväyläoperaattori ja palveluväylän omistaja eivät vastaa mahdollisista palveluväylän liityntäpalvelinten huolimattomasta ylläpidosta tai käytöstä aiheutuvista tietoturvapoikkeamista, tietovuodoista tai käyttöhäiriöistä.

    Palveluntarjoajan on määriteltävä palvelun hyödyntäjältä edellytettävä tietoturvataso palvelun käytöstä laadittavassa sopimuksessa tai käyttöehdoissa. Palvelun hyödyntäjän vastuulla on sopimuksessa määritellyn tietoturvatason edellyttämien vaatimusten täyttäminen. Kansallinen palveluväylä vastaa julkisen palveluväylän osalta organisaatioiden välisestä tunnistamisesta. Vyöhykkeillä tulee tarjota omat ratkaisunsa. Palvelun hyödyntäjä vastaa digitaalista palvelua käyttävän loppukäyttäjän tunnistamisesta sekä tarvittaessa identiteetin välittämisestä palveluntarjoajalle.

    Kansallisen palveluväylän viitearkkitehtuurin liite 320 sisältää tekniset määritykset julkisen hallinnon tietovarantojen ja sovellusten rajapintojen toteuttamiselle. Dokumentissa kuvatut ratkaisumallit on suunniteltu käytettäviksi perustietovarantojen rajapinnoissa, mutta määrityksiä voidaan soveltaa myös muissa tietojärjestelmäpalveluiden rajapinnoissa.

    Alaviitteet

    1) http://ec.europa.eu/isa/documents/isa_annex_ii_eif_en.pdf

    2) Ks. esim VAHTI 3/2012, https://www.vahtiohje.fi/web/guest/keskeiset-vaatimukset-ict-ympariston-tietoturvallisuuden-toteuttamiseksi

    3) http://www.opengroup.org/subjectareas/enterprise/togaf

    4) http://www.opengroup.org/subjectareas/enterprise/archimate

    5) http://www.bpmn.org/

    6) http://www.uml.org/

    7) https://esuomi.fi/palveluntarjoajille/palveluvayla/

    8) http://www.togaf.info/togaf9/togafSlides9/TOGAF-V9-Sample-Catalogs-Matrics-Diagrams-v2.pdf

    9) http://www.jhs-suositukset.fi/suomi/jhs170

    10) http://www.jhs-suositukset.fi/suomi/jhs166

    11) http://www.jhs-suositukset.fi/suomi/jhs189

    12) https://liityntäkatalogi.suomi.fi

    13) Pohjautuen kuvaukseen TOGAF 9.1 – 4.3 Foundation Architecture: Technical Reference Model – 43.3.5 Communication Infrastructure

    14) Ks. TOGAF 9.1 – 4.3 Foundation Architecture: Technical Reference Model – 43.3.7 Communication Infrastructure Interface

    15) Viitemateriaalina yleisten tietoliikenneverkkojen arkkitehtuurimalleista on tässä työssä käytetty lähteenä ITU G.809 Functional architecture of connectionless layer networks.

    16) https://www.avoindata.fi/data/fi/dataset/kansallisen-palveluvaylan-viitearkkitehtuuri

    17) http://esuomi.fi/palveluntarjoajille/palveluvayla/tekninen-aineisto/x-road-tiedonsiirtoprotokolla-2/

    18) https://liityntakatalogi.suomi.fi/

    19) https://esuomi.fi/palveluntarjoajille/palveluvayla/palvelukuvaus/

    20) https://www.avoindata.fi/data/fi/dataset/kansallisen-palveluvaylan-viitearkkitehtuuri