scieee Open visual document viewer

glUCModel para iOS

Linde Blázquez, Francisco Javier

Full text

POR: FRANCISCO JAVIER LINDE BLÁZQUEZ ! GRADO EN INGENIERÍA DEL SOFTWARE FACULTAD DE INFORMÁTICA DEPARTAMENTO DE ARQUITECTURA DE COMPUTADORES Y AUTOMÁTICA UNIVERSIDAD COMPLUTENSE DE MADRID ! ! ! ! ! ! ! ! PROYECTO DE FIN DE GRADO EN INGENIERÍA DEL SOFTWARE ! Mad id, a 18 de Junio de 2014 Di ec o : José Ignacio Hidalgo Colabo ado : J. Manuel Colmena glUCModel pa a iOS AUTORIZACIÓN DE DIFUSIÓN Y UTILIZACIÓN ! ! F ancisco Ja ie Linde Blázquez au o iza a la Uni e sidad Complu ense de Mad id a di undi y u iliza con ines académicos, no come ciales y mencionando exp esamen e a su au o , an o la p opia memo ia como el código, los con enidos audio isuales, incluidas imágenes del au o y documen ación. ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! Es e documen o se dis ibuye bajo licencia C ea i e Commons BY-NC-SA 3.0. ! Dicha licencia pe mi e: Compa i — copia y edis ibui el ma e ial en cualquie medio o o ma o Adap a — ans o ma y c ea a pa i del ma e ial ! Bajo las condiciones siguien es: Reconocimien o — Debe econoce la au o ía del documen o. Debe p opo ciona un enlace a es e documen o o iginal e indica si se han ealizado modi icaciones sob e el mismo. No Come cial — No puede u iliza el ma e ial pa a una inalidad come cial. Compa i Igual — Si ans o ma o c ea a pa i del ma e ial, debe á di undi sus con ibuciones bajo la misma licencia que el o iginal. ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! A Ge a do Fe nández Mo eno. ! Po se un ejemplo de abajo y cons ancia. Po se i me de mo i ación. ! ! ! AGRADECIMIENTOS ! ! Mis más since os ag adecimien os a mi di ec o de p oyec o José Ignacio Hidalgo po odo el iempo dedicado, po el in e és mos ado y po su paciencia y amabilidad du an e el desa ollo del p oyec o. Ag adecimien os a José Manuel Colmena po su colabo ación en el p oyec o, ha a ojado luz en aquellos emas écnicos que eque ían una consul a ex e na. Ag adecimien os a mi compañe o Abdelkhalek El Mansou i po colabo a en aquellas a eas comunes del p oyec o así como po p es a la ayuda que le ha sido posible en el p oyec o. ! ! ! ! ! ! ! ! ! ! ! ! ! ÍNDICE ! 1. In oducción: Pág. 8 2. ¿Qué es glUCModel?: Pág.14 3. Desa ollando en iOS: Pág.17 4. Implemen ación: Pág.26 5. Resul ado: Pág.37 6. Conclusiones: Pág.41 7. Fu u o de la aplicación: Posibles mejo as: Pág.42 8. Bibliog a ía: Pág.42 ! Apéndice 1: Manual de Uso (Pacien e): Pág.45 Apéndice 2: Manual de Uso (Médico): Pág.57 ! ! ! ! ! ! ! Ve sión en Inglés: Página 65 English Ve sion: Page 65 ! Página  de 6 105 ! Página  de 7 105 1. INTRODUCCIÓN ! La ecnología debe juga un papel impo an e en nues a sociedad, y es que no debemos con empla la sólo como una he amien a pa a ayuda nos a hace lo que ya sabemos, sino que enemos que i mas allá y concebi la como una he amien a pa a hace cosas que has a aho a no podíamos hace , cosas que ni siquie a imaginábamos. Sin emba go, en ocasiones el emendo po encial que ienen las! nue as ecnologías no es á siendo ap o echado plenamen e, y es o se! debe a que muchas eces se han desa ollado las he amien as, pe o aún no se han iden i icado los p oblemas que que emos esol e . Son muchas las pe sonas que en su día a día ienen que lucha con p oblemas, p oblemas pe sonales, p oblemas labo ales, económicos, amilia es, de salud… Es en es os úl imos en los que nos amos a cen a . Y es que según un es udio ealizado po [email p o ec ed] en 2011 el 13,8% de los españoles mayo es de 18 años su e diabe es, y a ni el mundial hay mas de 260 millones de pe sonas diabé icas. Es os da os a ojan su icien e luz ace ca de la magni ud del p oblema. ! 1.1 - HABLEMOS DE DIABETES La Diabe es Melli us (comúnmen e conocida como diabe es) es una en e medad que a ec a al me abolismo. No se a a de una en e medad empo al, du a oda la ida. Se ca ac e iza po que el pacien e mues a unos ni eles ele ados de glucosa en sang e (hipe glucemia). La Ame ican Diabe es Associa ion clasi ica la diabe es en 2 ipos: ! Página  de 8 105 Español/Spanish - Tipo 1: El pánc eas del pacien e no gene a insulina, de al modo que los ni eles de glucosa no pueden se educidos adecuadamen e. Es os pacien es son insulinodependien es, es deci que equie en de un apo e ex e no de insulina en su día a día. La o ma de inco po a es e apo e insulínico puede se median e una bomba o median e inyecciones. - Tipo 2: El pacien e gene a insulina en dosis in e io es a las co ec as y a es o se le debe añadi que el cue po mues a ole ancia a la glucosa, lo cual la con ie e en menos e ec i a educiendo los ni eles de glucosa en sang e. Es os pacien es no son insulinodependien es. A o unadamen e más del 90% de los diabé icos se encuen a en el segundo g upo, y decimos a o unadamen e po que es e ipo de diabe es es menos incapaci an e que la diabe es ipo 1. El p incipal a amien o pa a la diabe es ipo 2 consis e en log a un peso saludable y man ene una alimen ación sana, pe o en algunos casos equie en a amien o en o ma de pas illas o en e apas a anzadas necesi an ambién apo e ex e no de insulina. Los diabé icos ipo 1 son po an o los diabé icos que en su ida a ec ada en mayo medida. Deben man ene un con ol me iculoso de sus ni eles de glucemia en sang e pa a p e eni an o hipe glucemias (ni eles > 120mg/dl) como hipoglucemias (ni eles < 40mg/dl). El con ol me iculoso que mencionamos consis e en mediciones de glucemia en sang e, pa a ealiza pos e io es p edicciones basadas en la inges a de comida que an a ealiza , el posible depo e que ayan a p ac ica , el peso que engan en ese momen o, y muchos o os ac o es que in luyan en los ni eles de glucemia. En base a es a p edicción deben ealiza una es imación de la insulina que an a inyec a se pa a man ene sus ni eles de glucemia en unos alo es adecuados. ! 1.2 - GLUCMODEL La a ea de un diabé ico ipo 1 no es ácil. En la mayo ía de los casos los pacien es pe eccionan sus p edicciones con la p ác ica, pe o aún con muchos años de expe iencia el pacien e ye a en sus Página  de 9 105 Español/Spanish El uncionamien o de la aplicación es el siguien e: los pacien es suben los da os a a és de la in e az g á ica. Los médicos pueden e isa los da os de sus pacien es median e la misma in e az g á ica. El modelo de glucosa analiza la in o mación y gene a las ecomendaciones pa a el pacien e. El módulo de ap endizaje es á conec ado con la aplicación pa a comunica el p og eso de los pacien es con los es s. ! ! ! ! ! ! ! ! ! ! ! ! ! Página  de 16 105 Español/Spanish 3. DESARROLLANDO EN iOS 3.1 - ¿POR QUÉ iOS? La Apple App S o e es sin duda alguna la ienda de aplicaciones más en able del me cado a día de hoy. El día 2 de Julio de 2014 Apple hizo público su núme o de desca gas acumuladas en el App S o e desde su salida en 2007 du an e la WWDC (Wo ld Wide De elope Con e ence). En es os 7 años de ida del App S o e el núme o acumulado de aplicaciones desca gadas asciende a 75.000.000.000 (se en a y cinco mil millones). Du an e es os 7 años Apple ha epa ido a los desa ollado es 15.000.000.000$ (quince mil millones) de dóla es. Pa a hace una compa a i a hemos escogido a sus dos p incipales compe ido es: And oid y Windows Phone. Los da os o iciales que hemos ecogido son los siguien es: ! *Todos los da os co esponden al año 2013 FIGURA 2: Tabla compa a i a. Da os iendas de aplicaciones. Todos es os da os pueden encon a se en la página web de Fo bes, bajo el i ula “How Much Do A e age Apps Make?” ! h p://www. o bes.com/si es/ is anlouis/2013/08/10/how-much-do- a e age-apps-make/ Apple Google Mic oso Núme o de usua ios (en millones) 600 900 12 Núme o de Apps (en miles) 1250 800 160 Núme o de desa olado es (en miles) 235 150 45 Nº de desca gas (en miles de millones) 50 48 65 Pago a desa ollado es (en millones de $) 5000 900 100 Página  de 17 105 Español/Spanish Bas a con ija nos en que se han desca gado ap oximadamen e el mismo núme o de aplicaciones en iOS, en And oid y en Windows Phone, sin emba go los ing esos de los desa ollado es se mul iplican po más de 5 en Apple espec o a And oid, y po más de 50 espec o a Mic oso . Con los da os ob enidos an e io men e decidimos hace una compa a i a de en abilidad pa a es udia qué ienda e a más in e esan e pa a el desa ollado . ! *Todos los da os co esponden al año 2013 FIGURA 3: Tabla compa a i a. Ren abilidad de iendas de aplicaciones. ! Si p es amos a ención a la úl ima ila pod emos obse a que a a ec os mone a ios, un desa ollado de iOS ob iene 4 eces más ing esos que uno de And oid y 11 eces más que uno de Windows Phone. Los da os son cla os: La App S o e es a día de hoy la ienda de Apps más en able del me cado. Po an o como ingenie o me apo a mucho el hecho de pode desa olla aplicaciones pa a iOS, ya que pod ía llega a mone iza alguna en el App S o e. ! ! ! ! Apple Google Mic oso Media de aplicaciones po desa ollado 5 5 3 Media de desca gas po app 40.000 60.000 4.062 Bene icio medio po desca ga 0,10$ 0,01875$ 0,1538$ Bene icio medio po desa ollado 20.000$ 5.625$ 1.874$ Página  de 18 105 Español/Spanish 3.1 - LENGUAJE: OBJETIVE-C ! Ac ualmen e sólo se pueden desa olla aplicaciones na i as pa a iOS en el lenguaje de p og amación Obje i e-C. Pa a la p óxima e sión de iOS (iOS 8), que se espe a es é disponible en O oño de 2014, se pod á ambién p og ama en Swi . Swi ue p esen ado po Apple el 2 de Junio de 2014 po lo que aún no se sabe demasiado sob e es e nue o lenguaje. Obje i e-C es un lenguaje de p og amación que apa eció en 1980, y como su p opio nomb e indica es á o ien ado a obje os. Fue c eado po B ad Cox y en 1992 ue libe ado bajo la licencia GPL. Obje i e-C supone una le e capa po encima de C, po lo que es posible compila cualquie aplicación de C con un compilado de Obje i e-C, así como ambién es posible inclui código C di ec amen e en nues a aplicación en Obje i e-C. Semán icamen e es di e en e a Ja a o C++ ya que el p og amado no hace llamadas a mé odos de obje os, lo que hace es manda mensajes a los obje os pa a que ealicen las acciones que necesi emos. ! FIGURA 4: Ejemplo de llamadas en Ja a, C++ y Obje i e-C ! Es a peculia idad lo con ie e en un leguaje que en un p ime con ac o esul a ex año. En ocasiones p o oca que haya llamadas a Página  de 19 105 Español/Spanish Ejemplo de llamada a un mé odo en C++ y Ja a obje o->me odo (pa ame o); obje o.me odo (pa ame o); Ejemplo de en ío de mensaje en Obje i e-C: [obje o me odo : pa ame o]; unciones que ocupen a ias líneas de código po que no en an en la pan alla debido a lo la gas que se hacen. Es e es un ejemplo de una unción ex emadamen e sencilla que se puede encon a den o de es a aplicación. Su inalidad es mos a una sencilla en ana de ale a. FIGURA 5: Ejemplo de llamada a unción en a ias líneas. ! La unción ale S a us cuen a an sólo con dos líneas de código, la p ime a cons uye un UIAle View y la segunda le manda a es e nue o obje o la o den de mos a se. Como se puede obse a la llamada al cons uc o de UIAle View se iene que hace en a ias líneas po mo i os de espacio y cla idad. ! 3.2 - EL ENTORNO DE DESARROLLO: XCODE Apple es conocida po se una emp esa ce ada en muchos de sus aspec os. En p og amación no han ealizado excepciones. Es as son algunas de las condiciones que se deben cumpli : 1. La única mane a de p og ama pa a iOS o Mac OS en Obje i e-C es usa un Mac. Exis en al e na i as no o iciales pe o no esul an iables. Página  de 20 105 Español/Spanish 2. El único en o no de desa ollo capaz de desa olla , compila y ejecu a aplicaciones de iOS en Xcode (po supues o desa ollado po Apple). 3. Si deseamos p oba una aplicación sob e un disposi i o como un iPhone o un iPad, debemos con a a una cuen a de desa ollado de iOS que iene un cos e de 99$/año. 4. Si deseamos publica nues a aplicación debemos además de con a con la cuen a de desa ollado ci ada en el pun o an e io , pasa un es ic o con ol de nues a app, que ga an ice que es a cumple con las es icciones legales de la App S o e y p esen a un co ec o uncionamien o. FIGURA 6: P og ama de desa ollo pa a iOS y cos e del mismo. ! Una ez engamos lo necesa io podemos comenza a p og ama con Xcode. Cabe deci que Xcode es g a ui a lo cual al con a io de las es icciones an e io es, es o supone una g an en aja pa a el p og amado . Xcode ue lanzando en 2003 y es á in eg ado con In e ace Builde una he amien a g á ica pa a la c eación de in e aces. Es o pe mi e desa olla cie as pa es de la aplicación de una mane a sencilla y ápida. Xcode es capaz de compila aplicaciones en C, C++, Obje i e-C, Objec i e-C++, Ja a y AppleSc ip . Compañías ex e nas han desa ollado sopo es pa a Pascal, Ada y Pe l. Página  de 21 105 Español/Spanish Una ca ac e ís ica muy in e esan e de Xcode es que es capaz de dis ibui abajos pesados como el de cons ucción, en e a ios o denado es median e la ecnología Bonjou . Xcode p opo ciona ambién un ges o de disposi i os conocido como O ganize . Median e es e ges o podemos conec a nues o disposi i o iOS a nues o Mac pa a p oba las aplicaciones sob e el e minal. ! FIGURA 7: In e az ealizada en Xcode de o ma g á ica. A la de echa de la imagen se obse an los elemen os disponibles pa a su c eación. Las aplicaciones en iOS cuen an con un ni el de segu idad y con ol muy al o, po lo que odas las aplicaciones que gene emos deben i i madas po el desa ollado . Pa a ello Xcode u iliza un complejo sis ema de i mas y ce i icados digi ales. En es e apa ado Apple ha a ado de simpli ica el p oceso y ayuda nos median e Xcode pe o lo cie o es que es una a ea a dua. ! Página  de 22 105 Español/Spanish FIGURA 8: O ganize . He amien a de ges ión de disposi i os iOS pa a es . FIGURA 9: Ejemplo de ce i icado u ilizado pa a i ma la aplicación glUCModel. Obsé ese que se indica el ipo de enc ip ación así como las cla es pública y p i ada del algo i mo de ci ado. Página  de 23 105 Español/Spanish Xcode cuen a con un simulado en pan alla en el que podemos p oba nues as aplicaciones si no enemos un e minal ísico o la cuen a de desa ollado necesa ia. Es e simulado es muy ápido, apenas necesi a 3 segundos pa a encende se y ap oximadamen e unos dos segundos en ca ga la aplicación. Además de pe mi i nos p oba la app si no enemos las he amien as necesa ias, ambién o ece una g an en aja y es que es posible simula odos los disposi i os iOS an o iPhone, como iPad, como iPod ouch… en sus di e en es gene aciones y con la e sión de iOS que escojamos. He de añadi que he enido la opo unidad de u iliza el simulado And oid que o ece Google pa a desa ollo, y el iempo de encendido del simulado de Nexus 4 alcanzó los 10 minu os, se a a de una di e encia abismal con el simulado de iOS y supone un pun o a a o del desa ollo en iOS. FIGURA 10: Ejemplo de uso del simulado de iPhone 4s con iOS 7. ! La aplicación es á disponible en la página que la Uni e sidad Complu ense de Mad id iene des inada a las aplicaciones mó iles Página  de 24 105 Español/Spanish (h p://www.ucm.es/apps). Pos e io men e es a á disponible en el App S o e de Apple. ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! Página  de 25 105 Español/Spanish 4.4.3 - SEGURIDAD DE LA BASE DE DATOS ! La base de da os SQL es á p o egida median e usua io y con aseña, po lo que es e aspec o no debía se abo dado. La p eocupación se cen a po an o en la segu idad de las API’S desa olladas y en la conexión ealizada con las mismas. ! 4.4.4 - INTEGRIDAD DE LAS CREDENCIALES DE ACCESO ! Los da os sensibles que deben se p o egidos son sin duda los de Login. La pe ición de login se ealiza median e POST y la a iable que con iene la con aseña iaja ci ada. Es en la p opia aplicación iOS donde se ealiza el ci ado. Es e ci ado es á ealizado median e una unción de enc ip ado MD5, es el mismo algo i mo que u iliza glUCModel en la aplicación web, a di e encia de que el ci ado en es e caso es ealizado an es de ealiza la pe ición y no después, po lo que la segu idad es aún mayo que en la p opia aplicación web. ! 4.4.5 - PREVENCIÓN DE INYECCIÓN SQL ! O a p eocupación ue sin duda la posibilidad de que se inyec a a código SQL en las pe iciones a la API. Pa a p e eni es o las API’S es án p o egidas de modo que odas las pe iciones que son ecibidas se il an as su ecepción pa a ealiza un escapado de los ca ac e es especiales que no sean al anumé icos y puedan p o oca un aguje o de segu idad. T as ealiza es a p e ención se ealiza on di e sas p uebas en las que se a ó de bu la la segu idad de la API ce ando consul as SQL pa a ealiza olcados de la base de da os, inse ciones o bo ados. No se consiguió bu la la segu idad, es o demos ó que se a aba de API’S segu as. ! Página  de 32 105 Español/Spanish 4.4.6 - ALMACENAMIENTO LOCAL DE LOS DATOS Cuando el usua io no dispone de conexión a in e ne los da os son almacenados en el disposi i o pa a pos e io men e inse a los en la base de da os. Si el usua io cie a la app los da os se pe de ían, po lo que se plan eó que los da os que no se habían podido subi ue an almacenados de o ma local. iOS sopo a di e sos ipos de almacenamien o local. El más sencillo, lige o y ápido es NSUse De aul s. La des en aja de es e sis ema es que sólo pe mi e almacena ipos na i os de Obje i e-C. Nues a necesidad e a la de almacena obje os “insulina”, obje os “glucemia”, obje os “die a”… po lo que a p io i es e mé odo no nos se ía. Se omó la decisión de ealiza una unción que con e ía los da os al ipo S ing pa a almacena nos con NSUse De aul s. Al inicia se la aplicación los da os son ecupe ados y con e idos de nue o a los obje os de inidos po noso os (Glucemia, Insulina, Eje cicio… e c). FIGURA 19: Pan alla que in o ma al usua io de que sus da os no han sido subidos. Se almacena án de o ma local. Página  de 33 105 Español/Spanish 4.5 - MANTENIBILIDAD DE LA APP ! Pa a que la aplicación pueda se man enida más adelan e quizá po o o desa ollado o equipo de desa ollado es, el código ha sido debidamen e comen ado con acla aciones que indican de o ma cla a la inalidad de cada pa e de código como mues a la igu a 19. FIGURA 20: Ex ac o de código de la aplicación donde se obse a que el código con iene comen a ios acla a o ios. ! El desa ollo de la in e az se ha ealizado casi en su o alidad con la he amien a g á ica, pues o que si se desa olla con código se ía de una di icul ad muy ele ada a a de comp ende y modi ica el código. Cuando se usa la in e az g á ica se ob ienen esul ados áciles de comp ende como mues a la igu a 20. Página  de 34 105 Español/Spanish FIGURA 21: Cap u a del a chi o que gene a el menú in e io y sus en anas. ! 4.6 - LA SALUD DEL USUARIO ! Ha sido inco po ada una mecanismo de segu idad en la aplicación que in o ma al usua io si sus ni eles de azúca en sang e suponen un iesgo pa a su salud. Cuando se in oduce una medición al a que se encuen a en alo es conside ados de hipe glucemia, o cuando se in oduce un alo an bajo que se encuen a en zona de hipoglucemia, la aplicación con i ma es e da o, y si el usua io indica que es co ec o se le ecomienda un plan de ac uación. Los alo es conside ados como pelig osos han sido desc i os po los médicos endoc inos in oluc ados en el p oyec o de glUCModel, los alo es hipe glucémicos de e io an la salud del pacien e a la go plazo, y los alo es hipoglucémicos pueden causa la pé dida del conocimien o al pacien e. Las igu as 22 y 23 con ienen cap u as de los mensajes que son mos ados al usua io. Página  de 35 105 Español/Spanish FIGURAS 22 y 23: Mensajes de a iso en caso de Glucemia ele ada. ! ! ! ! ! ! ! Página  de 36 105 Español/Spanish 5. RESULTADO ! El esul ado del desa ollo ha sido sa is ac o io. Nos encon amos an e una aplicación que cumple los equisi os que se p opusie on al inicio y du an e el desa ollo. Se a a de una aplicación lige a, segu a y ápida. T as a ios es udios de endimien o, se ha podido comp oba que inicialmen e ocupa unos 20MB en memo ia RAM y que as un uso in enso de aplicación es a ocupa en memo ia RAM en o no a 50MB, el uso que se da del p ocesado nunca supe a el 1% pues o que la aplicación no necesi a ealiza cálculos. La igu a 24 mues a los da os de uso de la memo ia RAM y el p ocesado as un uso in enso. Se ha es udiado ambién el espacio que ocupa en disco la aplicación una ez es compilada. Se ha obse ado que la aplicación no llega a ocupa en disco 1MB. Si con amos con los da os que se almacenan de o ma local, puede ocupa 1,5MB o 2MB como se obse a en la igu a 25. FIGURA 24: Moni o de ecu sos del iPhone du an e la ejecución de glUCModel ! ! ! ! Página  de 37 105 Español/Spanish FIGURA 25: Cap u a de pan alla, espacio en disco de glUCModel. En cuan o a la in e az los esul ados son a mi juicio buenos. Los es de usabilidad ealizados han demos ado que la in e az es amigable e in ui i a. Las opiniones ecabadas ace ca de la expe iencia de usua io son buenas. ! ! ! ! ! ! Página  de 38 105 Español/Spanish ! ! ! ! ! ! ! ! ! ! FIGURA 26: Inse ción de Insulinas. FIGURA 27: His o ial de Insulina FIGURA 28: His o ial de Glucemias. FIGURA 29: Inse ción de da os de Peso ! ! ! ! ! ! ! ! ! ! ! ! Página  de 39 105 Español/Spanish FIGURA 25: Lis ado de Pacien es de un médico. ! ! ! ! ! ! ! ! ! Página  de 40 105 Español/Spanish 6. CONCLUSIONES ! El desa ollo del p oyec o ha culminado de o ma sa is ac o ia y la colabo ación con glUCModel ha sido bene iciosa pa a ambas pa es. Po un lado glUCModel aho a cuen a con una aplicación pa a iOS na i a que cumple con los equisi os que eque ía. Po o o lado como desa ollado , he adqui ido conocimien os de p og amación en Obje i e-C lo cual le apo a un g an alo a mi cu iculum y a mi po encial como au ónomo. Me he en en ado a p oblemas du an e el desa ollo que he sabido sol en a de o ma co ec a, p ueba de ello es que la aplicación ha salido adelan e y unciona co ec amen e. Lamen ablemen e el desa ollo ha es ado muy condicionado po los plazos de en ega y el calenda io uni e si a io, de habe enido disponibilidad o al de iempo y calenda io, la aplicación goza ía de más uncionalidades. ! ! ! ! ! ! ! ! Página  de 41 105 Español/Spanish PASO 4: NAVEGACIÓN POR EL MENÚ INFERIOR ! Una ez hayamos hecho el p oceso de Log In pod emos e es a pan alla: ! Es a es la pan alla donde se in oducen los nue os da os de glucemias. En la pa e in e io de la pan alla podemos obse a el es o de pes añas del menú. Página  de 48 105 Español/Spanish Podemos accede a Glucemia, Insulina, Die a, Eje cicio y más. Den o de más encon a emos Peso y Sali . En las siguien es imágenes se mues an las pan allas disponibles en o den de izquie da a de echa. ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! Página  de 49 105 Español/Spanish Si pulsamos en más e emos es a pan alla que nos mues a o as dos opciones: Peso y Sali . Desde la pan alla de peso pod emos añadi nues o peso co po al pa a ealiza un seguimien o de es e Si pulsamos en sali , se cie a la sesión iniciada en el paso 2 de al modo que se pasa al paso 1 de nue o. A con inuación se mues an unas cap u as de la in e az de subida de da os de peso y de la in e az pa a ce a sesión o Log Ou . ! ! ! ! ! ! ! ! ! ! ! ! ! Página  de 50 105 Español/Spanish PASO 5: SUBIR UN DATO ! Las in e aces pa a la subida de da os son simila es unas de o as, es o acili a adap a se a la app de o ma ápida. Pa a subi un da o debemos selecciona la opción del menú que nos in e ese subi . T as es o debemos selecciona la echa y la ho a, pa a lo cual disponemos de selec o es que sólo nos o ece án sólo echas y ho as álidas. Usa emos la in e az de subida de da os de insulina como ejemplo pa a las ins ucciones. Debemos ambién indica en qué momen o se ha ealizado es a medición, pa a lo cual disponemos de un selec o que sólo nos o ece ás las opciones de momen os disponibles. En es e caso al a a se de insulina ambién debemos indica la can idad y el ipo de insulina adminis ados. ! ! ! ! ! ! ! ! ! ! ! ! Página  de 51 105 Español/Spanish ! ! ! ! ! ! ! ! ! ! ! Pa a acili a la selección de la echa y la ho a, se ha habili ado un bo ón con o ma de lecha gi ando que al pulsa hace que la echa y la ho a sean las de ese momen o. En la imagen se mues a el bo ón pulsado. ! ! ! ! ! Página  de 52 105 Español/Spanish Du an e la subida del da o el bo ón de subi se sus i uye po una ule a de p oceso que nos inicia que en es os momen os la app es á subiendo un da o. Una ez e minada la subida el bo ón uel e a es a disponible. Al e mina de subi el da o ambién se mues a al usua io un mensaje de éxi o. ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! Página  de 53 105 Español/Spanish ! SUBIR UN DATO SIN CONEXIÓN A INTERNET ! Si la subida de los da os allase la aplicación se lo no i ica ía al usua io y almacena ía los da os de o ma local en el disposi i o pa a pos e io men e subi los cuando sea posible. El usua io sabe que hay un da o almacenado po que se mues a un globo en el menú in e io que indica el núme o de da os pendien es de se subidos. ! ! ! Página  de 54 105 Español/Spanish LA SALUD DEL PACIENTE: SUBIR UN DATO PELIGROSO ! Si el usua io sube un da o cuyos ni eles suponen un iesgo pa a s salud, la aplicación le in o ma á debidamen e. Es o sucede po ejemplo con las glucemias ele adas o las glucemias excesi amen e bajas. Las siguien es cap u as mues an los mensajes que la aplicación gene a. ! ! ! ! ! Página  de 55 105 Español/Spanish PASO 5: CONSULTAR EL HISTORIAL DE DATOS ! Pa a mos a su his o ial, un pacien e debe accede a la pes aña del menú que co esponde a los da os que quie a consul a . Po ejemplo si desea mos a su his o ial de insulinas debe á pulsa en insulinas. Una ez se mues e la pan alla de subida de da os, debe á pulsa en el bo ón que se encuen a en la pa e in e io de echa que dice “His .” (His o ial). El usua io pod á e una lis a con sus da os. En caso de que e eg esa , el usua io encon a á un bo ón que dice “A ás” en la pa e supe io izquie da de la pan alla. ! Página  de 56 105 Español/Spanish APÉNDICE: MANUAL DE USO (MÉDICO) ! PASO 1: ABRIR LA APLICACIÓN. ! Debemos localiza el icono de la aplicación en nues o disposi i o. Es a iene un logo azul con la ase “Bien enido a glUCModel”. Debemos pulsa sob e es e icono pa a ab i la Página  de 57 105 Español/Spanish ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! Página  de 64 105 Español/Spanish BY: FRANCISCO JAVIER LINDE BLÁZQUEZ ! GRADO EN INGENIERÍA DEL SOFTWARE FACULTAD DE INFORMÁTICA DEPARTAMENTO DE ARQUITECTURA DE COMPUTADORES Y AUTOMÁTICA UNIVERSIDAD COMPLUTENSE DE MADRID ! ! ! ! ! ! ! ! FINAL YEAR PROJECT IN SOFTWARE ENGINEERING ! Mad id, June 18, 2014 Di ec o : José Ignacio Hidalgo Colabo a o : J. Manuel Colmena Page  o 65 105 English/Inglés glUCModel o iOS AUTHORIZATION FOR DISTRIBUTION AND USE ! ! This documen is dis ibu ed unde C ea i e Commons BY-NC-SA 3.0. ! This license allows: Sha e - copy and edis ibu e he ma e ial in any media o o ma Adap - ans o m and c ea e om his ma e ial ! Unde he ollowing condi ions: A ibu ion - You mus a ibu e he au ho ship o he documen . You mus p o ide a link o his o iginal documen and whe he changes ha e been made on i . Noncomme cial - You can no use he ma e ial o comme cial pu poses. Sha e Alike - I ans o m, o build om he ma e ial, you mus dis ibu e he con ibu ions unde he same license as he o iginal. ! ! ! ! ! Page  o 66 105 English/Inglés ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! Dedica ed o: Ge a do Fe nández Mo eno. ! He is an example o ha d wo k and pe se e ance. He has been a mo i a ion o me. ! ! ! ! Page  o 67 105 English/Inglés ACKNOWLEDGEMENTS ! ! My since e hanks o my p ojec manage José Ignacio Hidalgo o all ime spen , o his in e es and o his pa ience and kindness du ing p ojec de elopmen . Thanks o José Manuel Colmena o his collabo a ion in he p ojec , has b ough ligh on hose echnical issues ha equi ed consul a ion. Thanks o my pa ne Abdelkhalek El Mansou i o wo king in hose common asks o he p ojec and o p o iding he help he has been able in he p ojec . ! ! ! ! ! ! ! ! ! ! ! ! ! Page  o 68 105 English/Inglés INDEX ! 1. In oduc ion: Page 71 2. Wha is glUCModel?: Page 77 3. De eloping on iOS: Page 79 4. Implemen a ion: Page 87 5. Resul : Page 98 6. Conclusions: Page 102 7. Fu u e o applica ion: Possible imp o emen s: Page 103 8. Bibliog aphy: Page 104 ! ! ! ! ! ! ! ! ! ! ! Use Manual can be ound in spanish a page 45. ! Page  o 69 105 English/Inglés 1. INTRODUCTION ! Technology should play an impo an ole in ou socie y, and we mus no only con empla e i as a ool o help us do wha we al eady know, bu we mus go u he and hink o i as a ool o make hings so a could no do hings e en imagined. Howe e , some imes he emendous po en ial o new echnologies ! no being ully exploi ed, and his because many imes he ools ha e been de eloped bu a e no ye iden i ied he p oblems we wan o sol e. Many people in hei daily li es ha e o s uggle wi h pe sonal p oblems, wo k p oblems, inancial, amily, heal h ... I 's in he las one in which we will ocus. And acco ding o a s udy by [email p o ec ed] in 2011 13.8% o Spania ds aged o e 18 ha e diabe es, and wo ldwide he e a e o e 260 million people wi h diabe es. These da a shows he magni ude o he p oblem. ! 1.1 - LET'S TALK ABOUT DIABETES Diabe es Melli us (commonly known as diabe es) is a disease ha a ec s me abolism. This is no a empo a y illness, li elong. Cha ac e ized by ha he pa ien exhibi s high le els o blood glucose (hype glycemia). The Ame ican Diabe es Associa ion Diabe es classi ied in o 2 ypes: - Type 1: The pa ien 's panc eas p oduces insulin, so ha blood glucose le els can no be adequa ely educed. These pa ien s a e insulin dependen s, ha mean ha hey equi e an ex e nal supply o insulin in Page  o 70 105 English/Inglés hei daily li es. How o inco po a e his con ibu ion may be insulin by a pump o by injec ions. - Type 2: The pa ien p oduces insulin o lowe igh and also he body shows glucose ole ance dose, making i less e ec i e in educing blood glucose le els. These pa ien s a e no insulin dependen s. Fo una ely o e 90% o diabe ics is in he second g oup, and say o una ely because his ype o diabe es is less disabling han ype 1 diabe es. The main ea men o ype 2 diabe es is o achie e a heal hy weigh and main ain powe heal hy, bu in some cases equi e ea men in pill o m o in ad anced s ages also need ex e nal insulin in ake. Type 1 diabe ics a e bo h diabe ics who see hei li es a ec ed disp opo iona ely. Mus main ain a moni o ing o you blood glucose le els o p e en bo h hype glycemia (le els> 120mg/dl) and hypoglycemia (le els <40mg/dL). The ca e ul con ol men ioned is blood glucose measu emen s o make p edic ions based on subsequen ood in ake, he spo p edic ed hey a e going o do, he weigh hey ha e a he momen , and many o he ac o s ha in luence in blood glucose le els. Based on his p edic ion should make an es ima e o insulin o be injec ed o keep hei blood glucose le els app op ia e alues. ! 1.2 - GLUCMODEL The ask o a ype 1 diabe ic is no easy. In mos cases pa ien s e ine hei p edic ions wi h p ac ice, bu e en wi h many yea s o expe ience he pa ien e o hei es ima es. I is in his daily ask ha glUCModel wan s o play a big ole. The idea behind glUCModel is o be able o p edic he pa ien 's blood le els based on cu en pa ame e s o he subjec as a e he nex le el o suga o ca bohyd a e in ake o ad ise a ce ain amoun o insulin. To calcula e he u u e suga le els glUCModel is de eloping e olu iona y g amma s based gene ic p og amming. This ype o de ini ion allows g ea e eedom in de ining he ma hema ical Page  o 71 105 English/Inglés exp ession o he solu ion, since i does no ha e es ic ions such as can be ound using linea equa ions. The p ojec is se e al yea s de eloped h ough he collabo a ion o he Uni e sidad Complu ense de Mad id, Uni e si y Hospi al P íncipe de As u ias (Alcalá de Hena es, Spain) and el hospi al Vi gen de la Salud (Toledo, Spain). The p o essionals in ol ed in he p ojec a e: J. Ignacio Hidalgo, José L. Risco-Ma in, Juan Lancha es y Osca Ga nica del depa amen o de A qui ec u a y Au óma as de la Uni e sidad Complu ense de Mad id. •J. Manuel Colmena y Al edo Cues a-In an e om C.E.S. Felipe II, Uni e sidad Complu ense de Mad id. •Es he Maqueda om depa amen o de nu ición y endoc inología del Hospi al Vi gen de la Salud (Toledo, España) •Ma a Bo ella y José An onio Rubio om depa amen o de nu ición y endoc inología del hospi al Uni e si a io P íncipe de As u ias (Alcalá de Hena es, España). ! 1.3 - THE PROJECT: THE MOBILE APPLICATION ! One o he main needs o glUCModel is collec ing da a, wi hou i hey could no ind he o mula o es ima ion o glucose, on he o he hand also could apply his o mula o in o m he pa ien o insulin be adminis e ed. To mee his need a web applica ion o en e da a and access was made, bu he use needs o en e da a a all imes and no doub ha he use does no ha e a compu e 24 hou s a day. I is possible o eco d he in o ma ion on a no epad o en e hem la e bu i is a con enien solu ion, so we chose he bes solu ion o he pa ien : C ea e a mobile applica ion. No one lea es his mobile phone, he da a a e e ealing: In Spain he e a e 26 million sma phones wi h in e ne access and 53.8% o Spanish mobile e minal na iga e using on a daily basis. These da a Page  o 72 105 English/Inglés we e collec ed and published by he Tele ónica Founda ion in ea ly 2014. In 2013 hey we e o e ed wo d a inal p ojec o he de elopmen o glUCModel mobile phones: A e sion o And oid and iPhone e sion in o de o p o ide use s o Glucmodel a simple, accessible and iendly way o he inco po a ion o in o ma ion a da abase. I chose iPhone because I hink i 's a pla o m wi h g ea po en ial. The e a e many companies ha need de elope s o iOS on he o he hand, he App S o e is undoub edly he mos p o i able opponen o selling pla o m applica ions he e o e p og amming knowledge o me as a eelance iOS de elope opens he possibili y o c ea e and mone ize my own mobile applica ions. The iPhone applica ion de eloped allows he use o en e da a on blood glucose, hei insulin injec ions, you meals, you weigh and physical ac i i y. The da a collec ed is sen di ec ly o he da abase which will s o e glUCModel sa ely. All da a a e also accessible om he mobile applica ion o he use o isualize hem. This me hod o add da a o he da abase is a signi ican imp o emen in usabili y. The use can now use an app op ia e in e ace o he sc een size o his Sma phone, and i adds he possibili y o use o line. On he Web logically i we lose in e ne access we can no s o e any da a, bu in he iPhone applica ion, we can add da a o be s o ed locally un il we can make he upload. The iPhone does no s o e any o he da a en e ed by he pa ien unless i is no possible o s o e hem on he se e , in which case hey emain in he iPhone un il hey can be uploaded. The applica ion does no s o e any pe sonal da a o he pa ien , so ha al hough he da a empo a ily s o ed on he iPhone would be comp omised, i would be impossible o associa e hem wi h an indi idual, since ansac ions a e conduc ed using he use ID assigned by glUCModel. ! ! ! Page  o 73 105 English/Inglés 3.1 - THE LENGUAGE: OBJETIVE-C ! Cu en ly you can only de elop na i e applica ions o iOS in he p og amming language Objec i e-C. Fo he nex e sion o iOS (iOS 8), which is expec ed o be a ailable in Fall 2014, will also be p og ammed in Swi . Swi was in oduced by Apple on June 2, 2014 so we s ill do no know much abou his new language. Objec i e-C is a p og amming language ha appea ed in 1980, and as i s name sugges s is objec o ien ed. I was c ea ed by B ad Cox in 1992 and was eleased unde he GPL license. Objec i e-C is a hin laye abo e C, so i is possible o compile any C applica ion wi h Objec i e-C compile , and is also possible o include C code di ec ly in o you applica ion in Objec i e-C. Is seman ically di e en om Ja a o C + + since he p og amme does no call me hods on objec s, wha he does is send messages o objec s o pe o m he ac ions we need. ! Figu e 4: Example o calling unc ions in Ja a, C + + and Objec i e-C ! This peculia i y makes i a language ha a i s con ac is s ange. Some imes he e a e causes unc ion calls ha occupy se e al lines o code ha do no en e he sc een due o how long hey a e. This is an example o an ex emely simple unc ion ha can be ound wi hin his applica ion. I s pu pose is o show a simple ale window. Page  o 80 105 English/Inglés Example o calling a me hod in C++ and Ja a objec ->me hod (pa ame e ); objec .me hod (pa ame e ); Example o message sending in Obje i e-C: [objec me hod : pa ame e ]; Figu e 5: Example o unc ion call on se e al lines. ! The ale S a us unc ion has only wo lines o code, builds an UIAle View he i s and he second sends his new objec load o de . As you can see he cons uc o call UIAle View has o be done on mul iple lines o easons o space and cla i y. ! 3.2 - THE DEVELOPMENT ENVIRONMENT: XCODE Apple is known o being a closed in many aspec s o business. In p og amming ha e been no excep ions. These a e some o he condi ions ha mus be me : 1. The only way o p og am o iOS o Mac OS in Objec i e-C using a Mac The e is no o icial al e na i es bu no easible. 2. The only de elopmen en i onmen can de elop, compile and un iOS apps in Xcode (cou se de eloped by Apple). 3. I we wan o es an applica ion on a de ice like an iPhone o an iPad, we hi e an iOS de elope accoun which cos s $ 99 / yea . 4. I we wan o publish ou applica ion in addi ion o he de elope accoun men ioned in he p e ious poin , go s ic ly con ol ou app, Page  o 81 105 English/Inglés o ensu e ha i mee s he legal es ic ions o he App S o e and has p ope ope a ion. FIGURE 6: P og am de elopmen o iOS and cos . ! Once we ha e wha we need o s a p og amming wi h Xcode. We can say ha Xcode which is ee unlike he es ic ions abo e, his is a g ea ad an age o he p og amme . Xcode was launched in 2003 and buil wi h In e ace Builde is a g aphical ool o c ea ing in e aces. This allows o ce ain pa s o he applica ion in a simple and as way. Xcode can compile applica ions in C, C + +, Objec i e-C, Objec i e-C + +, Ja a and AppleSc ip . Ex e nal companies ha e de eloped suppo s Pascal, Ada and Pe l. An in e es ing ea u e is ha Xcode is able o dis ibu e hea y wo k such as cons uc ion, among mul iple compu e s using Bonjou echnology. Xcode also p o ides a de ice manage known as O ganize . Using his ope a o we can connec ou iOS de ice o you Mac o es applica ions on he e minal. ! ! ! ! Page  o 82 105 English/Inglés FIGURE 7: In e ace made in Xcode wi h g aphical ool. To he igh o he pic u e elemen s a ailable o c ea ion could be obse ed. FIGURE 8: O ganize . Managemen ool o iOS de ices es . ! ! Page  o 83 105 English/Inglés Figu e 9: Example o ce i ica e used o sign he applica ion glUCModel. No e ha he ype o enc yp ion as well as public and p i a e key enc yp ion algo i hm is indica ed. ! IOS applica ions ha e a le el o secu i y and con ol oo high, so we gene a e all applica ions mus be signed by he de elope . Xcode uses a complex sys em o digi al signa u es and ce i ica es. In his sec ion, Apple has ied o simpli y he p ocess and help us by Xcode bu he u h is ha i is an a duous ask. Xcode simula o has a sc een whe e we can es ou applica ion i we ha e a physical e minal o de elope accoun equi ed. This simula o is e y as , jus need 3 seconds o u n on and abou wo seconds o load he applica ion. Besides allowing us o es he app i you do no ha e he necessa y ools, i also o e s a g ea ad an age in ha i is possible o simula e all iOS de ices so iPhone, such as iPad, iPod ouch ... as in di e en gene a ions and wi h he elease o iOS we choose . I would add ha I ha e had he oppo uni y o use he And oid simula o ha Google p o ides o de elopmen , and he igni ion iming Page  o 84 105 English/Inglés simula o Nexus 4 eached 10 minu es is a huge di e ence wi h he iOS Simula o and is a poin o de elopmen in iOS. Figu e 10: Example o using he simula o iPhone 4s wi h iOS 7. ! The applica ion is a ailable in he page ha he Uni e sidad Complu ense de Mad id is in ended o mobile applica ions (h p:// www.ucm.es/apps). La e i will be a ailable in he Apple App S o e. ! ! ! ! ! ! ! Page  o 85 105 English/Inglés 4. IMPLEMENTATION 4.1 - DEVELOPMENT METHODOLOGY ! I ha e ollowed a de elopmen SCRUM ype, since hey ha e made pa ial deli e ies e i ica ion mee ings wi h he p ojec manage . The as majo i y o he equi emen s a e de ined ea ly in de elopmen mee ings, la e du ing de elopmen and e i ica ions ha e been adap ing and adding equi emen s o achie e he desi ed objec i e. Th oughou he i e a ions p og ess he p ojec has made co ec ly and imp o ed wi h each. ! 4.2 - CODE ORGANIZATION ! The code has been dis ibu ed in packs acco ding o hei unc ionali y so ha we ind he ollowing g oups o packages: 1. Doc o s: Con ains classes o login in e aces in medical, managemen o pa ien s associa ed wi h he physician, medical class, medical logou in e ace, such in e aces d i e s ... e c 2. Use name: Con ains classes o login use in e aces, class use in e ace use logou , he d i e s o hese in e aces, he class ha manages he da a upload in e aces ... e c 3. Glucose: Con ains in e aces and d i e s needed o ising glycemia da a, and da a shown by his o y. Con ains classes ha ep esen glucose and s o e he da a o he same (blood suga le el, da e and ime .. e c). 4. Weigh : Con ains in e aces and d i e s needed o uploading da a and pa ien weigh da a shown by his o y. Con ains classes ha ep esen a weigh on a ce ain da e and s o e i s da a (da e, obse a ions and weigh in kg). Page  o 86 105 English/Inglés 5. Insulin: Con ains in e aces and d i e s equi ed o uploading da a om insulin adminis a ion, and da a shown by his o y. Con ains classes ha ep esen an e en o insulin and s o e his da a (amoun o insulin, insulin ype, da e and ime .. e c). 6. Die : Con ains in e aces and d i e s needed o da a s o age die s. Con ains classes ha ep esen he p e ious in akes by his o y. Die Con ains class ha s o es da a in ake (se ings o ca bohyd a es, da e and ime, ype o ood, commen s .. e c). 7. Exe cise: This package s o es he classes esponsible o displaying in e aces o uploading wo kou da a and his o y o he exe cises. Con ains he class ha ep esen s and s o es a yea and he da a associa ed wi h his (le el o physical demand, da e, ime and obse a ions). 8. Images: In his pack you will ind he images used in in e aces, mos ly icons. 9. Auxilia y Classes: S o es classes ha a e used o a ious in e aces, such as ViewHelpe , which is used o d aw a line wi h g adien colo ; o Ci cleLineBu on which is also used by se e al in e aces o d aw a ci cula bu on; o JSONHelpe ha is used o access he da abase SQL pa sing JSON da a o ma . ! ! ! Page  o 87 105 English/Inglés FIGURES 11 and 12: Examples o packages and classes iewed he p ojec wi h Xcode. ! 4.3 -INTERFACE DESIGN ! The in e ace design was no included in he equi emen s, bu a e included as pa o he de elopmen wo k. I chose o make he easies way o make i in ui i e use in e ace. Also o his pu pose s anda d iOS design showing lowe na iga ion menus ha a e p esen in na i e applica ions like iTunes and App S o e om he i s e sion o iOS is ollowed. ! ! Page  o 88 105 English/Inglés FIGURES 13 and 14: Compa ison o Apple App S o e applica ion and glUCModel. You can see he same design on he bo om menu. ! I also has sough o make a mode n design gea ed o he la es e sion o iOS (iOS 7). This can be seen in de ails like he ounded uploading da a ha mimics he design o he bu ons ha we e in oduced wi h he iOS bu on 7. The bo oms o he sc eens a e b oken colo s we e ca e ully chosen, a e passing h ough se e al selec ion p ocesses elying on ou side opinions o use s who es ed he applica ion. Se e al o he designs p esen ed ones causing e en eeling s ess. The colo s we e eplaced by pas el hues anges, less agg essi e. The esul is an in e ace ha is gen le o he eye. ! Page  o 89 105 English/Inglés FIGURES 22 and 23: wa ning messages in case o high glycemia. ! ! ! ! ! ! ! ! Page  o 96 105 English/Inglés 5. RESULTADO ! The esul has been sa is ac o y de elopmen . We a e aced wi h an applica ion ha mee s he equi emen s se ou a he beginning and du ing de elopmen . I is a ligh weigh , secu e and as applica ion. A e se e al s udies o pe o mance, i has been ound ha ini ially occupies abou 20MB in RAM and a e in ense use o his applica ion in RAM occupies a ound 50MB, he use o which he p ocesso ne e exceeds 1% since he applica ion does no need o pe o m calcula ions. Figu e 24 shows he use o da a RAM and he p ocesso a e in ense use. He has also s udied he disk space occupied by he applica ion once i is compiled. I has been obse ed ha he applica ion ails o occupy disk 1MB. I we ha e he da a ha is s o ed locally, you can occupy 1.5MB o 2MB as shown in Figu e 25. Figu e 24: Resou ce Moni o iPhone while unning glUCModel ! ! ! ! Page  o 97 105 English/Inglés ! Figu e 25: Sc eensho , glUCModel disk space. Rega ding he in e ace esul s a e my good. Usabili y es s ha e shown ha he in e ace is iendly and in ui i e. These opinions abou he use expe ience is good. ! ! ! ! ! Page  o 98 105 English/Inglés ! ! ! ! ! ! ! ! ! ! ! Figu e 26: Inse ing insulins. Figu e 27: His o y o Insulin Figu e 28: His o y o hype glycemia. Figu e 29: Inse ing da a o Weigh . ! ! ! ! ! ! ! ! ! ! ! Page  o 99 105 English/Inglés Figu e 30: Pa ien s o a doc o . ! ! ! ! ! ! ! ! ! Page  o 100 105 English/Inglés 6. CONCLUSIONS ! The de elopmen o he p ojec has success ully comple ed and collabo a ion wi h glUCModel has been bene icial o bo h pa ies. On one side glUCModel now has a na i e iOS applica ion ha mee s he equi emen s needed. Fu he mo e as a de elope , I ha e acqui ed knowledge o p og amming in Objec i e-C which b ings g ea alue o my esume and my po en ial as au onomous. I ha e aced p oblems du ing de elopmen ha ha e lea ned o sol e co ec ly, he p oo is ha he applica ion has gone ahead and wo king p ope ly. Un o una ely he de elopmen has been la gely in luenced by deadlines and he uni e si y calenda , ha ing had ull ime a ailabili y and scheduling, implemen a ion would enjoy mo e ea u es. ! ! ! ! ! ! ! ! ! Page  o 101 105 English/Inglés 7. FUTURO DE LA APLICACIÓN ! The applica ion has g ea po en ial since he de elopmen has been ca ied ou by only one pe son. By p o iding mo e human esou ces could include mo e unc ionali y o he applica ion. De ail a lis o possible imp o emen s: • Add o he languages. • Glucose p edic ion sys em based on he p edic ion algo i hm ha is de eloping. • Recommenda ion sys em insulin dose based on he p edic ion algo i hm ha is de eloping. • Di ec communica ion wi h doc o -pa ien by app. • Pe iodically checking he in e ne o uploading he ou s anding da a au oma ically. • Imp o ed speci ic design o he in e ace o di e en e minals (iPhone 4, iPhone 5, iPad, iPad e ina, iPad mini ... e c) • Code op imiza ion o highe speed. ! ! ! ! ! ! ! Page  o 102 105 English/Inglés 8. REFERENCES ! 1 - J.I. Hidalgo, e al., Modeling glycemia in humans by means o G amma ical E olu ion, Appl. So Compu . J. (2013), h p://dx.doi.o g/ 10.1016/j.asoc.2013.11.006 2 - S and o d Uni e si y Online Cou se: De eloping iOS 7 Apps o iPhone and iPad, h p://online.s an o d.edu/cou se/de eloping-ios7- apps- all-2013 3 - J.I. Hidalgo, e al. glUCModel: A moni o ing and modeling sys em o ch onic diseases applied o diabe es. J Biomed In o m (2014), h p:// dx.doi.o g/10.1016/j.jbi.2013.12.015 4 - A. Ame ican-Diabe es-Associa ion. S anda ds o medical ca e in diabe es 2010. Diabe es Ca e, 33(S1):11–61, 2010. 5 - Apple iOS De elope Lib a y: P og amming wi h Objec i e-C, h ps://de elope .apple.com/lib a y/ios/documen a ion/Cocoa/ Concep ual/P og ammingWi hObjec i eC/ P og ammingWi hObjec i eC.pd 6 - Apple iOS De elope Lib a y: iOS 7 Design Resou ces, iOS Human In e ace Guidelines, h ps://de elope .apple.com/lib a y/ios/ documen a ion/Use Expe ience/Concep ual/MobileHIG/MobileHIG.pd 7 - Hidalgo JI e al. glUCModel: Cla ke and Pa kes E o G id Analysis o Diabe ic Glucose Models ob ained wi h E olu iona y Compu a ion 8 - iOS De elope Lib a y: iOS App P og amming Guide, h ps:// de elope .apple.com/lib a y/ios/documen a ion/iPhone/Concep ual/ iPhoneOSP og ammingGuide/iPhoneAppP og ammingGuide.pd 9 - Zach Waugh, a Mac & iOS de elope : How o use JSON in Cocoa/ Objec i e-C, h p://zachwaugh.me/pos s/how- o-use-json-in- cocoaobjec i e-c/ 10 - And ey P ikazno : C ea e You Own XML/JSON/HTML API wi h PHP, h p://css.dzone.com/a icles/c ea e-you -own-xmljsonh ml Page  o 103 105 English/Inglés 11 - Manual de PHP, Segu idad Segu idad de Bases de Da os: Inyección de SQL, h p://www.php.ne //manual/es/secu i y.da abase.sql- injec ion.php 12 - iOS De elope Tips: C ea e MD5 Hash om NSS ing, NSDa a o a File, h p://iosde elope ips.com/co e-se ices/c ea e-md5-hash- om- nss ing-nsda a-o - ile.h ml 13 - Ray Wende lich, How To W i e A Simple PHP/MySQL Web Se ice o an iOS App, h p://www. aywende lich.com/2941/how- o-w i e-a- simple-phpmysql-web-se ice- o -an-ios-app 14 - T is an Louis, How Much Do A e age Apps Make?, h p:// www. o bes.com/si es/ is anlouis/2013/08/10/how-much-do-a e age- apps-make/ ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! Page  o 104 105 English/Inglés ! ! ! ! ! ! ! Page  o 105 105 English/Inglés