Kungliga Tekniska Högskolan Programutvecklingsprojekt 2d1954 2002-05-13 RAPPORT XML-loggning vid robotassisterade kirurgiska operationer AV: Peter Bláha Thomas Boussard Mikael Carlander Andreas Eriksson André Grisell Stefan Hyltenfeldt Lars Willhans Innehållsförteckning PROJEKTBESKRIVNING ........................................................................................ 3 PROJEKTETS NAMN ..................................................................................................... 3 DELTAGARE I GRUPPEN ............................................................................................... 3 BESTÄLLARE ............................................................................................................... 3 SAMMANFATTNING AV PROJEKTET ................................................................ 3 BAKGRUND ................................................................................................................. 4 PROBLEMBESKRIVNING OCH PRESUMTIVA ANVÄNDARE ............................................. 4 Krav och avgränsningar ........................................................................................ 4 DATORMILJÖ OCH PROGRAMVARA SOM ANVÄNTS ...................................................... 5 Hårdvara ................................................................................................................ 5 Mjukvara ................................................................................................................ 5 FÖRSLAG TILL FRAMTIDSLÖSNING ................................................................. 5 SYSTEMSKISS .............................................................................................................. 5 STRUKTURERING, GRUND ............................................................................................ 5 STRUKTURERINGSSKISS .............................................................................................. 6 REFERENSER............................................................................................................. 6 2 Projektbeskrivning Projektets namn XML-loggning av robotassisterade kirurgiska operationer. Deltagare i gruppen Peter Bláha Thomas Boussard Mikael Carlander Andreas Eriksson André Grisell Stefan Hyltenfeldt Lars Willhans Till projektledare utsågs Mikael Carlander. Beställare Medical Robotics AB Per Elmfors Sammanfattning av projektet Vi har med hjälp av XML (Extensible Markup Language) tagit fram en modell för att bättre presentera loggningen från en kirurgassisterande robot. Loggningen består av en maskingenererad utskrift av vad roboten har utfört. XML är ett utbyggbart markeringsspråk som kan användas för att skapa dokument avsedda för att publiceras på Internet och granskas i en webbläsare. Precis på samma sätt som HTML. Skillnaden är att man här kan definiera sina egna taggar och sedan skapa en stilmall, så kallad XSL (XML Style Sheet) eller CSS (Cascading Style Sheet), och i denna definiera hur informationen ska presenteras. Vi har tagit fram en modell sådan att informationen från loggfilen som skapas under operationen sparas som en XML-fil och presenteras, med hjälp av olika stilmallar, specifikt för olika användare. Kirurgen kan i efterhand bland annat kontrollera vad som gjordes under operationen, hur roboten positionerats relativt patienten och vilka ingrepp som gjorts, medan systemutvecklaren ges information till grund för felsökning av systemet efter operationen. 3 Bakgrund Medical Robotics är ett företag som tagit fram ett system (PinTrace) för robotassisterad kirurgi. Systemet är färdigt för inledande kliniska tester och en handfull operationer har genomförts på Karolinska sjukhuset respektive Karlstad lasarett. Under varje operation skapas en logg med information om hur systemet användes under operationen, vilka röntgenbilder som togs, hur roboten positionerades och hur kirurgen använde systemets olika funktioner. Det loggas också vilka fel och varningar som uppstår, hur hårdvaran övervakas etcetera. Denna logg har hittills bestått av en primitiv fil som dels har varit svår att läsa och dels inte innehållit all information som kan vara till nytta för både kirurgen i fråga och utvecklingsavdelningen på Medical Robotics. Problembeskrivning och presumtiva användare Projektet grundar sig i att presentera den loggade informationen från robotsystemet på ett bättre sätt och att ge förslag på ytterligare information som behöver loggas. Informationen skall också kunna presenteras olika för olika användare. De presumtiva användarna är i första hand operationspersonal, forskare samt utvecklingspersonal. Vår kontakt har uteslutande varit Per Elmfors, utvecklingsansvarig för robottillverkningen och ej med användare sjukhus. Vår uppgift bestod med andra ord av att öka användarvänligheten hos formatet på dessa loggfiler och att skapa en plattform för framtida vidareutveckling. Krav och avgränsningar 1. Loggformatet skall vara väldesignat med objekttänkande eller liknande. 2. Loggdesignen skall vara utbyggbar och bakåtkompatibel när det införs nya typer av poster. 3. Gränssnittet mellan PinTrace och det program eller den användaren som tar hand om loggdata skall vara så enkel som möjlig – helst en ren textfil. 4. Det skall gå att analysera loggdata automatiskt. 5. Loggformatet skall vara enkelt att transportera mellan olika miljöer. 6. Det ska vara lätt att presentera loggdata med olika vyer där man även skall kunna ha bilder. Integreringen av loggmodulen med systemet skulle inte utföras av oss och set har heller inte gjorts. Vår produkt består av XML-filer baserade på en simulerad loggfil vi fått från beställaren, samt XSL-filer (CSS-filer) för att strukturera informationen i XML-filerna så att den passar den specifika användaren. Projektet har resulterat i en specifikation av en loggmodul tillsammans med en demo för modulen. 4 Datormiljö och programvara som använts Hårdvara Loggningen är inte hårdvaruspecifik men vi har i första hand arbetat med PC/Windows under utvecklingen. Mjukvara Förutom diverse texteditorer för utvecklingen utnyttjar gränssnittet Internet Explorer version 5 eller senare, alternativt Netscape. Förslag till framtidslösning Idén är att ha informationen för loggningen i en eller flera XML-filer. Dessa skapas i nuläget direkt av oss men ska i förlängningen skapas exempelvis direkt av systemet alternativt av en extern applikation. XSL-filen innehåller en specifikation av strukturen för hur informationen slutligen skall visas i browsern. Eftersom att loggningen skall kunna visas på olika sätt för olika användare, kommer flera mallar (XSL-filer) att användas. På så sätt kommer styrningen av vilka delar av loggningen som syns, samt hyr dom visas, att styras av vilken mall som finns i samma katalog som XML-filen. Systemskiss Fig 1. Dataflödesdiagram Strukturering, grund Vi har tillsammans med Per Elmfors diskuterat fram en struktur för loggen med följande fyra grundobjekt: 1. 2. 3. 4. Error Warning Info Debug 5 Förutom att dess namn ger en indikation om innebörden, används dem för att distribuera logginformationen på olika användare. Till exempel så bör en läkare inte behöva få läsa Debugloggningar som endast existerar för att utveckla systemet, medan en utvecklare inte behöver Infologgningar då de är information från en specifik operation. Struktureringsskiss Under varje huvudgrupp finns följande struktur (med föreslagna attribut): Fig 2. Grov struktureringsskiss Referenser P Åström: XML – Extensible Markup Language, Docendo 1999 6