Tietojärjestelmien integraatiosta ja integraation suunnittelusta Tietojärjestelmien suunnittelumenetelmät 24.2.2015
Luentojen aineisto Bendik Bygstad, Peter Axel Nielsen and Björn Erik Munkvold, Four integration patterns: a socio-technical approach to integration in IS development projects. Info Systems J 20, 2010, 53-80 K Umapathy, S Purao and RR Barton, Designing enterprise integration solutions: effectively. European Journal of Information Systems 17, 2008, 518-527 J Park and S Ram, Information Systems Interoperability - What Lies Beneath. ACM Transactions on Information Systems, Vol. 22, No. 4, October 2004, 595-632.
Tietojärjestelmäintegraation määrittely, tausta Tietojärjestelmäintegraation viitekehys Integrointitasot, integrointitavat, tietojärjestelmäintegraation lähestymistavat ohjelmistojen integraatioprosessit ja mallit sovellusten yhteentoimivuuden viitemallit Integraation tavoitteena yhteistoiminnallisuus järjestelmä, syntaksi, struktuuri, semantiikka Integraatiometodit: a) 12 askeleen metodi b)tietoarkkitehtuuriin perustuva metodi
4
Tietojärjestelmäintegraation määrittely, tausta Tietojärjestelmäintegraatio- sovellusintegraatio, ohjelmistointegraatio Enterprise application intergration (EAI), application integration (AI) Integraatio = esteetön tiedon jakaminen kahden tai useamman sovelluksen kesken Integraatio = prosessi, jonka tuloksena järjestelmät saadaan jakamaan tietoa keskenään
Integraatio ratkaisut, joiden tavoitteena on yhdistää yrityksessä olevia järjestelmiä ja tietokantoja siten, että liiketoiminnassa tarvittavaa tietoa on saatavissa riippumatta siitä, missä järjestelmässä/tietokannassa tieto on alunperin talletettuna Tietojärjestelmäintegraatio käytänteet, joiden tuloksena erilliset alijärjestelmät, sovellukset ja laitteistot yhdistetään yhtenäiseksi organisaation toimintaa palvelevaksi järjestelmäksi
Integraation taustaa toiminnan tehostaminen, verkostoituminen heterogeenisen tietojärjestelmäarkkitehtuurin ylläpidon kalleus tiedon pirstaloituminen, merkitysten hämärtyminen B2B-integraation tarve lähtökohdat usein teknisiä sovellusten välisen tiedonvaihdon mahdollistaminen heterogeenisen järjestelmäkokonaisuuden paikkaus
toiminnanohjausjärjestelmät, ERP, joskus ratkaisuja, joskus ei ERP voi kattaa 40-50% yrityksen tietojenkäsittelytarpeista ERPin käyttöönoton myötä integraatiotarve voi korostua - tiedon siirtyminen järjestelmästä / komponentista toiseen on entistä kriittisempää vanhojen järjestelmien toimivuus ja niiden uudistamisen kalleus - perinnejärjestelmät, legacy systems erillisiä, kahden järjestelmän välisiä integraatioratkaisuja toteutetaan usein väliaikaisratkaisuina liittymien määrän kasvu räätälöityjen ratkaisujen ylläpito tietojärjestelmäkokonaisuuksien tekninen monimutkaisuus ylläpidon kustannusten kasvu luotettavuusvaatimukset - toimintakriittisyys
tieto eriytyy järjestelmäkohtaiseksi ja muodostaa tietokeskittymiä semanttiset ongelmat tiedon sisällön ja merkityksen ymmärtämisessä, eheys- ja redundanssiongelmat lisäksi sosiaaliset ja psykologiset tekijät: tiedon turha kopioiminen, työmotivaatio asiakassuhteet ja niiden hoitaminen, Customer relationship management (CRM) edellyttävät yrityksen tietojärjestelmien integraatiota yhteiskunnalliset tekijät lakien ja säädösten asettamat muutosvaatimukset tietosuojan ja tietoturvan toteuttaminen raportointi- ja tilastointivaatimukset
Tietojärjestelmien integraatio Sisäiset Lainsäädäntö - lait ja normatiiviset ohjeet Ulkoiset Tekniset - liittymien rakentaminen hankalaa - ylläpito työlästä Taloudelliset - hitaus, kalleus - ylläpito kallista Tiedolliset - tiedon redundanssi - tiedon eri merkitykset - kokonaisuus hämärtyy Sosiaaliset ja psykologiset - turha työ - päällekkäisyys yhteistyöhön liittyvät - B2B-integraation tarve Asiakkaat - suoran asiakaspinnan tarve - lisäarvo asiakkaallle
Tietojärjestelmäintegraation viitekehys Integraatiota voidaan lähestyä organisatorisesta, liiketoiminnallisesta, teknisestä näkökulmasta Horisontaalinen, vaakasuuntainen integraatio - samalla operationaalisella hierarkiatasolla, samassa prosessiketjussa tehtävä Vertikaalinen, pystysuuntainen on johto- ja kontrollijärjestelmien integroiminen operatiivisen toiminnan järjestelmiin
Integraation tasot Datataso (data-level) lähtökohtana sovellusten tietokannat integraatio toteutetaan asettamalla järjestelmät käyttämään yhteisiä, jaettuja tietokantoja, tai tietokantojen välisiä tiedonsiirtoja, ohjelmakoodiin ei välttämättä tarvita muutoksia Viestitaso (message-level) lähtökohtana tiedonsiirtoon tarvittavien viestien märittely, tavoitteena standardoitu (XML) viestinvälitys integraatio toteutetaan siirtämällä tieto määritellyin viestein, usein standardoidut sanomarakenteet ja -sisällöt Prosessitaso (process level) lähtökohtana organisaation liiketoimintaprosessit liiketoimintaprosessien tiedontarpeet ja prosessien tuottamat tiedot analysoidaan
Tietopohjainen Tai...Integraation tasot tietojenvaihtoon perustuva tietokannat, viestit, tietoa tuottavat API-liittymät Palvelupohjainen sovellukset jakavat yhteistä toimintalogiikkaa, metodeja ja sovelluspalveluja Prosessipohjainen määriteltyjä ja keskitetysti ylläpidettyjä prosesseja joiden kautta tieto siirtyy ja aliprosessien kutsut hoidetaan Käyttäjäpohjainen järjestelmien yhdistäminen käyttäjän kannalta toimivaksi kokonaisuudeksi esimerkkinä työpöytäintegraatio
Sovellusintegraation lähestymistavat 1 Tekninen alustaintegraatio dataintegraatio komponentti- ja sovellusrajapintaintegraatio sanomaintegraatio 2 Pragmaattinen konteksti-integraatio käyttöliittymäintegraatio metodi-integraatio prosessi-integraatio Kulminoituvat tietointegraatioon
Tieto Integraation lähestymistavoista Prosessi Metodi Käyttöliittymä Konteksti Sanoma Komponentti ja sovellusrajapinta Data Alusta Pragmaattinen Datalle kontekstuaalinen merkitys >> tieto Tekninen Datan siirto järjestelmästä toiseen
Tietointegraatio Pragmaattisesti integroitavat järjestelmät ja niiden välillä siirrettävä tieto ja tietokokonaisuudet Teknisesti sopivat tekniset toteutustavat
Integraatio tietoarkkitehtuuriin perustuen lähtökohtana on käytännön toiminta ja sen vaatimat tietotarpeet toteutuksessa tekninen näkökulma Integraatiota tarkastellaan kahdella rintamalla pragmaattinen lähestymistapa, jossa etsitään integroitavat järjestelmät ja niiden välillä siirrettävät tietoalkiot ja kokonaisuudet teknisestä näkökulmasta etsitään sopivat integraation toteutustavat Integraation perustana standardit ja yhteiset sopimukset
Integraation toteutuksen tasot Teknisten liittymien taso sovitaan tekniikasta jolla jaettuun tietoon päästään käsiksi tietokantaperustainen integraatio; käytetään suoraan toisen sovelluksen tietokantaa tiedostopohjainen yhdyskäytävä (gateway) tarjoaa formalisoidun kahdenvälisen liittymän; toinen kirjoittaa sovitun formaatin mukaisen tiedoston / viestin, toinen lukee samassa formaatissa, kukin kahdenvälinen liittymä vaatii oman kahdenvälisen toteutuksensa ohjelmistorajapinta (API), kutsuva järjestelmä kutsuu toisen järjestelmän rajapintaa, jolloin saadaan toteutettua haluttu palvelu
Tekninen infrastruktuuri mahdollisuus kutsua teknisesti toista järjestelmää tiedettävä että järjestelmä toiminnassa tai miten käynnistetään, järjestelmien väliselle kommunikoille on oltava tekninen tuki, voi perustua a) mallituntemukseen, kutsuva järjestelmä tuntee kohdejärjestelmän teknisen infrastruktuurin protokollan b) kontekstintuntemukseen, kutsuvalla ja kutsuttavalla on yhteisiä protokollia, ideaalitilanteessa myös kunkin protokollan konteksti,
Sovellusinfrastruktuuri sovellusinfrastruktuuri kuvaa arkkitehtuuriset päätökset, käytännöt, liittymäkäytännöt ja suunnittelumallit kehitetään kunkin projektin tarpeisiin oma ratkaisu standardien puuttumisen vuoksi sovellusinfrastruktuurissa on sovittava eri järjestelmien kesken virheiden käsittelystä tekniset virheet (ei verkkoyhteyttä) toiminnalliset virheet (tuote loppunut varastosta)
Toiminnalliset liittymät toiminnallisen liittymän määrittely voidaan tehdä prosessoinnin tyypin tai tiedon tyypin avulla määritellään operaatioiden toiminnalliset nimet ja parametrit toiminnallisten liittymien määrittelyssä käytetään teknisen infrastruktuurin tarjoamia käytäntöjä Semantiikka vuorovaikutuksen merkityksistä sopiminen semanttisia yhdyskäytäviä / siltoja merkityksistä sopiminen, mitä operaatiot tarkoittavat
Toiminnallinen viitemalli toiminnallinen viitemalli kuvaa integraation osapuolten kannalta kohdealueen toiminnan esim. Järjestelmässä A henkilötunniste on 6 merkkiä (syntymäaika) ja järjestelmässä B henkilö tunniste on 11 merkkiä (sotu, 112233-xxxy). Järjestelmät eivät pysty keskenään ymmärtämään henkilön tunnistetta oikein Pitää kuvata toiminnallinen viitemalli, jossa henkilön tunniste sisältyy määrittelyihin ja sillä on yksikäsitteinen merkitys ja formaatti (siis käytetään esim vain syntymäaikaa, 6 merkkiä) kohdejärjestelmän tietokannan lukemiseen tarvittavan SQL-lauseen kirjoittamiseksi tarvitaan tietoa kohdejärjestelmän tietokantakuvauksesta
Kehitysprosessin liittymät integraatiokehityksessä mukana olevien järjestelmien rajoitukset ja mahdollisuudet huomioidaan toisen järjestelmän spesifikaatio voi olla integraatiossa tärkeä dokumentti
Tietoarkkitehtuuriin perustuva integraatiometodi (Siltanen 2005) 1 liiketoiminta-arkkitehtuurin mallinnus ja analyysi liiketoimintaprosessit, tietovirrat tiedon ja sovellusten käyttökonteksti 2 tietoarkkitehtuurin mallinnus ja analyysi kohdealueen kokonaistietoarkkitehtuuri konsensus käsitteiden merkityksestä 3 sovellusarkkitehtuurin kartoitus ja analyysi sovellusarkkitehtuurin kuvaus sovellusten keskinäiset suhteet sovellusten sidokset liiketoiminta-arkkitehtuurin prosesseihin
4 integraatiopisteiden tunnistus tiedon omistajuussuhteet, tiedon integraatiopisteet tiedon muunnostarpeet 5 teknologia-arkkitehtuurin analyysi sovellusten rajapinnat liittymäsopimukset 6 Integraatioteknologian valinta valitaan millä teknologialla integraatio toteutetaan 7 teknisen toteutuksen suunnittelu suunnitelma teknisestä toteutuksesta 8 Integraation toteutus valmis sovellukset yhteen kytkevä yhteistoiminnallinen ratkaisu
SILTANEN JUHA: Tietoarkkitehtuuriin perustuva sovellusintegraatiometodi - tapaus Tieliikelaitos, 2005 http://www.cs.uta.fi/research/theses/masters/si ltanen_juha.pdf
Integrointitavat Integroitu yhteistoiminta - yhteistoimintasovittimet, yhteinen tietokanta Siltayhteistoiminta - järjestelmät käyttävät yhteistä formaattia (bridge) Koordinoitu yhteistoiminta - kutsuva ja kutsuttava järjestelmä vaihtavat tietoa yläpuolella olevan koordinaattorin avulla, koordinaattori on erillinen sovellus Väyläyhteistoiminta - yhteistoiminnan protokolla ei kulje järjestelmien välillä vaan yhteisen infrastruktuurin tason kautta (gateway)
Sovellusten yhteentoimivuuden viitemallit - järjestelmäintegraation suunnittelu ISO reference model for open distributed processing (ISO ODP) Enterprise-näkökulma: järjestelmän tarkoitus, sovellusalue, toiminnot, säännöt, ympäristö Information- näkökulma: järjestelmän sisältämä tieto, iedon semantiikka ja tiedon käsittely Computational-näkökulma: rajapinnat, joiden avulla järjstelmiä jaetaan keskenään kommunikoiviin osiin tai olioihin ja hajautetaan Engineering-näkökulma: mekanismit, jotka mahdollistavat järjestelmän osien tai olioiden hajautetun kommunikoinnin ja teknisen suunnittelun Technology-näkökulma: järjestelmän tekniikkavalinnat
Hajautettu viitearkkitehtuuri Käyttäjäkerros - user tier sovelluksen käyttöliittymätaso, käyttöliittymä rakennetaan käyttäen alimpien kerrosten ohjelmistojen palveluita Worksspace tier tukee yden käyttäjän tarpeita sovelluksessa sijaitsee yleensä käyttöliittymän yhteydessä työasemalla tai webpalvelimella Enterprise tier tukee useita yhtäaikaisia käyttäjiä ja on tietoverkon kautta yhteydessä sovelluksen yhden käyttäjän osiin Resource tier sovelluksen pysyvät tietovarastot ja tietokantaliittymät
Message development framework Sanomaintegraation menetelmä sanomat, toiminnot Sanomien suunnittelu perustuu tietomallien käyttöön: RIM, reference information model, yhteinen jaettu tietomalli D-MIM, refined message information model, tarkennettu sanoman tietomalli R-MIM, refined message information model, tarkennettu viestin malli HMD, hierarchical message description, sanoman hierarkkinen kuvaus vaatimusmäärittely >>> käyttötapausmäärittelyt >>> kohdealueen (domain) kuvaus >>> järjestelmien vuorovaikutussuhteet >>sanomien rakennekuvaus
CCOW - työpöytäintegraatio Client centric Server centric Www cccc xxxx wwww Www wwww wwwwwwwww wwwww wwwwwwwww wwwwwwwww wwwwwwwww Wwwww eeeeeeeeeeee eeeeeeeeeeee eeeeeeeeeeee eeeeeeeeeeee eeeeeeeeeeee eeeeeeeeeeee eeeeeeeeeeee eeeeeeeeeeee ee qqqqqqqqqq qqqqqqqqqq qqqqqqqqqq qq Context Manager Mapping Agent Web-server Mapping Agent Context manager Web-server
Integraation tavoitteena yhteistoiminnallisuus Yhteistoiminnallisuus, interoperability: tietojärjestelmien ja niiden komponenttien kyky vaihtaa palveluita ja tietoa keskenään Yhteistoiminnallisuuden tasot: Järjestelmä Syntaksi Struktuuri Semantiikka
Järjestelmätaso - järjestelmäalustat, tiedon hallintajärjestelmät, käyttöjärjestelmät, laitteistoratkaisut Tiedon heterogeenisuus - syntaksi: tiedon esityksen, kieliopin, ymmärrettävyys struktuuri: tiedon rakenteellinen yhtenevyys semanttinen: yhteisymmärrys kommunikoitavan tiedon merkityksestä
Standardoinnin mahdollisuudet integraatiossa Monitasoinen arkkitehtuuri, tietojärjestelmien integrointi ja tietohallinto sovittava yhteisistä määrittelyistä, rajapinnoista, tietosisällöistä ja käytännöistä Yhteisten määrittelyjen perusta yleisesti käytetyt standardit yleiset standardit: XML, LDAP hakemistorajapinta, yhtenäiset luokitukset, sanastot, käsitteet
Standardoinnin edut Yhteensopivuus ja yhteistoiminnallisuus avoimet, standardinmukaiset rajapinnat Laatuvaatimukset tuotteiden testaaminen, sertifiointi Yhteisesti sovitut merkitykset semantiikka sanastot, käsitteet, termit, luokitukset Kustannussäästöt elinkaari pitenee, ylläpitokustannukset halpenevat
4 integraatiomallia (Bygstad et al.) 1. Big bang kertarysäys - integrointi kerralla, sekä osapuolet että teknologia 2. stakeholder integration integroidaan eri osapuolet vähitellen, teknologia vasta lopuksi 3. tekninen integraatio integroidaan teknologia vähitellen, osapuolet kerralla lopuksi 4. sosiotekninen integraatio osapuolet ja teknologia vähitellen kumpikin
Integraatiometodi - 12 askelta 1 Ongelman kohdealue integraatioon liittyvien vaatimusten kerääminen 2 Tiedon sijainti selvitetään tietojen sijainti tietojärjestelmissä 3 Organisaation prosessit organsaation prosessien ja niihin liittyvien tietojen mallinnus 4 Sovelluarajapinnat sovellusten liitäntämahdollisuuksien slevittäminen 5 Liiketoimintatapahtumat järjestelmien käyttöön liittyvien käyttötapausten tunnistaminen
6 Tiedon muunnosskenaariot etsitään mahdolliset tiedon muuttumiseen johtavat käyttöskenaariot 7 Tiedon yhdistäminen kartoitetaan tarvittavat järjestelmien väliset tietovirrat 8 Teknologia sovellusintegraation tekninen toteutus 9 Testaus integraatiototeutuksen testaus 10 Tehokkuus testauksen jälkeen voidaan pyrkiä tehokkuuden lisäämiseen
11 Hyödyt saavutettujen integraatiohyötyjen määrittely 12 Ylläpito ylläpitokäytäntöjen ja prosesuurien luominen Linthicum DS, 12 steps to EAI, 1999
Yhteenveto Tietojärjestelmien integraatio on hyvin ajankohtainen ongelma olemassa paljon vanhoja, erillisiä järjestelmiä ei mahdollisutta kokonaisuudistukseen kerralla migraatio uuteen kokonaisuuteen integraation avulla Integraatio on vaikea ja monipuolinen ongelma integraatiota on tarkasteltava monella tasolla usein nähdään vain teknisenä ongelmana tietoon liittyvä näkökulma jää usein huomioimatta, silloin ei saavuteta yhteistoiminnallisuutta integraatiometodien puute, toimitaan ad hoc, ei systemaattista otetta ja menetelmää