Mustri valikujuhend

Mustri valikujuhendi eesmärk on lihtsustada X-tee mustrite kontekstis enda rolli määramist ja sobiva mustri leidmist. Mustri valikut tuleks kõigepealt alustada enda rolli määramisega, kuna see on oluline sobiva mustri valimisel ja lugemisel.

  • Enda rolli määramine on kirjeldatud peatükis "Rolli määramine". Peatükk kirjeldab võimalikke rolle ja rolli valiku seisukohast olulisemaid kaalutlusi. Nendele kaalutlustele tuginedes on loodud rolli määramist abistav otsustuspuu (joonis 1.5).
  • Enda rolli määramisele järgneb peatükk "Mustri valik". Peatükk aitab leida levinumate ülesannete lahendamiseks sobiva X-tee mustri. Peatüki alguses on toodud mustrite lühikirjeldused ja mustri valimise olulisemad kaalutlused. Mustrite kirjeldustele ja kaalutlustele tuginedes on loodud mustri leidmist abistav otsustuspuu (joonis 1.6), mis sisaldab nii üldiseid kui ka mõnede konkreetsemate ülesannete jaoks sobivad mustreid.
  • Kuna mustrikataloog on ajas täienev ressurss, siis on võimalik, et sobiv muster ei ole veel mustrikataloogis kirjeldatud. Sellises olukorras palume uue mustri kirjeldamist vastavalt leheküljel "Mustrite kirjeldamine" toodud juhtnööridele.
  • Kui sama töövoo osana soovitakse tarbida mitut X-tee teenust, siis tuleks lisaks tutvuda ka peatükiga "Töötlemise mustrid".


Rolli määramine

X-tee üks põhilisi eesmärke on infosüsteemide vahelise andmevahetuse võimaldamine. Sellel eesmärgil luuakse erinevaid X-tee teenuseid, mis tuginevad käesolevas mustrikataloogis kirjeldatud mustritele.

Teenuste kaudu toimuv andmevahetus käib alati kahe poole vahel ja sellest tulenevalt on iga mustri juures eristatavad kaks põhilist rolli:

  • teenuse tarbija – tarbib teenuse osutaja poolt loodud teenust, algatab andmevahetuse ja arendab teenuse väljakutseks ning tulemuse töötlemiseks vajaliku äriloogika;
  • teenuse osutaja – loob X-tee teenuse, arendab teenuse osutamiseks vajaliku äriloogika ja määrab, millised infosüsteemid saavad antud teenust tarbida.

Enda rolli määramisel on oluline silmas pidada mõningaid üldiseid kaalutlusi, mis tulenevad X-tee teenuspõhisest iseloomust.

  • Kas sobiv teenus on juba loodud?
    • Mustrikataloogi kirjutamise hetkel on X-teel üle 1500 erineva teenuse. Sellest tulenevalt on võimalik, et andmete vahetamiseks sobiv teenus on juba X-teel loodud ja uue teenuse loomine ei ole vajalik. Sellisel juhul tuleks tarbida juba olemasolevat teenust.
    • Teenuse olemasolu saab kontrollida RIHA veebilehe kaudu või küsides otse suhtluspartnerilt.
    • Otsustuspuus on vastav küsimus "Teenus on olemas?".
  • Milline on andmeid vahetavate infosüsteemide käideldavus?
    • Uue X-tee teenuse loomisel on oluline võrrelda mõlema andmeid vahetava infosüsteemi käideldavust. Arvestada tuleb järgnevaga:
      • teenuse tarbija käideldavus peab olema tagatud ainult teenuse tarbimise hetkel;
      • teenuse osutaja käideldavus peab olema tagatud alati, kui keegi võib soovida teenust tarbida.
    • Otsustuspuus on vastav küsimus "Infosüsteemde käideldavus?".
  • Kumb pool soovib omada kontrolli selle üle, millal andeid vahetatakse?
    • Kui mõlema infosüsteemi käideldavus on võrdne, siis tuleks valida, kumb pool algatab andmevahetuse. Arvestada tuleb järgnevaga:
      • teenuse tarbijal on kontroll andmevahetuse toimumise ajahetke üle;
      • teenuse osutajal on kontroll selle üle, kes saab temaga andmeid vahetada;
      • teenuse osutajal on võimalik teenuse vastusega anda teenuse tarbijale tagasisidet.
    • Otsustuspuus on vastav küsimus "Andmevahetuse algataja?".

Joonis 1.5 Enda rolli määramist abistav otsustuspuu.


Mustri valik

Mustrid on jaotatud kolmeks põhiliseks tüübiks:
  • primitiivid (mustri kood PM) on kõige üldisemad mustrid, mis sobivad paljude erinevate ülesannete lahendamiseks ja on oma olemuselt üsna lihtsad;
  • funktsionaalsed mustrid (mustri kood FM) on primitiividele tuginevad lahendused, mis tulenevad täpsematest äriprotsessi vajadustest ja sobivad kitsamate ülesannete lahendamiseks;
  • töötlemise mustrid (mustri koodid KM ja TM) keskenduvad mitme erineva teenuse tarbimisele või osutamisele sama töövoo osana.

Nendest tüüpidest viimane (töötlemise mustrid) ei ole käesolevas peatükis kajastatud, sest tegemist on mõnevõrra erilise mustri tüübiga. Töötlemise mustri valik on oluline süsteemides, kus sõnumivahetus on keerukam ning rakendatakse mitut erinevat primitiivi ja/või funktsionaalset mustrit. Töötlemise mustrite lühikirjeldused on toodud peatükis "Töötlemise mustrid".

Primitiivid ja funktsionaalsed mustrid on järgnevad:

Sobiva mustri valikul tuleb osaliselt silmas pidada samu kaalutlusi nagu enda rolli määramisel (kas teenus on juba loodud, käideldavus). Mustri valikul lisanduvad järgnevad kaalutlused:
  • Kui keeruka struktuuriga andmeid vahetatakse?
    • Üldjuhul tuleb X-tee teenuste kaudu vahetatavate andmete struktuur kirjeldada teenuse WSDLis. Samas see võib olla mõningatel juhtudel ebamõistlikult keerukas (näiteks HL7 formaadis sõnumite vahetamine).
    • Antud küsimuse alla kuulub lisaks ka olukord, kus soovitakse sama teenuse kaudu vahetada väga erinevaid andmestikke. Näiteks kui X-teed soovitakse kasutada mõne muu protokolli jaoks andmevahetuskihina.
    • Otsustuspuus on vastav küsimus "Keerukas andmestik?".
  • Kumb pool on vahetatavate andmete allikas?
    • Mustri valikul tuleks vaadelda ka seda, kumma poole infosüsteemis on andmevahetuse seisukohast olulised andmed. Oluliste andmete all peame silmas andmeid, mis on ühes infosüsteemis olemas ja mida teine infosüsteem soovib kasutada.
    • Otsustuspuus on vastav küsimus "Andmete allikas?".
  • Kas andmeid uuendatakse perioodiliselt?
    • Perioodiliste uuenduste all peame silmas olukorda, kus üks andmevahetuse pool on kohustatud regulaarselt teist poolt teavitama enda andmetes toimunud muudatustest.
    • Otsustuspuus on vastav küsimus "Perioodilised uuendused?".
  • Kas andmeid hallatakse jooksvalt?
    • Jooksva andmete haldamise all peame silmas olukorda, kus ühel poolel peab olema võimalus teise poole andmeid lugeda, lisada, muuta ja kustutada vabalt valitud ajahetkel.
    • Otsustuspuus on vastav küsimus "Jooksev andmehaldus?".
  • Kas teenuse vastuse koostamine võtab kaua aega?
    • Üle X-tee on võimalik pakkuda ligipääsu ka protsessidele, mis võtavad kaua aega (näiteks mahukad andmebaasipäringud). Sellisel juhul on vajalik kasutada mõnevõrra keerukamat sõnumivahetuse skeemi, mis võimaldab teenuse sisendi ja väljundi jaoks kasutada eraldi teenuseid.
    • Otsustuspuus on vastav küsimus "Pikk töötlusaeg?".
  • Kas teenuse tarbimisel peab saama valida vastuses sisalduvaid andmevälju?
    • X-tee teenuste sisend ja väljund on üldjuhul üheselt määratud. Samas võib tekkida olukord, kus erinevate teenuse tarbijate poolt soovitav andmestik erineb vaid mõne üksiku andmevälja poolest.
    • Otsustuspuus on vastav küsimus "Erinev tarbitav andmestik?".
  • Kas soovitakse kirjete hulgast konkreetseid kirjeid otsida?
    • Kui X-teele tuginevat protsessi viib läbi inimkasutaja, siis võib tekkida vajadus, et kasutaja andmetest ülevaate ning selle ülevaate põhjal oleks kasutajal võimalik valida enda jaoks huvipakkuvaid kirjeid, millega edasi töötada.
    • Otsustuspuus on vastav küsimus "Andmete otsing?".

Joonis 1.6 Sobiva mustri valimist abistav otsustuspuu.


Töötlemise mustrid

Kui sama töövoo osana soovitakse tarbida mitut teenust, siis tuleks lisaks tutvuda ka töötlemise mustritega. Töötlemise mustrid jaguvad kahte põhilisse gruppi:



Last modified: Monday, 24 October 2016, 3:49 PM