Programa de Pós-Graduação em Sistemas e Computação Doutorado Acadêmico em Ciência da Computação
Uma Arquitetura de Software Baseada em
Computação em Névoa para Gestão dos
Registros Médicos Centrada no Paciente
Cícero Alves da Silva
Natal-RN Novembro de 2020
Uma Arquitetura de Software Baseada em Computação
em Névoa para Gestão dos Registros Médicos Centrada
no Paciente
Tese de Doutorado apresentada ao Programa de Pós-Graduação em Sistemas e Computa-ção do Departamento de Informática e Mate-mática Aplicada da Universidade Federal do Rio Grande do Norte como requisito para a obtenção do grau de Doutor em Ciência da Computação.
Linha de pesquisa: Engenharia de Software
Orientador
Prof. Dr. Gibeon Soares de Aquino Júnior
PPgSC Programa de Pós-Graduação em Sistemas e Computação DIMAp Departamento de Informática e Matemática Aplicada
CCET Centro de Ciências Exatas e da Terra UFRN Universidade Federal do Rio Grande do Norte
Natal-RN Novembro de 2020
Silva, Cícero Alves da.
Uma arquitetura de software baseada em computação em névoa para gestão dos registros médicos centrada no paciente / Cícero Alves da Silva. - 2020.
160f.: il.
Tese (Doutorado) - Universidade Federal do Rio Grande do Norte, Centro de Ciências Exatas e da Terra, Programa de Pós-graduação em Sistemas e Computação. Natal, 2020.
Orientador: Gibeon Soares de Aquino Júnior.
1. Computação - Tese. 2. Computação em névoa - Tese. 3. E-Saúde - Tese. 4. Internet das coisas - Tese. 5. Arquitetura de software - Tese. 6. Blockchain - Tese. I. Aquino Júnior, Gibeon Soares de. II. Título.
RN/UF/CCET CDU 004
Agradecimentos
A Deus, em quem tanto depositei minha fé nos momentos de problemas e aições enfrentados durante toda minha vida.
Aos meus pais, Cosme Fernandes da Silva e Ana Lúcia Alves da Silva, por todos os ensinamentos e por terem lutado para que eu tivesse uma boa educação e me tornasse uma pessoa de bem.
À minha irmã, Carmem Lúcia Alves da Silva, que tanto me apoiou e torceu para que eu obtivesse êxito em todos os projetos que empreendi em minha vida.
À minha noiva, Myrelly Nunes da Silva, pela dedicação em me apoiar durante os momentos de frustração, estresse e desânimo.
À minha amiga, Dayanna Carvalho, pelo apoio me dado em todos os momentos de desânimo.
Ao meu orientador, Gibeon Soares de Aquino Jr., pelos ensinamentos. Além disso, o agradeço por ter acreditado em mim desde o início e por ter direcionado o meu estudo apresentando ideias, críticas e sugestões essenciais ao desenvolvimento da pesquisa. Por m, por sua amizade e pelos conselhos.
Aos meus companheiros da UFRN, Anderson, Cephas, Dênis, Dannylo, Itamir, Mário, Paulo, Tyrone, Sávio, Guilherme, João Helis, Eduardo, Neto, Douglas e Ranna, pelas experiências divididas e pela amizade.
Aos meus amigos, Bruno, Danilo, Fábio Gomes, José Alves, José Geraldo, Luiz, Pedro e Yuri, que sempre estiveram ao meu lado quando em muitas ocasiões de minha vida precisei de uma palavra amiga de conforto, apoio e estímulo.
Ao meu orientador de TCC, Flavius da Luz e Gorgônio, que me incentivou e tanto insistiu para que eu seguisse o caminho acadêmico e ingressasse na pós-graduação.
Aos ex-colegas e eternos amigos do curso de Sistemas de Informação, Alisson, Ara-gonense, Fladson, Gutto (in memoriam), Isaac Danilo, João Paulo, Lucas e Pablo, pelo companheirismo durante todo o período em que estudamos juntos.
em Névoa para Gestão dos Registros Médicos Centrada
no Paciente
Autor: Cícero Alves da Silva Orientador(a): Prof. Dr. Gibeon Soares de Aquino Júnior
Resumo
O envelhecimento da população mundial e o crescimento do número de pessoas com do-enças crônicas têm aumentado os gastos com atendimento médico. Desse modo, o uso de soluções tecnológicas, inclusive as baseadas em Internet das Coisas, vêm sendo am-plamente adotadas na área médica no intuito de melhorar a saúde dos pacientes. Neste contexto, abordagens baseadas em Computação em Nuvem têm sido adotadas para re-alizar o armazenamento e processamento das informações geradas nessas soluções. No entanto, o uso de Nuvem pode gerar atrasos intoleráveis para aplicações médicas. Assim, o paradigma de Computação em Névoa surgiu como uma alternativa para contornar esse problema, provendo computação e armazenamento mais próximo das fontes de dados. En-tretanto, a gestão dos dados médicos armazenados na Névoa ainda é um desao. Além do mais, características de privacidade, condencialidade e interoperabilidade precisam ser consideradas em abordagens que tenham o objetivo de explorar esta problemática. As-sim, este trabalho dene uma arquitetura de software, baseada em Computação em Névoa, projetada para prover o gerenciamento dos registros médicos centrado no paciente. Esta arquitetura utiliza a tecnologia Blockchain para prover as características de privacidade necessárias. Nesta tese também descreve-se um estudo de caso que analisou os requisitos de privacidade, condencialidade e interoperabilidade em um cenário de Home Care. Por m, o comportamento do desempenho relacionado ao acesso aos dados gerenciadas na arquitetura proposta foi analisado no cenário mencionado.
Palavras-chave: Computação em Névoa, E-Saúde, Internet das Coisas, Arquitetura de Software, Blockchain.
Patient-Centered Management of Medical Records
Author: Cícero Alves da Silva Supervisor: Prof. Dr. Gibeon Soares de Aquino Júnior
Abstract
The aging of the world's population and the growth in the number of people with ch-ronic diseases have increased expenses with medical care. Thus, the use of technological solutions, including Internet of Things-based solutions, has been widely adopted in the medical eld to improve the patients' health. In this context, approaches based on Cloud Computing have been used to store and process the information generated in these soluti-ons. However, using Cloud can create delays that are intolerable for medical applicatisoluti-ons. Thus, the Fog Computing paradigm emerged as an alternative to overcome this problem, bringing computation and storage closer to the data sources. However, managing medical data stored in Fog is still a challenge. Moreover, characteristics of privacy, condentiality, and interoperability need to be considered in approaches that aim to explore this problem. So, this work denes a Fog Computing-based software architecture designed to provide patient-centered management of medical records. This architecture uses Blockchain tech-nology to provide the necessary privacy features. This thesis also describes a case study that analyzed the requirements of privacy, condentiality, and interoperability in a Home Care scenario. Finally, the performance behavior related to access to data managed in the proposed architecture was analyzed in the mentioned scenario.
Keywords: Fog Computing, E-Health, Internet of Things, Software Architecture, Block-chain.
Lista de guras
1 Porcentagem do PIB com gastos em bens e serviços de saúde ao longo
dos anos no Brasil. . . p. 21 2 População idosa no mundo ao longo dos anos. . . p. 21 3 Etapas da metodologia. . . p. 25 4 Estrutura de um Blockchain. . . p. 36 5 Funcionamento de um Blockchain. . . p. 36 6 Fases do processo de seleção. . . p. 42 7 Distribuição dos trabalhos ao longo dos anos. . . p. 44 8 Distribuição dos trabalhos nos repositórios de pesquisa. . . p. 44 9 Distribuição dos trabalhos por tipo de publicação. . . p. 44 10 Porcentagem por tipo de aplicação. . . p. 45 11 Quantidade por grupo de doenças. . . p. 47 12 Quantidade por tipo de pesquisa. . . p. 48 13 Tipos de sensores identicados. . . p. 52 14 Word Clouds dos protocolos e padrões relacionados a soluções de
Com-putação em Névoa para a área da saúde. . . p. 53 15 Visão geral. . . p. 54 16 Cenários ilustrando de forma simplicada os requisitos funcionais1. . . . p. 60
17 Visão de camadas da arquitetura. . . p. 63 18 Visão de decomposição das camadas. . . p. 65 19 Visão de decomposição dos módulos da IoT Layer em submódulos. . . p. 67 20 Visão de decomposição dos módulos da Application Layer em submódulos. p. 68
23 Visão de modelo de dados da arquitetura. . . p. 73 24 Visão de repositórios da arquitetura. . . p. 75 25 Medical Records da Fog recebendo dados da IoT Layer. . . p. 76 26 Medical Records da Fog recebendo dados da Cloud Layer. . . p. 76 27 Diagrama de casos de uso da arquitetura. . . p. 78 28 Diagrama de sequência do comportamento Register patient application. p. 80 29 Visualização do comportamento Register patient application. . . p. 81 30 Diagrama de sequência do comportamento Request data access. . . p. 81 31 Visualização do comportamento Request data access. . . p. 82 32 Diagrama de sequência do comportamento Grant data access. . . p. 82 33 Visualização do comportamento Grant data access. . . p. 83 34 Diagrama de sequência do comportamento Visualize data. . . p. 83 35 Visualização do comportamento Visualize data. . . p. 84 36 Diagrama de sequência do comportamento Manipulate patient data. . . p. 84 37 Visualização do comportamento Manipulate patient data. . . p. 85 38 Módulos e submódulos projetados para o atendimento do RNF de
priva-cidade. . . p. 85 39 Submódulos projetados para o atendimento do RNF de condencialidade. p. 86 40 Módulos e submódulos projetados para prover o aspecto de
interopera-bilidade projetado para a solução. . . p. 87 41 Submódulos que contribuem para o RNF de desempenho. . . p. 88 42 Cenário de Home Care analisado no estudo de caso. . . p. 91 43 Patient Application2. . . . p. 94
44 E-health shield coletando os dados do paciente. . . p. 95 45 Patient Application concedendo acesso ao IoT Gateway3. . . . p. 96
47 Patient Application concedendo acesso à Nurse Application5. . . . p. 97
48 Visão geral dos componentes implementados no estudo de caso. . . p. 97 49 Blockchain Node em execução no Raspberry Pi. . . p. 102 50 Authority em execução na Nuvem. . . p. 103 51 Nurse Application tentando visualizar um subconjunto de dados que ela
não tem autorização6. . . p. 105
52 Documentação da operação GET para acessar dados coletados pelo
E-Health Shield. . . p. 107 53 Documentação da operação POST para inserir os dados coletados pelo
E-Health Shield. . . p. 108 54 Estrutura dos dados do E-Health Shield gerenciados no cenário. . . p. 108 55 Interoperabilidade no cenário. . . p. 109 56 Tempo médio para acesso a dados em relação a quantidade de usuários
1 Exemplos de bases indexadas pelo Scopus. . . p. 40 2 Estudos lidos cuidadosamente. . . p. 42 3 Classicação dos estudos em cada tipo de aplicação. . . p. 46 4 Classicação dos estudos em cada grupo de doenças. . . p. 46 5 Classicação dos estudos por tipo de pesquisa. . . p. 48 6 Características abordadas nos trabalhos . . . p. 49 7 Diferentes nomenclaturas para a utilização de tecnologias da informação
e comunicação em cuidados com a saúde. . . p. 51 8 Dados coletados pelo E-Health Shield. . . p. 95 9 Resultados obtidos para o ambiente testado. . . p. 110 10 Dados extraídos de todos os trabalhos. . . p. 138 11 Estudos lidos cuidadosamente. . . p. 148 12 Comparativo das abordagens para gerenciamento de dados. . . p. 159
Lista de abreviaturas e siglas
PIB Produto Interno BrutoPHR Personal Health Records CFM Conselho Federal de Medicina E-Health Electronic Health
eHealth Electronic Health
OMS Organização Mundial de Saúde EMR Electronic Medical Records EHR Electronic Health Records IoT Internet of Things
PoW Proof of Work PoS Proof of Stake PoA Proof of Authority QP Questão de Pesquisa ID Identicador
Quant. Quantidade
6LoWPAN IPv6 over Low power Wireless Personal Area Networks LTE Long-Term Evolution
WiMax Worldwide Interoperability for Microwave Access NFC Near-Field Communication
BLE Bluetooth Low Energy DSL Digital Subscriber Line
SPI Serial Peripheral Interface
UMTS Universal Mobile Telecommunications System WiBro Wireless Broadband
HTTP Hypertext Transfer Protocol
AMQP Advanced Message Queuing Protocol CoAP Constrained Application Protocol
MQTT Message Queuing Telemetry Transport WAMP Web Application Messaging Protocol
XMPP eXtensible Messaging and Presence Protocol HTML HyperText Markup Language
JSON JavaScript Object Notation XML eXtensible Markup Language HL7 Health Level 7
OWL Ontology Web Language
RDF Resource Description Framework ECG Eletrocardiograma
RF Requisitos Funcionais
CFM Conselho Federal de Medicina RNF Requisitos Não Funcionais REST Representational State Transfer URI Uniform Resource Identier IMD Instituto Metrópole Digital CPU Central Processing Unit
PC Personal Computer
MDMS Meter Data Management System
EDMFrame Edge Data Management Framework DaRM Data-aware Resource Management
1 Método para criação de uma carteira nos submódulos Digital Wallet. . p. 98 2 Método para o envio de transações pelos submódulos Digital Wallet. . . p. 99 3 Código fonte para recebimento de transações pelo submódulo Digital
Wallet da Patient Application. . . p. 101 4 Método que verica a autorização para manipulação de dados no
submó-dulo Authorization. . . p. 104 5 Exemplo de registro médico acessado nos testes. . . p. 110 6 Especicação dos serviços. . . p. 151
Sumário
1 Introdução p. 20 1.1 Contextualização . . . p. 20 1.2 Problema . . . p. 23 1.3 Objetivos . . . p. 25 1.4 Metodologia . . . p. 25 1.5 Sumário de contribuições . . . p. 26 1.6 Organização do trabalho . . . p. 27 2 Fundamentação teórica p. 28 2.1 E-Health . . . p. 28 2.1.1 Registros eletrônicos relacionados à saúde do paciente . . . p. 29 2.1.1.1 Electronic Medical Records (EMR) . . . p. 30 2.1.1.2 Electronic Health Records (EHR) . . . p. 30 2.1.1.3 Personal Health Records (PHR) . . . p. 31 2.2 Internet das Coisas . . . p. 31 2.3 Computação em Névoa . . . p. 33 2.4 Blockchain . . . p. 35 2.4.1 Consenso . . . p. 37 2.5 Considerações nais . . . p. 38 3 Revisão do estado da arte: aplicação de Computação em Névoa àárea da saúde p. 39
3.1.3 Critérios de inclusão e exclusão . . . p. 41 3.1.4 Coleta de Dados . . . p. 41 3.1.5 Validade do processo . . . p. 41 3.2 Resultados . . . p. 41 3.2.1 Resultados da seleção . . . p. 42 3.2.2 Visão geral dos estudos . . . p. 43 3.3 Respostas às questões de pesquisa . . . p. 45
3.3.1 O conceito de Computação em Névoa tem sido usado em que
tipos de aplicações na área da saúde? . . . p. 45 3.3.2 Quais os grupos de doenças que os trabalhos de Computação em
Névoa têm abordado? . . . p. 46 3.3.3 Quais os tipos de pesquisa utilizados nos estudos de Computação
em Névoa na área da saúde? . . . p. 47 3.3.4 Quais as características fornecidas pelo paradigma Computação
em Névoa são interessantes para aplicações na área da saúde? . p. 48 3.3.5 Quais as motivações do uso de Computação em Névoa na área da
saúde? . . . p. 49 3.3.6 Quais os desaos para a adoção de Computação em Névoa em
soluções na área da saúde? . . . p. 50 3.3.7 Outros achados . . . p. 50 3.4 Visão geral dos achados da revisão . . . p. 53 3.5 Considerações nais . . . p. 54 4 Uma arquitetura de software baseada em Computação em Névoa
para gestão dos registros médicos centrada no paciente p. 56 4.1 Cenário funcional . . . p. 57 4.2 Requisitos . . . p. 58
4.2.2 Requisitos não funcionais . . . p. 61 4.3 Arquitetura de software proposta . . . p. 62 4.3.1 Visão de camadas . . . p. 62 4.3.2 Visões de decomposição . . . p. 64 4.3.2.1 Visão de decomposição das camadas . . . p. 64 4.3.2.2 Visão de decomposição dos módulos . . . p. 67 4.3.3 Visão de uso . . . p. 72 4.3.4 Visão de modelo de dados . . . p. 73 4.3.5 Visão de repositórios . . . p. 75 4.3.6 Comportamentos . . . p. 77 4.3.7 Relação dos módulos e submódulos projetados com os requisitos
não funcionais . . . p. 85 4.4 Considerações nais . . . p. 89
5 Avaliação p. 90
5.1 Planejamento . . . p. 90 5.2 Execução . . . p. 92 5.3 Respostas às questões de pesquisa . . . p. 98
5.3.1 QP1: A arquitetura de software proposta permite que o paciente
controle a privacidade de seus dados médicos? . . . p. 98 5.3.2 QP2: A arquitetura de software proposta mantém a
condencia-lidade dos dados médicos gerenciados? . . . p. 103 5.3.3 QP3: A arquitetura de software proposta permite que sistemas
implementados em diferentes tecnologias manipulem os dados
ge-renciados? . . . p. 106 5.3.4 QP4: Como se comporta o tempo de resposta relacionado ao
6 Trabalhos relacionados p. 114 6.1 Abordagens para gerenciamento de dados em ambientes de Computação
de Borda e/ou Computação em Névoa . . . p. 114 6.2 Blockchain como estratégia para permitir ao paciente controlar a
priva-cidade dos registros eletrônicos relacionados à saúde dele . . . p. 121 6.3 Considerações nais . . . p. 123 7 Considerações nais p. 124 7.1 Conclusões . . . p. 124 7.2 Contribuições . . . p. 126 7.3 Limitações . . . p. 127 7.4 Trabalhos futuros . . . p. 127 Referências p. 129
Apêndice A -- Coleta de dados do Capítulo 3 p. 138
B -- Trabalhos analisados no Capítulo 3 p. 148
C -- Especicação dos serviços do estudo de caso. p. 151
D -- Comparativo das abordagens para gerenciamento de dados em
1 Introdução
Este capítulo tem a nalidade de situar o tema abordado no trabalho. Assim, descreve-se a contextualização do mesmo na Seção 1.1. Na Seção 1.2 é descrito o problema tratado no estudo. Por sua vez, a Seção 1.3 descreve o objetivo geral da pesquisa e enumera os objetivos especícos dela. Em seguida, na Seção 1.4 é explicada a metodologia seguida no trabalho. Por conseguinte, a Seção 1.5 resume as contribuições deste trabalho. Por m, a Seção 1.6 apresenta a forma como o mesmo está organizado.
1.1 Contextualização
Nos últimos anos, os gastos com cuidados médicos têm aumentado bastante. Segundo a OMS (2017b), foram gastos US$ 7,3 trilhões com saúde no mundo no ano de 2015, o que representou aproximadamente 10% do PIB global. Além disso, esse relatório mostrou que entre os anos de 2000 e 2015, os gastos com essa área cresceram em média 4% ao ano. Em contrapartida, a economia global cresceu em média apenas 2,8% ao ano nesse mesmo intervalo de tempo. Logo, o aumento da demanda nanceira nessa área tem preocupado bastante os órgãos responsáveis pela mesma.
No Brasil a situação não é diferente. De acordo com o IBGE (2017), o gasto com consumo de bens e serviços de saúde cresceu entre os anos de 2010 e 2015. Além disso, os mesmos atingiram o total de R$ 546 bilhões no último ano desse intervalo, valor cor-respondente a 9,1% do PIB do país. Além do mais, como pode ser visto na Figura 1, o percentual do PIB do país gasto com despesas desse tipo vem sofrendo um crescimento no decorrer desses anos.
Essa situação tem se agravado em virtude de dois fatores principais: o envelhecimento da população e o crescimento do número de pessoas com doenças crônicas. Com relação ao primeiro deles, esse crescimento se deu em virtude da diminuição da taxa de natalidade e do aumento da expectativa de vida da população. Em decorrência disso, a quantidade
de pessoas acima de 60 anos aumentou substancialmente nas últimas décadas (NATIONS,
2015).
Figura 1: Porcentagem do PIB com gastos em bens e serviços de saúde ao longo dos anos no Brasil.
Fonte: autoria própria.
A população com 60 anos ou mais atingiu 962 milhões em 2017, o que representa um número mais que duas vezes maior do que em 1980 (NATIONS, 2017a). Além disso,
conforme mostrado na Figura 2, projeta-se que essa população duplique novamente até 2050 e que triplique até 2100, quando espera-se que a mesma chegue a 3,1 bilhões de pessoas (NATIONS, 2017b).
Figura 2: População idosa no mundo ao longo dos anos. Fonte: autoria própria.
No que diz respeito às doenças crônicas, o número de pessoas afetadas por essas enfermidades também cresceu nos últimos anos (DAS; BALLAV; KARFA, 2015; TAROUCO
et al., 2012; FAFOUTIS et al., 2016). Atualmente, esse tipo de doença ocasiona mais mortes
no mundo do que todas as outras causas somadas. Segundo a OMS (2014), estima-se que 52 milhões de pessoas morrerão em decorrência dessas enfermidades no ano de 2030. Esse número representa um aumento de aproximadamente 38% se comparado ao ano de 2012, quando morreram 38 milhões de pessoas em decorrência delas (OMS, 2014).
Ao mesmo tempo, os países têm gasto muito dinheiro no tratamento de pacientes afetados por doenças desse tipo. De acordo com a OMS (2014), estima-se que entre 2011 e 2025 os países de renda baixa e média acumularão US$ 7 trilhões em perdas econômicas em decorrência desse tipo de enfermidades. Assim, percebe-se que as doenças crônicas são também um desao na área da saúde, tanto pelo sofrimento humano ocasionado por elas quanto pelos danos econômicos causados pelas mesmas.
Nesse contexto, é essencial que se busque meios para aperfeiçoar os serviços médicos que são ofertados aos pacientes, otimizando o processo de tratamento e prevenindo o avanço para quadros de saúde mais graves. Assim, a utilização de abordagens baseadas em E-Health tem contribuído bastante no provimento de novas soluções que permitam essas melhorias.
Ao mesmo tempo, o uso de dispositivos inteligentes e outros tipos de sensores tem sido amplamente disseminado. Para se ter uma ideia dessa ampla difusão, no ano de 2011 o número de dispositivos conectados à internet superou a população mundial e 9 bilhões de dispositivos estavam conectados à grande rede em 2013 (GUBBI et al., 2013). Além disso, a Cisco estima que haverá 29,3 bilhões de dispositivos conectados até 2023 (CISCO, 2020).
Dessa forma, é possível perceber que o uso dos mesmos tem se disseminado rapidamente e que nos próximos anos eles estarão ainda mais presentes no cotidiano das pessoas. Nesse contexto, dispositivos com diferentes tamanhos e capacidades estão se conectando a internet. Com isso, a Internet das Coisas se torna uma realidade (BORMANN; ERSUE; KERANEN, 2014).
Em adição, essas coisas conectadas à internet podem colaborar na realização de im-portantes tarefas do dia-a-dia das pessoas, gerando vários benefícios às vidas delas (MAIA et al., 2014). Um exemplo disso, seria a utilização desses dispositivos na criação de soluções de baixo custo para monitorar a saúde dos pacientes. Dessa forma, os diferentes sensores que coletarão dados dos pacientes contribuirão com o fornecimento de novas informações sobre a saúde deles, as quais podem ser utilizadas em conjunto com as tradicionais in-formações dos prontuários médicos para dar suporte à tomada de decisão por parte das equipes médicas.
Apesar da criação de soluções usando essas coisas ser oportuna, muito dos disposi-tivos utilizados possuem restrições relacionadas à capacidade de bateria, armazenamento e processamento de dados. Assim, a Computação em Nuvem aparece como uma al-ternativa para integrar esses diferentes dispositivos de monitoramento com ferramentas de análise, ferramentas de visualização e disponibilização de informações (DAS; BALLAV; KARFA, 2015). Em contrapartida, soluções baseadas em Nuvem podem adicionar atrasos
intoleráveis a alguns tipos de aplicações de saúde, o que pode resultar em falhas nesses sistemas (KHAREL; REDA; SHIN, 2017; KRAEMER et al., 2017).
Nesse contexto, emerge a Computação em Névoa que estende o paradigma tra-dicional de Computação em Nuvem para a borda da rede, fornecendo capacidades de computação, comunicação e armazenamento mais perto dos usuários nais e/ou fontes de dados, diminuindo atrasos (BIBANI et al., 2016). Ademais, a Névoa é caracterizada
por ser composta de entidades distribuídas que disponibilizam as suas capacidades de armazenamento, processamento e comunicação (SHARMA; CHEN; PARK, 2018). Essas
en-tidades podem ser implementadas através de componentes físicos virtualizados, tais como switches, roteadores, pequenos servidores, etc. (IORGA et al., 2018).
Logo, a Névoa é uma camada entre dispositivos e Nuvem que leva as informações dos usuários para a borda da internet (CHAKRABORTY et al., 2016). Destarte, esse paradigma vem sendo utilizado como uma abordagem para diminuir atrasos no acesso às informações médicas dos pacientes.
1.2 Problema
Mesmo a Computação em Névoa sendo um paradigma promissor para ser utilizado na área da saúde, existem vários desaos relacionados a esse processo de adoção. Um deles é a gestão dos dados médicos dos pacientes na Névoa, o qual é citado na literatura como uma questão em aberto (FARAHANI et al., 2018).
Uma estratégia para gestão de dados médicos que vem sendo amplamente defendida pela comunidade cientíca, é a de permitir que o próprio paciente tenha o controle sobre o uso dos dados referentes à saúde dele (CONCEIçãO et al., 2018). Desse modo, a gestão
dos dados passa a ser centrada no paciente.
Essa capacidade caracteriza o termo Personal Health Records (PHR) (em português, Registros Pessoais de Saúde), denido como uma representação eletrônica dos registros de saúde relacionados ao cuidado de um paciente, os quais são gerenciados pelo próprio
paciente (TANG et al., 2006;ROEHRS et al., 2017). Destarte, os pacientes passam a controlar
o uso de seus dados de acordo com suas preferências.
Ademais, essa estratégia de dar ao paciente o direito de decidir sobre o uso dos dados relacionados à saúde dele, contribui para garantir a privacidade dessas informações. Essa característica é extremamente importante na gestão dessas informações na Névoa, em vir-tude dos dados médicos se caracterizam por serem informações muito sensíveis (KHAREL; REDA; SHIN, 2017; RAHMANI et al., 2018; DUPONT; GIAFFREDA; CAPRA, 2017; SINGH et al., 2017).
Ao mesmo tempo, segundo Yue et al. (2016) os dados relacionados a cuidados médicos são um ativo pessoal do paciente. Desse modo, eles devem estar em posse dessas pessoas e devem ser controlados por elas, de forma que o paciente possa facilmente compartilhar essas informações e restringir o uso das mesmas. O Conselho Federal de Medicina apresenta uma visão análoga à defendida anteriormente, pois arma que os dados relacionados ao paciente pertencem ao mesmo (CFM, 2007).
Atualmente, muitos pesquisadores vêm estudando novas maneiras de garantir a pri-vacidade e, ao mesmo tempo, permitir o compartilhamento dos registros médicos dos pacientes de maneira segura (GREENGARD, 2018). Nessa perspectiva, uma abordagem
que tem se mostrado promissora é a utilização de Blockchain para prover essas capaci-dades, pois essa tecnologia possui características que permitem a um usuário gerenciar ativos facilmente.
A condencialidade desse tipo de informações médicas também é um aspecto impor-tante que deve ser levado em consideração no gerenciamento desses dados na Névoa. A área da saúde é composta por diferentes ambientes e prossionais que cuidam da saúde dos pacientes. Logo, é importante que se garanta que apenas pessoas autorizadas pelo paciente possam ter acesso aos dados do mesmo.
Ao mesmo tempo, a área médica se caracteriza por possuir diferentes ambientes com variados sistemas, os quais são desenvolvidos utilizando variadas tecnologias. Assim, é essencial a padronização da representação dos dados gerados, bem como a forma em que os mesmos são acessados, possibilitando a interoperabilidade no sentido que esses diferentes sistemas de informação possam utilizar esses dados.
Neste contexto, a denição de uma arquitetura de software contemplando os desaos mencionados é uma possível abordagem que pode proporcionar a gestão dos dados médicos centrada no paciente, ou seja, a gestão de Registros Pessoais de Saúde. Esta arquitetura
de software serviria de guia na criação de soluções, fornecendo um arcabouço para o desenvolvimento delas e padronizando a forma como as mesmas utilizariam o conjunto de informações médicas relacionadas à vida dos pacientes.
1.3 Objetivos
Este trabalho tem como objetivo geral denir uma arquitetura de software que forneça um arcabouço para o desenvolvimento de soluções, baseadas em Computação em Névoa, para gestão de dados médicos dos pacientes. Desse modo, baseado neste objetivo enumera-se os enumera-seguintes objetivos especícos:
• Projetar uma abordagem de gestão centrada no paciente, permitindo que o mesmo tenha a real posse de seus dados médicos;
• Utilizar estratégias para prover privacidade, condencialidade e interoperabilidade no gerenciamento desses Registros Pessoais de Saúde.
1.4 Metodologia
Com o intuito de alcançar o objetivo estabelecido nesta pesquisa, foi seguida a metodo-logia apresentada na Figura 3, a qual é composta por quatro passos: revisão da literatura, projeto da arquitetura, avaliação e trabalhos relacionados.
Figura 3: Etapas da metodologia. Fonte: autoria própria.
Na etapa de revisão da literatura procurou-se entender como o paradigma de Com-putação em Névoa tem sido aplicado à área da saúde. Para isso, foi realizada uma revisão do estado da arte, identicando os tipos de aplicações mais comuns, os grupos de doenças mais abordados, os tipos de pesquisa utilizados, as características da Névoa usadas nes-sas soluções, os principais motivos do uso desse paradigma na área médica e os desaos
existentes. Por m, nesta etapa da metodologia identicou-se o problema abordado nesta tese, ou seja, a gestão baseada em Computação em Névoa dos dados médicos de pacientes. Em seguida, projetou-se a arquitetura de software, baseada em Computação em Né-voa, focada na gestão dos dados médicos centrada no paciente. Desse modo, foram iden-ticados os requisitos necessários para o funcionamento dela e documentou-se a mesma.
Por conseguinte, avaliou-se a arquitetura de software por meio de um estudo de caso. Em vista disso, elaborou-se um planejamento para o uso da arquitetura de software no cenário de Home Care. Em seguida, implementou-se o cenário projetado e analisou-se o comportamento dos requisitos da arquitetura de software.
Por m, realizou-se o levantamento dos trabalhos relacionados ao desenvolvido nesta tese. Nesse passo, esses estudos foram descritos e comparou-se o trabalho desenvolvido nesta pesquisa com mesmos.
1.5 Sumário de contribuições
A principal contribuição cientíca deste trabalho é a denição de uma abordagem para gerenciamento de dados médicos centrada no paciente, baseada em Computação em Névoa e Blockchain, com foco nos requisitos de privacidade, condencialidade e interope-rabilidade.
Essa abordagem é denida por meio de uma arquitetura de software baseada em Computação em Névoa, a qual fornece um arcabouço para o desenvolvimento de soluções focadas na gestão dos dados médicos centrada no paciente. Uma versão dessa arquite-tura de software foi publicada no artigo (SILVA et al., 2019). Ademais, essa abordagem
dene uma estratégia baseada em Blockchain para assegurar a privacidade dos dados dos pacientes. Uma versão dessa estratégia foi publicada no artigo (SILVA; JÚNIOR; MELO,
2019).
Uma contribuição secundária desta tese é a disponibilização de uma revisão da litera-tura, a qual mostra como a Computação em Névoa vinha sendo utilizada na área médica e identicou desaos nesse campo de pesquisa. Essa revisão foi publicada no artigo (SILVA; AQUINO JR., 2018).
1.6 Organização do trabalho
O restante deste trabalho encontra-se organizado da seguinte maneira:
• O Capítulo 2 mostra a fundamentação teórica contendo os conceitos necessários ao entendimento deste estudo;
• O Capítulo 3 apresenta a revisão da literatura realizada neste trabalho. Essa revisão foi feita com o intuito de entender como o paradigma de Computação em Névoa têm sido utilizado na área médica e para identicar desaos nesse campo de pesquisa; • O Capítulo 4 descreve uma abordagem baseada em Computação em Névoa projetada
para permitir a gestão dos dados médicos centrada no paciente;
• O Capítulo 5 mostra a avaliação do trabalho. Nele descreve-se um estudo de caso no qual os dados médicos do paciente, gerados em um cenário de Home Care, são gerenciados através da abordagem proposta neste estudo;
• O Capítulo 6 apresenta os trabalhos relacionados a esta tese;
• O Capítulo 7 expõe as conclusões desta tese, suas contribuições, limitações e pro-postas de trabalhos futuros.
2 Fundamentação teórica
Neste capítulo são apresentados os conceitos essenciais ao entendimento desta tese. Assim, a Seção 2.1 mostra a denição de E-Health. Em seguida, o paradigma Internet das Coisas é denido na Seção 2.2. Por sua vez, a Seção 2.3 conceitualiza o paradigma de Computação em Névoa. Na Seção 2.4 conceitualiza-se a tecnologia Blockchain e descreve-se o funcionamento da mesma. Por m, a Seção 2.5 aborda as considerações nais deste capítulo.
2.1 E-Health
A expressão E-Health (também escrita eHealth) começou a ser utilizada por pesqui-sadores antes dos anos 2000 (MEA, 2001). Todavia, ainda hoje não se tem uma denição
universalmente aceita para este termo. Para se ter uma ideia da grande variedade de de-nições para esta expressão, os pesquisadores Oh et al. (2005) encontraram 51 diferentes denições para E-Health.
De acordo com Eysenbach (2001), o E em E-Health não signica apenas electronic, mas implica vários outros Es, que juntos talvez caracterizem melhor este termo. Esses Es são:
• Eciency (Eciência) - aumentar a eciência em cuidados com a saúde, assim di-minuindo custos;
• Enhancing (Aprimorar) - aprimorar a qualidade do atendimento;
• Evidence (Evidência) - as intervenções de E-Health devem ser baseadas em evidên-cias, devendo ser provadas por rigorosas avaliações cientícas;
• Empowerment (Empoderamento) - empoderamento de pacientes. E-Health torna as bases de conhecimento da medicina e os registros médicos pessoais acessíveis aos pacientes por meio da internet;
• Encouragement (Encorajamento) - encorajamento de um novo relacionamento entre paciente e prossional de saúde, onde decisões são feitas de uma maneira comparti-lhada;
• Education (Educação) - educação continuada dos médicos por meio de fontes online e educação do paciente com relação à saúde dele;
• Enabling (Possibilitar) - possibilitar a troca de informações e a comunicação entre estabelecimentos de cuidados com a saúde de uma forma padronizada;
• Extending (Estender) - estender o escopo dos cuidados de saúde além de seus limites convencionais;
• Ethics (Ética) - E-Health envolve novas formas de interação paciente/médico e traz novos desaos e ameaças a questões éticas;
• Equity (Equidade) - tornar mais equitativo os cuidados com a saúde.
Nesse contexto, este trabalho adota a denição estabelecida pela OMS, a qual dene E-Health como: a utilização rentável e segura das tecnologias da informação e comunicação em apoio da saúde e de campos relacionados a essa área (OMS,
2005).
Desse modo, o objetivo geral da E-Health é proporcionar um melhor atendimento aos pacientes, garantindo segurança e qualidade nesse processo, aperfeiçoando os serviços existentes e o acesso aos mesmos, conectando os locais de atendimento e auxiliando a saúde humana em geral (SHAW et al., 2017).
2.1.1 Registros eletrônicos relacionados à saúde do paciente
É uma das categorias tecnológicas que fazem parte do domínio da E-Health (MEA,2001; JONES et al., 2005). Os registros eletrônicos sobre a saúde do paciente abrangem o conjunto de dados médicos sobre a saúde do paciente, os quais estão disponíveis em formato digital. Em adição, esses tipos de registros eletrônicos podem ser classicados em três diferentes nomenclaturas: Electronic Medical Records (EMR), Electronic Health Records (EHR) e Personal Health Records (PHR) (HEART; BEN-ASSULI; SHABTAI, 2017).
2.1.1.1 Electronic Medical Records (EMR)
O Electronic Medical Record (em português, Registro Médico Eletrônico) é um registro eletrônico de informações sobre a saúde do paciente, os quais são gerados em um ou mais encontros em um ambiente de prestação de cuidados médicos (HEART; BEN-ASSULI; SHABTAI, 2017).
Um EMR é organizacionalmente considerado um sistema interno, ou seja, o acesso e utilização dos dados por ele armazenados está limitado a um provedor de saúde ( HE-ART; BEN-ASSULI; SHABTAI, 2017). Em decorrência disso, ele é frequentemente descrito como um registro de saúde centrado no provedor ou centrado na organização de saúde (ALJOHANI; BLUSTEIN, 2018).
São exemplos de dados armazenados em um Registro Médico Eletrônico, os medica-mentos, sinais vitais, histórico médico, imunizações, dados de laboratório, etc. Em suma, um EMR pode ser entendido como uma versão digital dos registros de arquivos médicos em papel sobre a saúde de um indivíduo (BHAT et al., 2017).
2.1.1.2 Electronic Health Records (EHR)
O Electronic Health Record (em português, Registro Eletrônico de Saúde) é o conjunto de todos os registros eletrônicos relacionados à saúde de uma pessoa especíca, os quais estão disponíveis em algum formato digital (EHEALTH, 2016).
Um EHR é considerado um sistema interorganizacional, ou seja, ele é projetado para poder ser utilizado por mais de uma organização de saúde (HEART; BEN-ASSULI; SHABTAI,
2017). Por isso, ele é descrito como um registro de saúde centrado na pessoa, o qual pode ser usado por prossionais de saúde ou organizações de saúde autorizados (ALJOHANI; BLUSTEIN, 2018). O EHR é gerido pelas organizações de saúde, signicando que todos os
dados privados do paciente são armazenados em banco de dados mantido pela organização onde o mesmo foi gerado (DAGHER et al., 2018).
Um Registro Eletrônico de Saúde geralmente contém o histórico médico do paciente, diagnósticos, tratamentos, medicamentos, alergias, imunizações, etc. (EHEALTH, 2016). Em síntese, um EHR pode ser considerado uma versão digital de vários prontuários do paciente, os quais podem ser compartilhados entre as organizações de saúde.
2.1.1.3 Personal Health Records (PHR)
O Personal Health Record (em português, Registro Pessoal de Saúde) emergiu a partir do EHR. Um PHR pode ser denido como o conjunto de registros eletrônicos contendo in-formações relacionadas à saúde do paciente, as quais são gerenciadas pelo próprio paciente (ROEHRS et al., 2017).
Um PHR é projetado para que os dados armazenados nele possam ser utilizados por diferentes prossionais e organizações de saúde, desde que previamente autorizados pelo paciente. Assim, em um PHR o paciente pode optar ou não por compartilhar os dados referentes à saúde dele com os prestadores de cuidados médicos (ROEHRS et al., 2017).
Logo, um PHR é considerado um registro de saúde centrado no paciente (ALJOHANI; BLUSTEIN, 2018).
Um Registro Pessoal de Saúde pode conter os dados armazenados nos EHRs e os dados coletados a partir de sensores ou outros dispositivos de computação vestíveis, tais como pulseiras, relógios inteligentes, etc. (ROEHRS et al., 2017).
2.2 Internet das Coisas
O termo Internet das Coisas (do inglês, Internet of Things, IoT) foi usado pela pri-meira vez em 1999 por Kevin Ashton em um contexto de gerenciamento de cadeia de suprimentos e, a partir daí, ganhou a atenção da academia e indústria (ASHTON et al.,
2009). A Internet das Coisas é um paradigma no qual os objetos da vida cotidiana são equipados e habilitados para se comunicar com outros objetos e com usuários, o que os torna parte da internet (ZANELLA et al., 2014).
No que diz respeito às coisas, elas são entidades que: possuem um corpo físico com um conjunto de características físicas associadas a ele (Ex: tamanho, peso, forma, etc.); possuem um conjunto mínimo de funcionalidades de comunicação; possuem um identi-cador único; são associadas a pelo menos um nome e um endereço; possuem algumas capacidades computacionais básicas; e podem possuir meios para monitorar fenômenos físicos ou desencadear ações (MIORANDI et al., 2012).
Nesse contexto, as coisas conectadas à rede colaboram na realização de tarefas im-portantes que beneciam a vida das pessoas (MAIA et al., 2014). De acordo com Atzori,
Iera e Morabito (2010), o alto impacto que a IoT irá ter em muitos aspectos da vida cotidiana e no comportamento das pessoas é o principal benefício por traz desse
para-digma. Segundo esses mesmos autores, os domínios de aplicação desse paradigma podem ser agrupados em cinco grupos principais:
• Domínio de transporte e logística - aplicações que auxiliam no controle do trá-fego, sugerem rotas melhores para os veículos, ajudam no gerenciamento dos depó-sitos de mercadorias, fornecem ao turista informações apropriadas sobre transporte e monitoram o status das mercadorias transportados;
• Domínio da saúde - aplicações para rastreamento de objetos e pessoas (funcio-nários e pacientes), identicação e autenticação de pessoas, coleta automática de dados e sensoriamento;
• Domínio de ambiente inteligente - aplicações para tornar um ambiente mais confortável para as pessoas;
• Domínio pessoal e social - aplicações que permitem ao usuário interagir com outras pessoas para manter e construir relacionamentos sociais;
• Domínio de aplicações futurísticas - aplicações que dependem de algumas tec-nologias que ainda estão por vir ou cuja implementação ainda é muito complexa. Desse modo, os dispositivos de IoT podem ser utilizados na criação de soluções para monitoramento da saúde das pessoas (FAFOUTIS et al., 2016). Assim, os diferentes sensores
que coletarão dados dos pacientes contribuirão bastante para o crescimento do volume das informações na área médica.
Entretanto, esses dispositivos têm várias restrições relacionadas a armazenamento, processamento e capacidade de bateria. Dessa forma, a Computação em Nuvem (do in-glês, Cloud Computing) tem sido utilizada como uma infraestrutura para integrar os dispositivos de monitoramento, ferramentas de análise e ferramentas de visualização de dados (DAS; BALLAV; KARFA, 2015).
Contudo, os prossionais de saúde necessitam acessar as informações dos pacientes de forma rápida e as abordagens baseadas em Nuvem não são adequadas para isso, pois elas podem causar atrasos intoleráveis às aplicações médicas (KHAREL; REDA; SHIN, 2017; KRAEMER et al., 2017). Nessa perspectiva, a utilização de abordagens baseadas em
2.3 Computação em Névoa
Esta expressão foi utilizada pela primeira vez por Bonomi (2011). De acordo com esse autor, Computação em Névoa (do inglês, Fog Computing) é uma plataforma altamente virtualizada que prover capacidades de computação, armazenamento e comunicação entre os dispositivos nais e a Nuvem (BONOMI et al., 2012).
Entretanto, este é outro termo que, mesmo tendo sido criado há alguns anos, ainda não possui uma denição única e globalmente aceita (BORCOCI, 2016; YI; QIN; LI, 2015).
Ao mesmo tempo, alguns autores defendem que Computação em Névoa pode ser apenas um nome diferente para se referir ao paradigma de Computação de Borda (do inglês, Edge Computing) (HAJIBABA; GORGIN, 2014; BONOMI et al., 2013). Em contrapartida,
outros pesquisadores argumentam que Computação em Névoa representa uma evolução de Edge Computing por incorporar aplicações de IoT (BORCOCI, 2016; GONZALEZ et al.,
2016;CHIANG; ZHANG, 2016).
Os autores Yousefpour et al. (2019) descrevem um amplo detalhamento sobre os para-digmas focados na borda da rede. Nesse trabalho, eles apontam como principal diferença entre esses dois paradigmas o fato das tarefas da Computação em Névoa poderem ser realizadas em qualquer lugar (da nuvem às coisas), enquanto que a Computação de Borda limita suas tarefas na borda rede. Essa visão também é defendida pela OpenFog Consor-tium, a qual ainda acrescenta que a Névoa trabalha com a nuvem, enquanto a Computação de Borda é denida pela exclusão da nuvem (CONSORTIUM et al., 2017).
De uma forma geral, o que é amplamente aceito pela comunidade cientíca é que Com-putação em Névoa representa uma extensão da Nuvem para a borda da rede (BORCOCI, 2016; YI; LI; LI, 2015; STOJMENOVIC; WEN, 2014; SAHARAN; KUMAR, 2015; DASTJERDI et al., 2016; BONOMI et al., 2014; GONZALEZ et al., 2016;YI; QIN; LI, 2015). Desse modo, a
Névoa possui as seguintes características:
• Baixa latência: a Névoa pode proporcionar uma diminuição na latência através da disponibilização das capacidades de computação, armazenamento e comunicação mais próximo das fontes de dados e/ou usuários (BIBANI et al., 2016);
• Segurança e privacidade: a Névoa pode fornecer segurança entre as camadas através da incorporação de técnicas de autenticação, criptograa e controle de acesso antes do envio das informações para o núcleo da rede (FARAHANI et al., 2018);
grande uxo de informações multimídia e também se caracteriza por uma ampla necessidade de análise de dados para aplicações em tempo real (HAJIBABA; GORGIN,
2014);
• Redução do tráfego na rede: a Névoa pode ser utilizada para preprocessar dados, ltrando-os antes do envio deles à Nuvem e para fornecer uma área de cache para acesso a essas informações (BONOMI et al., 2012);
• Consciência da localização: os nós que formam a Névoa são hospedados em dispo-sitivos da borda da rede. Assim, eles são cientes de suas localizações físicas e podem permiter um melhor suporte a serviços baseados nessa característica (HAJIBABA; GORGIN, 2014);
• Heterogeneidade: a Névoa deve lidar com uma grande variedade de aplicações desenvolvidas utilizando diferentes tecnologias de comunicação, armazenamento e processamento (GONZALEZ et al., 2016);
• Interoperabilidade: os componentes da Névoa devem ser capazes de trocar infor-mações entre si e cooperar na realização de tarefas (BONOMI et al., 2012);
• Armazenamento e processamento: a Névoa pode fornecer um ambiente com re-cursos altamente distribuídos para armazenamento e processamento de dados ( GON-ZALEZ et al., 2016);
• Suporte à mobilidade: a Névoa pode fornecer uma rede com vários pontos de acesso para receber as conexões dos usuários móveis (GONZALEZ et al., 2016);
• Distribuição geográca: os recursos da Névoa podem ser distribuídos em um amplo domínio geográco (GONZALEZ et al., 2016);
• Eciência energética: os dispositivos nais conectados à Névoa podem ter seu consumo energético otimizado. Isso pode ocorrer através da diminuição do tempo necessário à transferência de dados e, em virtude de, suas tarefas de processamento poderem ser movidas para a Névoa (RAHMANI et al., 2018);
• Grande número de nós: a Computação em Névoa envolve um grande número de nós como consequência da ampla distribuição geográca (BONOMI et al., 2012);
• Predominância de acesso sem o: a maior parte do tráfego na Névoa é prove-niente de dispositivos de conexão sem o (GONZALEZ et al., 2016).
Em suma, a Névoa é uma camada entre dispositivos e a Nuvem que leva as infor-mações dos usuários para a borda da rede (CHAKRABORTY et al., 2016). Nesse sentido, a
manutenção da privacidade dessas informações é extremamente importante quando este paradigma é utilizado em E-Health, pois os dados dessa área contêm informações ínti-mas da vida das pessoas (KHAREL; REDA; SHIN, 2017; RAHMANI et al., 2018; DUPONT; GIAFFREDA; CAPRA, 2017; SINGH et al., 2017).
Ao mesmo tempo, essa camada é caracterizada por ser composta por entidades dis-tribuídas que disponibilizam suas capacidades de armazenamento, processamento e co-municação (SHARMA; CHEN; PARK, 2018). Dessa forma, essas entidades precisam utilizar uma abordagem para controle de privacidade que também seja distribuída, permitindo a cada uma delas gerenciar a privacidade dos registros médicos armazenados no domínio das mesmas. Nessa perspectiva, uma abordagem que tem se mostrado promissora é a utilização de Blockchain para prover a privacidade e descentralização necessária a esse ambiente.
2.4 Blockchain
Blockchain é um banco de dados que armazena registros de transações em uma rede ponto-a-ponto de uma forma descentralizada, distribuída e imutável (KHAN; SALAH, 2018; SWAN, 2015). A denição original do funcionamento do Blockchain foi descrita por Na-kamoto (2008). Nesse artigo, NaNa-kamoto usou o Blockchain como base para a operação da criptomoeda Bitcoin.
A Figura 4 mostra a estrutura de um banco de dados de um Blockchain. Como pode ser visto, ele é formado por uma cadeia de blocos, por isso o nome Blockchain (KISHIGAMI et al., 2015; SAMANIEGO; DETERS, 2016; XU et al., 2017). Cada bloco contém um conjunto
de ações geradas pelos participantes da rede, as chamadas transações (ATLAM et al., 2018; SAMANIEGO; DETERS, 2017; CONOSCENTI; VETRO; MARTIN, 2016). Na versão original
do Blockchain, essas transações são validadas pelos Miners (Minerados), os quais são computadores da rede que resolvem problemas matemáticos para obter o direito de criar um novo bloco e receber recompensas pela execução dessa tarefa (ATLAM et al., 2018; BÖHME et al., 2015; EYAL et al., 2016).
Um outro conceito importante relacionado ao Blockchain é o das Wallets (Carteiras Digitais) (METTLER, 2016), que são aplicações capazes de enviar, receber e manter o
Figura 4: Estrutura de um Blockchain. Fonte: autoria própria.
da Wallet A para a Wallet B, ela é enviada primeiro para os computadores que formam a rede do Blockchain. Depois disso, um Minerador a valida e a adiciona a um bloco. Por conseguinte, o bloco é enviado para todos os nós da rede, os quais o aprovam. Esse bloco é encadeado aos blocos existentes no Blockchain. O processo de aceitação do novo bloco na rede Blockchain é denominado consensus (consenso). Finalmente, a transação é recebida pela Wallet B. Essas operações são mostradas na Figura 5.
Figura 5: Funcionamento de um Blockchain. Fonte: autoria própria.
Um esquema de criptograa de chave pública e assinaturas digitais é usado para identicar as contas gerenciadas nas Wallets e asseguram a autorização das transações. Cada transação é assinada pelo nó fonte para autorizar o envio de dados e a integridade deles é vericada por técnicas de criptograa e algoritmos (XU et al., 2017).
Um Blockchain pode ser instanciado de duas formas: público ou privado. No Block-chain do tipo público, a rede é aberta a qualquer um que queira se juntar a ela. Assim, o acesso aos blocos e transações é aberto a todos. Ademais, qualquer membro da rede pode fazer parte do mecanismo de consenso (KHAN; SALAH, 2018; SAMANIEGO; DETERS, 2017; ROUHANI; DETERS, 2017).
Já nos Blockchains privados, a rede é restrita a um certo grupo de participantes. Logo, esse tipo de Blockchain cona em um conjunto de participantes registrados e apenas esses participantes podem fazer parte do mecanismo de consenso. Portanto, Blockchains desse tipo são mais rápidos, seguros e mais ecientes do que um Blockchain público (KHAN; SALAH, 2018;SAMANIEGO; DETERS, 2017;ROUHANI; DETERS, 2017).
2.4.1 Consenso
Como mencionado anteriormente na Seção 2.4, o consenso é o mecanismo pelo qual novos blocos são aceitos pela rede do Blockchain. Atualmente, existem vários algoritmos, utilizando diferentes estratégias, para prover o consenso em uma rede do Blockchain.
O algoritmo Proof of Work (PoW) é o mais famoso algoritmo de consenso existente. É esse algoritmo o responsável pelo consenso da rede do Bitcoin. A ideia por traz dele é que para criar um novo bloco, o minerador é forçado a resolver uma tarefa computacionalmente intensa e facilmente vericável. Após realizada a tarefa, a solução é publicada e o novo bloco é adicionado à cadeia de blocos. Posteriormente, o novo bloco é espalhado pela rede e o resto dos participantes o verica e o anexa à sua cópia local do Blockchain (REYNA et al., 2018). Porém, esse algoritmo torna a aceitação de novas transações lento, devido o
processo de resolução da tarefa ser computacionalmente muito trabalhosa.
Vários outros algoritmos foram propostos como alternativa para substituir o PoW na tarefa de consenso. O mais popular deles é o Proof of Stake (PoS). Ele se baseia na ideia que os usuários que possuem mais moedas são os mais interessados no funcionamento correto da rede. Dessa forma, eles seriam as entidades mais apropriadas para assumir a responsabilidade de proteger o sistema. Portanto, esse algoritmo determina randomica-mente o usuário responsável pela criação de cada bloco, baseado no número de moedas que ele possui. No entanto, uma crítica a essa estratégia é que ela gera o enriquecimento dos mais ricos, uma vez que, apenas eles conseguirão gerar blocos e, consequentemente, receber a recompensa por esse trabalho (REYNA et al., 2018).
público. O algoritmo Proof of Authority (PoA) é uma versão simplicada do PoS, proje-tada para trabalhar em Blockchains privados. Nesse algoritmo, um conjunto de authorities (autoridades) são pré-determinadas e cada uma delas possui um intervalo de tempo xo no qual poderá gerar blocos. O PoA assume que as autoridades são conáveis. Logo, é adequado apenas para implantação em Blockchains privados (DINH et al., 2017). Esse
al-goritmo foi adotado pela plataforma Azure para permitir que seus usuários possam criar Blockchains privados (BORN, 2018).
2.5 Considerações nais
Este capítulo apresentou os conceitos essenciais ao entendimento deste trabalho. De modo que, na Seção 2.1 mostrou-se a origem do termo E-Health, os Es que ajudam a caracterizar essa área e uma denição para essa expressão. Ainda na Seção 2.1 foram descritas as diferentes nomenclaturas para se referir a registros eletrônicos relacionados à saúde do paciente, categoria tecnológica que faz parte do domínio da E-Health. Por conseguinte, a Seção 2.2 abordou a origem da Internet das Coisas, conceituou esse para-digma e mostrou os domínios de aplicação de IoT. Em seguida, na Seção 2.3 apresentou-se o surgimento da Computação em Névoa, comentou-se que a denição desse termo gera controversas entre os pesquisadores e caracterizou-se a Névoa. Por m, a Seção 2.4 de-niu Blockchain, mostrou como essa tecnologia foi criada e descreveu o funcionamento da mesma.
3 Revisão do estado da arte:
aplicação de Computação em
Névoa à área da saúde
Neste trabalho optou-se por realizar uma revisão do estado arte sobre a utilização de Computação em Névoa na área da saúde, a mesma foi importante para ajudar os pesquisadores a terem uma compreensão geral de como esse paradigma estava sendo apli-cado a essa área. Desse modo, os pesquisadores tinham o intuito de entender como esse paradigma estava sendo utilizado na área médica e identicar desaos nesse campo de pesquisa.
3.1 Metodologia
Esta revisão do estado da arte foi baseada no método denido por Kitchenham e Char-ters (2007). Neste trabalho, o objetivo foi avaliar o estado da arte e identicar questões em aberto para a aplicação da Computação em Névoa à área da saúde.
3.1.1 Questões de pesquisa
Considerando o contexto desta revisão, foram pensadas questões de pesquisa bem abrangentes para que os pesquisadores pudessem ter uma compreensão geral de como a Computação em Névoa estava sendo aplicada à área da saúde. Logo, as Questões de Pesquisa (QP) pensadas foram:
• QP1 - O conceito de Computação em Névoa tem sido usado em que tipos de apli-cações na área da saúde?
• QP2 - Quais os grupos de doenças que os trabalhos de Computação em Névoa têm abordado?
• QP3 - Quais os tipos de pesquisa utilizados nos estudos de Computação em Névoa na área da saúde?
• QP4 - Quais as características fornecidas pelo paradigma Computação em Névoa são interessantes para aplicações na área da saúde?
• QP5 - Quais as motivações do uso de Computação em Névoa na área da saúde? • QP6 - Quais os desaos para a adoção de Computação em Névoa em soluções na
área da saúde?
3.1.2 Processo de seleção
O processo de seleção dos estudos foi feito na base de dados eletrônica Scopus1 da
Elsevier, a qual foi escolhida em virtude dela indexar os principais repositórios acadêmicos da área de Ciência da Computação e Engenharia. A Tabela 1 mostra exemplos de algumas bases que são indexadas pelo Scopus.
Tabela 1: Exemplos de bases indexadas pelo Scopus.
Base Endereço
ACM Digital Library https://dl.acm.org/
Elsevier https://www.elsevier.com/
IEEE Xplore http://ieeexplore.ieee.org/ Springer Link https://link.springer.com/
Fonte: autoria própria.
Para denir a String de Busca foram utilizados termos relacionados à Internet of Things, Health e Fog Computing, com o objetivo de obter o maior número de artigos que relacionassem essas três áreas. Ademais, o termo Edge Computing também foi incluído devido ao fato da OpenFog Consortium apontar que o uso do mesmo se confunde bastante com o de Fog Computing (CONSORTIUM et al., 2017). Assim, foi denida a seguinte String
de Busca:
(iot OR internet of things) AND (health) AND (fog computing OR fog networking OR fogging OR edge computing)
3.1.3 Critérios de inclusão e exclusão
Esta revisão incluiu estudos publicados em qualquer ano, em razão de se querer encon-trar o maior número de trabalhos possíveis relacionando IoT, Health e Fog. No entanto, foram excluídos trabalhos que:
• não estavam em inglês;
• não estavam disponibilizados por completo;
• focavam na área de Computação em Névoa, mas não em saúde; • focavam na área da saúde, mas não em Computação em Névoa.
3.1.4 Coleta de Dados
Conforme pode ser consultado no Apêndice A, os dados extraídos de todos os trabalhos foram: ano de publicação, autores, título, tipo da publicação, repositório de pesquisa e diferentes nomenclaturas utilizadas para se referir ao uso de tecnologias de informação e comunicação na área da saúde. Adicionalmente, para os trabalhos lidos cuidadosamente também coletou-se: objetivo, tipos de aplicações, grupos de doenças abordadas, categoria de pesquisa, arquitetura de Computação em Névoa usada no estudo, sensores utilizados, características, protocolos, motivação, desaos e oportunidades.
3.1.5 Validade do processo
Os estudos foram analisados durante três meses por dois pesquisadores para garantir a validade do processo. No entanto, o principal viés desta revisão é que as conclusões dela podem sofrer inuência da opinião deles, em virtude da subjetividade das tarefas do protocolo de trabalhos deste tipo.
3.2 Resultados
Esta seção resume os resultados desta revisão do estado da arte. Primeiramente, ela apresenta a execução dos estágios do processo de seleção na Seção 3.2.1. Por m, a Se-ção 3.2.2 mostra uma visão geral dos estudos selecionados neste trabalho.
3.2.1 Resultados da seleção
O processo de seleção dos trabalhos analisados nesta revisão do estado da arte é mostrado na Figura 6. Primeiramente, a String de Busca foi executada na base de da-dos Scopus, a qual retornou 42 documentos. Na fase 2 foram lida-dos os títulos, resumos e palavras-chave dos estudos retornados na fase 1 e selecionou-se 24 deles. Nesta etapa foram considerados os critérios de exclusão, descritos na Seção 3.1.3, para a realização do descarte dos outros 18 estudos. Por m, na fase 3 todos os trabalhos restantes foram lidos cuidadosamente, para cada um deles foi atribuído um identicador (ID) e foi feito o processo de coleta de dados mencionado na Seção 3.1.4. Esses trabalhos podem ser visualizados na Tabela 2 e mais detalhadamente no Apêndice B.
Figura 6: Fases do processo de seleção. Fonte: autoria própria.
Tabela 2: Estudos lidos cuidadosamente.
ID Autores
E1 (FARAHANI et al., 2018)
E2 (RAHMANI et al., 2018) E3 (SOOD; MAHAJAN, 2017)
E4 (DUPONT; GIAFFREDA; CAPRA, 2017)
E5 (LIMAYE; ADEGBIJA, 2017)
E6 (GIA et al., 2017)
E7 (SINGH et al., 2017)
E8 (ALI; GHAZAL, 2017) E9 (DISTEFANO et al., 2017)
E10 (KHAREL; REDA; SHIN, 2017)
E11 (AZIMI et al., 2016)
Tabela 2 continuação da página anterior.
ID Autores
E12 (BIBANI et al., 2016)
E13 (MASIP-BRUIN et al., 2016b)
E14 (CHAKRABORTY et al., 2016)
E15 (MAKSIMOVI, 2017)
E16 (KRAEMER et al., 2017) E17 (TCARENKO et al., 2016)
E18 (AHMAD et al., 2016)
E19 (NAWAZ; RINNER; FERRYMAN, 2016)
E20 (MASIP-BRUIN et al., 2016a)
E21 (NANDYALA; KIM, 2016)
E22 (GIA et al., 2015)
E23 (SHI et al., 2015) E24 (AAZAM; HUH, 2015)
Fonte: autoria própria.
3.2.2 Visão geral dos estudos
Na Figura 7 pode-se ver a distribuição dos artigos aceitos nesta revisão ao longo dos anos. Vale salientar que o protocolo desta revisão foi executado em outubro de 2017, por isso a quantidade de artigos a serem indexados em 2018 ainda era baixa. Além disso, mesmo sem limitar o ano para seleção de artigos, os estudos mais antigos aceitos neste trabalho foram de 2015, um possível motivo para isso é o fato do termo Computação em Névoa ter sido criado apenas em 2011 e esse paradigma ter demorado alguns anos para começar a ser considerado na área da saúde.
Como mostrado na Figura 8, mais da metade dos trabalhos foram coletados do reposi-tório da IEEE2. As bases Springer3 e Elsevier4 foram as outras duas mais representativas
para esta revisão, onde cada uma delas contribuiu com 12,5% dos estudos analisados neste trabalho. Além do mais, conforme exibido na Figura 9, os estudos analisados foram de dois tipos, onde a maioria foram publicações de conferência e os outros foram artigos de periódicos.
2http://ieeexplore.ieee.org/ 3http://www.springer.com/ 4https://www.elsevier.com/
Figura 7: Distribuição dos trabalhos ao longo dos anos. Fonte: autoria própria.
Figura 8: Distribuição dos trabalhos nos repositórios de pesquisa. Fonte: autoria própria.
Figura 9: Distribuição dos trabalhos por tipo de publicação. Fonte: autoria própria.
3.3 Respostas às questões de pesquisa
Nesta seção são respondidas as questões de pesquisa desta revisão do estado da arte e depois outros achados obtidos são mostrados.
3.3.1 O conceito de Computação em Névoa tem sido usado em
que tipos de aplicações na área da saúde?
Para responder esta questão de pesquisa foi usada a categorização de aplicações de-nida por Olla e Shimskey (2015), essa classicação foi escolhida por ela ser bastante utilizada em pesquisas acadêmicas para categorizar aplicações de saúde. Esse trabalho dene oito categorias para aplicações de saúde. Porém, foram identicadas apenas três dessas categorias nos estudos analisados nesta revisão, como mostrado na Figura 10, as quais foram:
• Monitoramento do Paciente - usam uma combinação de tecnologias para per-mitir o monitoramento de pacientes;
• Monitoramento do Ambiente - coletam informações sobre fatores ambientais que podem afetar a saúde das pessoas;
• Educação e Referência - aplicações que educam pacientes sobre hábitos saudáveis.
Figura 10: Porcentagem por tipo de aplicação. Fonte: autoria própria.
Desse modo, identicou-se que 15 estudos abordavam aplicações de saúde, sendo que a maioria abordava questões de monitoramento, seja de pacientes (78,9%) ou do ambiente
(15,8%). Um motivo para isso pode ser o fato de que aplicações para monitoramento na área da saúde serem muito sensíveis a latência, característica essa que motiva a adoção do paradigma de Computação em Névoa. Já os outros cinco grupos de aplicações possi-velmente não apareceram, em virtude deles não serem tão sensíveis quanto a questão de baixa latência. A Tabela 3 mostra os estudos classicados em cada tipo de aplicação.
Tabela 3: Classicação dos estudos em cada tipo de aplicação.
Tipo de aplicação Estudos
Monitoramento do paciente E1, E2, E3, E6, E7, E8, E9, E10, E11,E12, E13, E17, E18, E19 e E20 Monitoramento do ambiente E3, E13 e E18
Educação e referência E3
Fonte: autoria própria.
3.3.2 Quais os grupos de doenças que os trabalhos de
Computa-ção em Névoa têm abordado?
Dez trabalhos analisados nesta revisão respondiam esta questão de pesquisa. Assim, os mesmos foram organizados conforme a classicação internacional de doenças proposta pela OMS (2017a). A Tabela 4 mostra a classicação desses estudos nos grupos identicados.
Tabela 4: Classicação dos estudos em cada grupo de doenças.
Grupo de doenças Estudos
Doenças do sistema circulatório E1, E6, E8, E11, E14 e E22 Doenças do sistema respiratório E13 e E20
Doenças do sistema nervoso E1
Certas doenças infecciosas ou parasitárias E3
Códigos de extensão E2
Fonte: autoria própria.
Na Figura 11 pode-se ver que os grupos mais abordados nos trabalhos foram o de doenças do sistema circulatório e doenças do sistema respiratório. Os estudos que ex-ploraram esses dois grupos de doenças utilizavam a frequência cardíaca ou respiratória dos pacientes no intuito de identicar situações que colocassem em risco a saúde dessas pessoas. Desse modo, esses softwares precisavam identicar medidas anormais para esses dados no exato momento em que eles eram coletados. Assim, a predominância desses gru-pos deve ocorrer em virtude do paradigma Computação em Névoa se caracterizar pela forte presença de aplicações em tempo real, conforme mencionado por Chakraborty et al. (2016).
Figura 11: Quantidade por grupo de doenças. Fonte: autoria própria.
3.3.3 Quais os tipos de pesquisa utilizados nos estudos de
Com-putação em Névoa na área da saúde?
Todos os trabalhos analisados nesta revisão foram classicados por tipo de pesquisa conforme a categorização proposta por Wieringa et al. (2006). Essa classicação é dividida em seis grupos, mas os trabalhos utilizados nesta revisão se encaixavam em apenas quatro deles:
• Artigos Filosócos - mostra o estudo como uma taxonomia ou framework concei-tual;
• Proposta de Solução - propõe uma solução, mas não tem uma validação completa da mesma;
• Pesquisa de Validação - investiga uma proposta de solução que ainda não foi colocada na prática;
• Pesquisa de Avaliação - soluções implementadas e completamente investigadas na prática.
A Tabela 5 mostra a classicação dos estudos analisados em cada tipo de pesquisa. Com a Figura 12 percebe-se que a maioria dos trabalhos são das categorias Proposta de Solução e Pesquisa de Validação, o que indica que eles ainda não têm sido testados em ambientes reais e/ou com pacientes reais. Esse fato mostra a necessidade do desenvolvi-mento de mais estudos que testem suas técnicas em situações reais, para assim conrmar
se a Computação em Névoa é realmente uma abordagem adequada para aplicações de cuidados com a saúde.
Tabela 5: Classicação dos estudos por tipo de pesquisa.
Tipo de pesquisa Estudos
Artigos losócos E16 e E23
Proposta de solução E4, E7, E8, E9, E10, E12, E14, E15, E19, E20 e E21 Pesquisa de validação E2, E3, E5, E6, E11, E13, E17, E18, E22 e E24 Pesquisa de avaliação E1
Fonte: autoria própria.
Figura 12: Quantidade por tipo de pesquisa. Fonte: autoria própria.
3.3.4 Quais as características fornecidas pelo paradigma
Compu-tação em Névoa são interessantes para aplicações na área
da saúde?
A Tabela 6 mostra a quantidade de trabalhos que utilizam cada uma das característi-cas da camada de Névoa, as quais foram descritas na Seção 2.3. Como se pode ver, baixa latência e forte presença de streaming e aplicações de tempo real aparecem entre as mais abordadas, em virtude dos sistemas de saúde necessitarem de respostas rápidas sobre o es-tado de saúde dos pacientes, reduzindo os riscos de que eles venham a enfrentar problemas mais graves. Além disso, outra característica que se destaca é a relacionada a segurança e privacidade, pois os dados dos pacientes são informações sensíveis e a utilização dos mesmos está ligada a várias questões éticas, legais e de segurança.
Tabela 6: Características abordadas nos trabalhos
Característica Quant. Estudos
Baixa latência 16 E1, E3, E5, E7, E8, E9, E11, E12, E13,
E14, E15, E16, E20, E21, E22 e E24 Segurança e privacidade 13 E1, E2, E5, E6, E7, E8, E15, E16,
E17, E18, E19, E20 e E21 Forte presença de streaming
e aplicações de tempo real 12
E2, E3, E7, E8, E10, E13, E14, E15, E20, E21, E22 e E24
Redução do tráfego na rede 7 E2, E3, E4, E15, E16, E22 e E23 Consciência da localização 5 E8, E14, E16, E22 e E24
Heterogeneidade 5 E1, E14, E15, E18 e E22
Interoperabilidade 5 E1, E2, E7, E15 e E22
Armazenamento e processamento 5 E1, E5, E6, E13 e E23
Suporte à mobilidade 4 E2, E7, E8 e E14
Distribuição geográca 3 E1, E14 e E22
Eciência energética 3 E2, E16 e E17
Grande número de nós 2 E8 e E14
Predominância de acesso sem o 2 E8 e E14 Fonte: autoria própria.
3.3.5 Quais as motivações do uso de Computação em Névoa na
área da saúde?
A motivação que mais apareceu nos trabalhos é a de que aplicações de saúde precisam trabalhar com baixa latência, a mesma é citada em nove estudos desta revisão (E1, E5, E9, E12, E13, E20, E21, E23 e E24). Em seguida, vem a necessidade de análise e tomada de decisão em tempo real para aplicações de saúde, a qual apareceu em seis estudos (E3, E5, E6, E7, E15 e E19).
Logo após essa, a necessidade de redução da transmissão de dados entre usuários e servidores é citada em quatro trabalhos (E3, E15, E18 e E22). Também abordada em quatro artigos (E4, E16, E18 e E19) aparece a menção a vulnerabilidades relacionadas à segurança e privacidade dos dados dos pacientes quando utilizada soluções em Nuvem para aplicações de saúde.