Eriksson Jorge Melicio Monteiro Cloudmed
Total Page:16
File Type:pdf, Size:1020Kb
Departamento de Universidade de Aveiro Electr´onica,Telecomunica¸c~oese Inform´atica, 2012 Eriksson Jorge CloudMed { Plataforma de Comunica¸c~oespara Melicio Monteiro Medicina CloudMed - Open Communications in Medicine Departamento de Universidade de Aveiro Electr´onica,Telecomunica¸c~oese Inform´atica, 2012 Eriksson Jorge CloudMed { Plataforma de Comunica¸c~oespara Melicio Monteiro Medicina CloudMed - Open Communications in Medicine \It has become appallingly obvious that our technology has exceeded our humanity." | Albert Einstein Departamento de Universidade de Aveiro Electr´onica,Telecomunica¸c~oese Inform´atica, 2012 Eriksson Jorge CloudMed { Plataforma de Comunica¸c~oespara Melicio Monteiro Medicina CloudMed - Open Communications in Medicine Disserta¸c~aoapresentada `aUniversidade de Aveiro para cumprimento dos requesitos necess´arios`aobten¸c~aodo grau de Mestre em Engenharia de Computadores e Telem´atica,realizada sob a orienta¸c~ao cient´ıficado Doutor Carlos Manuel Azevedo Costa, Professor do Departamento Eletr´onicae Telecomunica¸c~oese Inform´aticada Universidade de Aveiro. o j´uri/ the jury presidente / president Prof. Dr. Antonio Manuel Melo de Sousa Pereira Professor Catedr´aticodo Departamento de Electr´onica,Telecomunica¸c~oes e In- form´aticada Universidade de Aveiro vogais / examiners committee Prof. Dr. Carlos Manuel Azevedo Costa Professor Auxiliar do Departamento de Electr´onica, Telecomunica¸c~oes e In- form´aticada Universidade de Aveiro Prof. Dr. Rui Pedro Sanches de Castro Lopes Professor Coordenador do Departamento de Inform´aticae Comunica¸c~oesdo Insti- tuto Polit´ecnicode Bragan¸ca agradecimentos / acknowledgements Quero agradecer ao meu orientador, Professor Doutor Carlos Manuel Azevedo Costa, pelo interesse, apoio, incentivo e simpatia mostrados ao longo de todo o trabalho. O seu sentido cr´ıticoe sugest~oes/coment´arios contribu´ırammuito para a realiza¸c~aodeste trabalho. Quero agradecer ao Lu´ısBasti~ao,pela disponibilidade, colabora¸c~aoe apoio que me deu ao longo destes meses de trabalho. Ao grupo de bioinform´aticada universidade de Aveiro grade¸copor terem proporcionado a possibilidade de fazer parte desse grupo, que sempre me ajudou quando precisei. A todos os meus colegas e amigos que encontrei ao longo deste percurso. Em especial, ao grupo de estudantes cabo-verdianos que esteve sempre comigo nesta fase da minha vida. Muito obrigado pela disponibilidade, apoio, incentivo e... amizade!!! Por ´ultimo,o agradecimento mais importante... a toda a minha fam´ılia, que mesmo `adist^ancia,esteve sempre presente e muito apoiou para que eu pudesse superar esse percurso com sucesso!!! Especialmente, agrade¸co aos meus pais e irm~aospor todo o carinho, amor, compreens~ao,apoio e incentivo!!! Resumo Os recentes avan¸cosdas tecnologias de informa¸c~aoe comunica¸c~aot^emcri- ado novos cen´ariosaplicacionais na ´areada telemedicina, nomeadamente na forma como integramos diferentes fontes de dados, como acedemos e partil- hamos estes recursos em ambientes m´oveise como integramos ferramentas cooperativas inspiradas no paradigma das redes sociais. Temos verificado nos ´ultimosanos a terciariza¸c~aode recursos computa- cionais, processo conhecido como Cloud Computing. Esta realidade cria novas oportunidades de explora¸c~aodestes recursos para facilitar o acesso, partilha e integra¸c~aode informa¸c~aom´edica,em qualquer local e a qualquer hora. Mais ainda, a escalabilidade e fiabilidade oferecida por estas platafor- mas satisfazem os requisitos de servi¸coimpostos a solu¸c~oestelem´aticasna ´areada sa´ude. Esta disserta¸c~aoteve como objetivo estudar o paradigma de software como servi¸co,suportado por uma estrutura em Cloud, tendo em mente a sua utiliza¸c~aoem cen´ariosde telemedicina e tele-trabalho. Muito concreta- mente, desenvolveu-se uma plataforma Web de servi¸cosorientada `asredes de imagem m´edica.Esta solu¸c~aodisponibiliza um ambiente cooperativo in- ovador onde os cl´ınicospodem recolher dados, partilhar informa¸c~aoe aceder remotamente a recursos imagiol´ogicos.Aspetos de seguran¸cae interoper- abilidade com os atuais sistemas e normas foram alvo de particular aten¸c~ao. Abstract The recent technological developments in information and communications technologies are promoting new studies and research in telemedicine area, revolutionizing the access, integration and sharing of medical information. For instance, many systems have been focusing on ubiquity through the use of mobile computing and on enhance users cooperation through usage of social networking paradigms. In this regard, the rise of new model of outsourcing computing resources, which is known as Cloud computing, creates new possibilities to explore their benefits to facilitate the sharing and remote access to medical information, anywhere and anytime. Moreover, the scalability and reliability offered by Cloud platforms fit well to the medical area requirements. This dissertation aimed to analyze the current state of the art of Cloud Computing, namely studying their viability to support telemedicine and tele- working scenarios. The proposal was focused in the medical imaging field. The work resulted in a Cloud computing solution, following the software as a service model, to support cooperative tele-imagiology networks. It is a solution that allows users to setup collaborative environments in the field of imagiology, targeting the acceleration and improvement of decision-making processes. The proposal contemplates also other important issues like, for instance, security and interoperability with actual medical imaging systems. Contents Contents i List of Figures iii List of Tables v 1 Introduction 1 1.1 Motivation . .1 1.2 Goals . .2 1.3 Thesis outline . .3 2 State of the Art 5 2.1 Medical Environment . .5 2.1.1 Telemedicine . .5 2.1.2 PACS . .8 2.1.3 DICOM . 10 2.2 Cloud Computing . 19 2.2.1 Overview . 19 2.2.2 What is Cloud Computing? . 19 2.2.3 Deployment Models . 21 2.2.4 Services Layers in the Cloud . 22 2.3 Extensible Messaging and Presence Protocol - XMPP . 24 2.3.1 Definition . 24 2.3.2 Architecture . 24 2.3.3 Streaming XML . 26 2.3.4 Extensibility . 31 3 CloudMed Proposal Definition 33 3.1 System requirements overview . 33 3.2 Functional Requirements . 34 3.3 Non Functional Requirements . 36 3.3.1 Information Accessibility and Availability . 36 3.3.2 Information Security . 37 3.3.3 Service reability . 37 3.3.4 Service scalability . 37 3.4 System Modeling . 37 3.4.1 Functional Model . 37 i 3.4.2 Data Model . 45 3.4.3 Architecture . 47 4 System Implemantation and Results 49 4.1 CloudMed SaaS - Computer Supported Social Network for Teleradiologia . 49 4.1.1 Message-oriented Middlware eXtensible CloudMed Communication Protocol - XCMCP . 50 4.1.2 XMPP server - Openfire . 59 4.1.3 Personal Remote Archive - PRA . 60 4.1.4 System Core Organization . 61 4.2 Medical Management Information System Gateway - DICOM Gateway . 68 4.2.1 CloudMed PACS Gateway architecture . 68 4.2.2 XMPP interface . 69 4.2.3 DICOM interface . 70 4.2.4 Folder synchronization . 72 4.2.5 Anonymous Images . 73 4.3 CloudMed Web2.0 Client . 74 4.3.1 JavaScript XMPP Client . 76 4.3.2 Html5 and JavaScript User Interface . 78 4.4 Results . 81 5 Conclusions 91 5.1 Future work . 92 Bibliography 93 ii List of Figures 2.1 PACS system architecture . .9 2.2 SOP Class structure: DIMSE services applied to IOD instances . 11 2.3 DICOM information hierarchy. 12 2.4 DICOM Object struct . 13 2.5 DICOM Object Data Element . 14 2.6 DICOM SCU-SCP model . 15 2.7 DICOM services and network entities . 15 2.8 DICOM C-Store . 16 2.9 Wrapping the C-Store service in the C-Get service . 17 2.10 C-Move with three entities . 18 2.11 DICOM MWL example . 18 3.1 System use cases. 36 3.2 Scale XMPP infrastructure with multiple servers . 39 3.3 The diagram of how business logic layer interacts with the persistence layer . 40 3.4 Holding medical image data in a private Cloud. 40 3.5 Deploying storage and service in a public Cloud . 41 3.6 Flowchart of medical image storage in the cloud. 42 3.7 Folder sharing diagram . 43 3.8 Firewall bypass using XMPP server as Cloud relay . 44 3.9 Cloud relay gateway firewall diagram . 45 3.10 Remote action execute diagram . 45 3.11 CloudMed system data model diagram . 46 3.12 Physical Data Model of file shares and file ownership . 47 3.13 Physical Data Model of proxy firewall rules . 47 3.14 System architecture diagram . 48 4.1 Remote repository manage sequence diagram . 51 4.2 Personal remote archive diagram . 60 4.3 Archive manager diagram . 62 4.4 Remote Archive plugins implementation . 63 4.5 Extension packet handle diagram . 64 4.6 Uploading files to Cloud storage . 65 4.7 File upload authentication . 66 4.8 Download file diagram . 67 4.9 Download shared file diagram . 67 iii 4.10 CloudMed PACS gateway components diagram . 69 4.11 Gateway XMPP entities class diagram . 70 4.12 DICOM layer class diagram . 71 4.13 DICOM Query/Retrieve sequence diagram . 72 4.14 Sequence diagram of folder synchronization . 73 4.15 Anonymization rules update via PubSub mechanism. 73 4.16 Image upload with anonymization capabilities. 74 4.17 Web application MVC design pattern . 75 4.18 Web application layout prototype . 75 4.19 XMPP JavaScript client organization. 77 4.20 WebRTC session establishment. 81 4.21 Remote repository in the Cloud. 82 4.22 Sharing files with colleagues. 83 4.23 Accessing shared files. ..