Fagrapport EiT 2004 Utvidet tilkallingsknapp Gruppe 3 Wenche Haug Arnt Richard Johansen Bjarte Stien Karlsen Michael Sars Norum Birgitte Torvmark 21. april 2004
Sammendrag Dette dokumentet utgjør den faglige rapporten til gruppe 3, landsby 11 i faget Eksperter i Team vårsemesteret 2004. Rapporten tar for seg problemstillingen om det går an å forbedre dagens system for varslingsknapper på sykehus. Vi går først gjennom hvordan vi har kartlagt domenet vårt. Deretter presenteres dagens system med dets svakheter og styrker. Utifra blant annet intervjuer av pleiere og våre egne ideer kommer vi så med et forslag til et nytt system som vi mener vil være en forbedring i forhold til dagens. Avslutningsvis presenterer vi en prototype som skal illustrere de konseptene vi mener vil bidra til å bedre dagens situasjon.
Innhold 1 Innledning 1 2 Problemstilling 2 3 Metode 3 3.1 Spørreundersøkelse........................ 3 3.1.1 Metodens fremgangsmåte................ 3 3.1.2 Metodens følger...................... 4 3.1.3 Statistikk......................... 4 3.2 Intervju.............................. 4 3.2.1 Metodens fremgangsmåte................ 4 3.2.2 Metodens følger...................... 5 4 Dagens situasjon 8 4.1 Dagens system for tilkallingsknappen.............. 8 4.1.1 Ulemper.......................... 12 4.2 Planlagte endringer........................ 14 4.2.1 IMATIS.......................... 15 4.2.2 Sykeromskanalen..................... 16 4.3 Oppsummering.......................... 16 iii
INNHOLD 5 Mulige forbedringer 18 5.1 Vårt system............................ 18 5.1.1 Mer informasjon fra pasienten.............. 18 5.1.2 Pasientstereotyper.................... 19 5.1.3 Pasienter med begrensninger............... 20 5.2 Respons fra intervjuobjekter................... 20 5.2.1 Positiv respons...................... 20 5.2.2 Negativ respons...................... 21 5.3 Andre og supplerende løsninger................. 23 5.3.1 Armbånd......................... 23 5.3.2 Skille mellom alarmknapp og resten av knappene... 23 5.3.3 Calling........................... 23 5.3.4 Talestyring........................ 24 5.3.5 Øyepeking......................... 24 5.3.6 Kamera.......................... 25 6 Prototypen 26 6.1 Krav til systemet......................... 26 6.1.1 Krav til rammeverk.................... 26 6.1.2 Krav til grensesnitt.................... 27 6.2 Design av systemet........................ 27 6.2.1 Beskrivelse av rammeverk................ 27 6.2.2 Detaljert design av rammeverk.............. 28 6.2.3 Beskrivelse av grensesnitt................ 31 6.3 Implementasjon.......................... 33 6.3.1 Konfigurering....................... 33 6.3.2 Testkjøring........................ 34 6.3.3 Tekniske begrensninger.................. 34 iv
INNHOLD 7 Videre arbeid 35 7.1 Brukertesting av prototypen................... 35 7.2 Implementasjon i større skala.................. 35 7.3 Kartlegging av pasientprofiler og bygging av stereotyper.... 36 7.4 Multimodalitet.......................... 36 8 Konklusjon 37 Tillegg 38 A Spørreundersøkelse 38 A.1 Spørreskjema........................... 38 A.2 Resultat.............................. 38 A.3 Statistiske tabeller........................ 42 B Interessenter 46 B.1 Gruppens medlemmer...................... 46 B.2 Fagstaben............................. 47 B.3 Andre............................... 47 C Brukerveiledning 48 C.1 Tjeneren.............................. 48 C.1.1 Konfigurasjon....................... 48 C.1.2 Kjøring.......................... 49 C.2 Pasientterminalen......................... 50 C.2.1 Kjøring.......................... 50 C.3 Sykepleierterminalen....................... 51 C.3.1 Kjøring.......................... 51 C.4 Avhengigheter under kjøring................... 52 D Ordliste 53 v
Figurer 4.1 Alarmknapp ved sengen...................... 9 4.2 Lampe på gangen......................... 9 4.3 Pleiers panel............................ 9 4.4 Ekstra pasientpanel over sengen.................. 9 4.5 Bjeller................................ 10 4.6 Trykkplate............................. 11 4.7 Blåsestav.............................. 11 4.8 Tavle med romnummer...................... 11 4.9 Skisse av IMATIS pasienttermial................ 15 4.10 Skisse av sykeromskanalen Florence og pasientterminalen... 16 5.1 Skisse av tenkt tilkallingssystem................. 19 6.1 Overordnet systemdiagram for rammeverket........... 28 6.2 Overordnet sekvensdiagram for systemet............. 29 6.3 Klassediagram for tjeneren.................... 30 6.4 Klassediagram for klienten..................... 31 6.5 Klassediagram for felles klasser.................. 32 6.6 Skjermbilde av kompleks GUI................. 33 6.7 Skjermbilde av enkel GUI.................... 33 6.8 Eksempel på GUI......................... 33 vi
Tillegg C Brukerveiledning I dette tileggetet tar vi for oss brukeraspektet ved prototypen. Dette innebærer oppsett av tjeneren, oppstart av systemet og pasientterminalene. C.1 Tjeneren Tjeneren er den eneste delen av systemet som må konfigureres og vi vil begynne med å gå gjennom selve konfigurasjonen, deretter vil vi ta for oss kjøring av tjeneren. C.1.1 Konfigurasjon All konfigurasjon skjer gjennom filen KnappenConfig.xml. Det som skal konfigureres er sykepleierenes tjener med IP-adresse og port, meldingstjenerens egen port der den lytter etter meldinger fra sykepleierne og hvilken port den lytter etter forbindelser fra pasientterminalene på. Vi vil nå gå gjennom konfigurasjonsfilen grundig. Det antas her at leseren er kjent med XML-formatet. Konfigurasjonsfilen kan sees i sin helhet i figur C.1. Rotelementet i filen, config har to felter, server og interfaces. server feltet inneholder all informasjonen serveren trenger for å kjøre og finne de andre delene av systemet. nurse-server inneholder lokasjonsinfo for sykepleierterminalen. Dette angis med IP-adresse og portnummer. incomming spesifiserer hvilken port tjeneren lytter etter innkommende meldinger fra pleiere på. Til slutt i server har vi client-connection, denne angir på hvilken port pasientterminalene skal koble seg opp mot tjeneren på. interfaces er der de forskjellige GUI ene skal spesifiseres med rolle og hvilke knapper de skal inneholde. 48
C.1 Tjeneren Hvert gui-element må som sagt spesifisere hvilken rolle det har gjennom roleattributten, dernest kan det inneholde vilkårlig mange knapper. Vi anbefaler å ikke bruke mer enn maks ni knapper. Et button element representerer en knapp og må angis med emphcall, name og img. call angir entydig hva det gjelder. name er teksten som vil stå på knappen sammen med bildet som defineres som en URL av img. <?xml version= 1. 0 encoding= ISO 8859 1?> <c o n f i g> <s e r v e r> <nurse s e r v e r ip= 1 2 7. 0. 0. 1 port= 10000 /> <incoming port= 10002 /> <c l i e n t connection port= 10001 /> </ s e r v e r> <i n t e r f a c e s> <gui r o l e= kompleks > <button c a l l= alarm name= Alarm img= alarm. g i f /> <button c a l l= medicine name= Medisin img= medicine. g i f /> <button c a l l= turnaround name= Snu meg img= turnaround. g i f /> <button c a l l= t o i l e t name= Toalett img= t o i l e t. g i f /> <button c a l l= food name= Mat img= food. g i f /> <button c a l l= annet name= Annet img= other. g i f /> </ gui> <gui r o l e= e nkel > <button c a l l= alarm name= Alarm img= alarm. g i f /> <button c a l l= annet name= Annet img= other. g i f /> </ gui> </ i n t e r f a c e s> </ c o n f i g> Figur C.1: KnappenConfig.xml. I tillegg skal det i konfigurasjonsfilen settes opp brukerroller med forskjellige grafiske grensesnitt. Det er disse grensesnittene som sendes til pasientterminalene når en pasient registreres der med en spesifisert rolle. C.1.2 Kjøring Tjeneren kan kjøre både på Microsoft Windows og på Unix. På CD-en finnes egne skript som starter programmet. Ved oppstart må banen til konfigurasjonsfilen som skal benyttes oppgis som argument. Det antas her at konfigurasjonsfilen ligger i katalogen xml og heter KnappenConfig.xml. 49
Brukerveiledning Microsoft Windows For å starte tjeneren på Microsoft Windows, åpne et Command Promptvindu. Gå til den katalogen der programmet ligger, for eksempel C:\Knappen, og skriv: s t a r t s e r v e r. bat xml\knappenconfig. xml Unix For å starte tjeneren på Unix, åpne et terminalvindu under X og gå til den katalogen der programmet ligger, for eksempel /knappen/, og skriv:. / s t a r t s e r v e r. sh xml/knappenconfig. xml C.2 Pasientterminalen Pasientterminalen trenger ingen spesiell konfiguarasjon før oppstart. Ettersom pasientterminalen har et grafisk grensesnitt er den avhengig av å kjøre i et miljø der den kan få vist frem vinduer som for eksempel X11 på Unix, Microsoft Windows eller Mac OS X. C.2.1 Kjøring Som tjeneren kjører pasientterminalen både på Microsoft Windows og Unix. Det finnes script på CD-en som starter programmet. Ved oppstart må IPadressen til tjeneren og hvilken port tjeneren lytter etter klienter på oppgis. Microsoft Windows For å starte pasientterminalen på Microsft Windows, åpne et Command Prompt vindu. Gå til den katalogen der programmet ligger, for eksempel C:\Knappen, og skriv: s t a r t p a s i e n t. bat 1 2 7. 0. 0. 1 10000 Der 127.0.0.1 representerer tjenerens IP-adresse og 10000 representerer den porten tjeneren forventer at pasientterminalene vil koble seg opp mot. 50
C.3 Sykepleierterminalen Unix For å starte pasientterminalen på Unix, åpne et terminal vindu under X og gå til den katalogen der programmet ligger, for eksempel /knappen/, og skriv:. / s t a r t p a s i e n t. sh 1 2 7. 0. 0. 1 10000 Der 127.0.0.1 representerer tjenerens IP-adresse og 10000 representerer den porten tjeneren forventer at pasientterminalene vil koble seg opp mot. C.3 Sykepleierterminalen På samme måte som pasientterminalen trenger ikke sykepleierterminalen noen spesiell konfigurasjon før oppstart. Som pasientterminalen er også sykepleierterminalen avhengig av et grafisk miljø for å kjøre. C.3.1 Kjøring Som tjeneren og pasientterminalen kjører sykepleierterminalen både på Microsoft Windows og Unix. Det finnes script på CD-en som starter programmet. Ved oppstart må portnummeret som sykepleierterminalen lytter etter innkommende meldinger, IP-adressen til tjeneren og hvilken port tjeneren lytter etter klienter på oppgis. Microsoft Windows For å starte sykepleierterminalen på Microsft Windows, åpne et Command Prompt vindu. Gå til den katalogen der programmet ligger, for eksempel C:\Knappen, og skriv: s t a r t n u r s e. bat 10002 1 2 7. 0. 0. 1 10001 Der 10002 er porten sykepleierterminalen lytter etter innkommende meldinger på, 127.0.0.1 er tjenerens IP-adresse og 10001 er porten tjeneren lytter etter innkommende meldinger på. Sistnevnte er forskjellig fra porten som oppgis under oppstart av pasientterminalen. Unix For å starte sykepleierterminalen på Unix, åpne et terminalvindu. Gå til den katalogen der programmet ligger, for eksempel C:\Knappen, og skriv: 51
Brukerveiledning s t a r t n u r s e. sh 10002 1 2 7. 0. 0. 1 10001 Der 10002 er porten sykepleierterminalen lytter etter innkommende meldinger på, 127.0.0.1 er tjenerens IP-adresse og 10001 er porten tjeneren lytter etter innkommende meldinger på. Sistnevnte er forskjellig fra porten som oppgis under oppstart av pasientterminalen. C.4 Avhengigheter under kjøring Når det gjelder avhengigheter mellom de forskjellige delsystemer, så må tjeneren startes opp først. Deretter kan pasientterminalen og sykepleierterminalen startes opp. For kjøring er ikke systemet avhengig av sykepleierterminalen. 52
Tillegg D Ordliste CARDIAC Computer Aided Research Development Instrumentation And Control. Firma som står for utvikling av den nye pasientterminalen til bruk på det nye sykehuset i Trondheim. Florence CARDIACs multifunksjonelle sykeromskanal. Florence er et resultat av samarbeid mellom de tre norske bedriftene Maxeta, Glamox og CARDIAC. GUI Grafisk brukergrensesnitt. IMATIS CARDIACs informasjonssystem som innbefatter blant annet en pasientterminal. JDK Java Development Kit fra Sun Microsystems. JFrame Intern Java-klasse for generering av et vindu. klassediagram Diagram som viser logisk oppbygning av komponentene i et program. kompilator Program som oversetter kildekode til kjørbare programmer. NanoXML Minimalistisk XML-parsings implementasjon for Java, http://nanoxml.n3.net. St. Olavs Hospital Universitetssykehuset i Trondheim. Swing Grafisk grensesnittbibliotek i Java. WindowListener Intern Java-klasse for å fange opp hendelser i et vindu. χ 2 -fordeling Chi-kvadratfordeling. En sannsynlighetsfordeling som brukes til å teste avhengighet mellom to variabler. 53
Bibliografi [1] Ann Judith Andersen. Om kirurgisk avdeling. http: // www. stolav. no/ StOlav/ Virksomhet/ behandling/ kirurgi/ index. htm, 2004. [2] Cardiac AS. Cardiac medical it. http: // www. cardiac. no/ Norwegian/ Products/ Medical. asp, 2004. [3] Cardiac AS, Maxeta, and Glamox. Sykeromskanalen. http: // www. sykeromskanal. no, 2004. [4] Richard Bates. Richard bates research page. http: // www. cse. dmu. ac. uk/ ~rbates/ research/ research. htm, 12. april 2004. [5] Richard Bates and Howell O. Istance. Why are eye mice unpopular? a detailed comparison of head and eye controlled assistive technology pointing devices. In Proceedings of the 1st Cambridge Workshop on Universal Access and Assistive Technology (CWUAAT). Trinity Hall, University of Cambridge, 2002. URL http://www.cse.dmu.ac.uk/~rbates/ research/cambsmainpaper.htm. [6] Martin Fowler and Kendall Scott. UML Distilled, 2nd Edition. Addison- Wesley, 2000. ISBN 0-201-65783-X. [7] Helsebygg Midtnorge. Om fremtidsprosjekt på a4. http: // www. helsebygg. no/ nyheter2003/ 18043/, 2003. [8] Elaine Tilka Miller, Carol Deets, and Robert V. Miller. Nurse call systems: Impact on nursing performance. Journal of Nurse Care Quality, (11):36 43, 1997. 54