tivi soa-seminaari ti 0.6soa-seminaari+ti… · case satakunta pÄivystysosaston toiminnan...
TRANSCRIPT
-
CASE SATAKUNTA PÄIVYSTYSOSASTON TOIMINNAN TEHOSTAMINEN TAPAHTUMALÄHTÖISELLÄ PALVELUARKKITEHTUURILLA (EVENT DRIVEN SOA) Timo Itälä SOA-seminaari 17.3.2011
-
Aiheita
! Päivystyksen hoitoprosessin ja palveluiden mallintaminen BPMN –notaatiolla
! Tapahtumalähtöisyys eliminoi viiveitä ! Prosessien ja palveluiden seurannan tietoarkkitehtuuri ! Palveluväylä teknisenä ratkaisuna
-
Projektin taustaa
! Aalto Yliopisto, tietotekniikan laitos ! Ohjelmistotuotannon ja –liiketoiminnan laitos, SoberIT ! SOLEA-tutkimusprojekti: Itä-Suomen yliopisto, Aalto
Yliopisto ! Palveluarkkitehtuurit, SOA ! Kokonaisarkkitehtuurit, EA ! Mallinnusmenetelmät ! Kokonaisarkkitehtuurin ja paikallisen projektin arkkitehtuurin
yhteensovittaminen
3
-
4
Satakunnan sairaanhoitopiiri
! Erikoissairaanhoito ! Erityishuoltopiiri ! 20 jäsenkuntaa ! 226 000 asukasta ! Yhteispäivystys kuntien
terveyskeskusten kanssa
-
Kokonaisarkkitehtuurilinjauksia
KA-Kehikko: KuntaIT:n arkkitehtuurikehikko ! Toiminta-arkkitehtuuri
! Kehittäminen lähtee toiminnan tarpeista ! Palveluarkkitehtuuri: Uudelleen käytettävät palvelut
! Tietoarkkitehtuuri ! Vastaa toimintaprosessien kuvausten tasoa
! Tietojärjestelmäarkkitehtuuri ! Integraatio: Avoimet rajapinnat
Miten projekti ja kokonaisarkkitehtuuri sovitetaan yhteen?
5
-
Case: Päivystyksen ongelma
! Potilaan läpimenoaika päivystyksessä ! Keskimäärin 4 h ! 25% yli 6 h ! Tavoite: Kaikki alle 4h
! Kuinka suuri on ongelma? ! Mitä siitä seuraa? ! Missä siihen voidaan vaikuttaa? (Organisaatio ym). ! Ratkaisuvaihtoehtoja? Miten seurataan ratkaisujen
vaikutusta? ! ... ! Minkälainen malli auttaa löytämään
ratkaisuvaihtoehtoja?
6
-
Mallintamisesta
Mallin käyttötarkoitus ohjaa mallin laatimista!
Mallinnettava kohde
Mallintaja ja syntyvä malli
Mallin käyttäjä
-
Päivystystoiminnan yleismalli
8
Ydinprosessi Tukiprosessit Tarvitaan tarkempi malli
-
!"#$%&'()*"'+
!)()+,-.(+
/)01+
2$3*43&+5'0()'#&0+
6"33)40&7+8$-49"#&00+
:""4+
/&;(+-)0&7+C;#3$0AE&+=)(&D)F+
5'#3$0AE&+=)(&D)F+
CE&'(>-)0&7+C;#3$0AE&+=)(&D)F+
@)9)333&3+=)(&D)F+
6"%43&;+=)(&D)F+
=)(&D)F0+
CE&'(0+
-
Tarkempi malli BPMN notaatiolla
10
Hoi
topr
oses
si
Tulotilanteen arviointi
Hoidon suunnittelu
Hoidon toteutus
Hoidon arviointi
Jatkohoidon suunnitelma
Jatkuuko hoito tässä yksikössä?
Hoito jatkuu
Palv
elu
Palvelu
Palvelupyyntö Palvelun tulos
Potilaan hoitoprosessi on ydinprosessi. Se käyttää erilaisia palveluita: ! Laboratoriotutkimuksia ! Kuvantamistutkimuksia ! Konsultaatioita ! Toimenpiteitä ! jne!
-
Kokonaisarkkitehtuuria: SOA-palveluiden toteuttaminen
11
-
Palveluiden hierarkiaa
12
BPMN level 2: kuvaa toteutuksen SOA-palveluina
Hoi
topr
oses
si
Tulotilanteen arviointi
Hoidon suunnittelu
Hoidon toteutus
Hoidon arviointi
Jatkohoidon suunnitelma
Jatkuuko hoito tässä yksikössä?
Hoito jatkuu
Palv
elu
Palvelu
Palvelupyyntö Palvelun tulos
-
SOA palvelun mallit
13
! Palvelu sisältää yhden tai useampia operaatioita ! Operaatioon liittyy sanomienvaihdon malli
(Message Exchange Pattern, MEP), Palvelun näkökulma ! Request-Response operaatio
! Palvelu vastaanottaa sanoman ja lähettää vastaussanoman ! Solicit-Response operaatio
! Palvelu lähettää sanoman ja odottaa vastaussanomaa ! One-way operaatio
! Palvelu vastaanottaa sanoman ! Notification operaatio
! Palvelu lähettää sanoman ! Vastauksiin voi liittyä virhesanoma (Fault) ! Pohdinta synkroninen-asynkroninen?
-
14
SOA palveluiden kuvaaminen
Palvelu: PyydäTutkimus Operaatio: LähetäTutkimuspyyntö
Palvelu: TeeTutkimus Operaatiot: LueTutkimuspyyntö LähetäTähystystutkimuspyyntö LueTähystystutkimustulos LähetäTutkimustulos
Palvelu: TeeTähystystutkimus Operaatiot: LueTähystystutkimuspyyntö LähetäTähystystutkimustulos
Palvelu: Potilaskertomus Operaatiot: LueTutkimustulos
WSDL
WSDL
WSDL WSDL
-
SOA Palveluiden toteutus
15
PyydaTutkimusTeeTahystys-tutkimus PotilaskertomusTeeTutkimus
LahetaTutkimuspyynto LueTutkimuspyynto
LahetaTahystystutkimuspyynto LueTahystystutkimuspyynto
Tutkimuspyynto
Tahystystutkimuspyynto
LueTahystystutkimustulos LahetaTahystystutkimustulos
Tahystystutkimustulos
LahetaTutkimustulos LueTutkimustulosTutkimustulos
Notification Control Action Entity
Potilashallinto Tähystys-tutkimus
Potilas-kertomus Orkestrointi
WSDL WSDL WSDL WSDL
BPEL
BPEL Engine
-
Satshp palveluväylä Application
Potilas-hallinto
Osasto-järjes-telmä
Potilas-kertomus
Application
Application
Application
Application
Osasto-järjes-telmä
Osasto-järjes-telmä
WSDL WSDL
Application
Valtakunnalliset palvelut
WSDL WSDL WSDL WSDL
Orkestrointi-palvelu
BPEL
Web Service
Sovellus-adapteri
-
17
ESB toteuttaa adapterit
SELITYKSETLiittymät Toteutumattomat osajärjestelmät
JUVO Vuodeosastot- SIJAINTITIEDOT(ML 2, Radu, Upo, Toti, Puh.kesk.)- HOITOJAKSOT(Hoit.luok.,Infekt.,Maksuli,Mama,Mynla)- sis./ulos kirj.- REIPAS jonot- HILMO hoitoilmoitukset
Hoit.luokitus
MAKSULI Maksuliikenne- potilasmaksut
ML 2 Kliin.kemian lab.- pyynnöt, tulokset- laboratorion sisäinen osuus- verikortisto
VERTTI Verikeskus- Verituotteet- tilaukset- verikeskuksen sisäinenosuus
SAMBA Mikrobiologian lab.- laboratorion sisäinen osuus
RADU Rtg, Klf, Knf- lähetteet, lausunnot- röntgenin sisäinen osuus- ilmoittautumiset ja käyntitiedot- ajanvaraus- kuljetuslista
QPATI Patologian lab.- patologian laboratorion sisäinenosuus
YKERT Sairaskertomusten hallinta- SIJAINTITIEDOT(Radu, Upo,Juvo,- sairaskertomusten sijainnit (paperit)
Haikara Äitiyshuolto- esitiedot- raskaus- synnytys- vastasyntynyt
TOTI Toimenpideyksiköt- leikkaussalivaraukset- leikkauslistat- tehdyt leikkaukset- päivystysilmoitus
SAIRAALAINFEKTIOT- infektioiden seuranta
WEBKERTsairaskertomukset- sairaskertomustekstit
SYÖPÄREKISTERI
FTP- syöpäilmoitus
YLEISET REKISTERIT(kaikki käyttävät)- yksikkö-, osasto-, erikoisala-, laitos-- kunta-, postinumerorekisterit- lääkäri-, diagnoosirekisterit-, toimenpiderekisteri....
FTP- HETU, nimi, tutk
KUVANTAMISLAITTEET
TERVEYSKESKUS
OVT- lähete
OVT- lausunto
HL7- pyyntö
HL7- tulos
- pyyntö(veriryhmänsopivuus)
HL7- tulos
(veriryhmänsopivuus) HL7
- vastausHL7
- tilausOVT
- vastaus- tilaus
KANS.TERV.LAIT.
FTP- tartuntatauti
ilmoitus
UPO Poliklinikat- POTILASREKISTERI(kaikki käyttävät, paitsi Seniori)- KÄYNTITIEDOT(Mynla, Infekt., Maksuli, Haikara )- lähetetiedot- ajanvaraus- käyntitiedot- rtg-UPO rtg ajanvaraus
FYSIS Fysiatria- fysiatrian käynnit
SOSISSosiaalityöntekijät- sosiaalityöntekijöidenkäynnit
MYNLA- hinnoittelu
VÄESTÖREKISTERIKESKUS
FTP (OVT)- henkilötiedot
VRK SatSHP- henkilötiedot - henkilötiedot
-ilmoittautumiset
- RTG, KLF, KNFajanvaraus
HL7- lausunto
FTP- tulokset MEDREC Dialyysi
CD postitus (OVT)- synt.lapset
- tulokset
- tulokset
- pkl toimenpiteet
- äidin tiedot- veriryhmä, vasta-aineet
SATSHP:n POTILASTIETOJÄRJESTELMIENLIITTYMÄT JOISSA TIETO SIIRTYY FYYSISESTI
21.3.2005/T Seppänen
FTP- Potilaslista hoitojaksojen perusteella- Potilaslista ajanvarauste perusteella
- vastasyntyneentiedot
FTP (OVT)- vastasyntyneen tiedot
- kuolintiedot
SENIORI Psykiatria- potilasrekisteri- käynti- ja hoitotiedot (Mynla)- potilasmaksut
HL7- pyyntö
HL7- tulos
ORDER Tilaukset- lääketilaukset- materiaalitilaukset
SAMPO varasto / apteekkiMateriaalihallinto
- tilaukset
FINATaloushallinto
POWERPLAYTilastot / Raportit
FTPRadu,ML2,Toti,Fysis,Vertti,Maksuli,My
nla
FTPRadu, ML2, Toti, Fysis, Upo, Juvo,
Mama, Hoit.luok., Seniori, Fina
CASHMANAGER
PRIMAhenkilöstöh.palkanmaksu
FTP- viitesuor
FTP-
todist.palkkiot- eml palkkiot
STAKESCD postitus- hilmotiedot
CD postitus- hilmotiedot
FTP- perintä
FTP- kyselytAKTIV KAPITAL
FTP- viitesuor
CD-postitus- E-ostot
TYKS
-luokitustiedot
NOS ksilpHL7Ajanvaraukset
TT2000+ Työterveysh.-Pyynnöt tehdääm ML2:eentyöpäytäintegraation kautta
Adapterit-UPO, JUVO, Webkert,ML2, Seniori,
miten uudet tiedot?ATJ
MD-TITANIA
LÄÄKITYS
Lähete-Palaute
Anestesia
Teho
NordDRG
AROMI/tilaukset
-hoitojakso- diagnoosit- toimenpiteet
-hoitojaksotiedot
SPR / Vok
FTP- veritilaukset /
varaukset
-laskutustietoja
Kuntosoft
Fysotools
HYS
FTP- E-ostot
- laskurivit
FTP- avohoito tiedot- hoitojaksotiedot-tuotepäätös nro:t
- E-osto laskut
AHA- KUNTOUTUS- määrärahaseuranta- kuntoutuspäätökset- OSTOPALVELUT- päätökset- APUVÄLINEET- välineiden vuokraus- väl. luokitusrekisteri
KERNEL- käyttäjähallinta- käyttäjien valikot- TaskMan tausta-ajojen hallinta
SANOMAT HL7/OVT- M-gate
- Datagate
Luettelo järjestelmistäjohon on liittymät
Muut liittymät
Peräkkäistiedostot
FTP-
henkilökunta
FTP- sairaslomat
FTP- palkat
DNApuhelinvaihde
LII potilaspuhelut FTP- puh.maksut
FTP- potilaat
- saldot-nimikkeet
Kuva-arkisto
Sovellukset
Säilytettävät
Korvattavat
Epäselvät
Kehitetään/poistetaan
Ulkopuoliste
Ensemble ESB
WSDL HL7 Tähystys-tutkimus
-
Takaisin päivystyksen tapaukseen
18
-
Prosessin ja palveluiden samanaikaisuus
19
Palveluita voidaan tilata useita samaan aikaan. Potilas odottaa: ! Laboratoriotutkimuksia ! Kuvantamistutkimuksia ! Konsultaatioita ! Toimenpiteitä ! jne!
Hoi
topr
oses
si
Tulotilanteen arviointi
Hoidon suunnittelu
Hoidon toteutus
Hoidon arviointi
Jatkohoidon suunnitelma
Jatkuuko hoito tässä yksikössä?
Hoito jatkuu
Palv
elu
Palvelu
Palvelupyyntö Palvelun tulos
-
Ongelma: Tiedon saaminen pyynnön valmistumisesta
20
Päivystyksessä yksi ongelma on tiedon saaminen tuloksen valmistumisesta: ! Laboratoriotutkimukset ! Kuvantamistutkimukset ! Konsultaatiot ! Toimenpiteet ! jne!
Hoi
topr
oses
si
Tulotilanteen arviointi
Hoidon suunnittelu
Hoidon toteutus
Hoidon arviointi
Jatkohoidon suunnitelma
Jatkuuko hoito tässä yksikössä?
Hoito jatkuuPa
lvel
u
Palvelu
Palvelupyyntö Palvelun tulos
-
Ratkaisu: Ilmoitus valmistumisesta
21
BPMN notaatio: Signal
Mutta miten kuvataan ilmoituksen vastaanottaminen?
Hoi
topr
oses
si
Tulotilanteen arviointi
Hoidon suunnittelu
Hoidon toteutus
Hoidon arviointi
Jatkohoidon suunnitelma
Jatkuuko hoito tässä yksikössä?
Hoito jatkuu
Palv
elu
Palvelu
Palvelupyyntö Palvelun tulos
-
Ilmoituksen vastaanottaminen
22
Hoi
topr
oses
si Tulotilanteen arviointi
Hoidon suunnittelu
Hoidon toteutus
Hoidon arviointi
Jatkohoidon suunnitelma
Jatkuuko hoito tässä yksikössä?
Hoito jatkuu
Palv
elu
Palvelu
Palvelupyyntö Palvelun tulos
Katso palvelun
tulos
BPMN notaatio: "Non-Interrupting event subprocess". Aliprosessi voi vastaanottaa ilmoituksen pääprosessin ollessa aktiivinen.
-
Ilmoitukset voivat kiinnostaa useita tahoja
23
! Sama ilmoitus voi olla kiinnostava usealle taholle
! Kiinnostavia ilmoituksia voi tulla useilta tahoilta
Hoi
topr
oses
si Tulotilanteen arviointi
Hoidon suunnittelu
Hoidon toteutus
Hoidon arviointi
Jatkohoidon suunnitelma
Jatkuuko hoito tässä yksikössä?
Hoito jatkuu
Katso palvelun
tulos
Huoneen-taulun
päivitys
Kuvantamisen lausunto
valmistunut
Konsultointi valmistunut
Huoneentaulun päivittäminen voisi olla oma palvelu
Tutkimukset valmistuneet
Palvelu
Palvelu
Tapahtuma-tiedon keruu
Tapahtuma-tieto
DW
-
Miten välitetään ilmoituksia?
! Perinteinen Request-Reply malli ei hyvin sovellu monelta-monelle viestien välitykseen
24
-
Event Driven Architecture (EDA)
25
Ilmoitusten lähettäjät Ilmoitusten vastaanottajat
Publish-Subscribe -malli
-
WSDL WSDL WSDL
BPMN mallin implementointi Web Service -palveluina
26
WSDL: (Web Service Description Language) ! Palvelut ! Operaatiot ! Sanomat
Hoi
topr
oses
si Tulotilanteen arviointi
Hoidon suunnittelu
Hoidon toteutus
Hoidon arviointi
Jatkohoidon suunnitelma
Jatkuuko hoito tässä yksikössä?
Hoito jatkuu
Katso palvelun
tulos
Huoneen-taulun
päivitys
Kuvantamisen lausunto
valmistunut
Konsultointi valmistunut
Huoneentaulun päivittäminen voisi olla oma palvelu
Tutkimukset valmistuneet
Palvelu
Palvelu
WSDL
WSDL WSDL
WSDL
Tapahtuma-tiedon keruu
Tapahtuma-tieto
DW
-
Palveluväylä EDA toteutukseen Palveluväylä (ESB) hoitaa jakelun / reitityksen, tarvitsee tilaajarekisterin Web Service palvelut WSDL-kuvausten mukaisesti
Tilaajarekisteri Jakelija
Julkaisijat Tilaajat
-
Tietomalli?
28
Tuotetiedon hallinta ! Tyyppi = Pyörä (tuotekoodi) ! Yksilö = Pyörä (sarjanumero)
Prosessitiedon hallinta ! Tyyppi = Prosessi
(tyyppikoodi) ! Yksilö = Prosessi (xxx-tunnus)
Hoi
topr
oses
si
Tulotilanteen arviointi
Hoidon suunnittelu
Hoidon toteutus
Hoidon arviointi
Jatkohoidon suunnitelma
Jatkuuko hoito tässä yksikössä?
Hoito jatkuu
Palv
elu
Palvelu
Palvelupyyntö Palvelun tulos
-
Prosessin ja palveluiden yhtenäinen tietoarkkitehtuuri
29
Potilas Hoito-prosessi
Yritys (Organi-saatio)
Toimipaikka
Työntekijä
Suorite-nimike
Kuka?
Kuka? Kuka?
Missä?
Mitä?
Mikä?
Diagnoosi
Miksi?
"Hoito"-palvelu
Hoi
topr
oses
si
Tulotilanteen arviointi
Hoidon suunnittelu
Hoidon toteutus
Hoidon arviointi
Jatkohoidon suunnitelma
Jatkuuko hoito tässä yksikössä?
Hoito jatkuu
Palv
elu
Palvelu
Palvelupyyntö Palvelun tulos
-
Palvelun tarkempi seuranta
Joskus on tarve seurata palveluprosessia tarkemmin
30
Hoi
topr
oses
si
Tulotilanteen arviointi
Hoidon suunnittelu
Hoidon toteutus
Hoidon arviointi
Jatkohoidon suunnitelma
Jatkuuko hoito?
Hoito jatkuu tässä yksikössä
Palv
elu
PalvelupyyntöPalvelun tulos
Palvelun asettaminen
jonoon
Palvelu-pyynnön
vastaanotto
Arviointi ja toteutus-päätös
Palvelun ajan
varaaminenPalvelun toteutus
Tulosten raportointi
-
Ilmoituksia voidaan lähettää myös palveluprosessin keskeltä
31
Hoi
topr
oses
si
Tulotilanteen arviointi
Hoidon suunnittelu
Hoidon toteutus
Hoidon arviointi
Jatkohoidon suunnitelma
Jatkuuko hoito?
Hoito jatkuu tässä yksikössä
Palv
elu
Palvelupyyntö
Palvelun tulos
Palvelun asettaminen
jonoon
Palvelu-pyynnön
vastaanotto
Arviointi ja toteutus-päätös
Palvelun ajan
varaaminenPalvelun toteutus
Tulosten raportointi
Tapahtuma-tiedon keruu
DW
-
Tietomallia täydennetään palvelun tehtävällä
32
Hoi
topr
oses
si
Tulotilanteen arviointi
Hoidon suunnittelu
Hoidon toteutus
Hoidon arviointi
Jatkohoidon suunnitelma
Jatkuuko hoito?
Hoito jatkuu tässä yksikössä
Palv
elu
Palvelupyyntö
Palvelun tulos
Palvelun asettaminen
jonoon
Palvelu-pyynnön
vastaanotto
Arviointi ja toteutus-päätös
Palvelun ajan
varaaminenPalvelun toteutus
Tulosten raportointi
Potilas Hoito-prosessi
Yritys (Organi-saatio)
Toimipaikka
Työntekijä
Suorite-nimike
Kuka?
Kuka? Kuka?
Missä?
Mitä?
Mikä?
Diagnoosi
Miksi?
"Hoito"-palvelu
Tehtävä
-
EDA ja SOA
! Publish-Subscribe malli täydentää Request-Reply mallia ! Sopii tapahtumaohjautuviin prosessihin, kuten
hoitoprosessiin ! Sopii tilanteisiin, joissa samoista tapahtumista on useita
kiinnostuneita tahoja ! Tilaajarekisteri ja reitityspalvelu
suunniteltava huolella, jotta niiden ylläpidosta ei tule liian raskasta
! Standardointi ei ole vakiintunutta, ratkaisut ovat toimittajakohtaisia
33
-
Kiitos !
34