Kontekstinhallinta kontekstinhallinnan alueellinen kytt Mika Tuomainen Ser APIprojekti
- Slides: 59
Kontekstinhallinta & kontekstinhallinnan alueellinen käyttö Mika Tuomainen Ser. API-projekti, HIS-tutkimus Kuopion yliopisto, Tietotekniikkakeskus, Centek Mika. Tuomainen@uku. fi
Tässä esityksessä… ¢ ¢ ¢ …esitellään yleisesti kontekstinhallintaa (minimikontekstinhallintaa) …käydään läpi kontekstinhallinnan käyttöä alueellisesti …kurkistetaan "konepellin" alle …ajan salliessa kontekstinhallinnan alueellisessa hyödyntämisessä huomioitavia erityis- ja tietoturvakysymyksiä …esiteltävät spesifikaatiot on saatavilla HL 7 Dokumenttiarkistosta (linkki www. hl 7. fi: n etusivulla)
Kontekstinhallinnan lähtökohdat (1) ¢ Potilastiedot ovat useissa eri järjestelmissä l ¢ Käyttäjän työasemalla on usein tarpeellista olla käynnissä yhtäaikaisesti useita eri sovelluksia Järjestelmien välillä ei ole riittävästi yhteistoiminnallisuutta l l Lääkärin tai muun hoitohenkilökunnan täytyy erikseen kirjautua sisään kuhunkin järjestelmään ja hakea esimerkiksi potilaan tiedot erikseen joka järjestelmään Käyttäjä joutuu näin tekemään useita samankaltaisia toimintoja eri järjestelmiin
Kontekstinhallinnan lähtökohdat (2) ¢ ¢ ¢ Kontekstinhallinnan tarkoitus on tuoda apua em. ongelmaan Se määrittelee yleisen mallin samalla työpöydällä toimivien sovellusten visuaalisen integroinnin toteuttamiseen. Kontekstinhallinnan pyrkimyksenä on helpottaa erillisten järjestelmien yhtäaikaista käyttöä -> pyrkimys parantaa käyttäjän työprosesseja sekä tehdä järjestelmien käytöstä paremmin työnkulkua tukevia
Kontekstinhallinnan lähtökohdat (3) ¢ Kertakirjautuminen (single sign-on) l l Käyttäjän tarvitsee kirjautua työasemallaan vain kerran yhteen järjestelmään Muut työpöytäintegraatioon kytketyt sovellukset voivat käyttää hyväksi tätä kirjautumistietoa, eli ne voivat liittyä samaan kontekstiin
Kontekstinhallinnan lähtökohdat (4) ¢ Yhteiseen kontekstiin siirtyminen l l käyttäjälle tarjotaan automaattinen tai helppo siirtyminen samaan potilaaseen tai muuhun käsiteltävänä olevaan asiaan eri järjestelmissä käyttäjän tarvitsee esim. syöttää potilaan tunnus ja hakea haluamansa potilaan tiedot vain yhteen järjestelmään, muut järjestelmät osaavat työpöytäintegraatiota hyödyntäen hakea saman potilaan tiedot
Kontekstinhallinnan lähtökohdat (5) ¢ Yhteinen konteksti (common context) l l l Muodostuu joukosta yhteisiä tietoja ja käsitteitä (entiteettejä, entities), joita eri järjestelmät voivat käsitellä samalla tavalla järjestelmien sisäisestä toteutuksesta riippumatta Esimerkiksi käyttäjän ja asiakkaan (terveydenhuollossa potilaan) tunnistetiedot Myös muut mahdolliset tiedot ja käsitteet, joilla on sama merkitys eri järjestelmissä, voivat kuulua yhteiseen kontekstiin
Yhteinen konteksti Potilassubjekti Nimi = Potilaan nimi Arvo = Meikäläinen^Matti Nimi = Potilaan hetu Arvo = 230474 -xxxx Käyttäjäsubjekti Context Items Context Item
Kontekstinhallinnan lähtökohdat (6) ¢ ¢ HUOM! tärkeää kuitenkin huomata, että kontekstinhallinta ei poista sovelluksissa olevaa päällekkäistä tietoa MUTTA helpottaa ja tehostaa merkittävästi käyttötilanteita, joissa sama käyttäjä joutuu käyttämään useita sovelluksia samanaikaisesti
Kontekstinhallinnan arkkitehtuuri ¢ Osapuolet l l l Koordinaattorikomponentti Järjestelmät Mahdolliset agenttikomponentit Järjestelmä 2 Järjestelmä 3 Järjestelmä 1 Koordinaattorikomponentti Agenttikomponentti
Kontekstinhallinnan osapuolet (1) ¢ Koordinaattori-komponentti (context manager) l l l Toimii työpöydällä olevien järjestelmien näkymättömänä koordinaattorina Ohjelmistokomponentti, joka ylläpitää ja koordinoi käsiteltävää kontekstia sekä yhteyksiä sovelluksiin Koordinaattori-komponentin avulla siihen liittyneet sovellukset voivat jakaa keskenään yhteistä kontekstia ( = yhteisen kontekstin synkronointi)
Kontekstinhallinnan osapuolet (2) ¢ Järjestelmät l ¢ Organisaatiossa jo olemassa olevia järjestelmiä (tai alueellisessa käytössä myös org. ulkop. ) Agenttikomponentit l l l Voidaan yhdistää eri sovellusten samaa entiteettiä tarkoittavat tiedot huolimatta entiteettien eri arvoista eri järjestelmissä Esimerkiksi käyttäjällä voi olla eri käyttäjätunnus eri sovelluksissa. Agenttikomponentin avulla käyttäjän yhden järjestelmän käyttäjätunnuksen perusteella voidaan kontekstiin asettaa myös käyttäjän muissa sovelluksissa käyttämät erilaiset käyttäjätunnukset Käyttö valinnaista
Kontekstinhallinta ~työpöytäintegraatio ~minimikontekstinhallinta ¢ ¢ ¢ kontekstinhallinnasta käytetään usein myös termiä työpöytäintegraatio kontekstinhallinta pitää sisällään tekniikat ja keinot, joilla työpöytäintegraatio voidaan toteuttaa minimikontekstinhallinta l Suomessa (Plug. IT-hankkeessa) määritelty CCOW-standardin "riisuttu" versio kontekstinhallintaan
CCOW-standardi (1) ¢ ¢ ¢ CCOW (Clinical Context Object Workgroup) Kansainvälisen HL 7 -yhdistyksen ylläpitämä standardi terveydenhuollon työpöytäintegraatioon CCOW-standardin mukainen toteutus koettiin liian raskaaksi tavaksi toteuttaa integraatiota l Ei kotimaisia toteuttajia täydelliselle CCOWstandardin mukaiselle ratkaisulle
CCOW-standardi (2) ¢ Täydelliselle CCOW-standardin mukaiselle ratkaisulle ei ole kuin muutama ulkomaalainen tuote l l Epävarmuustekijänä kontekstinhallintaympäristön hinnoittelu sekä mahdollinen riippuvaisuus toimittajasta Ulkomainen toteuttaja ja CCOW-standardin pääkehittäjä (Sentillion) ei osoittanut kiinnostusta tarjouspyyntöön…
Plug. IT-minimikontekstinhallinta (1) ¢ ¢ työpöytäintegraation soveltamiseksi Suomessa Plug. IT-hankkeessa alettiin määritellä CCOWstandardia kevyempää ratkaisua ratkaisun pohjana käytettiin CCOW-standardissa määriteltyä työpöytäintegraation toteuttamista tavoitteena oli hahmottaa minimiratkaisua, jolla CCOW-tyyppinen toiminnallisuus olisi saavutettavissa standardista pyrittiin aluksi löytämään vain kaikkein olennaisimmat ja hyödyllisimmät osat, joilla työpöytäintegraation perustoiminnallisuus, käyttäjä- ja potilaskontekstin käsittely, voitaisiin toteuttaa
Plug. IT-minimikontekstinhallinta (2) ¢ ¢ ¢ käytännössä toteutus on palvelinpohjainen tietovarasto, johon kukin kontekstinhallinnan piiriin kuuluva sovellus voi tehdä tietojen hakuja ja päivityksiä palvelinpohjaisuuden etuna on, että kontekstinhallinta saadaan toimimaan eri tekniikoilla toteutettujen järjestelmien kesken (windows, web) käyttäjälähtöisyys l l ei automaattista kontekstin vaihtamista yksinkertaistaa kontekstinhallinnan toteuttamista
Plug. IT-minimikontekstinhallinta (3) ¢ määrittelyn avulla mahdollista toteuttaa l l ¢ ¢ kertakirjautuminen yhteiseen kontekstiin siirtyminen (kontekstin synkronointi) helpottaa erillisten järjestelmien yhtäaikaista käyttöä tehostaa käyttötilanteita, joissa sama käyttäjä joutuu käyttämään useita sovelluksia samanaikaisesti
Plug. IT-minimikontekstinhallinta (4) ¢ Minimikontekstinhallinnan määrittely ei ole yhteensopiva CCOW-standardin kanssa l l Minimitason määritysten mukaisesti toteutettu asiakassovellus ei ole yhteensopiva CCOWstandardin mukaisen koordinaattorin kanssa Vastaavasti CCOW-yhteensopiva asiakassovellus ei ole yhteensopiva minimitason määritysten mukaisen koordinaattorin kanssa
Yksinkertainen esimerkki toiminnasta (1) 1. Käyttäjä avaa järjestelmän ja kirjautuu järjestelmään 1. Järjestelmä 1
Yksinkertainen esimerkki toiminnasta (2) 2. Järjestelmä ottaa yhteyden koordinaattoriin ja liittyy koordinaattoriin Järjestelmä 1 2. Koordinaattori
Yksinkertainen esimerkki toiminnasta (3) 3. Järjestelmä asettaa käyttäjän käyttäjätunnuksen koordinaattorin ylläpitämään kontekstiin Järjestelmä 1. 3. Koordinaattori
Yksinkertainen esimerkki toiminnasta (4) 4. Käyttäjä hakee potilaan x järjestelmästä 4. Järjestelmä 1 Koordinaattori
Yksinkertainen esimerkki toiminnasta (5) 5. Järjestelmä asettaa potilaan x hetun koordinaattorin ylläpitämään kontekstiin Järjestelmä 1. 5. Koordinaattori
Yksinkertainen esimerkki toiminnasta (6) 6. Käyttäjä avaa toisen järjestelmän 6. . Järjestelmä 1 Järjestelmä 2 Koordinaattori
Yksinkertainen esimerkki toiminnasta (7) 7. Järjestelmä 2 liittyy koordinaattorin ylläpitämään kontekstiin . Järjestelmä 1 Järjestelmä 2 7. Koordinaattori
Yksinkertainen esimerkki toiminnasta (8) 8. Järjestelmä 2 hakee kontekstista käyttäjätunnuksen ja potilaan hetun. Näiden tietojen avulla järjestelmä 2 voi suorittaa kertakirjautumisen ja siirtymiseen yhteiseen kontekstiin järjestelmän 1 kanssa . Järjestelmä 1 Järjestelmä 2 8. Koordinaattori
Minimikontekstinhallinnan määrittelyiden versiot ¢ Plug. IT: ssa tuotetut versiot: l l ¢ Minimitason kontekstinhallinnan määrittely, Versio 1 Minimitason kontekstinhallinnan määrittely, Versio 2 HL 7 Finland dokumenttiarkistossa, Common Services SIGissä ja Ser. APIssa tuotetut: l l Minimikontekstinhallinnan määrittely -organisaation sisäiseen kontekstinhallintaan, Versio 2. 1 Minimikontekstinhallinnan määrittely -organisaation sisäiseen kontekstinhallintaan, Väliversio 2. 1. 1 Tietoturvallinen kontekstinhallinta - soveltamisohje Minimikontekstinhallinnan määrittely v 3 (31. 1. 2006)
Alueellinen käyttö (1) ¢ ¢ ¢ Esiin nousi tarve käyttää kontekstinhallintaa myös alueellisesti Ideana, että organisaation ulkopuolinen järjestelmä voisi liittyä organisaation sisäiseen kontekstinhallintaan Näin olisi mahdollista toteuttaa organisaation ulkopuolisen järjestelmän kertakirjautuminen ja siirtyminen yhteiseen kontekstiin organisaation sisäisten järjestelmien kanssa
Alueellinen käyttö (2)
Alueellinen käyttö (3) Alueellinen käyttö nosti esiin useita tietoturvavaatimuksia ¢ Alueellisen tarpeen myötä alettiin määritellä kontekstinhallinnan tietoturvaratkaisua Tietoturvallinen kontekstinhallinta soveltamisohje ¢ Minimikontekstinhallinnan määrittely v 3 dokumentissa ¢ l l huomioitu tietoturva oma luku alueellisesta kontekstinhallinnasta ja sen erityisvaatimuksista
Kontekstinhallinnan turvallisuus (1) ¢ Ensimmäisissä minimikontekstinhallinnan määrittelyissä l l l ¢ olettiin lähtökohtaisesti, että kontekstinhallintaa toteutetaan sisäverkossa, jossa paikallinen verkko ja työasemat ovat tiukasti kontrolloituja Vaatimuksia käyttäjäkontekstin asettamisen osalta Turvallisuuden ratkaisu toteutuskohtaista Uusimmassa Minimikontekstinhallinnan määrittely v 3: ssa huomioitu tietoturva l l organisaation sisäisessä kontekstinhallinnassa ulkopuolisen järjestelmän liittämisessä kontekstinhallintaan
Kontekstinhallinnan turvallisuus (2) ¢ ¢ Kontekstipalvelimen ja siihen liittyvien järjestelmien välinen tietoturva toteutetaan kaksisuuntaisella SSL: llä Kaksisuuntaisella SLL: llä kontekstipalvelin ja siihen liittyvät järjestelmät voivat varmistaa l l l toistensa identiteetit kontekstitiedon eheyden sekä toteuttaa tietojen salauksen
Kontekstinhallinnan turvallisuus (3) ¢ SSL-varmenteet sovelluskohtaisia l l l Web-sovelluksissa palvelinvarmenteiden käyttö yksinkertaista Työasemasovelluksien osalta varmenteiden jakelu ja hallinnointi hankalaa Voidaan kiertää esim. väliohjelmiston avulla
Kontekstinhallinnan turvallisuus, alueellinen käyttö ¢ ¢ Organisaation ulkopuolisen sovelluksen ja kontekstipalvelimen välillä käytetään myös kaksi suuntaista SSL: ää Parametrien välitys (sessioavain) selaimen välityksellä, one-way-SSL
Kurkistus konepellin alle. .
Yleisesti kontekstinhallintarajapinnoista (1) ¢ Minimikontekstinhallinta käsittää kaksi rajapintaa: l l Context. Manager – kontekstinhallintaan liittyminen ja siitä eroaminen, session luominen Context. Data – yhteisen kontekstin tietojen (entiteettien) käsittely
Yleisesti kontekstinhallintarajapinnoista (2) ¢ ¢ Yhteisen kontekstin tietojen tietotyyppien nimeämiskäytäntö CCOW: sta Määritelty kaksi perustietotyyppiä: l Potilassubjekti • nimeäminen: Patient. Id. National. Id. Number • arvo: hetu l Käyttäjäsubjekti • nimeäminen: User. Id. Logon • arvo: käyttäjätunnus • Kontekstiin liittyvien sovellusten täytyy osata tulkita käyttäjäsubjektin arvo ¢ Lisäsubjektit suoraan CCOW-standardista, jos mahdollista tai sitten custom-subject mekanismin avulla määritellyt oma subjektit
Yleisesti kontekstinhallintarajapinnoista (3) ¢ Nimeämiskäytäntö sama kuin CCOW-standardissa Subject_label. role. Name_prefix. optional_name_suffix ¢ ¢ Subject_label: Ilmaisee subjektin, johon tieto kuuluu, esim. Patient role: Kertoo tiedon ”roolin”: Id, Co, An Name_prefix: Ilmaisee mitä tieto tarkoittaa, esimerkiksi Logon (= kirjautumistieto) Optional_name_suffix: Tämä ei ole pakollinen kenttä. Suffixosan avulla on mahdollista esimerkiksi erottaa eri järjestelmien käyttämät subjektit, jos niiden arvot poikkeavat toisistaan
Yleisesti kontekstinhallintarajapinnoista (4) ¢ ¢ Yhteisen kontekstin tietotyypit määritellään käyttämällä HL 7 v 2. 4 -rakenteisia tietotyyppejä kuin CCOW-standardissakin Myös HL 7 v 2. 4 -mukaisia erotinmerkkejä ja escape-sekvenssejä käytettävä tiedon eri osien kuvaamiseen, jotta viestien muoto säilyy oikeana
Context. Manager-rajapinta ¢ Create. Session l l l ¢ Join. Common. Context l l ¢ sovellus voi pyytää koordinaattoria luomaan sessioavaimen mahdollistaa useiden sessioiden luomisen samalta työasemalta käyttö vapaaehtoista mutta suositeltavaa (alueellisessa käytössä oikeastaan pakollista) Kontekstinhallinnan yhteiseen kontekstiin liittyminen Työaseman tunnistaminen: Joko sessioavaimen tai IP-osoitteen avulla Leave. Common. Context l Kontekstinhallinnasta eroaminen
Esimerkki: Create. Session-kutsu Sanoma http: //127. 0. 0. 1/cm. psp ? interface=Context. Manager &method=Create. Session &application. Name=Login. Master &host. Address=193. 167. 225. 67 Vastaus session. Key=12846277264
Esimerkki: Join. Common. Context-kutsu Sanoma http: //127. 0. 0. 1/cm. psp ? interface=Context. Manager &method=Join. Common. Context &application. Name=Login. Master &session. Key=12846277264 Vastaus participant. Coupon=88100107
Esimerkki: Leave. Common. Context-kutsu Sanoma http: //127. 0. 0. 1/cm. psp ? interface=Context. Manager &method=Leave. Common. Context &participant. Coupon=88100107
Context. Data-rajapinta ¢ Set. Item. Values l ¢ Tietojen asettaminen yhteiseen kontekstiin Get. Item. Values l Tietojen hakeminen yhteisestä kontekstista
Esimerkki: Set. Item. Values-kutsu Sanoma http: //127. 0. 0. 1: 2036/cm. psp ? interface=Context. Data &method=Set. Item. Values &participant. Coupon=88100107 &item. Names=User. Id. Logon|Patient. Id. National. Id. Number &item. Values=mituomai|220345 -XXXX
Esimerkki: Get. Item. Values-kutsu Sanoma http: //127. 0. 0. 1/cm. psp ? interface=Context. Data &method=Get. Item. Values &participant. Coupon=88100107 &item. Names=Patient. Id. National. Id. Number Vastaus item. Values=Patient. Id. National. Id. Number|220345 -XXXX
Alueellisen kontekstinhallinnan tietoturvaratkaisu
Alueellinen tietoturva ¢ Haasteita: l ¢ Tarpeita l l ¢ Järjestelmät ja niiden käyttämät tietoliikenneverkot ovat eri organisaatioiden hallinnoimia ja ylläpitämiä Kertakirjautuminen Saman potilaan käsittely eri järjestelmissä Ratkaisuja: l l Sovellusten ja kontekstipalvelimen vahva tunnistus ja salatut yhteydet kontekstinhallinnassa Sessioavaimen turvallinen välitys järjestelmien välillä Sessioavaimen on oltava vaikeasti arvattava Kontekstinhallinta ratkaisee kertakirjautumisen ja samaan potilaaseen siirtymisen
Kontekstinhallinnan osapuolet alueellisessa käytössä (1) ¢ Kontekstipalvelin l l l ¢ Voi toimia sisä- tai ulkoverkossa Tunnistaa sovellukset sertifikaateilla ja tarkistaa sovellusten oikeudet Välittää tietoja sovellusten välillä Perusjärjestelmä l l Toimii organisaation omassa sisäverkossa Tunnistaa käyttäjän Luo kontekstin ja liittyy siihen, asettaa käyttäjän kontekstiin Käynnistää muita järjestelmiä ja välittää niille sessioavaimen
Kontekstinhallinnan osapuolet alueellisessa käytössä (2) ¢ Ulkopuolinen järjestelmä (alueellinen järjestelmä) l l Toimii organisaation ulkopuolisessa verkossa Saa käynnistysparametrina sessioavaimen, jolla liittyy kontekstiin Saa kontekstista tietoonsa käyttäjätunnuksen ja käsiteltävän potilaan Voi käynnistää muita ulkopuolisia järjestelmiä ja välittää niille sessioavaimen edelleen
Kontekstinhallinnan osapuolet alueellisessa käytössä (3) ¢ Sisäinen järjestelmä l l Toimii organisaation sisäisessä verkossa Saa käynnistysparametrina sessioavaimen, jolla liittyy kontekstiin Saa kontekstista tietoonsa käyttäjätunnuksen ja käsiteltävän potilaan Voi käynnistää muita sisäisiä tai ulkopuolisia järjestelmiä ja välittää niille sessioavaimen edelleen
Alueellisen käytön erityisvaatimuksia (1) ¢ Alueellisen järjestelmän toiminta-alueella voi olla useita kontekstipalvelimia l l ¢ Organisaatioilla on omia sisäisiä kontekstinhallintatarpeita Kontekstipalvelin voi olla organisaation oma tai useamman organisaation yhteinen Alueellisen järjestelmän on osattava valita oikea kontekstipalvelin sen mukaan mistä organisaatiosta sitä kutsutaan
Alueellisen käytön erityisvaatimuksia (2) ¢ Yhteistä kontekstipalvelinta käyttävien järjestelmien on luotava ja käytettävä yksilöllisiä sessioavaimia l l Uusi Create. Session-metodi takaa yksilöllisyyden Ip-osoitteisiin perustuvaa työpöydän tunnistamista ei ole mahdollista käyttää
Alueellisen käytön erityisvaatimuksia (3) ¢ Kontekstiin tallennettavan käyttäjätunnuksen on oltava yksilöllinen käytetystä kontekstipalvelimesta riippumatta l l l Käyttäjätunnus yksilöi tietyn sovelluksen tietyn käyttäjän Sovelluksen nimi voidaan liittää käyttäjätunnuksen osaksi Muita vaihtoehtoja esimerkiksi OID-koodin käyttö käyttäjän tunnistamiseen, geneerinen id (sovittava erikseen miten geneerinen id saadaan ja miten niitä hallinnoidaan)
Perusjärjestelmän käynnistäminen Käyttäjä Perusjärjestelmä Kontekstipalvelin Käynnistää Create. Session(application. Name=perusjärjestelmä) session. Key=xyz Join. Common. Context(application. Name=perusjärjestelmä, session. Key=xyz) participant. Coupon=123 Set. Item. Values(participant. Coupon=123, item. Names=User. Id. Logon, item. Values=käyttäjätunnus@perusjärjestelmä) Valitsee potilaan Set. Item. Values(participant. Coupon=123, item. Names=Patient. Id. National. Id. Number, item. Values=070707 -0707) (Tommi Rissanen 2005) Kirjautuu sisään
Alueellisen järjestelmän käynnistys Käyttäjä Perusjärjestelmä Käynnistä aluejärjestelmän toiminto 1 Selain Aluejärjestelmä Kontekstipalvelin https: //osoite: portti/polku content-type: application/x-wwwform-urlencoded sender=perusjärjestelmä& receiver=aluejärjestelmä& session. Key=xyz&action=1 Join. Common. Context( application. Name=aluejärjestelmä, Session. Key=xyz) participant. Coupon=456 Get. Item. Values( participant. Coupon=456, item. Names=User. Id. Logon| Patient. Id. National. Id. Number) Toiminnon 1 aloitussivu (Tommi Rissanen 2005) item. Values=User. Id. Logon| käyttäjätunnus@perusjärjestelmä| Patient. Id. National. Id. Number| 070707 -0707
Järjestelmien sulkeminen Käyttäjä Sulje järjestelmä Perusjärjestelmä Selain Aluejärjestelmä Kontekstipalvelin https: //osoite: portti/polku content-type: application/x-wwwform-urlencoded sender=perusjärjestelmä& receiver=aluejärjestelmä& session. Key=xyz&action=99 Leave. Common. Context( participant. Coupon=456) Ilmoitus järjestelmän sulkemisesta (Tommi Rissanen 2005) Leave. Common. Context(participant. Coupon=123)
Lähteitä ¢ ¢ ¢ www. hl 7. fi www. plugit. fi www. centek. fi/serapi
- Mika tuomainen
- Viisi taivutus
- Palvelukumppanuus
- Ser feliz não deve ser segredo deve ser sagrado
- Ser espirita não é ser nenhum religioso
- El ser humano es un ser inacabado
- Queria ser poeta mas poeta não posso ser
- Yo soy tu eres el ella es song
- What is ser marketing
- Nacemos para ser felices no para ser perfectos
- Prosessin syötteet
- Pyöröaura
- Mikä on apuverbi
- Otava asiakaspalvelu
- Asiatekstin kirjoittaminen
- Mikä on kielikuva
- Mikä on lauseenvastike
- Mika välimaa ei hätää
- En firma taivutus
- Helvana kokemuksia
- Feldispat grubu mineraller
- Nfv ohz
- Breza kviz
- Erittele rakennetta
- Mika tammilehto
- Mitä ovat pilvipalvelut
- Tekninen toteutus
- Potilasvuode
- Mitä tarkoittaa päänäkökulma
- Rakentamisen arviointityökalut
- Mika laiho
- Preventio ja promootio
- Ideavirke
- Kongruenssi
- Mikä ioni aiheuttaa vesiliuoksen happamuuden
- Angloamerikkalainen kulttuuri
- Japani uskonnot
- Resistanssi
- Mikä on sijamuoto
- Mostovi miroslav antic
- Mikä on advertoriaali
- Sebastian szyller
- Starttiraha sivutoiminen yrittäjä
- Englanti yleispreesens
- Mika kuismanen
- Itsemurha lääkkeillä panacod
- Juoninovelli
- Pirjo moen
- Mika rottenberg no nose knows
- Mika tammilehto
- Perfekti ja pluskvamperfekti englanti
- Mika tammilehto wikipedia
- Mika leinonen
- Mitä tarkoittaa nnn
- Mika lautanala
- Leukapihdit
- Ing muoto
- Mitä tarkoittaa referaatti
- Mika laaksonen
- Mikä on hinnoittelukerroin