scieee Open visual document viewer

Plataforma web de gestión de pacientes en estudios clínicos

Borges Noronha, Frederick Ernesto; Peñarrieta Uribe, Carla Paola

Abstract

Con este trabajo, pretendemos cambiar un poco el panorama actual de estudios clínicos oncológicos, los cuales requieren una interacción constante por parte del médico y el paciente. Por este motivo hemos decido aportar nuestro esfuerzo para hacer que las visitas constantes al hospital sean reducidas al mínimo. En este trabajo, se describe la creación de una plataforma web para facilitar la lectura de datos provenientes de dispositivos wearables, suministrados a pacientes oncológicos, para facilitar sus estudios clínicos. Para realizar esto, se extrajeron los datos de los dispositivos, se procesaron y almacenaron para su posterior uso en dicha web. Para realizar esto hemos dividido cada uno de los componentes necesarios para su elaboración y hemos trabajado en una arquitectura basada en Kubernetes para facilitar su mantenimiento y escalabilidad. Una vez realizado todo esto, podemos indicar que el resultado final ha sido el esperado para una primera versión de esta web. Hemos permitido que el doctor introduzca los datos de sus pacientes para posteriormente proceder a la obtención de datos con el dispositivo y así poder visualizarlos en la página web.

Full text

Pla a o ma web de ges ión de pacien es en es udios clínicos Web pla o m o pa ien managemen in clinical ials T abajo de Fin de G ado Cu so 2020–2021 Au o es F ede ick E nes o Bo ges No onha y Ca la Paola Peña ie a U ibe Di ec o José Luis Ayala Rod igo Tu o Josué Pagán O iz T abajo de Fin de G ado en Ingenie ía In o má ica Facul ad de In o má ica Uni e sidad Complu ense de Mad id Pla a o ma web de ges ión de pacien es en es udios clínicos Web pla o m o pa ien managemen in clinical ials G ado en Ingenie ía In o má ica Au o es F ede ick E nes o Bo ges No onha y Ca la Paola Peña ie a U ibe Di ec o José Luis Ayala Rod igo Tu o Josué Pagán O iz Con oca o ia: Junio 2021 T abajo de Fin de G ado en Ingenie ía In o má ica Facul ad de In o má ica Uni e sidad Complu ense de Mad id 15 de junio de 2021 Dedica o ia Es e abajo es á dedicado especialmen e a odas esas pe sonas que p esen- an p oblemas oncológicos, ya que la pla a o ma que hemos diseñado es a especialmen e pensada pa a ellos. Además, ambién que emos dedica es e abajo a nues as amilias, en especial a nues os pad es, y amigos, que han es ado en odo momen o apo- yándonos de o ma incondicional. “Lo que con mucho abajo se ob iene, más se ama.” A is ó eles Ag adecimien os Que emos ag adece a odas esas pe sonas que nos han ayudado en la ela- bo ación de nues o T abajo de Fin de G ado, ojalá pudiésemos nomb a las a odas con nomb e y apellido ya que se lo me ecen. Pa a empeza , nos gus a ía da las g acias a nues os u o es José Luis Ayala Rod igo y Josué Pagán O iz, po guia nos du an e es os meses en es e abajo que ha sido un e o pa a noso os, siemp e aconsejándonos y man eniendo el con ol sob e odo pa a que pudiésemos sali adelan e. Que emos da las g acias a nues as amilias, en especial a nues os pa- d es, que siemp e han es ado pa a da una mano cuando se necesi a, escu- chando nues os p oblemas, ayudándonos con las e isiones de los ex os, p egun ándonos si es amos bien luego de es a oda la noche p eocupados po es e abajo. También que emos ag adece a nues os amigos, que siemp e han es ado ahí y nos apoyado en odo, eniendo en cuen a que al hace el abajo hemos enido que, indiscu iblemen e, deci que no a algunas euniones, pe o no enían p oblema ya que sabían que e a con un mo i o, ob ene nues o an deseado í ulo uni e si a io. Po úl imo, pe o no menos impo an e, un especial ag adecimien o a Ve onika, que nos ha ayudado mo almen e y con suge encias pa a mejo a nues o T abajo de Fin de G ado, con el in de ob ene una mejo cali icación. A odos us edes, Muchas g acias. ii Resumen Con es e abajo, p e endemos cambia un poco el pano ama ac ual de es u- dios clínicos oncológicos, los cuales equie en una in e acción cons an e po pa e del médico y el pacien e. Po es e mo i o hemos decido apo a nues o es ue zo pa a hace que las isi as cons an es al hospi al sean educidas al mínimo. En es e abajo, se desc ibe la c eación de una pla a o ma web pa a acili- a la lec u a de da os p o enien es de disposi i os wea ables, suminis ados a pacien es oncológicos, pa a acili a sus es udios clínicos. Pa a ealiza es o, se ex aje on los da os de los disposi i os, se p oce- sa on y almacena on pa a su pos e io uso en dicha web. Pa a ealiza es o hemos di idido cada uno de los componen es necesa ios pa a su elabo ación y hemos abajado en una a qui ec u a basada en Kube ne es pa a acili a su man enimien o y escalabilidad. Una ez ealizado odo es o, podemos indica que el esul ado inal ha sido el espe ado pa a una p ime a e sión de es a web. Hemos pe mi ido que el doc o in oduzca los da os de sus pacien es pa a pos e io men e p ocede a la ob ención de da os con el disposi i o y así pode isualiza los en la página web. ix Lis a de Figu as 2.1 The BioHa ness BH3 . . . . . . . . . . . . . . . . . . . . . . . 13 2.2 In e az de usua io . . . . . . . . . . . . . . . . . . . . . . . . 14 2.3 Disposi i o implan able Con i m Rx™.............. 15 2.4 Disposi i o F eeS yle y senso . . . . . . . . . . . . . . . . . . 15 2.5 Pulse aFi bi ........................... 16 2.6 A qui ec u a pa a la moni o ización del Alzheime . . . . . . 17 2.7 Localización de disposi i os . . . . . . . . . . . . . . . . . . . 18 2.8 Lis adeale as.......................... 19 2.9 Lis a de disposi i os . . . . . . . . . . . . . . . . . . . . . . . 19 2.10 A qui ec u a del sis ema Abuelóme o . . . . . . . . . . . . . 20 2.11 His o ial médico y lec u a del senso . . . . . . . . . . . . . . 21 2.12 Cha cuidado - amilia y lis a de ale as . . . . . . . . . . . . 21 2.13 A qui ec u a de un sis ema de moni e eo en la nube . . . . . 22 3.1 Esquema del modelo de la cascada implemen ado. . . . . . . . 26 4.1 A qui ec u a de aplicaciones en con enedo es y en máquinas i uales. ............................. 30 4.2 O ques ando con enedo es con Kube ne es. . . . . . . . . . . 31 4.3 A qui ec u a del módulo de p ocesamien o EDWAR. . . . . . 34 4.4 Panel de con ol de G a ana. . . . . . . . . . . . . . . . . . . 35 4.5 Diag ama de uso de Teleg a jun o con In luxDB. . . . . . . . 36 4.6 Diag ama de uso de Ka ka. . . . . . . . . . . . . . . . . . . . 37 4.7 Amazon Elas ic Kube ne es Se ice................ 38 4.8 Google Kube ne es Engine..................... 39 5.1 Diag ama de la p ime a a qui ec u a de la solución. . . . . . . 42 5.2 Esquema del módulo de In luxDB. . . . . . . . . . . . . . . . 43 5.3 Esquema del módulo de Ma iaDB. . . . . . . . . . . . . . . . 43 5.4 Esquema del módulo de Teleg a . . . . . . . . . . . . . . . . . 44 x ii 5.5 Esquema del módulo de ecolección de da os. . . . . . . . . . 44 5.6 Esquema del módulo de webhos ing. .............. 45 5.7 Diag ama de la segunda a qui ec u a de la solución. . . . . . 45 5.8 Diag ama de la p ime a conexión in en ada pa a el uso de EDWAR. ............................. 46 5.9 Con igu ación de desa ollo del módulo de ing ess. . . . . . . 47 5.10 Diag ama de la a qui ec u a inal de la solución. . . . . . . . 48 5.11 Diag ama de la conexión implemen ada pa a el uso de EDWAR. 48 6.1 Pan alladelogin ......................... 66 6.2 Pan alla de inicio adminis ado . . . . . . . . . . . . . . . . . 66 6.3 Pe ildelMédico ......................... 67 6.4 Regis o de pacien es: da os pe sonales . . . . . . . . . . . . . 68 6.5 Regis o de pacien es: da os de abajo . . . . . . . . . . . . . 68 6.6 Regis o de pacien es: da os clínicos . . . . . . . . . . . . . . 69 6.7 Regis o de pacien es: hábi os de ida . . . . . . . . . . . . . 69 6.8 Regis o de pacien es: cues iona io de inclusión . . . . . . . . 69 6.9 Regis o de pacien es: medicación . . . . . . . . . . . . . . . . 70 6.10 Lis a de pacien es ac i os . . . . . . . . . . . . . . . . . . . . 70 6.11 Lis a de pacien es inac i os . . . . . . . . . . . . . . . . . . . 70 6.12 Pe il del pacien e: da os pe sonales . . . . . . . . . . . . . . . 71 6.13 Pe il del pacien e: da os clínicos . . . . . . . . . . . . . . . . 72 6.14 Pe il del pacien e: da os empa ica E4 . . . . . . . . . . . . . 72 6.15 Pe il del pacien e: g á icas del pacien e . . . . . . . . . . . . . 73 6.16 Edi a pacien e: da os pe sonales . . . . . . . . . . . . . . . . 73 6.17 Edi a pacien e: da os de abajo . . . . . . . . . . . . . . . . 74 6.18 Edi a pacien e: da os clínicos . . . . . . . . . . . . . . . . . . 74 6.19 Edi a pacien e: hábi os de ida . . . . . . . . . . . . . . . . 74 6.20 Edi a pacien e: Cues iona io de inclusión . . . . . . . . . . . 74 6.21 Edi a pacien e: medicación . . . . . . . . . . . . . . . . . . . 75 6.22 Regis o de médico . . . . . . . . . . . . . . . . . . . . . . . . 75 6.23 Lis ado de médicos . . . . . . . . . . . . . . . . . . . . . . . . 76 6.24Edi a médico........................... 76 6.25 Regis o de wea able . . . . . . . . . . . . . . . . . . . . . . . 77 6.26 Lis ado de wea ables . . . . . . . . . . . . . . . . . . . . . . . 77 6.27 Da os del wea able . . . . . . . . . . . . . . . . . . . . . . . . 78 6.28Edi a wea able.......................... 78 6.29 Pan alla de inicio médico . . . . . . . . . . . . . . . . . . . . . 79 Lis a de Tablas 5.1 Tabla WEARABLE_TYPE . . . . . . . . . . . . . . . . . . . 55 5.2 TablaWEARABLE ....................... 55 5.3 Tabla MEDICAL_CENTER . . . . . . . . . . . . . . . . . . 55 5.4 Tabla ALCOHOL_OPTION . . . . . . . . . . . . . . . . . . 56 5.5 Tabla DIAGNOSIS_OPTION . . . . . . . . . . . . . . . . . . 56 5.6 Tabla FREQUENCY_CRISIS_OPTION . . . . . . . . . . . 56 5.7 Tabla BODY_PARTS_OPTION . . . . . . . . . . . . . . . . 56 5.8 Tabla CARDIOVASCULAR_RISK_OPTION . . . . . . . . 56 5.9 Tabla QUALITY_PAIN_OPTION . . . . . . . . . . . . . . . 57 5.10 Tabla SLEEP_DISORDER_OPTION . . . . . . . . . . . . . 57 5.11 Tabla TIME_EFFECTIVENESS_MEDICINE_OPTION . . 57 5.12 Tabla DEFINITION_MOMENTS . . . . . . . . . . . . . . . 57 5.13 Tabla MEDICINES_OPTION . . . . . . . . . . . . . . . . . 57 5.14TablaGENDER ......................... 58 5.15 Tabla WORKING_OPTION . . . . . . . . . . . . . . . . . . 58 5.16 Tabla WORKING_PLACE . . . . . . . . . . . . . . . . . . . 58 5.17 Tabla WORKING_SECTOR . . . . . . . . . . . . . . . . . . 58 5.18 Tabla STUDY_OPTION . . . . . . . . . . . . . . . . . . . . 58 5.19TablaUSER............................ 59 5.20TablaDOCTOR ......................... 59 5.21TablaPATIENT ......................... 60 5.22 Tabla PATIENT_WEARABLE . . . . . . . . . . . . . . . . . 60 5.23 Tabla EMPATICA_SESSIONS . . . . . . . . . . . . . . . . . 60 5.24 Tabla DATES_PATIENT . . . . . . . . . . . . . . . . . . . . 61 xix Lis a de Ac ónimos ACC Accele ome y AWS Amazon Web Se ice API Applica ion P og amming In e aces BVP Blood Volume Pulse CPET Ca diopulmona y Exe cise Tes ing CSV Comma-sepa a ed Values CoAP Cons ained Applica ion P o ocol CGM Con inuous Glucose Moni o ing CO2Dióxido de ca bono ECG Elec oca diog ama EDA Elec ode mal ac i i y EEG Elec oence alog a ía ECV En e medad ca dio ascula ENT En e medades No T ansmisibles GPS Global Posi ioning Sys em HDFS Hadoop Dis ibu ed File Sys em HR Hea Ra e HTTP Hype ex T ans e P o ocol IA In eligencia A i icial xxi IoT In e ne o Things IBI In e -bea in e al JSON Ja aSc ip Objec No a ion k8s Kube ne es ML Machine Lea ning NFC Nea Field Communica ion OMS O ganización Mundial de la Salud RFID Radio F equency Iden i ica ion RNN Recu en Neu al Ne wo ks RHR Res ing Hea Ra e SMS Sho Message Se ice TIC Tecnologías de la in o mación y de la comunicación TL Telemedicina TAG Tempo al Associa i e G anula ion UCI Unidades de Cuidados In ensi os WBSN Wi eless Body Senso Ne wo k WSN Wi eless Senso Ne wo ks Cap´ ı ulo 1 In oducción La ecnología wea eable es un conjun o de disposi i os elec ónicos que se inco po an en dis in as pa es de nues o cue po con el in de ecolec a in- o mación, p incipalmen e sob e la salud. Su uso se inició a mediados de la década de los 2000, pe o es es e año cuando ha alcanzado su pun o álgido debido a la epidemia del Co id-19. G acias a que es os disposi i os nos o e- cen da os sob e el es ado isiológico de los usua ios, se es á comp obando que puede llega a se una he amien a muy ú il sob e odo en el ámbi o de la medicina (Roblye , 2020). En un ecien e es udio (Channa e al., 2020), se ha podido comp oba que es os disposi i os e dade amen e con ibuyen en la de ección de pa ologías. Pa a el es udio u iliza on el disposi i o Fi bi 1, el cual ecopilaba los da os del sueño y la ecuencia ca díaca en eposo (RHR, po sus siglas en inglés) y e aluaba si se de ec aba alguna anomalía en es os da os que pudiesen se compa ibles con la g ipe. Los in es igado es concluye on que es e ipo de ecnología puede ayuda de mane a posi i a en la de ección de en e medades g acias a los da os isiológicos que se cap an a a és de los senso es y a que esos da os pueden se consul ados y es udiados po un médico sin necesi a una es echa elación médico-pacien e, que como sabemos y hemos podido comp oba du an e la pandemia p o ocada po el Co id-19, que no es ácil de man ene . Po o o lado, el uso de la ecnología wea able se es á expandiendo en la moni o ización de en e medades c ónicas, ya que es as y en conc e o, las ca dio ascula es, la diabe es ipo 2, el cánce y las en e medades espi a o- ias, ep esen an más del 50 % de odas las mue es en odo el mundo. (Yach e al., 2004) Po ejemplo, pa a la moni o ización de las a i mias ca diacas, an es de la inclusión de los disposi i os wea ables, e a necesa io un con ol clínico 1h ps://www. i bi .com Accedido: 17/05/2021 1 2Capí ulo 1. In oducción en el que se ealizaban las p uebas pe inen es, desde paseos de seis mi- nu os (Mangado y Nie o, 2016) con olando los signos i ales ( ecuencia ca díaca, sa u ación de oxígeno y ensión a e ial en eposo) o con la p ueba de es ue zo ca diopulmona (CPET, de sus siglas en inglés) que solo se eali- zaba en algunos pacien es debido a su cos e ele ado (Singhal y Cowie, 2020). Ac ualmen e, muchos disposi i os wea ables pe mi en amplia la ecopila- ción de da os del pacien e al ecoge en iempo eal, in o mación necesa ia pa a la moni o ización de las a i mias como el i mo ca diaco, núme o de pasos y ni el de ac i idad dia ia. Pa a el a amien o de la diabe es, ambién es muy impo an e la mo- ni o ización de la glucosa (Cappon e al., 2017), al encon a se en g andes can idad en la sang e. Exis en disposi i os adicionales que pe mi en el au ocon ol de la glucosa en sang e (SMBG, de sus siglas en inglés) que me- dian e una punción en el dedo pe mi en ob ene una pequeña go a de sang e pa a inse a la en un disposi i o que mide el ni el de la glucosa en sang e. Sin emba go, en los úl imos años, se han desa ollado we eables que incluyen senso es (CGM, de sus siglas en inglés) que pueden medi la concen ación de glucosa en sang e o a a és del sudo (Gao e al., 2018) casi de o ma con inua du an e las 24 ho as del día. Pos e io men e, oda esa in o mación pod ía pe mi i al médico, egula la can idad de insulina que necesi a cada pacien e. Los disposi i os wea ables, ambién es án siendo usados pa a un con ol de los a aques epilép icos. Exis en disposi i os co po ales que incluyen sen- so es capaces de medi la elec oence alog a ía (EEG), que mide cambios en la ac i idad ce eb al y el elec oca diog ama (ECG), que egis a la señal eléc ica del co azón. Es os senso es, haciendo uso de algo i mos que anali- zan las medidas ob enidas, son capaces de p edeci los a aques epilép icos minu os an es de que ocu an. Algunos de ellos, ambién pueden en ia ale - as al médico o amilia es del pacien e a un disposi i o mó il (Meh a e al., 2019). O a de las en e medades en la que in e iene la ecnología wea able es en la mig aña. Al a a se de un as o no psicológico, los sín omas más comunes son: dolo es de cabeza, ma eos, ómi os y sensibilidad a la luz. En muchos casos, no se p oducen sín omas p e ios al a aque, po lo que es muy di ícil su p e ención. Po ese mo i o, en algún es udio se ha u ilizado una ed inalámb ica de senso es co po ales (WBSN), que pe mi ía moni o iza las señales isiológicas del pacien e las 24 ho as del día. T as la inalización del es udio, g acias al análisis de la in o mación ob enida median e modelos p edic i os, concluye on que e a posible p edeci un a aque de mig aña has a 52 minu os an es de que se p oduzca (Pagán e al., 2015). Al igual que pa a las en e medades mencionadas p e iamen e, los pacien- es oncológicos (Beg e al., 2017), se han is o a o ecidos g acias a que al p opo ciona les un disposi i o ácil de lle a y lo más impo an e que mo- 3 ni o ea su ac i idad han podido mejo a su calidad de ida. Además de un con ol de los pasos, disposi i os más comple os como el que amos a a a en es e p oyec o que miden la sudo ación, i mo ca díaco, acele ación y em- pe a u a han ayudado a o ablemen e incluso a una de ección emp ana de la en e medad. Como se ha ela ado an e io men e, el uso de disposi i os wea ables nos apo a in ini os bene icios pe o ambién algunas di icul ades ya que, al a- a se de disposi i os que nos p opo cionan in o mación en iempo eal, se ob ienen g andes inges as de da os de dis in as uen es que sin un co ec o almacenamien o, es uc u ación, p ocesamien o, isualización y análisis son inú iles. El p incipal p oblema no es la g an can idad de da os que nos p opo cio- nan, sino que se basa en que la inclusión de es os disposi i os en el ámbi o de la salud es medianamen e nue o, po lo que exis en pocos sis emas en los que se pe mi a ob ene in o mación de di e en es disposi i os o ecnologías como pueden se : disposi i os In e ne o Things (IoT) donde odos esos da os en iempo eal es án almacenados en bases de da os de se ies empo ales, en bases de da os elacionales en las que se puede encon a odo lo ela i o a los usua ios, in o mación que p o iene de aplicaciones mó iles, e cé e a. Además, en muchos casos, su p opósi o no es mos a esos da os a un usua- io inal no expe o (como el médico o pacien e), sino que es á o ien ado a la ges ión in e na. Po es e mo i o, los g upos de in es igación in e disciplina es que aba- jan en a ios p oyec os (simila es en su a qui ec u a), o ien ados a la moni o- ización de pacien es c ónicos, wea ables y aplicaciones, no cuen an con una es uc u a de bloques sólida, lo que di icul a su eplicación, man enimien o y ac ualización. Po odo lo an e io , ambién es impo an e que odo ese lujo se e le- je en una in e az de mane a que el usua io inal no expe o (gene almen e médicos) pueda e y analiza ácilmen e dicha in o mación. El e dade o éxi o se cen a en consegui una a qui ec u a que man enga una in eg ación e icien e de las bases de da os, el p ocesamien o, isualización, p oducción y, que además, sea ácilmen e eplicable pa a es udios simila es, ácil de ac- ualiza y man ene po pe sonal con conocimien os écnicos. G acias a es a uni icación, consegui emos que el médico pueda ob ene la in o mación del pacien e en un mismo si io. El desa ollo de es e TFG, es á incluido en uno de los p oyec os de los g upos de in es igación G eenDISC UCM y G eenLSI UPM que colabo an con a ios hospi ales, con el uso de ecnología eHeal h en en o nos simila es como en el caso de mig añas, ce aleas en acimo, y en el que nos amos a cen a , en oncología. Como ya hemos is o, ene que eplica y man ene sis emas simila es pe o di e en es según sus ámbi os y necesidades es di ícil, po eso se plan ean los siguien es obje i os. 10 Chap e 1. In oduc ion 2. Implemen a ion: he a chi ec u e will be implemen ed in a eal Cloud en i onmen o acili a e da a access. 3. Deploymen : he deploymen will be ca ied ou o a speci ic case, based on a need o he esea ch eam, he moni o ing o pa ien s wi h oncological pain. 1.1.2 Seconda y objec i es 1. De ini ion and design o a web-based es ing pla o m o physicians. 2. Inclusion o he “sc appe ” as ano he module in Kube ne es, which will allow ob aining da a om he E4 w is band ambula o y moni o ing b acele . 3. In eg a ion o mechanisms o p ocessing biome ic da a. 4. Include an in e ace o allow pa ien s o iew hei pe sonal in o ma- ion. 1.2 Documen s uc u e The ollowing chap e s will p esen he S a e o he A (chap e 2) in which we will lea n abou di e en s udies in which al e na i e solu ions o he main p oblem o be add essed a e p oposed, he So wa e Me hodology (chap e 3), whe e we will see he me hodology and he wo k low ha bes sui s ou p ojec , he Tools (chap e 4) used o he implemen a ion o he inal p ojec and ha ha e been pa o he esea ch p ocess, he Implemen a ion (chap e 5) whe e he di e en app oaches ha ha e been aken on he a chi ec u e up o he inal one, as well as i s de elopmen will be explained, in Resul s (chap e 6) we will be able o isualize wha has inally been achie ed a e wha we ha e seen in he p e ious chap e s, he Indi idual Wo k (chap e 7) o each o he membe s o he p ojec , whe e he asks ealized by each one o hem a e desc ibed. In Fu u e Wo k (chap e 8) we will desc ibe he aspec s o be imp o ed as well as new ideas o u u e e sions and inally, he Conclusions (chap e 9) in which i will be e lec ed wha has been ob ained wi h he implemen a ion o his p ojec and o wha ex en he objec i es es ablished a he beginning ha e been achie ed. Cap´ ı ulo 2 Es ado del a e Hemos di idido es e capí ulo en es bloques en el p ime o se explica án que son los disposi i os IoT y pa a que se usan (sección 2.1). El segundo bloque, se cen a á en explica el concep o de Sma Heal h (capí ulo 2.2) y se p esen a án algunos ejemplos de pla a o mas o implemen aciones u ilizadas en es e en o no (sección 2.2.1). Po úl imo, en el e ce bloque se explica á el concep o de Recolección de da os (sección 2.3), su impo ancia y lo que nos ha apo ado en la ealización de es e p oyec o. 2.1 In e ne de las cosas G acias a que la ecnología es á en con inuo desa ollo, enemos más he a- mien as que nos ayudan a ene una mejo calidad de ida. Un cla o ejemplo de es o es el p og eso de la ecnología In e ne o Things1(IoT). Se a a de disposi i os que es án in eg ados con senso es, so wa e y o as ecnologías con la inalidad de conec a e in e cambia da os con o os disposi i os a a és de conexiones inalámb icas. Es e ipo de ecnología, se ha con e ido en algo imp escindible en nues a sociedad po lo que su uso se ha expandido en di e en es ámbi os: educación, abajo, ag icul u a y ganade ía, logís ica, negocios, salud, en e los más impo an es. El sec o de la salud es uno de los que más in e esa a los in es igado- es, sob e odo después de lo acon ecido es e año con la pandemia mundial (Co id-19). G acias a eso, son cada ez más los médicos que p opo cionan di e en es disposi i os a sus pacien es, como pueden se pa a el con ol de la glucosa, del i mo ca diaco, pa a el con ol de pacien es oncológicos, con Pa kinson o alguna o a en e medad c ónica e incluso disposi i os que mo- ni o izan el es ado de ánimo. 1h ps://www.o acle.com/es/in e ne -o - hings/wha -is-io /Accedido: 17/05/2021 11 12 Capí ulo 2. Es ado del a e Como ya hemos comen ado, cada sec o iene un p opósi o en común, que es el encon a una a qui ec u a es ánda que pe mi a ges iona de mane a e icien e la inges a de da os que p o ienen de di e en es uen es. En es e capí ulo, nos amos a cen a en el sec o de la medicina y en el concep o de Sma Heal h. 2.2 Sma Heal h Du an e los úl imos años se ha podido e que la indus ia de la salud es á muy debili ada y en mucho casos, no cuen an con el pe sonal y los ecu sos necesa ios pa a a a de o ma más pe sonalizada a cada pacien e. El hecho de que un médico enga que desgas a se ísica y men almen e puede p o oca si uaciones de es és y como consecuencia, e se e lejado en el a amien o de los pacien es. A lo la go de los años, la si uación sani a ia puede empeo a ya que según la O ganización Mundial de la Salud (OMS)2, “Las en e medades ca dio as- cula es cons i uyen la mayo ía de las mue es po en e medades no ans- misibles (ENT) (17,9 millones cada año), seguidas del cánce (9,0 millones), en e medades espi a o ias (3,9 millones) y diabe es (1,6 millones)”. El concep o de Sma Heal h es á si iendo de espaldo en la indus ia sani a ia. Es e úl imo, se a a de una combinación en e el conjun o de TICs que se emplean en el sec o sani a io (eHeal h) y el uso de la ecnología mó il en bene icio de la salud (mHeal h). G acias a la combinación de eHeal h ymHeal h, el pe sonal sani a io pue- de o ece mejo es diagnós icos y con ol, en iempo eal, de la in o mación que los disposi i os ansmi en. Además, ha ayudado a que la idea de Sma Hospi al (hospi ales in eligen es) sea aplicado a más hospi ales, ya que iene la inalidad de ealiza el seguimien o de los pacien es a a és de las TICs, sin necesidad de aslada se a un hospi al, ya que la in o mación ecopilada po los disposi i os puede se consul ada po el médico emo amen e. Es o pe mi e que se puedan de ec a eme gencias a mayo elocidad, e i ando en muchos casos, el ing eso en los hospi ales. Como p ueba de ello, en un p o- g ama de Pa ne s Heal hCa e (K eda e al., 2014), más de 3.000 pacien es ue on con olados desde sus casas haciendo uso de ecnología que medía la p esión a e ial, la ecuencia ca díaca y oxime ía del pulso. Los da os e an p ocesados po un so wa e que iden i icaba a los pacien es que necesi aban a ención médica. Es os da os e an e isados po en e me as en g andes pa- neles, po lo que no solo eduje on el cos es (10 millones de dola es du an e 6 años) sino que como esul ado del es udio se eduje on un 44 % los eing esos en los hospi ales. Pa a pone conoce como se aplican es os dos concep os, comenza emos 2h ps://www.who.in /es/news- oom/ ac -shee s/de ail/ noncommunicable-diseases Accedido: 20/05/2021 2.2. Sma Heal h 13 dando un epaso po algunos de los disposi i os IoT u ilizados en la moni- o ización de en e medades y cómo se ealiza el seguimien o en emo o de pacien e. Además, pod emos e ejemplos de pla a o mas o implemen acio- nes en la que se hecho uso de es e ipo de ecnología, des acando las en ajas y des en ajas de cada una de ellas. 2.2.1 Disposi i os IoT y en o nos de moni o ización Es impo an e conoce como ha e olucionado la comunicación médico- pacien e a lo que se conoce como Telemedicina (TL), que se de ine como cualquie ac i idad médica ealizada a dis ancia (Woo on, 2001). Es o no solo ha bene iciado a la comunicación de médicos y pacien es, sino que ha pe mi ido que se puedan moni o iza en e medades de o ma emo a g acias al uso de la ecnología IoT. Po eso, a lo la go de es a sección e emos como se han incluido es os disposi i os en los en o nos de moni o ización. Po ejemplo, en un es udio, se ha ealizado el seguimien o de algunos pa- cien es que padecen apnea del sueño (Sannino e al., 2014). An iguamen e, las pe sonas que lo su ían, e an some idas a una p ueba muy compleja y cos- osa que eque ía asis encia p esencial. En es e caso, pa a la moni o ización de la apnea se p opone el uso de The BioHa ness BH3 (Figu a 2.1). Se a a de un disposi i o en o ma de cin u ón, que moni o ea da os isiológicos y que usa Blue oo h pa a ansmi i da os. Es capaz de medi el ECG, la ecuencia ca díaca, ecuencia espi a o ia y empe a u a y un acele óme o de es ejes pa a el con ol de la pos u a y ac i idad. Figu a 2.1: The BioHa ness BH3 Fuen e: Amazon Mien as el pacien e due me, el senso incluido en el cin u ón en ía da os en iempo eal a un disposi i o mó il que, pos e io men e, calcula y ob iene eglas que pe mi en sabe si el pacien e es á su iendo de apnea del sueño. 14 Capí ulo 2. Es ado del a e Cada una de las eglas son únicas pa a cada pacien e que, en caso de a- iaciones en los da os, se gene an ala mas pa a a isa al pacien e o médico. Además, el sis ema de moni o eo, a pesa de habe usado solo da os del ECG, la ex acción da os y el algo i mo p opues o pa a la ob ención de las eglas pe mi e inclui in o mación de o os da os isiológicos pe o solo si p o ienen del mismo disposi i o. Finalmen e, a a és de una in e az de usua io, se puede isualiza los esul ados ob enidos, como se puede e en la Figu a 2.2. Figu a 2.2: In e az de usua io En algunos es udios, han incluido o o ipo de ecnología IoT, como son los disposi i os implan ables. Como se puede e en la Figu a 2.3, Con i m Rx, ha sido diseñado po Abbo 3, una emp esa que ealiza in es igaciones y ab ica p oduc os pa a salud humana. Su disposi i o es subcu áneamen e implan ado y pe mi e medi el i mo ca diaco de o ma con inua, po lo que es á o mado po un sis ema que de ec a a i mias ca diacas. Después de la inco po ación del so wa e Sha pSense™, se consiguió elimina las alsos posi i os, man eniendo su capacidad de de ección. Además, es e pe mi e co- nexión ía Blue oo h con la aplicación mó il exmyMe lin™, a la que en ía los da os con inuamen e, ala mas al pacien e y médico, pe mi e ano a los sín- omas y, además, en ía la in o mación a myMe lin™Pa ien Ca e Ne wo k, una in e az web que pe mi e a los médicos ca ga y adminis a los da os únicamen e del disposi i o Con i m Rx de cada pacien e. En uno de esos es udios, se p obó la e icacia de es e disposi i o en pa- cien es de en e 11 meses y 21 años. Se les implan ó a cada uno de ellos uno de es os disposi i os con los que e an moni o izados como comen amos 3h ps://www.es.abbo / Accedido: 09/06/2021 2.2. Sma Heal h 15 Figu a 2.3: Disposi i o implan able Con i m Rx™ Fuen e: Ge ia ica ea an e io men e. De mane a que, cada pacien e pod ía se con olado a a és de una in e az web, po su pedia a y además, ale ado en caso de a i - mias o sín omas. Finalmen e, concluye on que es e icaz pa a la de ección de a i mias y segu o de usa en pacien es pediá icos (Yoon e al., 2020). Pa a la moni o ización de la diabe es ambién exis en disposi i os que ayudan a ene mayo con ol de la glucosa. Aunque es algo medianamen e nue o, se ha is o que su uso puede esul a muy bene icioso, an o en adul os como en niños (La son y Pinske , 2013). En la Figu a 2.4, podemos obse a un ejemplo de disposi i o que pe - mi e la moni o ización con inua de la glucosa, F eeS yle Lib e, ab icado po Abbo . Cuen a con un senso que se coloca en el b azo o es ómago, el cual manda in o mación a es e disposi i o. Es e mismo, pe mi e la isualización de g á icas donde iene indicado el alo de la glucosa en sang e po ho as. Además, iene conexión ía Blue oo h con una aplicación mó il dónde se puede accede a más in o mación. Figu a 2.4: Disposi i o F eeS yle y senso Fuen e: El dia io Mon añés O o ac o impo an e en el con ol de la glucosa es el eje cicio. Exis en 16 Capí ulo 2. Es ado del a e una in inidad de disposi i os que miden la ac i idad ísica, como po ejemplo la pulse a Fi bi (Figu a 2.5). Al igual que F eeS yle Lib e, cuen a con una aplicación mó il donde se pueden e en o ma de g á icas un his ó ico de los pasos, del sueño, calo ías quemadas, e cé e a. Los más mode nos ambién son capaces de medi da os isiológicos, como en es e caso. Figu a 2.5: Pulse a Fi bi Fuen e: Fi bi F eeS yle Lib e yFi bi ue on u ilizados en un es udio pa a la moni- o ización de la glucosa en pacien es con un iesgo mode ado o al o de la Diabe es ipo 2 (Whelan e al., 2019). Pa icipa on pe sonas adul as mayo- es de 40 años. Se obse ó que muchos de ellos pudie on cambia su ac i idad ísica g acias a Fi bi y po o o lado, mejo a el con ol de la glucosa con el uso de F eeS yle Lib e. Aunque en gene al, se ob u ie on buenos esul ado, algunos de los pa icipan es en el es udio u ie on di icul ades, po ejemplo, en cuan o a la du abilidad de los senso es, pues no se man enían adhe idos a la piel más de dos semanas y ambién, con la isualización de los da os en las aplicaciones mó iles, pues en muchos casos no accedían, lo que indicaba que no enían conocimien o de la in o mación que los senso es cap aban. Ade- más, esal an la necesidad de in eg a en una sola pla a o ma la in o mación ecogida po los senso es, ya que los dos disposi i os enían una aplicación mó il cada uno. También, p oponen que se acili e la au oma ización y e- oalimen ación de los da os median e el uso de múl iple uen es de da os en iempo eal. Como hemos podido e , el uso de los disposi i os en en o nos de mo- ni o ización p opo ciona muchos bene icios y sob e odo, pe mi e ecopila in o mación emo amen e y en iempo eal. En muchos es udios, la in o ma- ción solo es isible a a és de la aplicación mó il (si la u iese) a la que se conec a el disposi i o, siendo accesible únicamen e po el pacien e, di icul- ando el acceso a los médicos. En o os casos, el no ene una pla a o ma 2.2. Sma Heal h 17 que in eg e la in o mación de a ios disposi i os o sea isible pa a el médico, di icul a su seguimien o, como hemos podido obse a an e io men e. Po odo lo dicho, el desa ollo de es e TFG puede se de mucha u ilidad, ya que supond á plan ea una es uc u a que pe mi a soluciona muchos de los p oblemas con los que se han encon ado en algunos es udios de moni o- ización. Po eso, en la siguien e sección pod emos conoce pla a o mas o imple- men aciones en los que se ha p opues o o solucionado alguno de es os p o- blemas. 2.2.2 Pla a o mas e implemen aciones en Sma Heal h En es a sección se p esen a án algunos es udios en los que se han desa- ollado o p opues o pla a o mas o implemen aciones IoT en el ámbi o de Sma Heal h. E alua emos aspec os como su a qui ec u a, ecnologías apli- cadas, in e az de usua io, p ocesamien o de da os, e cé e a. Recien emen e, en un es udio se ha p opues o un sis ema de asis encia sani a ia basada en IoT pa a pacien es con Alzheime (Jamili oskouei e al., 2020). La inalidad de es e p oyec o, se basa en ayuda a moni o ea las ac i idades, da os isiológicos, y biológicos de las pe sonas que padecen es a en e medad. Pa a ello, diseña on la a qui ec u a de la Figu a 2.6. Figu a 2.6: A qui ec u a pa a la moni o ización del Alzheime Dicha a qui ec u a se puede di idi en es módulos: •Disposi i os IoT: es e ipo de es uc u a acili a la in eg ación de a ios senso es IoT ya que u ilizan mecanismos de comunicación que pe mi en la conexión en e ellos y además, que en íen in o mación al siguien e ni el. Es os mecanismos son el p o ocolo de ans e encia de hipe ex o (HTTP), Message Queue Se e (MQTT) y WebSocke s, 18 Capí ulo 2. Es ado del a e los cuales pe mi en la comunicación clien e/se ido . •Pue a de enlace: pa a pe mi i la comunicación en e disposi i os se desa ollan mé odos pa a cada uno de los p o ocolos en NodeJS que, en unción del ipo de disposi i o, se selecciona uno o o o. Además, el mé odo de conexión que se u iliza pa a WebSocke , pe mi e que se puedan egis a los disposi i os en la base de da os y ale a en caso de que se egis en alsos. El mé odo usado pa a HTTP, pe mi e que se pueda localiza a disposi i os egis ados. De es a mane a, sabiendo dónde se encuen a cada pacien e se acili a ía su localización en caso de eme gencia. •Se ido backend: se u iliza Nginx como p oxy in e so pa a los mé- odos NodeJS ya que man iene la p i acidad de la in o mación de los usua ios. Po o o lado, se usa MySQL pa a almacena los da os del usua io que pod ía se usado en p oyec os u u os pa a el análisis de en e medades. En cuan o al almacenamien o de la in o mación de los disposi i os IoT, se ha usado mongoDB, ya que pe mi e el acceso a la in o mación en iempo eal. Po úl imo, han op ado po un almace- namien o en la nube, ga an izando la segu idad de los da os, acceso y educiendo cos es. En elación a la in e az web, ac ualmen e en es ado de p ueba, esul a muy ú il e in ui i a pa a los amilia es y médicos de los pacien es. Aunque no incluye in o mación pe sonal o sob e el es ado de la en e medad, han incluido la base de da os MySQL en la a qui ec u a (sin implemen a ) pa a sol en a lo. Po ejemplo, en la Figu a 2.7 se pueden localiza a los disposi i os egis- ados, es deci , la localización de cada pacien e. Figu a 2.7: Localización de disposi i os En la Figu a 2.8, se pueden e ale as gene adas en base a los da os de 2.2. Sma Heal h 19 los senso es. G acias a es o, el médico o amilia es pueden ac ua en caso de u gencia. Figu a 2.8: Lis a de ale as También incluyen un lis ado de los disposi i os (Figu a 2.9), en el que se mues a in o mación que puede se impo an e como el es ado de la ba e ía, si es á ac i o o no, núme o de disposi i o, e cé e a. Figu a 2.9: Lis a de disposi i os En o o es udio, se p opuso una a qui ec u a y un p o o ipo de aplicación mó il pa a moni o iza la salud en pe sonas mayo es, odo ello ecopilando in o mación de un pulse a biomé ica (Du án-Vega e al., 2019). La apli- cación mó il llamada Abuelóme o, en es e caso, no ue diseñada pa a se u ilizada po médicos, sino po los cuidado es. G acias a es o, es os pod ían ene acceso a da os gene ados po los senso es como la ecuencia ca diaca, empe a u a co po al y oxigenación sanguínea. La a qui ec u a p opues a se puede e en la Figu a 2.10. Es á o mada po cua o capas. En la p ime a, se encuen a la pulse a biomé ica usada en es e es udio. Como una de las en ajas, es e disposi i o cuen a con so wa e y ha dwa e de código abie o, es deci , esul a sencillo modi ica lo en unción de la inalidad de cada p oyec o. Como des en aja, es e p o o ipo admi e únicamen e como uen e de da os la del disposi i o usado en es e p oyec o, no pe mi e cambia ni inclui o o ipo de ecnología IoT. En la segunda capa, la pulse a biomé ica se conec a con una pla a o ma llamada WolkAbou IoT Pla o m, que cuen a con una aplicación mó il al cual se en ía oda la in o mación que cap an los senso es y pos e io men e, es almacenada en la nube. G acias a que dicha aplicación cuen a con una API, se pueden accede a esos da os. En la e ce a capa, se desa olla un 26 Capí ulo 3. Me odología del So wa e •La de inición de un sis ema modula que albe ga elemen os in e cam- biables hace que sea sencillo inclui elemen os ya exis en es o cambia - los po especi icaciones nue as sin al e a la es abilidad del sis ema. Con los pun os desc i os an e io men e, se hizo sencillo adop a el Modelo de la Cascada, ya que es e modelo según el lib o “Ingenie ía del so wa e. Un en oque p ác ico” (P essman, 2010), se puede adop a “cuando deben hace se adap aciones o mejo as bien de inidas a un sis ema ya exis en e” 3.1 Modelo de la cascada Es e modelo de desa ollo de so wa e pe mi e de ini las ases en las que se an a abaja con an elación. Cada una de las ac i idades de es as ases debe se ealizada y en egada an es de comenza con la siguien e e apa. La idea gene al es que se engan al menos ases pa a de ini los eque imien os del so wa e, cómo se ealiza á el p oyec o, codi ica los cambios que se an a ealiza pa a ob ene el esul ado espe ado, p uebas sob e los esul ados ob enidos y po ul imo la implemen ación, la cual se cen a en a eas como el despliegue del p oyec o ealizado y además la edacción de una buena documen ación. La aplicación de es e modelo de me odología del so wa e iene dada ya que, o bien los eque imien os de aquello que se desea ealiza son bien comp endidos desde un inicio, o bien el abajo a ealiza son solo mejo as sob e un p oyec o. Es e esquema de abajo p esen a un lujo de abajo secuencial en el se di e encian bien las e apas po las que se pasa y además es muy sencillo de aplica . En la igu a 3.1 se puede obse a el modelo de cascada u ilizado pa a es e p oyec o, donde se pueden obse a las siguien es ases: Figu a 3.1: Esquema del modelo de la cascada implemen ado. •Comunicación: En es a ase se habla con los clien es, en nues o casos los u o es del p oyec o, pa a de e mina los equisi os del sis ema pa a luego pode ealiza la e apa de in es igación. 3.1. Modelo de la cascada 27 •In es igación: En es a e apa se p ocede a indaga sob e los concep os que es a án p esen es en el p oyec o pa a así ene una idea cla a y pode empeza la e apa de plani icación. •Plani icación: Una ez ealizadas las dos e apas an e io es, el p oyec- o debe p esen a un esquema de abajo, el cual debe de es a bien de inido pa a no come e e o es con los plazos, una ez ealizado di- cho esquema de abajo se p ocede a la e apa de codi icación, dicho esquema de abajo es a p esen ado en la Figu a 3.1 y de allado en cada uno de los pun os p esen ados a con inuación. •Codi icación: En es a ase del p oyec o ya se conoce de o ma gene al que acciones hay que ealiza pa a ob ene los esul ados deseados, pe o es una de las ases que mas iempo se oma pa a asegu a los co ec- os esul ados. En nues o p oyec o, es a ase consis e en ealiza una a qui ec u a basada en Kube ne es1(k8s, explicado en la sección 4.2) pa a ges iona los da os desca gados desde la web de empa ica2, siendo es os p ocesados EDWAR (Me ino Semp ún, 2020) y así luego alma- cena los en las bases de da os In luxDB (sección 4.4.2.1) y Ma iaDB (sección 4.4.1.2) pa a su pos e io uso en la pla a o ma de ges ión pa a los doc o es, odo es e p oceso es a documen ado en el capí ulo 5. Una ez e minada es a e apa el p oyec o debe se uncional y se p ocede a ealiza la e apa de p uebas. •P uebas: En es a e apa, se ealizan p uebas uni a ias sob e el so wa e pa a da una demos ación de que el sis ema cons uido ealmen e unciona, en nues o p oyec o es a ase se implemen ó de o ma manual, donde se han p obado cada uno de los apa ados que deben de es a p esen es den o de la página web. Es o pe mi e comenza con la úl ima ase del p oceso, la implemen ación. •Despliegue: En es a úl ima ase del p oyec o, se ealiza la pues a en p oducción del p oyec o, en nues o caso lle a el modelo de Kube ne es a una pla a o ma online como lo es Google Compu e Engine3(GCE, explicado en la sección 4.10.2), pa a que sea accesible po los usua ios inales. Además, en es a e apa ambién se ealiza la documen ación del p oyec o. 1h ps://kube ne es.io/es/docs/concep s/o e iew/wha -is-kube ne es/ Acce- dido: 15/05/2021 2h ps://www.empa ica.com/connec /login.php Accedido: 15/05/2021 3h ps://cloud.google.com/compu e Accedido: 15/05/2021 Cap´ ı ulo 4 He amien as Pa a la implemen ación de es e p oyec o, se ha plan eado el uso de di e en es p og amas, amewo ks y pla a o mas los cuales se desc iben a con inuación pa a acili a la comp ensión de la lec u a de la implemen ación de nues o p oyec o. 4.1 Docke Docke 1es una capa de abs acción sob e el sis ema ope a i o que nos pe - mi e adminis a con enedo es de o ma ápida y sencilla pa a que las apli- caciones que allí se ejecu an engan un ambien e limpio y no compa an in o mación con o as aplicaciones. Un con enedo es código y dependencias (p og amas, iche os, en e o os a chi os necesa ios pa a el co ec o uncio- namien o de la aplicación a ejecu a ) empaque adas que pe mi en ejecu a una aplicación de o ma ápida y con iable independien emen e del sis ema ope a i o donde se ejecu e. En la Figu a 4.1 podemos obse a dos ipos de a qui ec u as. La p i- me a (si uada a la izquie da) u iliza Docke y podemos dis ingui cua o capas, la p ime a capa es la in aes uc u a, es deci el ha dwa e que posee el o denado , la segunda es el sis ema ope a i o de la maquina que iene el o denado , la e ce a capa es Docke y luego como cua a enemos las aplicaciones en los con enedo es, en gene al es e esquema se puede esumi diciendo que en las a qui ec u as con Docke el sis ema ope a i o es común pa a odas las aplicaciones, además de que no impo a que a qui ec u a se enga como núcleo. Po o a pa e, la segunda a qui ec u a (si uada a la de- echa) u iliza maquinas i uales y podemos dis ingui es capas, la p ime a es la in aes uc u a, la siguien e es un hipe iso 2, que es un so wa e que 1h ps://www.docke .com/ esou ces/wha -con aine Accedido: 16/05/2021 2h ps://es.wikipedia.o g/wiki/Hipe iso Accedido: 16/05/2021 29 30 Capí ulo 4. He amien as i ualiza ha dwa e pa a pode ejecu a di e en es sis emas ope a i os en un mismo o denado , la e ce a son las máquinas i uales, que cada una se subdi ide en dos capas, el sis ema ope a i o de la máquina i ual y además la aplicación que se a a ejecu a en cada una de ellas. Una ez dicho es o, en nues o p oyec o encaja mejo una a qui ec u a Docke ya que, al que e lle a a cabo un p oyec o en la nube se pueden e i a p oblemas de ejecución en máquinas i uales gene ados po la al a de dependencias. Figu a 4.1: A qui ec u a de aplicaciones en con enedo es y en máquinas i - uales. Fuen e: Docke 4.2 Kube ne es Kube ne es3, ambién conocido como k8s, es una pla a o ma po able y ex- ensible que pe mi e la adminis ación de ca gas de abajo y se icios, ade- más de que es un en o no que es á cen ado en con enedo es. Un nodo es una máquina que ealiza las a eas solici adas, es deci se enca ga de que los pods (sección 4.2.1) c eados po los deploymen s (sección 4.2.3) y s a e ulse s (sec- ción 4.2.4) sean gene ados co ec amen e en un espacio limpio. En la Figu a 4.2 podemos obse a un nodo de Kube ne es en el cual se es án desplegando a ios pods y den o cada cada uno de ellos las aplicaciones en con enedo es y olúmenes (sección 4.2.2) que necesi an pa a su co ec o uncionamien o. 4.2.1 Pod Un pod es un conjun o de uno o más con enedo es de Docke que poseen al- macenamien o y ed compa idos y además con ienen explicaciones de como 3h ps://kube ne es.io/es/docs/concep s/o e iew/wha -is-kube ne es Acce- dido: 16/05/2021 4.2. Kube ne es 31 Figu a 4.2: O ques ando con enedo es con Kube ne es. Fuen e: Kube ne es ejecu a los con enedo es que habi an en él. 4.2.2 Volume Un olumen es una unidad de almacenamien o de in o mación eniendo en cuen a que es os discos i uales se c ean p e iamen e o cada ez que se gene a el pod pa a así pode pe mi i la compa ición de memo ia o la pe - manencia de los da os. 4.2.3 Deploymen Un deploymen 4es un con olado que se enca ga de p opo ciona ac ua- lizaciones decla a i as y de cambia el es ado de o ma con olada de los di e en es ecu sos que se encuen an en él. 4.2.4 S a e ulSe Un s a e ulse 5pe mi e ges iona aplicaciones con es ado pa a el despliegue y escalado de un conjun o de pods. Se di e encia de un deploymen ya que ga an iza la unicidad y el o den de cada uno de los pods. Los iden i icado es 4h ps://kube ne es.io/es/docs/concep s/wo kloads/con olle s/deploymen Accedido: 16/05/2021 5h ps://kube ne es.io/es/docs/concep s/wo kloads/con olle s/s a e ulse Accedido: 16/05/2021 32 Capí ulo 4. He amien as de los pods en un s a e ulse son pe sis en es y se man ienen iguales con cualquie ac ualización de es ado. 4.3 Helm Helm6, es un manejado de paque es pa a Kube ne es, en el cual se c ean cha s7(paque es que con ienen las de iniciones necesa ias pa a ejecu a una aplicación) pa a pe mi i un despliegue más sencillos de aplicaciones com- plejas den o de un clús e de Kube ne es. Dichos paque es se pueden en- con a en los eposi o ios7(luga es donde se almacenan los cha s c eados pa a su pos e io uso y dis ibución) que, al ins ala se sob e un clús e , ge- ne an ealeases7(ins ancias de un cha en un clús e de Kube ne es) pa a su iden i icación den o del clús e . En in o má ica, un clús e 8es un conjun o de o denado es con los cuales se puede in e ac ua como si se a ase de un único o denado . 4.4 Bases de da os Una base de da os, es un conjun o de da os almacenados en una memo ia ex e na que es án o ganizados median e una es uc u a de da os. Exis en dos ipos de bases de da os, elacionales y no elacionales, los cuales se án explicados a con inuación. 4.4.1 Bases de da os elacionales Una base de da os elacional9es un ipo de base de da os en el que se almacenan da os y se elacionan en e sí. Es e ipo de base de da os es án basados en el modelo elacional y en ella cada una de las ilas de una abla es un nue o egis o. Exis en muchas bases de da os elacionales, en e ellas podemos des aca MySQL (sección 4.4.1.1) y Ma iaDB (sección 4.4.1.2) las cuales se án explicadas a con inuación. 4.4.1.1 MySQL MySQL10 es un sis ema de ges ión de bases de da os elacionales que es a basado en S uc u ed Que y Language (SQL) y que además posee un modelo clien e-se ido . 6h ps://helm.sh Accedido: 16/05/2021 7h ps://helm.sh/es/docs/in o/using_helm Accedido: 16/05/2021 8h ps://es.wikipedia.o g/wiki/Clús e Accedido: 16/05/2021 9h ps://www.o acle.com/es/da abase/wha -is-a- ela ional-da abase/ Accedi- do: 16/05/2021 10h ps://www.hos inge .es/ u o iales/que-es-mysql Accedido: 16/05/2021 4.5. EDWAR 33 4.4.1.2 Ma iaDB Ma iaDB11 es un sis ema de ges ión de bases de da os de i ado de MySQL, siendo compa ibles en e si, pe o iene un obje i o en conc e o y es que con Ma iaDB se puede cambia un se ido po o o di ec amen e. 4.4.2 Bases de da os no elacionales Una base de da os no elacional12 es un sis ema de ges ión de bases de da os que no usan SQL como lenguaje p incipal de consul as además, los da os no con ienen una es uc u a ija (como son las ablas del modelo elacional). Es un modelo de base de da os que escala ho izon almen e, es deci que puede ene un amplio núme o de nodos se ido es. En es e abajo, al necesi a maneja in o mación que p o iene de dis- posi i os de IoT, hemos op ado po u iliza una base de da os de se ies de iempo que es un ipo de base de da os no elacional que es a op imizado pa a in o mación que con enga ho as, echas o o ma os simila es. Es e ipo de base de da os manejan mé icas, e en os o mediciones que es én aco adas po medio de algún da o de in e alo de iempo. Un ejemplo de base de da os de se ies de iempo es In luxDB el cual se á explicado a con inuación. 4.4.2.1 In luxDB In luxDB es una base de da os de se ies de iempo de código abie o que es a op imizada pa a el manejo de in o mación que p o iene con in e alos de iempo además, nos p opo ciona un lenguaje pa a ealiza consul as que es muy simila a SQL. 4.5 EDWAR EDWAR (Me ino Semp ún, 2020) es un módulo de p ocesamien o de da os p o enien es de disposi i os de IoT, que iene una lib e ía de py hon en el eposi o io de PyPI13, que pe mi e ob ene más in o mación a pa i de los da os suminis ados po los disposi i os, con ayuda de modelos de in eli- gencia a i icial. Cuando se quie e ejecu a es e modelo es necesa io indica de donde p o ienen los da os y donde es án los iche os con dichos da os al mé odo edwa .Run pa a que es e pos e io men e pe mi a almacena la in- o mación gene ada en ablas de la lib e ía Pandas14, gua da los como CSV. Pa a nues o p oyec o, hemos decidido no u iliza la lib e ía de PyPI ya que EDWAR sigue bajo desa ollo po los miemb os del equipo, po ese 11h ps://es.wikipedia.o g/wiki/Ma iaDB Accedido: 16/05/2021 12h ps://es.wikipedia.o g/wiki/NoSQL Accedido: 16/05/2021 13h ps://pypi.o g/p ojec /Edwa d/ Accedido: 17/06/2021 14h ps://pandas.pyda a.o g/ Accedido: 17/06/2021 34 Capí ulo 4. He amien as mo i o se ha omado la decisión de abaja con el eposi o io p i ado de Gi Hub15 que con iene los úl imos cambios que aún no han sido lle ados a PyPI. En la Figu a 4.3 podemos obse a como es á de inida la a qui ec u a del módulo de p ocesamien o donde se ap ecia que a la en ada se in oducen los iche os con los da os de los disposi i os IoT y la con igu ación a u iliza . Pos e io men e, con es os da os, EDWAR almacena la in o mación de los iche os en memo ia y p ocede a su en ío a cada uno de los modelos que se especi ican en el iche o de con igu ación (es os modelos se denominan pa se en la imagen). Po úl imo, una ez ob enida la nue a in o mación se almacena nue amen e pa a luego se expo ada en iche os CSV o a una base de da os. Figu a 4.3: A qui ec u a del módulo de p ocesamien o EDWAR. Fuen e: Reposi o io EDWAR 4.6 Flask F amewo k Flask16 es un amewo k del lenguaje de p og amación Py hon, que pe mi e c ea aplicaciones webs de o ma sencilla. Es e amewo k es a siendo u iliza- do ac ualmen e pa a cons ui Applica ion P og amming In e ace17 (API), so wa e que pe mi e la comunicación en e dos aplicaciones, obus as de una o ma ápida, sencilla y e icien e. 15h ps://gi hub.com/g eenlsi/edwa Accedido: 17/06/2021 16h ps:// lask.palle sp ojec s.com/en/2.0.x/ Accedido: 17/06/2021 17h ps://www.muleso .com/ esou ces/api/wha -is-an-api Accedido: 17/06/2021 4.7. G a ana 35 4.7 G a ana G a ana18 es un so wa e que pe mi e ealiza la isualización de da os, ba- sados en mé icas p o enien es de dis in as uen es de almacenamien o de in o mación. En la Figu a 4.4, podemos obse a el panel de con ol con igu able que o ece G a ana pa a isualiza los da os. La in o mación que aquí se mues a es comple amen e con igu able po el usua io y pe mi e man ene con ol so- b e las mé icas almacenadas en In luxDB, además de que ambién pe mi e ene el con ol sob e el clús e de Kube ne es pa a con ola su unciona- mien o y consumo. Figu a 4.4: Panel de con ol de G a ana. Fuen e: G a ana 4.8 Agen e se ido Un Agen e se ido es un p og ama que colecciona mé icas de di e en es uen es pa a luego dis ibui las a los di e en es se icios que es én subsc i- os a él. A con inuación habla emos un poco sob e dos de los agen es más conocidos Teleg a (sección 4.8.1) y Ka ka (sección 4.8.2). 18h ps://g a ana.com Accedido: 17/06/2021 42 Capí ulo 5. Implemen ación Figu a 5.1: Diag ama de la p ime a a qui ec u a de la solución. p ime a ap oximación un Bucke de S31. Po o a pa e podemos obse a el se icio de conexión a es e módulo que nos pe mi i á conexiones p i adas p o enien es únicamen e den o del clús e . 5.1.1.2 Módulo de Ma iaDB Pa a no sob eca ga la base de da os de In luxDB, se decidió implemen a una base de da os elacional que nos pe mi i á accede a los da os de los pacien es y end á in o mación pa a ob ene los da os de la base de da os de se ies empo ales, así como in o mación clínica del pacien e ecogida, po ejemplo median e egis o web o median e aplicación mó il si exis e. Dicha base de da os es Ma iaDB, la cual se explica en la sección 4.4.1.2. 1h ps://aws.amazon.com/es/s3 Accedido: 18/06/2021 5.1. A qui ec u a de la solución 43 Figu a 5.2: Esquema del módulo de In luxDB. Figu a 5.3: Esquema del módulo de Ma iaDB. 5.1.1.3 Módulo de Teleg a Como ya hemos explicado an e io men e en la sección 4.8.1, es un agen e se ido que pe mi e dis ibui la in o mación ob enida. Es e módulo es á pensado pa a ecibi los da os que se engan que gua - da en la base de da os de se ies de iempo, ya que Teleg a nos pe mi e ecoge mé icas de los senso es y luego en ia las a In luxDB pa a su al- macenamien o. En la Figu a 5.4 podemos obse a un Deploymen con una sola éplica y un se icio, po an o es e módulo en cuan o a la a qui ec- u a de Kube ne es es de los más básicos de es e p oyec o, jun o con el de ecopilación de da os (sección 5.1.1.4). 5.1.1.4 Módulo de ecolección de da os Es e módulo es esencial pa a el p oyec o, ya que, como se ha indicado an e- io men e en o as secciones (sección 1.1 y 2.3) deben ex ae los da os desde 44 Capí ulo 5. Implemen ación Figu a 5.4: Esquema del módulo de Teleg a . la web de Empa ica2pa a luego en ia los y almacena los en la base de da os de se ies empo ales pa a que sea ácil el acceso po el médico a a és del módulo de web hos ing. En la Figu a 5.5, podemos obse a que es e módulo, en cuan o a qui- ec u a, es básico, solo es necesa io un deploymen y un se icio pa a pode ene una di ección IP den o del clús e y pe mi i el en ío de da os al módulo de Teleg a . Figu a 5.5: Esquema del módulo de ecolección de da os. 5.1.1.5 Módulo de web hos ing Po úl imo, enemos el módulo que ges iona la pla a o ma web, el cual se á el que pe mi i á la in e acción de los médicos con los da os gene ados po sus pacien es. En la Figu a 5.6, podemos obse a como es e web hos ing cons a de un deploymen (sección 4.2.3) que posee a ias éplicas pa a p e eni el allo en uno de ellos y que pe mi a la conexión po pa e del usua io en caso de allo. Es a a qui ec u a ha enido algunos p oblemas, y po eso hemos decido ealiza pequeños cambios que nos lle a on a cambia algunas de las cosas, como e emos en la sección 5.1.2. 5.1.2 Segunda a qui ec u a p esen ada Como segunda a qui ec u a se implemen a on cambios meno es, pa a solu- ciona algunos p oblemas ob enidos con el desa ollo. El p oblema p incipal que de i ó en el cambio de a qui ec u a, es que el módulo de Teleg a (sección 4.8.1) no uncionaba co ec amen e, po ese mo i o hemos decidido cambia - lo po un módulo que ambién es un agen e se ido , Ka ka, explicado en 2h ps://www.empa ica.com/en-eu/ esea ch/e4/ Accedido: 18/06/2021 5.1. A qui ec u a de la solución 45 Figu a 5.6: Esquema del módulo de webhos ing. la sección 4.8.2. Además, o o cambio que se puede obse a en es a a qui- ec u a es que hemos eliminado po comple o los namespaces que eníamos an e io men e debido a que al in en a conec a algunos de los pods, nos daba e o . Po o a pa e, se nos indico ambién que los da os desca gados debían se p ocesados po EDWAR (sección 4.5). En la Figu a 5.7, podemos obse a el esquema gene al de es a a qui ec u a, donde no se obse an los namespaces, se cambia el módulo de Teleg a y se añaden los módulos de ing ess y EDWAR. Figu a 5.7: Diag ama de la segunda a qui ec u a de la solución. 46 Capí ulo 5. Implemen ación 5.1.2.1 Módulo de p ocesamien o de da os Es e módulo, como se explica en la sección 4.5, es á pensado pa ecibi los da os y p ocesa los an es de su almacenamien o en la base de da os. En es a p ime a ap oximación hemos in en ado u iliza su posibilidad pa a conec a se di ec amen e a la base de da os, pe o lamen ablemen e no u imos éxi o en ealiza es o. En la Figu a 5.8, podemos obse a la conexión que se in en o ealiza en e los módulos de EDWAR 4.5 e In luxDB 4.4.2.1, es a conexión no se ealizó de es a o ma ya que había que ealiza modi icaciones sob e el código uen e de EDWAR, pe o desconocíamos como uncionaba pa a es e aspec o. Figu a 5.8: Diag ama de la p ime a conexión in en ada pa a el uso de ED- WAR. 5.1.2.2 Módulo de Ka ka Ka ka, como explicamos en la sección 4.8.2, es un agen e se ido que nos pe mi e ecopila la in o mación y dis ibui la en e los di e en es elemen os que es án susc i os a ac ualizaciones. Es a uncionalidad es ú il pa a el p o- yec o ya que se pod ía isualiza en iempo eal la in o mación suminis ada po los disposi i os al mismo iempo que se almacena en la base de da os. Se in en ó usa es e agen e se ido ya que eníamos p oblemas con Tele- g a al in en a con igu a lo y ya que uncionan de o ma simila , se in en ó sus i ui lo an es de elimina lo po comple o. Finalmen e, es e módulo se ha e i ado de la a qui ec u a inal ya que no con ibuía a mejo a la solución ob enida y solo apo aba un aumen o en la complejidad. 5.1.2.3 Módulo de cambio de con aseña Es e módulo apa ece en es e momen o, ya que se de ec a una necesidad con la web de Empa ica, y es que cada es meses pide al usua io un cambio de con aseña. Pa a los médicos es un abajo edioso el ene que cambia la con aseña de los disposi i os y en ia la a los pacien es pa a que puedan desca ga la in o mación. 5.1. A qui ec u a de la solución 47 5.1.2.4 Módulo de ing ess El módulo de ing ess es básicamen e un se icio de NGINX (sección 4.9), el cual nos pe mi e accede a la pagina web que se encuen e de den o del clús e de Kube ne es. Es e módulo, pa a la ase de desa ollo iene con igu ado es URLs que apun an a una sola IP, pe o se dis ibuyen en e las aplicaciones. En la igu a 5.9 podemos obse a la con igu ación de desa ollo pa a el módu- lo de ing ess, donde se en con igu ados los hos s “oncology g.es” y “bac- kend.oncology g.es”, lo cuales apun an a la di ección IP “172.16.241.18” en el pue o “80”. Figu a 5.9: Con igu ación de desa ollo del módulo de ing ess. 5.1.3 A qui ec u a inal Luego de in en a la a qui ec u a an e io , nos hemos pe ca ado de pequeños e o es que hacían que nues a aplicación no uese del odo uncional, azón po la cual su ge el modelo desc i o en la Figu a 5.10, donde se obse an pequeñas di e encias como po ejemplo, ya no hay módulos de agen e se - ido , en su luga encon amos un Backend que se enca ga de ges iona las pe iciones y en ia las a sus espec i os des inos inales. Además, ambién hemos eliminado el módulo de G a ana (sección 4.7) ya que no apo aba uncionalidad al p oyec o inal. A con inuación explica emos los cambios que se han ealizado en es a nue a a qui ec u a. 5.1.3.1 Módulo de p ocesamien o de da os En la a qui ec u a an e io , el módulo de p ocesamien o de da os enía un p oblema, el cual no pe mi ía que se p ocesa an los iche os debido a que al inicia el pod con el código, es e se ejecu aba y luego se quedaba bloqueado, es deci no ecibía la in o mación de o ma co ec a. Po es e mo i o, pa a ob ene un módulo uncional se cons uyó una capa de abs acción sob e EDWAR (Me ino Semp ún, 2020), pa a que es a aplica- ción se queda a escuchando a pe iciones po medio de un API. Una ez que se ecibe el iche o comp imido con o ma o zip, se p ocede a descomp imi lo 48 Capí ulo 5. Implemen ación Figu a 5.10: Diag ama de la a qui ec u a inal de la solución. y a p ocesa la in o mación ob enida po medio de EDWAR. En la Figu a 5.11 podemos obse a como el módulo que an es solo e a EDWAR aho a lo abso be un API pa a escucha a las pe iciones p o enien- es del Sc appe (sección 5.2), el cual en ía los iche os ZIP con los da os ecopilados po las pulse as de moni o ización. Figu a 5.11: Diag ama de la conexión implemen ada pa a el uso de EDWAR. 5.2. Recolección de da os 49 5.1.3.2 Módulo de base de da os de se ies de iempo An e io men e el BackEnd API se conec aba di ec amen e a la base de da os In luxDB, pe o debido a la g an can idad de pe iciones que gene a el módulo de EDWAR, hemos decido desacopla es a uncionalidad pa a que no sean len as las pe iciones que necesi a el si io web. 5.1.3.3 Módulo de Backend Es e módulo se c ea pa a sus i ui a Ka ka y Teleg a . Se hace es e cambio ya que, pa a los eque imien os ac uales de la web, no hace al a inclui la complejidad de un Agen e Se ido . Es e módulo cons a, de una API la cual se desc ibe en la sección 5.3.1, siendo el módulo cen al del sis ema, ya que odas las comunicaciones impo an es pasan di ec amen e po él. 5.1.3.4 Módulo de F on end Es e módulo se c ea pa a o maliza la cons ucción de una aplicación o- bus a, es el enca gado de suminis a las is as a la pagina web y además, si en algún momen o es necesa io, hace llamadas al Backend (sección 5.1.3.3) pa a ob ene la in o mación a mos a en las is as o pa a en ia la in o - mación que se debe almacena . De o ma gene al, podemos desc ibi es e módulo como un in e conec o en e los da os y el usua io inal. En las secciones que se encuen an a con inuación, se desc ibe como se han implemen ado de los módulos que iene es a a qui ec u a inal. 5.2 Recolección de da os El módulo de ecolección de da os es uno de los más simples den o de la a qui ec u a, es un módulo que implemen a una aplicación de Py hon que se desca ga las sesiones de los disposi i os di ec amen e desde la página de Empa ica E43, u ilizando la lib e ía de PyPI E4Clien 4. G acias a es e módulo ealizamos la desca ga de la in o mación de o ma pe iódica (una ez al día) y luego en ia á los da os al siguien e módulo que se enca ga á de p ocesa los da os. 5.3 Applica ion P og amming In e aces Pa a acili a el abajo a ealiza en es e p oyec o y ob ene comunicación en e cada uno de los pods que se encuen an en el clús e hemos imple- men ado cua o Applica ion P og amming In e aces (APIs) con la ayuda 3h ps://www.empa ica.com/connec /login.php Accedido: 18/06/2021 4h ps://pypi.o g/p ojec /e4clien / Accedido: 18/06/2021 50 Capí ulo 5. Implemen ación de Flask (sección 4.6), pa a el BackEnd (sección 5.3.1), pa a el F on End (sección 5.3.2), pa a la comunicación con la base de da os In luxDB (sección 5.3.3) y como hemos mencionado an e io men e, o a pa a EDWAR (sección 5.3.4). 5.3.1 Backend API Es e API cons a de u as pa a ges iona la in o mación que se encuen a en el sis ema. A con inuación se de allan cada una de las u as disponibles: •[GET] / egis e -op ions: De uel e las opciones posibles pa a odos los desplegables en la is a de egis o de pacien e. •[GET] / egis e -doc o -op ions: De uel e las opciones posibles pa- a odos los desplegables en la is a de egis o de un médico. •[GET]/ge -wea able-op ions: De uel e las opciones posibles del i- po de wea able. •[GET] /pa ien s-pagina ed: De uel e la lis a de pacien es ac i os o inac i os dado un núme o de página y un núme o de ilas a mos a . •[GET] /doc o s-pagina ed: De uel e la lis a de médicos dado un núme o de página y un núme o de ilas a mos a . •[GET] /wea ables-pagina ed: De uel e la lis a de wea ables egis- ados dado un núme o de página y núme o de ilas a mos a . •[GET] /ge -pa ien -coun : De uel e la can idad de pacien es ac i- os o inac i os egis ados en el sis ema. •[GET] /ge -doc o s-coun : De uel e la can idad de médicos egis- ados en el sis ema. •[GET] /ge -wea able-coun : De uel e la can idad de wea ables e- gis ado en el sis ema. •[GET] /ge -pa ien : De uel e la in o mación de un pacien e. •[GET] /ge -doc o : De uel e la in o mación de un doc o . •[GET] /ge -wea able: De ule e la in o mación de un wea able. •[GET] /ge -pa ien s-op ions-in o: De uel e la in o mación de las opciones de un pacien e, es o debido a que al ob ene la in o mación del pacien e, algunos alo es son solo iden i icado es y no ex os. 5.3. Applica ion P og amming In e aces 51 •[GET] /ge -doc o -op ions-in o: De uel e la in o mación de las op- ciones de un médico, es o debido a que al ob ene la in o mación del médico, algunos alo es son solo iden i icado es y no ex os. •[GET] /ge -wea able-op ions-in o: De uel e la in o mación de las opciones de un wea able, es o debido a que al ob ene la in o mación del wea able, algunos alo es son solo iden i icado es y no ex os. •[GET] /empa ica-c eden ials: De uel e una lis a con odos los usua ios egis ados en el sis ema que engan usua io y con aseña de Empa ica. •[GET] /check-session: De uel e si una sesión ya es á almacenada en el sis ema, o no. •[POST] /login: Ve i ica el usua io y con aseña suminis ado y si coincide con los egis os de la base de da os de uel e la in o mación del usua io, en caso de que no coincidan de uel e un mensaje de e o que indica que no es un usua io o con aseña álida. •[POST] /doc o : Una ez que se ha hecho login como médico, se llena la in o mación de la pan alla inicial con es a llamada. Es deci , se de uel e can idad de pacien es ac i os, can idad de pacien es inac i os y la can idad de médicos egis ados. •[POST] /c ea e-pa ien : Recibe la in o mación pa a egis a un pacien e en la base de da os, en caso de se co ec a almacena los da os y de uel e un mensaje de pacien e egis ado. •[POST] /c ea e-doc o : Recibe la in o mación pa a egis a un mé- dico en la base de da os, en caso de se co ec a almacena los da os y de uel e un mensaje de médico egis ado. •[POST] /c ea e-wea able: Recibe la in o mación pa a egis a un wea able en la base de da os, en caso de se co ec a almacena los da os y de uel e un mensaje de wea able egis ado. •[POST] /se -ac i e: Deshabili a a un usua io (pacien e o médico). •[POST] /se -inac i e: Habili a a un usua io (pacien e o médico). •[POST] /upda e-pa ien : Recibe da os ac ualizados de un pacien- e y ealiza los cambios en la base de da os, al inaliza de uel e un mensaje de pacien e ac ualizado. •[POST] /upda e-doc o : Recibe da os ac ualizados de un médico y ealiza los cambios en la base de da os, al inaliza de uel e un mensaje de médico ac ualizado. 58 Capí ulo 5. Implemen ación Campo Tipo Desc ipción ID INT Iden i icado GENDER_NAME VARCHAR(255) Nomb e de los géne os Tabla 5.14: Tabla GENDER •Tabla GENDER: Almacena los posibles géne os de las pe sonas. •Tabla WORKING_OPTION: Almacenas las opciones de abajo pa a los pacien es. Campo Tipo Desc ipción ID INT Iden i icado OPTION_NAME VARCHAR(255) Nomb e de la opción de abajo Tabla 5.15: Tabla WORKING_OPTION •Tabla WORKING_PLACE: Almacena el luga de abajo de un pacien e. Campo Tipo Desc ipción ID INT Iden i icado PLACE_NAME VARCHAR(255) Nomb e del luga del abajo Tabla 5.16: Tabla WORKING_PLACE •Tabla WORKING_SECTOR: Almacena el sec o de abajo de un pacien e. Campo Tipo Desc ipción ID INT Iden i icado SECTOR_NAME VARCHAR(255) Nomb e del sec o del abajo Tabla 5.17: Tabla WORKING_SECTOR •Tabla STUDY_OPTION: Almacena los posibles ipos de es udio. Campo Tipo Desc ipción ID INT Iden i icado OPTION_NAME VARCHAR(255) Nomb e del ipo de es udio Tabla 5.18: Tabla STUDY_OPTION •Tabla USER: Almacena odo la in o mación e e en e a los usua ios del sis ema, sin dis ingui en e pacien es y médicos. 5.4. Bases de Da os 59 Campo Tipo Desc ipción ID INT Iden i icado EMAIL VARCHAR(255) Email PASSWD VARCHAR(255) Con aseña FIRST_NAME VARCHAR(100) Nomb e LAST_NAME_ONE VARCHAR(100) P ime apellido LAST_NAME_TWO VARCHAR(100) Segundo apellido ACTIVE BOOLEAN Usua io ac i o PHONE VARCHAR(100) Telé ono MEDICAL_CENTER_ID INT Iden i icado del cen o médico GENDER_ID INT Iden i icado del ipo de géne o STUDY_OPTION_ID INT Iden i icado del ipo de es udio Tabla 5.19: Tabla USER •Tabla DOCTOR: Almacena oda la in o mación que es únicamen e sob e los médicos. Campo Tipo Desc ipción ID INT Iden i icado ADMINISTRATOR BOOLEAN Adminis ado CREATION_DATE DATE Día de c eación Tabla 5.20: Tabla DOCTOR •Tabla PATIENT: Almacena oda la in o mación que es únicamen e sob e los pacien es. •Tabla PATIENT_WEARABLE: Almacena los egis os de p es- amos de disposi i os wea ables a un pacien e. •Tabla EMPATICA_SESSIONS: Almacena in o mación de las se- siones de Empa ica desca gadas. •Tabla DATES_PATIENT: Almacena las echas ele an es pa a los pacien es, como el inicio y in de es udio. 5.4.2 In luxDB La es uc u a de In luxDB, al se una base de da os de se ies empo ales, no es en o ma de ablas, la in o mación simplemen e se ges iona en o ma de egis os que ienen di e en es e ique as que nos si en pa a iden i ica los pos e io men e. Po ese mo i o, pa a simpli ica hemos decido es ablece como e ique a, el id del usua io, el id de wea able con el que ue gene ado y la 60 Capí ulo 5. Implemen ación Campo Tipo Desc ipción ID INT Iden i icado BIRTHDATE DATE Fecha de cumpleaños SMOKING BOOLEAN Es umado CAFEIN BOOLEAN Consume ca eína DIET BOOLEAN Die a IMC DOUBLE Valo del IMC STARTING_AGE INT Edad inicio en e medad METASTASIS BOOLEAN Su ió me as asis PAIN_RELIEF_MEDICINES BOOLEAN Ali io del dolo con medicinas PAIN_RELIEF BOOLEAN Ali io de dolo sin medicinas DISTRESS INT Valo angus ia NORMAL_LIFE INT Valo de di icul ad ida no mal EFFECTIVENESS_MEDICINE INT E ec i idad de la medicina EXERCISES BOOLEAN Realiza eje cicio HOME_POST_CODE VARCHAR(20) Código pos al casa WORK_POST_CODE VARCHAR(20) Código pos al abajo ALCOHOL_OPTION_ID INT Iden i icado de la opción de alcohol DIAGNOSIS_OPTION_ID INT Iden i icado del diagnos ico FREQUENCY_CRISIS_OPTION_ID INT Iden i icado de ecuencia de c isis BODY_PARTS_OPTION_ID INT Iden i icado de las pa es del cue po CARDIOVASCULAR_RISK_OPTION_ID INT Iden i icado del iesgo ca dio ascula QUALITY_PAIN_OPTION_ID INT Iden i icado de la cualidad del dolo SLEEP_DISORDER_OPTION_ID INT Iden i icado de los ans o nos del sueño TIME_EFFECTIVENESS_MEDICINE_OPTION_ID INT Iden i icado de iempo de e ec i idad de la medicina PREVENTIVE_MEDICINES_OPTION_ID INT Iden i icado de las medicinas p e en i as DEFINITION_MOMENTS_OPTION_ID INT Iden i icado de la de inición de momen os RESCUE_MEDICATION_OPTION_ID INT Iden i icado de las medicinas de esca e DOCTOR_ID INT Iden i icado del doc o WORKING_OPTION_ID INT Iden i icado de la opción de abajo WORKING_PLACE_ID INT Iden i icado del luga de abajo WORKING_SECTOR_ID INT Iden i icado del sec o de abajo COMMENTS VARCHAR(500) Iden i icado de los comen a ios Tabla 5.21: Tabla PATIENT Campo Tipo Desc ipción PATIENT_ID INT Iden i icado del pacien e WEARABLE_ID INT Iden i icado del wea able ASSIGN_DATE DATE Fecha de asignación RETURN_DATE DATE Fecha de de olución EMPATICA_PASSWD VARCHAR(255) Con aseña empa ica Tabla 5.22: Tabla PATIENT_WEARABLE Campo Tipo Desc ipción SESSION_ID INT Iden i icado de la sesión PATIENT_ID INT Iden i icado del pacien e Tabla 5.23: Tabla EMPATICA_SESSIONS medición que se es á almacenando. A con inuación se de allan las es uc u as que se han c eado en es a base de da os: •Measu emen HR: Con iene los da os p ocesados que pe mi en ob- se a el i mo ca diaco del pacien e. 5.5. Con ol Pain Po al 61 Campo Tipo Desc ipción USER_ID INT Iden i icado del pacien e STARTING_DATE DATE Fecha inicio del es udio END_DATE DATE Fecha in del es udio Tabla 5.24: Tabla DATES_PATIENT •Measu emen TEMP Con iene los da os de la empe a u a del pa- cien e. •Measu emen EDA-SCR-SCL-SMNA: que con iene los alo es de elec ode mal ac i i y (EDA), las componen es ónica o SCL (Skin Conduc i i y Le el), las componen es asica o SCR (Skin Conduc i i y Respone) y el ac i idad ne iosa sudomo o a (SMNA). 5.5 Con ol Pain Po al Con ol Pain Po al es el nomb e de la aplicación web que se ha desa ollado pa a ges iona los da os del los disposi i os wea ables que se le dan a los pa- cien es. Al p incipio nues os u o es nos han suminis ado una web en PHP que ya se enia hecha pa a oma la como e e encia, el p oblema plan eado en es e pun o es que como se había plan eado la a qui ec u a se que ía que la web no hiciese llamadas di ec amen e a la base de da os, sino que pasa a siemp e po el BackEnd c eado (sección 5.3.1). Pa a es o, hemos decido implemen a el si io web u ilizando Flask (sec- ción 4.6), lo cual nos pe mi ió c ea una web es able en muy poco iempo. Pa a ello hemos enido que c ea uno a uno nue amen e los iche os HTML de cada una de las is as p esen es en la página web, basándonos en la web suminis ada. El esul ado inal de es a web puede consul a se en el capí ulo 6, en el cual se explica b e emen e los esul ados ob enidos con nues o abajo. 5.6 Pues a en p oducción Po úl imo en es e capí ulo, explica emos como ealiza , paso a paso, la pues a en ma cha de la a qui ec u a: 1. C ea el iche o sec e o de Kube ne es con la cla e SSH pa a desca - ga la in o mación de EDWAR. Es o se ealiza median e la siguien e ins ucción: kubec l c ea e sec e gene ic ssh-key -- om- ile=id_ sa=<id_ sa pa h> 62 Capí ulo 5. Implemen ación -- om- ile=id_ sa.pub=<id_ sa.pub pa h> 2. C ea los iche os con las con igu aciones pa a cada pod que lo nece- si e. Pa a ello se dejan, solo en los pod que necesi an con igu ación (in luxdb y mysql), los iche os .bck pa a ealiza la con igu ación ne- cesa ia. En es os iche os se deben esc ibi los alo es solici ados co- di icados en base64 y luego gua da los qui ándoles la ex ensión .bck pa a que pos e io men e cuando se u ilice el iche o ins all.sh sea c ea- do co ec amen e. A con inuación se mues a el con enido del iche o sec e .yml.bck necesa io pa a la con igu ación de la base de da os de In luxDB: apiVe sion : 1 kind : Sec e me ada a : name : in luxdb−c eds ype : Opaque da a : # To encode you can use : # echo −n ’ you − ex −he e ’ | base64 INFLUXDB_PASSWORD: Base64_Encoded_Tex INFLUXDB_USERNAME: Base64_Encoded_Tex INFLUXDB_DATABASE: Base64_Encoded_Tex INFLUXDB_HOST: Base64_Encoded_Tex 3. Si se es a u ilizando minikube, se debe habili a el uso de ing ess, pa a ello se debe ejecu a el comando: minikube addons enable ing ess 4. Luego de es o, enemos odo el en o no p epa ado pa a ejecu a el sc ip de ins alación, que se enca ga á de c ea odos los pods necesa ios pa a el uncionamien o de la aplicación. A es e sc ip se le deben da pe misos de ejecución y pos e io men e ejecu a lo: chmod +x ins all.sh && ./ins all.sh 5. Aho a es el momen o de con igu a los hos s si se a a u iliza miniku- be, pa a ello, debemos ob ene la IP que nos habili a ing ess y c ea en adas en el iche o /e c/hos s con los nomb es de los hos s que se decla en en la con igu ación de ing ess. Es a in o mación la podemos ob ene ejecu ando el comando: 5.6. Pues a en p oducción 63 kubec l ge ing ess Se obse a an los hos s que debemos de decla a y la IP que debemos u iliza pa a con igu a el iche o /e c/hos s cuyas nue as en adas pa a el caso de la con igu ación que se ap ecia en la Figu a 5.9 es: # TFG 172.16.241.18 oncology g.es 172.16.241.18 backend.oncology g.es 6. Una ez hecho es o, p ocedemos con la con igu ación de la base de da os. Debemos en a en el pod de mysql y ab i la base da os con los comandos: kubec l exec -i my-clus e -mysql-0 -- /bin/bash mysql -u <usua io> -p<con aseña> Pos e io men e, se deben de c ea odos los egis os que se encuen an en los iche os s c/sql/c ea e.sql y s c/sql/inse s.sql pa a el co ec o uncionamien o de la aplicación. 7. Luego de segui odos es os pasos, se emos capaces de na ega has a nues a pagina web, pa a comenza a hace uso del po al de ayuda implemen ado. En los capí ulos pos e io es se pueden ap ecia los esul ados ob enidos g acias a es a implemen ación (capí ulo 6). Además ambién se desc ibe qué apo ó cada uno de los in eg an es a es a implemen ación (capí ulo 7) y ambién algunos pun os en los que puede ap o echa es a implemen ación pa a da pie a u u os abajos (capí ulo 8). Cap´ ı ulo 6 Resul ados ob enidos En es e capí ulo se mos a án los esul ados ob enidos as la e sión inal de la a qui ec u a (sección 5.1.3) y el diseño e implemen ación de la pla a o ma web (capí ulo 5) Con ol Pain. Pa a la ealización de odas las is as se ha hecho uso de Boo s ap, adap ándolo a nues as necesidades. Pa a ello, a a és de un lujo de uso guia emos al lec o a lo la go de las di e en es is as. Lo ha emos desde la pe spec i a de los dis in os ipos de usua ios: adminis ado y médico. 6.1 Flujo de uso del adminis ado En es a sección se simula á el lujo de uso del po al pa a el caso de un doc o con pe misos de adminis ado (le llama emos adminis ado ) que, como e emos iene más uncionalidades que el es o de usua ios. Pa a la simulación, se supond á que el usua io ya exis e en la base de da os, es deci , que dispone de un co eo y con aseña. 6.1.1 Login El login, es la página que pe mi e inicia sesión a cualquie ipo de usua io además, apa ece á cada ez que se in en e accede a la pla a o ma. Pa a ello, se á necesa io p opo ciona un co eo y con aseña álidos. En la Figu a 6.1, a la de echa, podemos e como es inicialmen e la pan- alla de login. A la izquie da, el caso en el que las c edenciales son e óneas, po lo que se ale a al usua io que el usua io o con aseña que ha p opo cio- nado son inco ec os. Si po el con a io, son co ec os, pod á accede a la página de Inicio. 65 66 Capí ulo 6. Resul ados ob enidos Figu a 6.1: Pan alla de login 6.1.2 Inicio Una ez se haya iniciado sesión co ec amen e, se edi igi á al adminis ado a la pan alla de Inicio, como se puede e en la Figu a 6.2. A a és de es a, pod emos accede a las di e en es is as en unción de ipo de cada usua io. Figu a 6.2: Pan alla de inicio adminis ado En la pa e supe io , a a és de las cua o líneas ho izon ales pod emos expandi o con ae la ba a la e al, a la de echa, al pulsa sob e el icono de usua io pa a que en es e caso, el adminis ado , pueda accede a su pe il o ce a sesión. A la izquie da, a a és de la ba a la e al, pod emos accede a las is as de: Inicio (sección 6.2), Regis o Pacien e (sección 6.1.4), Lis a de Pacien es ac i os e inac i os (sección 6.1.5), Regis a médico (sección 6.1.8), Lis ado de Médicos (sección 6.1.8), Regis a wea able (sección 6.1.11) y Lis a de 6.1. Flujo de uso del adminis ado 67 wea ables (sección 6.1.12). Po úl imo, en el cen o, se puede e en o ma de widge s, los da os más impo an es: núme o de pacien es ac i os e inac i os, médicos egis ados y el núme o de wea ables egis ados en el sis ema. Pulsando en la pa e in e io de cada uno de ellos, se puede accede a las is as de Lis a de pacien es ac i os (sección 6.1.5), Lis a de pacien es inac i os (sección 6.1.5), Lis a de médicos (sección 6.1.9), Regis a wea able (sección 6.1.11) y Lis a de wea ables (sección 6.1.12) que se explica án más adelan e. Además, cada uno de los widge s que apa ecen en las di e en es is as, se pueden con ae pulsando sob e el símbolo que apa ece a la izquie da. 6.1.3 Pe il del médico En la Figu a 6.3, se mues a el pe il del adminis ado . Es á o mado po un módulo llamado da os pe sonales, en el que se puede e de mane a esumida la in o mación pe sonal del adminis ado : nomb e, p ime apellido, segundo apellido, sexo, co eo elec ónico, elé ono, cen o médico, es udio, adminis- ado (si se a a de un médico con pe misos de adminis ado ma ca á SI) y echa de c eación. Figu a 6.3: Pe il del Médico Una ez isualizado su pe il, el adminis ado puede comenza a hace uso de algunas de sus uncionalidades. Comenza emos con el Regis o de pacien es, al que se puede accede desde la ba a la e al o desde el Inicio pulsando en la pa e in e io de los widge s. 74 Capí ulo 6. Resul ados ob enidos Figu a 6.17: Edi a pacien e: da os de abajo Figu a 6.18: Edi a pacien e: da os clínicos Figu a 6.19: Edi a pacien e: hábi os de ida Figu a 6.20: Edi a pacien e: Cues iona io de inclusión más de las uncionalidades elacionadas con los pacien es, las que pe mi en la ges ión de médicos. Como e emos a con inuación, es e ipo de usua io puede egis a a o os médicos. 6.1. Flujo de uso del adminis ado 75 Figu a 6.21: Edi a pacien e: medicación 6.1.8 Regis o médicos Desde la is a de Regis o de médico, un adminis ado puede egis a mé- dicos con el ol de adminis ado o, simplemen e, médico. Como se puede e en la Figu a 6.22, el cues iona io de inclusión es á o mado po dos bloques, da os pe sonales y clínicos. Los p ime os, incluyen campos como nomb e, p ime y segundo apellido, sexo, co eo elec ónico y elé ono. El segundo, el ol asignado, cen o médico y es udio al que pe e- nece. Figu a 6.22: Regis o de médico Finalmen e, cuando se hayan comple ado odos los campos obliga o ios, se pueden obse a a los médicos egis ados a a és del Lis ado de médicos, p esen ado a con inuación. 6.1.9 Lis ado de médicos La es uc u a y diseño de es a is a, es la misma que la p esen ada en Lis a de pacien es (sección 6.1.5), como emos en la Figu a 6.23. Desde es a pan alla, se puede isualiza a los médicos egis ados jun o con el nomb e, apellidos y co eo. Además, al igual que pa a los pacien es, sal o po la unción habili a 76 Capí ulo 6. Resul ados ob enidos y deshabili a que no es á incluida pa a los médicos, ambién cuen a con iconos desde los que se puede accede a Pe il del médico (sección 6.1.3, como ya hemos is o an e io men e (sección 6.1.3) y a Edi a médico como p esen a emos a con inuación. Figu a 6.23: Lis ado de médicos 6.1.10 Edi a médico Como se puede e en la Figu a 6.24, a a és de es a is a, se puede edi a la in o mación que se había ecogido del o mula io de egis o de médicos (sección 6.1.8). Al igual que pa a el caso de los pacien es, solo se ealizan modi icaciones en la base de da os. Figu a 6.24: Edi a médico 6.1.11 Regis a wea able Todas las uncionalidades que es án elacionadas con los wea ables son ex- clusi as pa a los adminis ado es. 6.1. Flujo de uso del adminis ado 77 Como podemos e en la Figu a 6.25, los campos que se deben comple a son el ID del wea able, ipo de disposi i o (en nues o caso solo se ha u ili- zado la pulse a E4), usua io y la con aseña con los que se ha egis ado en empa ica E4. El ipo de wea able se a a de un campo selec o , ya que se á de mucha u ilidad pa a cuando se incluyan disposi i os di e en es. Figu a 6.25: Regis o de wea able 6.1.12 Lis a de wea ables Una ez se hayan egis ado los disposi i os wea ables, se pod án consul a a a és de es a is a (Figu a 6.26). Es á di idida en o ma de lis a, donde las columnas son ID, usua io y acciones. Pulsando en los iconos del campo acciones, se pod á accede a los da os de egis o y edición del disposi i o. Figu a 6.26: Lis ado de wea ables 6.1.13 Da os del wea able El adminis ado pod á e los da os de egis o de los disposi i os, de modo que puedan se consul ados en cualquie momen o (Figu a 6.27). 78 Capí ulo 6. Resul ados ob enidos Figu a 6.27: Da os del wea able 6.1.14 Edi a wea able Se a a de la misma in e az de Regis o de wea able (sección 6.25), con la di e encia de que a a és de es a is a se le pe mi e edi a en caso de cambia alguno de los campos (Figu a 6.28) Figu a 6.28: Edi a wea able Pa a e mina , a con inuación se explica á el lujo de eso po pa e del médico que, como e emos, es muy simila a la del médico adminis ado . 6.2 Flujo de uso del médico En es a sección, pod emos conoce odas las is as y uncionalidades a las que iene acceso el médico. A di e encia del médico adminis ado , es e solo iene acceso a la in o mación que es á elacionada con los pacien es. 6.2.1 Login El login, es el mismo que el explicado en la sección 6.1.1. Una ez que las c edenciales sean co ec as, pod á accede a la página de Inicio. 6.2. Flujo de uso del médico 79 6.2.2 Inicio La pan alla de Inicio, es a la que el usua io es di igido una ez que haya iniciado sesión co ec amen e. Es muy simila a la del Adminis ado , con la di e encia de que, el Médico no puede accede a las is as de Regis a médico (sección 6.1.8) y Lis a de Médicos (sección 6.1.9), po lo que ca ece de las uncionalidades que incluyen dichas is as. Figu a 6.29: Pan alla de inicio médico En la pa e supe io , podemos expandi y con ae la ba a la e al pul- sando sob e las cua o lineas ho izon ales y si pulsamos sob e el icono de usua io, e el pe il del médico y ce a sesión. A la de echa, a a és de la ba a la e al, podemos accede a la pan alla de Inicio,Regis a Pacien e yLis a de Pacien es (ac i os e inac i os). En el cen o, a modo de “widge s”, podemos e el núme o de pacien es ac i os e inac i os y pulsando en la pa e in e io de cada uno de ellos, se puede accede a la Lis a de pacien es ac i os yLis a de pacien es inac i os. Una ez el médico haya isualizado la pan alla de Inicio, puede accede a su pe il pulsando en la pa e supe io de la pan alla. 6.2.3 Pe il del médico La is a es la misma que la que p esen amos en el caso del pe il del admi- nis ado (sección 6.1.3), con la excepción de que el campo adminis ado en es e caso ma ca ía un NO. Desde la ba a la e al, el médico puede comenza a egis a pacien es como isualiza emos a con inuación. 6.2.4 Regis o de pacien es El o mula io de Regis o de pacien es, es idén ico al del lujo de uso del adminis ado (sección 6.1.4). Una ez que el pacien e haya sido egis ado co ec amen e, se puede accede a la Lis a de pacien es. 80 Capí ulo 6. Resul ados ob enidos 6.2.5 Lis a de pacien es Es a is a, al igual que la explicada an e io men e (sección 6.1.5), mues a a los pacien es ac i os e inac i os, espec i amen e. A di e encia del médico adminis ado , el cual iene acceso a la lis a de odos los pacien es egis ados, es e solo iene acceso a los que han sido c eados po él. Desde los iconos si uados en el campo de acciones, se puede habili a y deshabili a a los pacien es y ambién accede al Pe il del Pacien e yEdi a pacien e. 6.2.6 Pe il del pacien e El pe il del pacien e es el mismo que el is o p e iamen e Pe il del pacien e (sección 6.1.6). Después de que el médico haya es udiado la in o mación del pacien e, puede que necesi e edi a lo en caso de cambios du an e el es udio, como se p esen a en la siguien e sección. 6.2.7 Edi a pacien e La edición del pacien e no iene cambios espec o a lo que habíamos is o en el caso del adminis ado (sección 6.1.7). Al igual que la lis a y el pe il de cada pacien e, solo puede se isualizado po el médico que lo ha egis ado o po el adminis ado . 6.3 Flujo de uso pacien e El pacien e solo pod á consul a sus da os pe sonales, ya que nues a pla a- o ma se cen a sob e odo, en las uncionalidades que iene un médico. 6.3.1 Login Al igual que hemos is o al p incipio (sección 6.1.1), el login es el mismo pa a odos los usua ios. En el caso de los pacien es, supond emos que accede con un usua io y con aseña que ya es á en la BBDD. 6.3.2 Pe il Pacien e El pe il del pacien e es el mismo que el explicado en la sección 6.1.6. La única di e encia es que el pacien e no end á acceso a las g á icas que mues an los da os ob enidos de la pulse a biomé ica, pues es exclusi o de los médicos. Cap´ ı ulo 7 T abajo indi idual En es e capí ulo desc ibi emos el abajo indi idual que ha ealizado cada uno de los in eg an es de es e abajo, es ando desc i os de alladamen e bajo sus nomb es pa a así pode iden i ica quien ha ealizado cada una de las pa es explicadas an e io men e. 7.1 F ede ick E nes o Bo ges No onha Lo p ime o que u e que hace pa a el p oyec o ue in es iga los ipos de me odologías, sus en ajas y des en ajas, en que si uaciones se usa cada una de ellas y cual se ía la que mejo se ajus e con nues o abajo. Luego esc ibí ace ca de ella en la memo ia (capí ulo 3), pa a que mi compañe a y yo supié amos que hace y que lujo de abajo se iba a segui . Una ez seleccionada la me odología y ob enidos los eque imien os p in- cipales de nues os clien es (en nues o caso nues os u o es) empezamos la pa e de in es igación. En es a pa e, he in es igado algunas ecnologías que hemos u ilizado en el p oyec o: Kube ne es (sección 4.2), Helm (sección 4.3), Docke (sección 4.1), NGINX (sección 4.9) y G a ana (sección 4.7). Pa a las bases de da os, al p incipio nues os u o es nos aconseja on u iliza Ma iaDB (sección 4.4.1.2) e In luxDB (sección 4.4.2.1), en la cual he pa icipado en su in es igación. Cuando he c eado el pod con Ma iaDB allaba y no pe mi ía su uncionamien o, po ese mo i o, he buscado una al- e na i a, y as in es iga un poco, he seleccionado MySQL (sección 4.4.1.1) ya que uncionaba mejo con Kube ne es. También he sido esponsable de ealiza el diag ama de la a qui ec u a del so wa e. El p ime o que hice, explicado en la sección 5.1.1, usaba Teleg a (sección 4.8.1), pos e io men e lo hemos cambiado po Ka ka (sección 4.8.2) en la segunda ap oximación (sección 5.1.2). En la úl ima e sión del diag ama 81 82 Capí ulo 7. T abajo indi idual (sección 5.1.3), hemos qui ado comple amen e Ka ka, y además cambiado la base de da os elacional de Ma iaDB a MySQL. Pos e io men e, pa a la implemen ación del p oyec o he ealizado a ias a eas. He pa icipado en la c eación el pod con la ins alación de EDWAR, haciendo que es e, en una p ime a ase, desca gue el código más ecien e desde el eposi o io de Gi Hub, luego ese código se mue e a la ca pe a de abajo donde es a el API que pe mi e su in eg ación con los demás pods, po ul imo se inicia su ejecución pa a que dicho API espe e po en íos del Sc appe pa a p ocesa los da os. También he pa icipado en la modi icación del Sc appe pa a que, en luga de se un código que es á esc i o en una sola unción, sea una clase con sus mé odos bien especi icados y así acili a su uso. He ealizado ambién la p ime a e sión del la base de da os en MySQL, siendo es a una e sión uncional pe o no comple a, po que al aban algunos da os de egis o de los pacien es que son impo an es pa a el p oyec o. Pa a las API que hay en odo el p oyec o, he desa ollado la p ime a e sión de cada una de ellas pa a ene una e sión base sob e la cual pode abaja . Dichas API ue on implemen adas con el amewo k Flask (sección 4.6), que como hemos dicho an e io men e, pe mi e la c eación ápida y sencilla de es e ipo de aplicaciones. En el caso del F on End API he desa ollado llamadas pa a ob ene y en ia la in o mación necesa ia pa a cada una de las is as disponibles en el sis ema, es o implica que el F on End API hace llamadas al BackEnd API que es el único que puede ealiza consul as en las bases de da os pa a así ene odo cen alizado. El Backend API se enca ga de que los da os que se an a almacena , o consul a sean siemp e co ec os, po an o en ella hay consul as pa a odos la mayo ía de los pods que es án en el clús e , siemp e que equie an hace uso de las base de da os. Análogamen e, se debía busca la mane a de ealiza una comunicación e ec i a en e cada uno de los pods de In luxDB y EDWAR, po es e mo i o se decidió que la mejo opción e a c ea pa a cada una de ellas un API que pe mi ie a espe a pe iciones pa a luego in e ac ua con los ecu sos. Po lo an o, pa a he implemen ado ademas del F on End y BackEnd API, dos API adicionales que pe mi en espe a a una pe ición pa a almacena u ob ene los da os de la base de da os de se ies de iempo In luxDB y la segunda pe mi e espe a el en ió de in o mación a EDWAR pa a que di ec amen e empiece con el p ocesado de los da os que se han ob enido de los disposi i os. De acue do con lo que hemos plani icado en nues a me odología del so wa e, luego de inaliza la implemen ación de nues o p oyec o, hemos empezado a esc ibi la documen ación. En ella he esc i o odo lo que he in es igado, además de la documen ación sob e EDWAR (sección 4.5), am- bién sob e el Sc appe (sección 2.3). Además, ambién he esc i o el capí ulo de He amien as (capí ulo 4), donde explico cada una de las he amien as 7.2. Ca la Paola Peña ie a U ibe 83 necesa ias o que ue plan eada su u ilización y que no ue on c eadas po noso os. Luego, esc ibí sob e la implemen ación (capí ulo 5), donde se de a- llan las es a qui ec u as po la hemos pasado. Y pa a inaliza , esc ibí las conclusiones (capí ulo 9) a las que hemos llegado as la ealización de es e abajo. 7.2 Ca la Paola Peña ie a U ibe Pa a pode isualiza la p oblemá ica que en ol ía nues o p oyec o, u e que in es iga la azón po la cuál es an impo an e pode ex ae , p ocesa y analiza los da os p o enien es de los di e en es disposi i os wea eables. Además, pude ocaliza el p incipal p oblema que enemos que abo da con es e TFG. Po úl imo, iden i iqué los p incipales obje i os que que emos cub i con el desa ollo de es e p oyec o. Una ez iden i icado cual es el p incipal p oblema, empecé a indaga so- b e las posibles soluciones que ya se habían p opues o o desa ollado pa a in en a esol e lo. Pa a ello, leí nume osos a ículos cien í icos e in es i- gaciones en los que se p oponían posibles soluciones, en muchos casos con esul ados p ome edo es. De es a mane a, hemos podido ex ae ideas so- b e las di e en es p opues as que se habían hecho y analizando si podíamos u iliza las en nues o TFG. Inmedia amen e después de conoce la me odología y el lujo de abajo a segui , pa icipé en la in es igación de Kube ne es (sección 4.2) jun o con mi compañe o. Al p incipio de mane a más gene al, con una p ime a oma de con ac o, buscando in o mación en la documen ación o icial de la web de k8s y después indagando sob e su implemen ación. En cuan o al almacenamien os de los da os, colabo é en el es udio y en cómo se podía p ocede a la in eg ación en Kube ne es de las bases de da os ecomendadas po los u o es de es e p oyec o: Ma iaDB (sección 4.4.1.2) e In luxDB (sección 4.4.2.1). También in es igué sob e el Sc appe (sección 2.3) y EDWAR (sección 4.5) que ue p opo cionado po nues os u o es po lo que u imos que en ende como es aban implemen ados. De es e úl- imo, analicé los dis in os a chi os que nos p opo cionaba as su ejecución pa a sabe como ep esen a los da os en las co espondien es g á icas que inclui íamos en la is a del médico. Una ez hecha la in es igación se comenzó la ase de implemen ación. En la que colabo é en la modi icación de algunas unciones del Sc appe , adap- ándolo según a nues as necesidades. Implemen é una p ime a e sión del pod Ma iaDB pa a su pos e io in eg ación en Kube ne es. También ealicé una p ime a ap oximación de la es uc u a de la base de da os en Ma iaDB, analizando que ablas y a ibu os nos ha ían al a pa a el desa ollo de la página web. Pos e io men e, esc ibí en SQL la c eación de las ablas en su co espondien e iche o. Desa o unadamen e, el pod no uncionaba bien en Bibliog a ía Beg, M.,Gup a, A.,S ewa , T. yRe ho s , C. P omise o wea a- ble physical ac i i y moni o s in oncology p ac ice. Jou nal o oncology p ac ice, ol. 13,2, página 82–89, 2017. Cappon, G.,Accia oli, G.,Ve o e i, M.,Facchine i, A. ySpa- acino, G. Wea able con inuous glucose moni o ing senso s: A e olu ion in diabe es ea men . Elec onics, ol. 6(3), 2017. ISSN 2079-9292. Chanio is, I. K.,Ky iakou, K.-I. D. yTselikas, N. D. Is node.js a iable op ion o building mode n web applica ions? a pe o mance e a- lua ion s udy. ol. 97(10), 2015. ISSN 0010-485X. Channa, A.,Popescu, N. yRehman Malik, N. Managing co id-19 global pandemic wi h high- ech consume wea ables: A comp ehensi e e- iew. En 2020 12 h In e na ional Cong ess on Ul a Mode n Telecommuni- ca ions and Con ol Sys ems and Wo kshops (ICUMT), páginas 222–228. 2020. Du án-Vega, L.,San ana, P.,Buen os o, R.,Con e as Cas i- llo, J.,Anido-Ri ón, L.,Ga cia-Ruiz, M.,Mon esinos-López, O. yEs ada, F. An io sys em o emo e heal h moni o ing in elde ly adul s h ough a wea able de ice and mobile applica ion. Ge ia ics, ol. 4, 2019. Gao, W.,B ooks, G. A. yKlono , D. C. Wea able physiological sys ems and echnologies o me abolic moni o ing. Jou nal o Applied Physiology, ol. 124(3), páginas 548–556, 2018. Jamili oskouei, D. R.,Mousa iLou, Z.,Bakh ia i, Z. yBux Jalbani, K. Io -based heal hca e suppo sys em o alzheime ’s pa ien s. Wi eless Communica ions and Mobile Compu ing, ol. 2020, páginas 1–15, 2020. 91 92 Bibliog a ía K eda , J.,Coye, M. J. yE e e , W. Connec ed heal h: A e iew o echnologies and s a egies o imp o e pa ien ca e wi h elemedicine and eleheal h. Heal h A ai s, ol. 33(2), páginas 194–199, 2014. La son, N. yPinske , J. Con inuous glucose moni o ing in child en wi h ype 1 diabe es. In e na ional jou nal o pedia ic endoc inology, ol. 2013, página 8, 2013. Mangado, N. G. yNie o, M. J. R. P ueba de la ma cha de los 6 minu os. CIBERES, páginas 15–22, 2016. Meh a, D.,Deshmukh, T.,Sunda esan, Y. B. yKuma esan, P. Con- inuous moni o ing and de ec ion o epilep ic seizu es using wea able de i- ce. En Sma Inno a ions in Communica ion and Compu a ional Sciences, páginas 77–84. Sp inge Singapo e, Singapo e, 2019. Me ino Semp ún, M. Diseño e implemen ación de una he amien a mul i- pla a o ma pa a ex acción de in o mación de disposi i os biomé icos io . Uni e sidad Poli écnica de Mad id, 2020. Pagán, J.,De O be, M. I.,Gago, A.,Sob ado, M.,Risco-Ma ín, J. L.,Mo a, J. V.,Moya, J. M. yAyala, J. L. Robus and accu a e modeling app oaches o mig aine pe -pa ien p edic ion om ambula o y da a. Senso s, ol. 15(7), páginas 15419–15442, 2015. ISSN 1424-8220. P essman, R. Ingenie ía del so wa e. Un en oque p ác ico. McG aw-Hill, Mexico, D.F., 2010. Roblye , D. M. Pe spec i e on he inc easing ole o op ical wea ables and emo e pa ien moni o ing in he COVID-19 e a and beyond. Jou nal o Biomedical Op ics, ol. 25(10), páginas 1 – 9, 2020. Sannino, G.,Falco, I. yDe Pie o, G. Moni o ing obs uc i e sleep apnea by means o a eal- ime mobile sys em based on he au oma ic ex ac ion o se s o ules h ough di e en ial e olu ion. Jou nal o bio- medical in o ma ics, ol. 49, 2014. Singhal, A. yCowie, M. The ole o wea ables in hea ailu e. Cu en hea ailu e epo s, ol. 17,4, páginas 125–132, 2020. Whelan, M. E.,O me, M. W.,Kingsno h, A. P.,She a , L. B., Den on, F. L. yEslige , D. W. Examining he use o glucose and physical ac i i y sel -moni o ing echnologies in indi iduals a mode a e o high isk o de eloping ype 2 diabe es: Randomized ial. JMIR Mheal h Uheal h, ol. 7(10), 2019. Woo on, R. Telemedicine. BMJ, ol. 323(7312), páginas 557–560, 2001. ISSN 0959-8138. Bibliog a ía 93 Yach, D.,Hawkes, C.,Gould, C. L. yHo man, K. J. The global bu - den o ch onic diseaseso e coming impedimen s o p e en ion and con ol. JAMA, ol. 291(21), páginas 2616–2622, 2004. ISSN 0098-7484. Yang, Z.,Zhou, Q.,Lei, L.,Zheng, K. yXiang, W. An io -cloud based wea able ecg moni o ing sys em o sma heal hca e. Jou nal o medical sys ems, ol. 40(12), página 286, 2016. ISSN 0148-5598. Yoon, J. G.,Fa es, M.,Hoy , W. J. ySnyde , C. Diagnos ic accu acy and sa e y o con i m x™inse able ca diac moni o in pedia ic pa ien s. Pedia ic Ca diology, ol. 42, páginas 142–147, 2020.