Вы находитесь на странице: 1из 31

Ministerio de Salud

Dirección de Tecnologías de Información y


Comunicaciones
Dirección Nacional de Primer Nivel de Atención

Documento del módulo de sincronización entre


dispositivos móviles, dispositivos móviles y el servidor
local, servidor local y servidor central.
Sistema SIAP Web-Móvil.

Versión 1.5

San Salvador, Junio 26 de 2019


Historial de Versiones.
Versión Descripción de Versión (cambios realizados) Responsable Fecha
1.0 Marco Teórico, Solución Propuesta y Diagramas de Solución. INFOLOGIC 18/06/2019
1,5 Cambios en redacción de títulos, párrafos y referencias. INFOLOGIC 26/06/2019
DTIC - MINISTERIO DE SALUD

ÍNDICE

1 INTRODUCCIÓN.....................................................................................................1
2 OBJETIVOS.............................................................................................................2
2.1 Objetivo General............................................................................................................................................... 2
2.2 Objetivos Específicos........................................................................................................................................ 2
3 MARCO TEÓRICO...................................................................................................3
3.1 Wifi-Direct.......................................................................................................................................................... 3
3.1.1 Antecedentes............................................................................................................................................ 3
3.1.2 Descripción Técnica................................................................................................................................. 3
3.1.3 Ventajas y Desventajas............................................................................................................................ 4
3.2 USB-Wifi............................................................................................................................................................. 6
3.2.1 Antecedentes............................................................................................................................................ 6
3.2.2 Descripción Técnica................................................................................................................................. 6
3.2.3 Ventajas y Desventajas............................................................................................................................ 7
3.3 JSON................................................................................................................................................................... 9
3.3.1 Antecedentes............................................................................................................................................ 9
3.3.2 Descripción Técnica................................................................................................................................. 9
3.3.3 Ventajas y Desventajas.......................................................................................................................... 11
3.4 JWT................................................................................................................................................................... 12
3.4.1 Antecedentes.......................................................................................................................................... 12
3.4.2 Descripción Técnica............................................................................................................................... 12
3.4.3 Ventajas y Desventajas.......................................................................................................................... 13
4 PLANTEAMIENTO DE LA SOLUCIÓN......................................................................15
4.1 Sincronización entre Dispositivos Móviles................................................................................................... 15
4.2 Dispositivo Móvil-Servidor Local................................................................................................................... 18
4.3 Servidor Local-Servidor Central.................................................................................................................... 18
4.3.1 Con Conectividad................................................................................................................................... 18
4.3.2 Sin Conectividad..................................................................................................................................... 19
4.4 Diagramas de Solución Propuesta............................................................................................................... 20
4.4.1 Diagrama de Solución en Sede............................................................................................................. 20
4.4.2 Diagrama de Solución en Terreno........................................................................................................ 21

Módulo de Sincronización SIAP Web-Móvil


DTIC - MINISTERIO DE SALUD

4.4.3 Diagrama de Solución: Sincronización................................................................................................. 22


4.4.4 Diagrama de Solución: Sincronización entre Dispositivos Móviles...................................................23
4.5 Diagramas BPMN........................................................................................................................................... 24
4.5.1 Sincronización entre Dispositivos Móviles, Dispositivos Móviles y el Servidor Local......................24
4.5.2 Sincronización entre Servidor Local, Dispositivos Móviles y Servidor Central................................25
4.5.3 Servidor Central-Servidor-Local............................................................................................................ 26
5 BIBLIOGRAFÍA......................................................................................................27
5.1 Páginas Web.................................................................................................................................................... 27

Módulo de Sincronización SIAP Web-Móvil


Introducción.

DTIC - MINISTERIO DE SALUD

1 Introducción.

El presente documento tiene como propósito, mostrar la definición y funcionamiento del “Módulo
de Sincronización entre Dispositivos Móviles, Dispositivos Móviles y Servidor Local, Servidor Local y Servidor
Central” para la consultoría “CONTRATACIÓN DE SERVICIOS DE CONSULTORÍA PARA EL ANÁLISIS, DISEÑO,
DESARROLLO Y PILOTAJE DEL EXPEDIENTE CLÍNICO ELECTRÓNICO PARA DISPOSITIVOS MÓVILES DEL
MINSAL” y definido como “Sistema Integral de Atención al Paciente - SIAP Móvil”, partiendo de los
requerimientos y parámetros establecidos en el análisis y diseño de la solución informática, mencionando el
marco teórico que fundamenta el módulo de sincronización, así como el planteamiento de la solución y
respectivos diagramas que expliquen a detalle el funcionamiento del módulo tanto en Sede como En
terreno de manera Online y Offline.

Para la realización del módulo de sincronización, se utilizará la tecnología de Wifi-Direct, la cual


permite la conectividad entre dispositivo móviles sin internet, como si estuviese conectado a internet. Esta
tecnología brinda la posibilidad de crear un punto de acceso inalámbrico sin necesidad de una conexión a
internet con las siguientes características como: soporte para crear y mantener una red inalámbrica,
comunicación entre dispositivos en la red y controlar la conexión/desconexión de la red.

La seguridad es parte esencial en la protección de los datos tanto de la información como de la


persona que maneja el dispositivo móvil, por lo cual, una ventaja principal y a la vez limitante, es la
conectividad 1 a 1, en otras palabras, en cada conexión, solo pueden interactuar dos dispositivos a la vez,
permitiendo mayor seguridad y consistencia en la información y evitando que se reemplace o se pierda en
el transcurso de la atención.

Por ello, en el presente documento conoceremos a fondo, el origen, funcionamiento, ventajas y


desventajas que ofrece la tecnología de Wifi-Direct, así como una propuesta de solución para el uso del SIAP
en sede y terreno, tanto de forma Online como Offline, así como su explicación y representación en
Diagramas que permitan tener mayor claridad en cuanto al funcionamiento de los procesos.

Módulo de Sincronización SIAP Web-Móvil


1
Objetivos

DTIC - MINISTERIO DE SALUD

2 Objetivos

2.1 Objetivo General

Crear un mecanismo de intercambio de información entre dispositivos móviles, dispositivo móvil y el


servidor local y entre servidor local y central, que permita el intercambio de datos de las atenciones
brindadas y capturadas a través de los dispositivos móviles con el Sistema de Atención de Pacientes (SIAP –
Web).

2.2 Objetivos Específicos

➢ Diseñar los flujos y procesos que requiera la tecnología Wifi-Direct, USB-Wifi, JSON y JWT para ser
aplicada en el proceso de atención, el cual contemple la seguridad, integridad y protección de la
información de los pacientes.

➢ Desarrollar el mecanismo de intercambio de información entre dispositivos móviles, dispositivo


móvil y servidor local, servidor local y servidor central, con el fin de facilitar el proceso de atención
médica.

➢ Realización de pruebas en cuanto al funcionamiento y capacidades de la tecnología de Wifi-Direct


(entre dispositivos móviles), USB-Wifi (dispositivos móviles y servidor local), JSON y JWT (Servidor
Local y Servidor Central).

➢ Elaboración de documentación técnica para comprender el funcionamiento y operatividad del


módulo de sincronización entre dispositivos móviles, dispositivos móviles y servidor local, servidor
local y servidor central.

Módulo de Sincronización SIAP Web-Móvil


2
Marco Teórico

DTIC - MINISTERIO DE SALUD

3 Marco Teórico

3.1 Wifi-Direct
3.1.1 Antecedentes
Wifi-Direct, fue llamado inicialmente Wifi P2P, el cual es un estándar de Wifi que permite a los
dispositivos conectarse sin problemas entre si, sin necesidad de un punto de acceso inalámbrico, siendo así,
que dos dispositivos establezcan una conexión Wifi directa sin necesitas de un enrutador inalámbrico.
(Wikipedia, 2019c)1

Wifi-Direct es una certificación que provee la Wi-Fi Alliance, incluyendo a marcas como Apple, Intel,
Dell entre otras, la cual permite que dispositivos como tabletas, computadoras entre otras, sean
compatibles y no exista limitante de conectividad por marca.(McCourt, 2019)2

Wifi-Direct nace como segunda opción o generación de Wifi como tal, permitiendo que los
dispositivos tenga su propia conectividad, creando una red inalámbrica entre estos. Este funcionamiento es
similar al Bluetooth, con la diferencia primordial en velocidad de transferencia y el rango de alcance para el
envió de archivos y comunicación.

3.1.2 Descripción Técnica


Las redes Wifi convencionales, se basan generalmente en la presencia de dispositivos controladores
conocidos como puntos de acceso inalámbrico. Estos dispositivos combinan tres funciones primarias

➢ Soporte físico para redes inalámbrica y por cable.

➢ Puente y enrutamiento entre dispositivos en la red.

➢ Servicio de aprovisionamiento para añadir y remover dispositivos de la red.


El proceso para el intercambio de archivos es relativamente sencillo y similar al Bluetooth. Ambos
dispositivos deben de ser compatibles con Wifi-Direct, en el cual cada uno identifique a otros dispositivos,
para posteriormente, establecer la conexión y enviar archivos entre estos.

En el caso que no sean compatibles los dispositivos, se pueden utilizar herramientas de terceros
para realizar el mismo proceso antes mencionado y deben poseer como mínimo, Android 4.0 o superior.

1 Wikipedia. (2019c). Wi-Fi Direct. En Wikipedia. Recuperado de https://en.wikipedia.org/w/index.php?title=Wi-


Fi_Direct&oldid=895692026
2 McCourt, D. (2019). What is Wi-Fi Direct and how do you use it on Android? Recuperado 17 de junio de 2019, de
AndroidPIT website: https://www.androidpit.com/what-is-wifi-direct

Módulo de Sincronización SIAP Web-Móvil


3
Marco Teórico

DTIC - MINISTERIO DE SALUD

A mayor detalle se describe a continuación el funcionamiento de Wifi-Direct:

➢ Wifi-Direct integra esencialmente un punto de acceso habilitado por software, el cual habilita en un
dispositivo o computadora que no ha sido diseñado para ser enrutador a un punto de acceso
inalámbrico, por lo que crea un enrutador virtual en cualquier dispositivo que sea compatible con
Direct.

➢ El Punto de acceso proporciona una versión de la configuración protegida de Wifi al momento de la


configuración.

➢ Cuando un dispositivo entra en el rango del host de Wifi-Direct, este se puede conectar a él y
obtener la información utilizando un estilo de configuración protegida de transferencia.

➢ La conexión y configuración se simplifica tanto que reemplaza al Bluetooth en algunas situaciones.

➢ En caso sea necesario, se puede configurar el método de seguridad a utilizar cuando se comparta
información, utilizando el estándar WPA2 y todas sus características que permite el control de
acceso al momento de incorporarse nuevos dispositivos.

➢ Al momento de establecer la conexión, solamente se conectarán dos dispositivos a la vez, siendo


ventaja en seguridad e integridad de la información pero limitado en la cantidad de dispositivos
conectados.

➢ Posteriormente, hasta que el dueño o uno de los dispositivos decida terminar la conexión,
solamente cancela o finaliza el proceso de Wifi-Direct y queda la posibilidad de conectarse con otro
dispositivo que se encuentre en la cercanía o dentro del rango.

3.1.3 Ventajas y Desventajas


Algunas ventajas que ofrece Wifi-Direct son:

➢ Conectividad Inalámbrica directa

Es una ventaja primordial, el hecho que la conectividad es directa, aunque se base en los estándares
de conectividad que utilizan las redes Wifi o WLAN, ya que establecer conectividad no requiere de
un punto de acceso o enrutador inalámbrico, además que no requiere de internet para su
funcionamiento.

➢ Aplicaciones flexibles y versátiles

A pesar que funciona de manera similar con el Bluetooth, los dispositivos con esta tecnología son
capaces de conectarse directamente entre si para transferir datos, sincronizar entre otras
actividades a fines de interconexión.

Módulo de Sincronización SIAP Web-Móvil


4
Marco Teórico

DTIC - MINISTERIO DE SALUD

➢ Tasa de Transferencia de datos mejorada y más rápida

La velocidad de transferencia en comparación al Bluetooth es mayor, debido a que posee una tasa
de transferencia de hasta 250 Mbps, mientras que la velocidad del Bluetooth es de 25 Mbps.
Además, es comparable la distancia máxima de ambos, puesto que de Wifi-Direct es de
aproximadamente de 200 metros y de Bluetooth es de 60 metros.

➢ Compatible con dispositivos Wifi Heredados

Wifi-Direct es compatible con versiones anteriores de este, por lo que se puede conectar con
dispositivos Wifi heredados o aquellos que no posean por medio de aplicaciones de terceros.

➢ Conectividad Segura

Las conexiones establecidas a través de Wifi-Direct, está protegidas por el protocolo de seguridad
WPA2 y su certificación, evitando que cualquier usuario se conecte de forma aleatoria, ya que esta
metodología utiliza métodos de autenticación y cifrado similares a Bluetooth.

Algunas desventajas que ofrece Wifi-Direct son:

➢ Más lento que la conectividad por cable

Una considerable desventaja es la velocidad de transferencia comparada con una conexión


cableada, puesto que interfaces como USB 3.0 entre otras, ofrecen mejor y rápida velocidad de
transferencia comparada con Wifi-Direct y otras tecnologías inalámbricas.

➢ Problemas de conectividad por la compatibilidad entre dispositivos

El problema persiste cuando se requiere conectar más de dos dispositivos a la vez, ya que el
problema es en dispositivos de distintos fabricantes, siendo más problema técnico que la
implementación de estos en los dispositivos.

➢ Consumo de energía y eficiencia energética elevada

Debido a que Wifi-Direct trabaja a una frecuencia de 2.4 GHz, este consume más electricidad que
otras tecnologías como Bluetooth o NFC.

➢ Vulnerabilidades de seguridad

Debido a que utiliza protocolos como WPA, siempre se requiere de un PIN de 8 dígitos, pero este
queda sujeto a ataques de fuerza bruta, el cual puede ser violentado de forma rápida.(Ivankov,
2018)3

3 Ivankov, A. (2018, agosto 22). Advantages and Disadvantages of Wi-Fi Direct. Recuperado 17 de junio de 2019, de
Profolus website: https://www.profolus.com/topics/advantages-and-disadvantages-of-wi-fi-direct/

Módulo de Sincronización SIAP Web-Móvil


5
Marco Teórico

DTIC - MINISTERIO DE SALUD

3.2 USB-Wifi
3.2.1 Antecedentes
Comúnmente se quiere de un enrutador inalámbrico, que transmita señales por aire a dispositivos
que requieran con tarjetas de red inalámbrica o adaptadores, por lo que mediante Wifi, los usuarios pueden
conectarse a internet desde cualquier parte dónde se encuentren. Existen enrutadores de doble banda e
individuales, siendo el primero, más rápido en conectividad a internet, pero estos necesitan estar
conectados para proveer dicha conectividad, por lo cual, existe otra alternativa conocida como USB-Wifi.
(Ebay, 2019)4

Los adaptadores USB-Wifi realizan la misma función que un enrutador inalámbrico, con la diferencia
que estos no necesitan cable y son de fácil instalación, aunque una desventaja es que estos necesitan
obligatoriamente un puerto USB y algunos son tan grandes que bloquean los puertos adyacentes a este.

3.2.2 Descripción Técnica


Los adaptadores utilizan el estándar 802.11ac, el cual utiliza la banda de 2.4GHz, aunque existan
otros que permiten también la banda de 5GHz pero dependerá del tipo y el propósito que tenga para su
utilidad, además, estos pueden ser duales o de canal simple. (Demuro, 2015)5

Como lo es en este caso, el adaptador a utilizar será un “Lynx 301 Wireless-N USB 2.0 Adapter” para
el módulo de sincronización entre Dispositivos Móviles y el Servidor Local.

A continuación se describe el funcionamiento del adaptador USB-Wifi:

➢ Dependiendo del tipo de adaptador, este se instalará con el controlador adjunto al dispositivo que
por lo general, viene en un CD o en otros casos, el adaptador se instalará automáticamente en
nuestros equipos y dependerá también del sistema operativo de estos, sea Windows o Linux, este
último por lo general, se descargan los controladores acorde a la distribución de Linux a utilizar. En
este caso, se utiliza una distribución de Debian 8.0 “Jessie”.

➢ Una vez instalado, lo siguiente es configurar una ip estática a la tarjeta de red, además de un
servidor DHCP que permita proveer direcciones IP a los dispositivos que se conectarán.

4 Ebay. (2019, agosto 18). 5-Benefits-of-Using-a-USB-Wi-Fi-Adapter-. Recuperado 17 de junio de 2019, de eBay website:
https://www.ebay.co.uk/gds/5-Benefits-of-Using-a-USB-Wi-Fi-Adapter-/10000000177629199/g.html
5 Demuro, J. (2015). USB Wi-Fi Adapter 101 - What It Is and How It Works. Recuperado 17 de junio de 2019, de https://
www.tomshardware.com/reviews/usb-wifi-adapter-guide,4108.html#p2

Módulo de Sincronización SIAP Web-Móvil


6
Marco Teórico

DTIC - MINISTERIO DE SALUD

➢ Para finalizar, se configura un Hostapd con el cual, el dispositivo usb se convertirá en un punto de
acceso para los dispositivos que deseen comunicarse con el equipo o servidor dónde se encuentre
instalado. Una vez realizado esto, nuestro dispositivo USB-Wifi estará listo para ser utilizado.

El dispositivo USB-Wifi servirá como punto de acceso para las tabletas que contendrán precargados
los Expedientes Clínicos de los pacientes a los cuales se brindará la Atención Médica.

A continuación se explica a detalle el uso del dispositivo tanto para Intramural como para
Extramural.

➢ Atención Intramural:

El servidor local contendrá el sistema SIAP, el cual posee los Expedientes Clínicos de los pacientes
que recibirán Atención Médica. Durante la Atención Médica, los usuarios (sea Enfermera, Médico u
otro), estarán conectados hacia el servidor Local (equipo o laptop con el sistema SIAP), extrayendo
expedientes, creando historias clínicas, completando formularios entre otras actividades. Por lo
cual, toda la información al finalizar las consultas y atenciones, quedará en el servidor local y los
dispositivos Móviles, solo servirán como medio para realizar sus actividades y llenar historias
clínicas, formularios entre otros.

➢ Atención en Extramural:

El servidor local contendrá el sistema SIAP, el cual posee los Expedientes Clínicos de los pacientes
que recibirán Atención Médica, con la diferencia que este, precargará los dispositivos móviles con
los Expedientes Clínicos de los pacientes que serán atendidos.

A diferencia de la atención en Intramural, el servidor local en este caso, solo servirá para recibir la
información que los usuarios han obtenido de la atención en Terreno a través del USB-Wifi.

3.2.3 Ventajas y Desventajas


Algunas ventajas que ofrece los adaptadores USB-Wifi son:

➢ Libera al usuario de los cables de la computadora

Elimina la necesidad de cablear la computadora a un enrutador o dispositivo de red. Este recibe


señales de un enrutador inalámbrico y traduce la señal para que el usuario de la computadora,
pueda acceder a internet en cualquier momento.

Módulo de Sincronización SIAP Web-Móvil


7
Marco Teórico

DTIC - MINISTERIO DE SALUD

➢ Elimina la necesidad de instalar hardware interno

La mayoría de las personas, no están familiarizadas con periféricos como tarjetas de red físicas, por
lo que si estos se instalan en un dispositivos, pueden perjudicar la tarjeta de red o la computadora
en si. Por lo que un adaptador USB-Wifi solo se conecta a un puerto USB y esté listo para su uso.

➢ Elimina la necesidad de ejecutar cables

Antes se tenía que estar cerca de una fuente de internet, sea por línea telefónica o salida de cable,
por lo que la computadora tenía que estar conectada a través de cable Ethernet, haciendo imposible
tener la computadora, lejos de la fuente. Esto se solventa con el dispositivo USB, el cual dos o más
usuarios pueden conectarse a un adaptador en vez de estar enchufados a la fuente y sin posibilidad
de movilidad o trasladarse a otra área.

➢ Elimina la necesidad de actualizar una computadora

Elimina la necesidad que el usuario deba adquirir otro equipo mejor, con mayores capacidades para
la conectividad. Esto se solventa con la adquisición de un dispositivos USB-Wifi, siendo la forma más
económica de actualizarse sin necesidad de comprar otra computadora.

➢ Puede ser utilizado en múltiples dispositivos

La ventaja principal y primordial, es que más de dos usuarios pueden conectarse más de dos
dispositivos a la vez con un solo dispositivo USB-Wifi, por lo cual puede ser utilizado en cualquier
parte dónde se utilice. Por lo que es fácil de montar/desmontar y ser utilizado en otro equipo. (Ebay,
2019)6

Algunas desventajas que ofrece los adaptadores USB-Wifi son:

➢ Tipo de Materiales

Debido al tipo de material por ser económico, la mayoría de dispositivos están hecho de plástico y
por ello, tiende a ser necesario adquirir uno de mayor gama o de mejor calidad, además que por ser
pequeño el dispositivo, puede resultar perdido y tener que adquirir otro.

➢ Puertos USB

La mayoría de dispositivos son tan grandes que abarca el espacio adyacente de los puertos USB, por
lo que es recomendable tener un solo puerto dedicado para este.

6 Ebay. (2019, agosto 18). 5-Benefits-of-Using-a-USB-Wi-Fi-Adapter-. Recuperado 17 de junio de 2019, de eBay website:
https://www.ebay.co.uk/gds/5-Benefits-of-Using-a-USB-Wi-Fi-Adapter-/10000000177629199/g.html

Módulo de Sincronización SIAP Web-Móvil


8
Marco Teórico

DTIC - MINISTERIO DE SALUD

➢ Compatibilidad de Versiones de Puertos USB

Es recomendable que la versión del puerto USB sea compatible con el dispositivo, para evitar
problemas o ralentización de conectividad, si es USB 2.0 conectarse a un puerto de al misma
versión, ya que varía la velocidad de transferencia entre versiones de USB.(Vines, 2017)7

3.3 JSON
3.3.1 Antecedentes
JavaScript Object Notation (JSON) es un estándar abierto de formato de archivo que utiliza texto
legible para transmitir objetos de datos consistentes en pares de atributo-valor y tipo de datos de matriz. Se
utiliza comúnmente en comunicación asíncrona entre el navegador y el servidor.

Este surgió de la necesidad de un protocolo de comunicación sin estado de servidor a navegador en


tiempo real, sin utilizar complementos como Flash o Applets de JAVA. Además, es independiente del idioma,
es derivado de JavaScript pero se utiliza en muchos lenguajes de programación para generar y analizar
datos en formato JSON.(Wikipedia, 2019a)8

3.3.2 Descripción Técnica


La función principal de un archivo JSON, es de almacenar la información tanto atributo-valor como
matrices de datos. Dando la posibilidad de cargar datos de forma rápida y asíncrona o en segundo plano sin
ralentizar el sistema. (Azzola, 2013)9

En el caso del presente proyecto, los archivos JSON se utilizarán con el objetivo de crear archivos
que contengan la información de los expedientes clínicos de los pacientes, los cuales se sincronizará del
servidor local hacia los dispositivos móviles para precargarlos con los expedientes y de los dispositivos
móviles hacia el servidor local, para almacenar la información obtenida de los pacientes durante la atención
médica.

7 Vines, C. (2017, noviembre 18). What are the pros and cons of using a USB wifi adapter? - Quora. Recuperado 17 de
junio de 2019, de https://www.quora.com/What-are-the-pros-and-cons-of-using-a-USB-wifi-adapter
8 Wikipedia. (2019a). JSON. En Wikipedia. Recuperado de https://en.wikipedia.org/w/index.php?
title=JSON&oldid=902013468
9 Azzola, +Francesco. (2013, octubre 28). Android JSON Tutorial: Create and Parse JSON data. Recuperado 17 de junio
de 2019, de Java Code Geeks website: https://www.javacodegeeks.com/2013/10/android-json-tutorial-create-and-
parse-json-data.html

Módulo de Sincronización SIAP Web-Móvil


9
Marco Teórico

DTIC - MINISTERIO DE SALUD

A continuación se describe a detalle el funcionamiento de los archivos JSON:

Servidor Local a Dispositivo Móvil

➢ Mediante funciones de PHP (como json_encode() y JSON.parse()), se hará la creación de


archivos .json, los cuales contendrá la información provista por la base de datos del SIAP APP Local.
Luego se enviarán a través del módulo de sincronización, mediante el dispositivo USB-Wifi hacia el
dispositivo móvil, para que los usuarios realicen sus actividades brindando la atención médica a los
pacientes.

➢ El dispositivo móvil contendrá en su SIAP APP, el mecanismo para lectura y escritura de los datos
contenidos en los archivos .json, para ser almacenados en una base de datos SQLite, la cual se
visualizará en la tableta al usuario y posteriormente, brindar la atención médica, creando historias
clínicas nuevas entre otras actividades.

Dispositivo Móvil a Servidor Local

➢ Para la escritura, lectura y creación de archivos JSON, SIAP APP Móvil, se puede realizar de varias
formas, como utilizar librerías json.org, librerías open source como Gson, o clases propias de
Android como lo son JsonWriter y JsonReader. Mediante esto, se creará el archivo JSON que se
enviará mediante Wifi-Direct entre tabletas para darle continuidad a la atención médica.

➢ Una vez finalizada la atención, la información se enviará hacia el Servidor Local mediante
conectividad del USB-Wifi, para que el sistema SIAP APP Local, reciba, lea y almacene la información
que se obtuvo mediante la atención Integral.

➢ En la base de datos del SIAP APP Local, se utilizarán procedimientos y funciones que permitan
almacenar los datos provisto por los archivos de los dispositivos móviles.

Esta tecnología será utilizada en caso no exista conectividad del Servidor Local hacia el Servidor
Central, por lo que el archivo .json, deberá ser trasladado mediante un dispositivo USB, para que el sistema
la lea y almacene la información a su base de datos.

Módulo de Sincronización SIAP Web-Móvil


10
Marco Teórico

DTIC - MINISTERIO DE SALUD

3.3.3 Ventajas y Desventajas


Algunas ventajas de los archivos JSON son:

➢ Rapidez

La sintaxis de JSON es muy fácil de utilizar, por lo que su sintaxis proporciona un fácil análisis de los
datos y rápida ejecución de estos. La razón de esto, es porque su sintaxis es pequeña y liviana,
dándo respuestas más rápidas.

➢ Soporte de Esquema

JSON posee una amplia gama de compatibilidades con los distintos sistemas operativos, por lo que
aplicaciones con codificación JSON, no requiere de mucho esfuerzo para que sea compatible con el
navegador.

➢ Servidor de Análisis

En el lado del servidor, el análisis es parte importánte para los desarrolladores, si estos desean que
sea rápido, entonces el usuario obtendrá su respuesta de forma rápida, por lo que en este caso, el
análisis de JSON de lado del servidor es un punto fuerte para utilizalo de lado del servidor.

➢ Herramienta para Compartir Datos

JSON es la mejor herramienta para compartir datos de cualquier tamaño, incluso audio, video entre
otros. Esto se debe a que JSON almacena los datos en matrices, facilitando la transferencia de datos.
Por ello, JSON es un formato de archivo superior para las Web API y desarrollo Web.

Algunas desventajas de los archivos JSON son:

➢ Manejo de Errores

JSON no posee manejador de errores, puesto que si se realiza una inserción o lectura de scripts de
una función, esta se llamará y se obtendrá siempre una respuesta. Algo similar a la lectura de
archivos en C.

➢ Utilización con Servicios de Confianza

Es peligroso utilizar servicios que no son de confianza con JSON, por que siempre devuelve una
respuesta, sea como sea, JSON devuelve una respuesta JSON envuelta en una llamada de función,
que será ejecutada por el navegador, dándo como resultado, a la disponibilidad de ser hackeado y
alojar o vulnerar la seguridad de los datos.(Sharma, 2014)10

10 Sharma, R. (2014, noviembre 21). JSON - its advantages and disadvantages. Recuperado 17 de junio de 2019, de
ezeelive.com website: https://ezeelive.com/json-advantages-disadvantages/

Módulo de Sincronización SIAP Web-Móvil


11
Marco Teórico

DTIC - MINISTERIO DE SALUD

3.4 JWT
3.4.1 Antecedentes
JSON Web Token (JWT) es un estándar abierto que define de forma compacta y autónoma para
transmitir de forma segura información entre las partes como un objeto JSON. Esta información puede ser
verificada y confiable porque está firmada digitalmente. Los JWT se pueden firmar usándo una llave secreta
(usándo el algoritmo HMAC) o una pública/privada utilizando RSA o ECDSA.

Los tokens pueden verificar la integridad de las reclamaciones que contiene, mientras que los
tokens encriptados ocultan las reclamaciones en otras partes. Cuando los tokens firmados utilizan pares de
claves pública/privada, la firma certifica que solo la parte que posee la clave privada, es la que la firmó.
(auth0.com, s. f.)11

3.4.2 Descripción Técnica


JSON se compone de tres partes:

1) Encabezado (Header): Identifica que algoritmo se utiliza para generar la firma. Algunos algoritmos
criptográficos utilizados son: HMAC con SHA-256, RSA con SHA-256 y JWA (JSON Web Algorithms).

2) Carga útil (Payload): Información que se almacena dentro del JWT. La especificación JWT define siete
nombres de reclamación registrados que son los campos estándares comúnmente incluidos en los
tokens.

3) Firma (Signature): Valida el token de forma segura, calculando la firma con la codificación del
encabezado y la carga útil utilizando la codificación Base64url, concatenando la firma y la carga
separado por un signo “+”. Luego se ejecuta a través del algoritmo criptográfico especificado en el
encabezado, como por ejemplo: HMAC-SHA256.(Wikipedia, 2019b)12

Esta tecnología será utilizada en caso exista conectividad del Servidor Local hacia el Servidor Central,
por lo que el archivo JWT será utilizado para la comunicación, verificación y posterior conectividad entre
ambos servidores.

11 auth0.com. (s. f.). JWT.IO - JSON Web Tokens Introduction. Recuperado 17 de junio de 2019, de http://jwt.io/
12 Wikipedia. (2019b). JSON Web Token. En Wikipedia. Recuperado de https://en.wikipedia.org/w/index.php?
title=JSON_Web_Token&oldid=901639201

Módulo de Sincronización SIAP Web-Móvil


12
Marco Teórico

DTIC - MINISTERIO DE SALUD

3.4.3 Ventajas y Desventajas


Algunas ventajas de JWT son:

➢ Sin tabla de base de datos

Esto implica menos consultas de base de datos, lo que será un tiempo de respuesta más rápido. En
caso de utilizar servicios de tercero, JWT permite la reducción de costos para su implementación.

➢ Fácil de usar, pero con cuidado

Si la arquitectura del sistema no utiliza sesiones del cliente y se tiene claro la importancia de la
seguridad, el tiempo de implementación y desarrollo con JWT se vuelve rápido por el hecho de
utilizar bibliotecas existentes.

➢ Utilización en todos los servicios

De un lado, se tiene el servidor que se encargue de la autorización que se ocupe del inicio de sesión/
registro y que genere el token, por lo que todas las solicitudes posteriores deberán dirigirse al
servidor de autorización, ya que este tendrá la clave privada y el resto de servidores solo la clave
pública para verificar la firma. La ventaja de esto, es que no existe conectividad entre servidor de
autenticación y el resto de servidores que no sea la clave pública predefinida.

Algunas desventajas de JWT son:

➢ Clave secreta comprometida

La desventaja principal, es que JWT se basa en una sola llave. Un atacante puede acceder fácilmente
a todos los datos del usuario si tiene la identificación de un usuario que se puede adquirir
fácilmente. La única forma de solventar este problema, es de generar un nuevo par de llaves para
ser utilizado en los sistemas. Esto haría inválido los tokens de cliente existentes y cada usuario
tendrá que iniciar sesión de nuevo.

➢ No se puede administrar el cliente desde el servidores

El problema principal es el hecho de guardar cookies en los dispositivos que el usuario utiliza pero
no siempre se puede controlar el hecho de eliminarlas y no dejar rastro alguno de las actividades
del usuario. Esto no sucede con JWT, puesto que solo se elimina las tokens de sesión.

Módulo de Sincronización SIAP Web-Móvil


13
Marco Teórico

DTIC - MINISTERIO DE SALUD

➢ No se puede enviar mensajes a los clientes (identificación de clientes en el servidor)

Como no se tiene registros de los clientes que han iniciado sesión, no se puede tener el control de
los clientes, por lo que no puede identificar, qué usuario ha hecho qué actividad. La única forma de
solventar parcialmente esta deficiencia, es identificar el dispositivo pero no todos los clientes tienen
identificación del dispositivo.

➢ Algoritmo criptográfico puede ser desaprobado

JWT se basa completamente en el algoritmo de firma. El ejemplo claro, es el ataque para descifrar la
encriptación WEP, ya que este se basó en la debilidad que posee el algoritmo antes ataques como
de fuerza bruta y de diccionario. Por lo que se espera que se actualicen las bibliotecas de seguridad
que posee JWT.

➢ Datos generales

El tamaño de un token será mayor al de un token de sesión normal, debido a que cuanto más datos
añada al token, más tiempo tomará para la solicitud. En esto debe aplicárse que para 1 KB de un
token, la solicitud tendrá una carga mayor a 1 KB, haciéndo que sea lenta la comunicación en caso
exista baja conectividad.

➢ Complicado de Entender

JWT utiliza algoritmos de firma criptográficos para verificar los datos y obtener el ID de usuario del
token. Por lo que para entender el algoritmo, es necesario conceptos básicos de criptografía.
(Golwalkar, 2016)13

13 Golwalkar, R. (2016, agosto 21). Pros and cons in using JWT (JSON Web Tokens). Recuperado 17 de junio de 2019, de
Rahul Golwalkar website: https://medium.com/@rahulgolwalkar/pros-and-cons-in-using-jwt-json-web-tokens-
196ac6d41fb4

Módulo de Sincronización SIAP Web-Móvil


14
Planteamiento de la Solución

DTIC - MINISTERIO DE SALUD

4 Planteamiento de la Solución

El desarrollo del Módulo de Sincronización se realizará utilizando el modelo “Iterativo y Creciente”,


el cual surgió en respuesta a las debilidades que poseía el modelo en cascada. Es por ello que la
documentación y código fuente del módulo de sincronización entre dispositivos móviles, dispositivos
móviles y el servidor local, servidor local y servidor central, sufrirá modificaciones durante el proyecto hasta
su finalización.

4.1 Sincronización entre Dispositivos Móviles


Para la solución de Sincronización entre Dispositivos Móviles, se utilizará la tecnología de Wifi-Direct,
cuyo funcionamiento se describe, en el apartado “3.1 Wifi-Direct”

El módulo de sincronización, permitirá la conectividad entre dispositivos móviles, creando una


conexión segura y limitada, evitando que un tercer dispositivo móvil, interfiera con la conexión y finalice el
proceso.

Cada dispositivo móvil, tendrá configurado usuario y rol, como por ejemplo: Enfermera, Médico,
Polivalente entre otros; así como el administrador realizará las configuraciones necesarias como asignar
usuarios, grupos y roles al dispositivo móvil, además de la configuración del módulo de sincronización
como tal.

La sincronización entre dispositivos móviles, se plantea en dos pasos:

Vinculación

➢ Los dispositivos móviles que deseen comunicarse, deberán de activar el módulo de sincronización
para que ambos dispositivos permitan encontrarse uno al otro y estos se reconozcan para
posteriormente establecer conectividad alguna.

➢ Al identificar al otro dispositivo, el que recibirá la información, se convertirá en “Dueño” de la


conexión, por lo que estará en la espera a que el otro dispositivo envíe el expediente del paciente al
cual se le esté brindando la atención médica, para que el “Dueño” continúe con la atención.

➢ Este proceso se repite durante toda la atención integral hasta finalizar las actividades de los
usuarios. Al final, cada dispositivo tendrá la información puede ser utilizada y posteriormente,
trasladarse al servidor local, lo cual se explica más adelante.

Módulo de Sincronización SIAP Web-Móvil


15
Planteamiento de la Solución

DTIC - MINISTERIO DE SALUD

Operación

➢ Durante la atención médica, cada dispositivo tendrá la información que otro usuario haya obtenido
durante sus actividades, para posteriormente, ser preparada y enviada al otro dispositivo mediante
un archivo JSON, el cual, el SIAP APP Móvil, será capaz de leer y almacenar los datos en SQLite,

Al iniciar el proceso, se realizará un proceso adicional llamado, “Verificación”, en el cual, el personal


de salud realiza la verificación de las personas que se encuentran presente para recibir su atención, si
existen personas que no estaban planificadas que recibirían la atención, se agregan en ese momento.

A continuación se describe a mayor detalle la interacción del módulo de sincronización con los
pasos de la atención médica (aplicable tanto para atención Intramural como Extramural, a excepción de la
Selección, puesto que en Extramural, no se realiza):

1) Sincronización en Selección

Los usuarios realizarán la selección de los pacientes, mediante la conectividad directa con el
servidor local, lo cual permitirá clasificar al paciente en base a la escala del TRIAGE, y ser asignado a
un médico para ser atendido en base a la prioridad asignada. Posteriormente, la información se
trasladará al usuario encargado de la preparación, enviando un archivo JSON, a través de Wifi-Direct,
implementado en el módulo de sincronización. El Dueño de la conexión será el dispositivo a utilizar
en Preparación.

2) Sincronización en Preparación

La sincronización en preparación se realizará cuando el usuario ha tomado los datos del paciente así
como las medidas antropométricas y verificando el esquema de vacunación y este decide
sincronizarlos al dispositivo de la Atención Integral. En ese momento, el Dueño de la conexión será
el dispositivo a utilizar en Atención Integral.

3) Sincronización en Atención Integral

Cuando el médico haya sincronizado la información proveniente de Preparación, el médico iniciará


con el registro de la información obtenida durante la atención integral, la cual se almacenará en una
base de datos local SQLite. La información estará lista para poder ser sincronizada para los servicios
de apoyo. En ese momento, el Dueño de la conexión será el dispositivo a utilizar en Servicios de
Apoyo. Cabe destacar que Servicios de Apoyo y Atención Integral estarán en comunicación
constante, ya que Servicios de Apoyo complementa la Atención Integral. Una vez finalizada la
atención Integral, el Dueño de la nueva conexión será el dispositivo a utilizar en Registro de la
Próxima Cita.

Módulo de Sincronización SIAP Web-Móvil


16
Planteamiento de la Solución

DTIC - MINISTERIO DE SALUD

4) Sincronización en Servicios de Apoyo

La sincronización con los servicios de apoyo será realizada con la Atención Integral, esta sucederá
cuando el médico considere la necesidad de brindar dichos servicios al paciente. Es así que será
necesario que los servicios de apoyo reciban dicha información. En ese momento, el Dueño de la
conexión será el dispositivo a utilizar en Atención Integral. Además, cabe destacar que Servicios de
Apoyo y Atención Integral estarán en comunicación constante, ya que Servicios de Apoyo
complementa la Atención Integral.

5) Sincronización en registro de la próxima cita

Al registrarle la próxima cita al paciente, el médico enviará los datos del paciente para que el
encargado de registro realice el proceso de citado. El dispositivo que registrará la Cita será el Dueño
de la conexión.

6) Sincronización en Vacunación

Cuando el médico decida enviar al paciente a vacunación, la enfermera o encargado de Vacunación


tendrá la posibilidad de sincronizar el archivo que contendrá la información del paciente para
aplicar las dosis y el dispositivo de Vacunación será el Dueño de la conexión.

7) Sincronización en Farmacia

Cada paciente recibirá recetas por parte del médico y el encargado de entregar los medicamentos
con su dispositivo móvil deberá sincronizar con el dispositivo del médico. El dispositivo de Farmacia
o encargado de entrega de medicamentos será el Dueño de la conexión.

Toda la información será almacenada en una base de datos del SIAP APP Móvil, la cual, contendrá la
información obtenida durante todos los procesos y al momento de ser sincronizada, esta se borrará
inmediatamente para evitar cruce de información entre dispositivos. Una vez finalizado el proceso de la
atención médica, la información se trasladará hacia el primer dispositivo, de preferencia, al médico o
enfermera, para su sincronización con el servidor loca, el cual se describe a continuación.

Módulo de Sincronización SIAP Web-Móvil


17
Planteamiento de la Solución

DTIC - MINISTERIO DE SALUD

4.2 Dispositivo Móvil-Servidor Local


Para la solución de Dispositivo Móvil a Servidor Local se utilizará tanto el Módulo de Sincronización,
como el dispositivo USB-Wifi, el cual, permitirá que los dispositivos móviles, se conecten al servidor local y
realicen el proceso de sincronización de la información, aplicando el funcionamiento que se explicó en el
apartado “3.2 USB-Wifi”.

Mediante el dispositivo USB-Wifi, al momento de conectarse un dispositivo móvil, este será asignado
con una dirección IP, la cual será impuesta por el servidor DHCP configurado en el servidor. Esto permitirá
que más de un dispositivo pueda conectarse, rompiendo la limitante de ser 1 a 1 pero lo recomendable es
hacerlo 1 a 1 para evitar que la información de una tableta, interfiera con la otra.

Para este caso, tanto SIAP APP como SIAP APP Móvil, tendrán incorporado, la creación y extracción
de datos mediante archivos JSON, los cuales, tanto el dispositivo como servidor, será capaces de leer la
información contenida dentro de esta.

El servidor local tendrá funciones configurables para crear y leer archivos, tanto de lado de la
programación como de la base de datos, la cual permitirá que la información se sincronice y actualice
adecuadamente al expediente clínico al cual se le ha dado seguimiento clínico.

4.3 Servidor Local-Servidor Central


Para la solución propuesta entre Servidor Local y Servidor Central, se presenta a continuación, dos
alternativas:

4.3.1 Con Conectividad


Cuando exista conectividad entre el Servidor Local y Servidor Central, sea en una Unidad
Comunitaria de Salud Familiar, se utilizará la tecnología de JSON Web Tokens (JWT), el cual permitirá que se
comuniquen ambos servidores mediante la utilización de Tokens, creando un canal de comunicación seguro
para el envío y recepción de la información de los expedientes clínicos utilizados durante la atención
integral de salud.

El funcionamiento de la tecnología JSON Web tokens, puede ser consultado en el apartado “3.4 JWT”.

Módulo de Sincronización SIAP Web-Móvil


18
Planteamiento de la Solución

DTIC - MINISTERIO DE SALUD

4.3.2 Sin Conectividad


Cuando no exista conectividad entre el Servidor Local y Servidor Central, se utilizará la tecnología de
JavaScript Object Notation (JSON) mediante el cual, se crearán archivos que contendrán la información de
los expedientes clínicos utilizados durante la atención integral de salud, cuyo funcionamiento se detalla a
continuación:

El sistema SIAP APP, mediante la utilización de funciones y/o librerías para JSON, creará archivos en
extensión .json, los cuales contendrán la información de los expedientes clínicos utilizados durante la
atención integral. Estos archivos contendrán la información, con instrucciones y separaciones (sea comas,
punto, entre otros), para su lectura e inserción a la base de datos correspondiente.

En este caso, la persona encargada tendrá que transportar en un medio electrónico para trasladar la
información de una Unidad Comunitaria de Salud Familiar hacia otra que posea conectividad con el servidor
central.

El funcionamiento de la tecnología JSON , puede ser consultado en el apartado “3.3 JSON”.

Módulo de Sincronización SIAP Web-Móvil


19
Planteamiento de la Solución

DTIC - MINISTERIO DE SALUD

4.4 Diagramas de Solución Propuesta


4.4.1 Diagrama de Solución en Sede

Imagen 4-1-Diagrama de la Solución en Sede

Módulo de Sincronización SIAP Web-Móvil


20
Planteamiento de la Solución

DTIC - MINISTERIO DE SALUD

4.4.2 Diagrama de Solución en Terreno

Imagen 4-2: Diagrama de Solución en Terreno

Módulo de Sincronización SIAP Web-Móvil


21
Planteamiento de la Solución

DTIC - MINISTERIO DE SALUD

4.4.3 Diagrama de Solución: Sincronización

Imagen 4-3-Diagrama de Solución: Sincronización

Módulo de Sincronización SIAP Web-Móvil


22
Planteamiento de la Solución

DTIC - MINISTERIO DE SALUD

4.4.4 Diagrama de Solución: Sincronización entre Dispositivos Móviles

Imagen 4-4: Diagrama de Solución: sincronización entre Dispositivos Móviles

Módulo de Sincronización SIAP Web-Móvil


23
Planteamiento de la Solución

DTIC - MINISTERIO DE SALUD

4.5 Diagramas BPMN


4.5.1 Sincronización entre Dispositivos Móviles, Dispositivos Móviles y el Servidor
Local

Módulo de Sincronización SIAP Web-Móvil


24
Planteamiento de la Solución

DTIC - MINISTERIO DE SALUD

4.5.2 Sincronización entre Servidor Local, Dispositivos Móviles y Servidor Central

Módulo de Sincronización SIAP Web-Móvil


25
Planteamiento de la Solución

DTIC - MINISTERIO DE SALUD

4.5.3 Servidor Central-Servidor-Local

Módulo de Sincronización SIAP Web-Móvil


26
Bibliografía

DTIC - MINISTERIO DE SALUD

5 Bibliografía
5.1 Páginas Web
• auth0.com. (s. f.). JWT.IO - JSON Web Tokens Introduction. Recuperado 17 de junio de 2019, de
http://jwt.io/

• Azzola, +Francesco. (2013, octubre 28). Android JSON Tutorial: Create and Parse JSON data.
Recuperado 17 de junio de 2019, de Java Code Geeks website:
https://www.javacodegeeks.com/2013/10/android-json-tutorial-create-and-parse-json-data.html

• Demuro, J. (2015). USB Wi-Fi Adapter 101 - What It Is and How It Works. Recuperado 17 de junio de
2019, de https://www.tomshardware.com/reviews/usb-wifi-adapter-guide,4108.html#p2

• Ebay. (2019, agosto 18). 5-Benefits-of-Using-a-USB-Wi-Fi-Adapter-. Recuperado 17 de junio de 2019,


de eBay website: https://www.ebay.co.uk/gds/5-Benefits-of-Using-a-USB-Wi-Fi-Adapter-/
10000000177629199/g.html

• Golwalkar, R. (2016, agosto 21). Pros and cons in using JWT (JSON Web Tokens). Recuperado 17 de
junio de 2019, de Rahul Golwalkar website: https://medium.com/@rahulgolwalkar/pros-and-cons-in-
using-jwt-json-web-tokens-196ac6d41fb4

• Ivankov, A. (2018, agosto 22). Advantages and Disadvantages of Wi-Fi Direct. Recuperado 17 de junio
de 2019, de Profolus website: https://www.profolus.com/topics/advantages-and-disadvantages-of-
wi-fi-direct/

• McCourt, D. (2019). What is Wi-Fi Direct and how do you use it on Android? Recuperado 17 de junio
de 2019, de AndroidPIT website: https://www.androidpit.com/what-is-wifi-direct

• Sharma, R. (2014, noviembre 21). JSON - its advantages and disadvantages. Recuperado 17 de junio
de 2019, de ezeelive.com website: https://ezeelive.com/json-advantages-disadvantages/

• Vines, C. (2017, noviembre 18). What are the pros and cons of using a USB wifi adapter? - Quora.
Recuperado 17 de junio de 2019, de https://www.quora.com/What-are-the-pros-and-cons-of-using-
a-USB-wifi-adapter

• Wikipedia. (2019a). JSON. En Wikipedia. Recuperado de https://en.wikipedia.org/w/index.php?


title=JSON&oldid=902013468

• Wikipedia. (2019b). JSON Web Token. En Wikipedia. Recuperado de


https://en.wikipedia.org/w/index.php?title=JSON_Web_Token&oldid=901639201

• Wikipedia. (2019c). Wi-Fi Direct. En Wikipedia. Recuperado de https://en.wikipedia.org/w/index.php?


title=Wi-Fi_Direct&oldid=895692026

Módulo de Sincronización SIAP Web-Móvil


27

Вам также может понравиться