scieee Open visual document viewer

Aplicación para el seguimiento de repartos en una empresa de transportes para administradores, repartidores y clientes : parte 1

González Villa, Miguel

Abstract

Trabajos Fin de Grado en Ingeniería Informática: Curso 2017/2018, diciembre, 2017

Full text

Aplicación pa a el seguimien o de epa os en una emp esa de anspo es pa a adminis ado es, epa ido es y clien es PARTE 1 Tu o : Ab aham Rod íguez Rod íguez Au o : Miguel González Villa No iemb e de 2017 Índice 1. ESTADO ACTUAL Y OBJETIVOS INICIALES ................................................................................................. 1 1.1. INTRODUCCIÓN .................................................................................................................................... 1 1.2. DESCRIPCIÓN DE OBJETIVOS.................................................................................................................... 1 1.3. METODOLOGÍA .................................................................................................................................... 2 2. JUSTIFICACIÓN DE LAS COMPETENCIAS ESPECÍFICAS CUBIERTAS ........................................................... 3 3. APORTACIONES AL ENTORNO SOCIO-ECONÓMICO, TÉCNICO O CIENTÍFICO .......................................... 5 4. DESARROLLO ............................................................................................................................................ 5 4.1. ANÁLISIS DE APLICACIONES SIMILARES ...................................................................................................... 6 4.2. ANÁLISIS DE REQUISITOS ........................................................................................................................ 8 4.2.1. De inición de a eas ................................................................................................................ 9 4.3. DIAGRAMA DE CASOS DE USO ............................................................................................................... 13 4.4. MOCKUPS ......................................................................................................................................... 20 4.5. MODELO DE LA BASE DE DATOS ............................................................................................................. 29 4.6. ALCANCE DE LA IMPLEMENTACIÓN ......................................................................................................... 32 4.7. REQUISITOS HARDWARE MÍNIMOS ......................................................................................................... 33 4.8. HERRAMIENTAS DE DESARROLLO ........................................................................................................... 33 4.9. DISEÑO E IMPLEMENTACIÓN ................................................................................................................. 35 4.9.1. A qui ec u a del so wa e ..................................................................................................... 35 4.9.2. Desa ollo del p o o ipo........................................................................................................ 37 4.9.3. P uebas ................................................................................................................................. 40 4.9.4. Acceso al código ................................................................................................................... 41 5. ASPECTOS ECONÓMICOS Y TEMPORALES ............................................................................................. 41 6. NORMATIVA Y LEGISLACIÓN .................................................................................................................. 42 7. INTEGRACIÓN CON LA PARTE 2 ............................................................................................................. 43 8. CONCLUSIONES Y TRABAJOS FUTUROS ................................................................................................... 2 9. FUENTES DE INFORMACIÓN .................................................................................................................... 5 10. ANEXOS .................................................................................................................................................... 6 ANEXO I: MANUAL DE USUARIO Y SOFTWARE DE LA APLICACIÓN DEL CLIENTE .............................................................. 6 ANEXO II: MANUAL DE USUARIO Y SOFTWARE DE LA APLICACIÓN DEL REPARTIDOR ..................................................... 10 1 Miguel González Villa 1. Es ado ac ual y obje i os iniciales 1.1. In oducción El obje i o inicial del p oyec o e a c ea una se ie de he amien as que pudie an se ú iles en el mundo labo al, de ca a a ob ene una expe iencia más en iquecedo a. Es po ello que, jun o con la alumna Ma ía Gue a Suá ez, se analiza on las ideas p e ias y se llegó a la conclusión de desa olla una se ie de aplicaciones pa a una hipo é ica emp esa de epa os. Con el obje i o de a a de mejo a el sis ema de epa os de dicha emp esa, nos cen amos en la p oduc i idad y simplicidad de los usua ios. Se iden i ica on es agen es p incipales en el p oceso de en ega de un paque e, el adminis ado del almacén, el epa ido y el clien e ( ecep o del paque e). El abajo de los dos p ime os podía agiliza se y simpli ica se, mien as que el e ce agen e eque ía una ampliación de la in o mación que las compañías de epa os suelen p opo ciona . Pa a log a la mo ilidad necesa ia en es a si uación, se desa ollan es aplicaciones mó iles pa a cada uno de los agen es. La p ime a pa e de es e p oyec o se cen a á en la aplicación des inada al epa ido , cuyo abajo consis e en la capacidad de isualiza la in o mación de un pedido asignado, alida su ecogida y en ega y con ac a con el ecep o pa a su en ega en e o as a eas, y el clien e, que ac ua á como ecep o de pedidos y pod á consul a sus enca gos, es ado de los mismos, localización del epa ido que los en ega á y isualización de un his o ial con los enca gos pasados. 1.2. Desc ipción de obje i os Iden i icados los equisi os p opues os de la aplicación del epa ido y el clien e, además de los que el u o ha c eído con enien es añadi , se p e ende desa olla dos p o o ipos de aplicación mó il que ejempli ique el abajo de desa ollo en un en o no eal. Dichos p o o ipos pueden amplia se has a ob ene una e sión inal con la debida inanciación po pa e de una emp esa de anspo es in e esada. Si bien se a a de dos p o o ipos de aplicación, y po ello p esen an algunas limi aciones, se ha a ado de ealiza un abajo muy ce cano a la ealidad. Debido al ca ác e educa i o del TFT, los p incipales obje i os p opues os po el es udian e du an e el desa ollo del p oyec o son los siguien es:  Ap endizaje de una ecnología de ecien e desa ollo como es Ionic 3 y Angula 4.  Mejo a en los conocimien os de diseño y desa ollo web (HTML5 y CSS3) ob enidos has a aho a.  Adqui i habilidad en el uso del lenguaje de p og amación Typesc ip .  Familia iza se con el uso de lib e ías y API’s mó iles pa a implemen a y ap o echa las uncionalidades y se icios de un disposi i o mó il.  Ap ende a desen ol e se con un se ido de almacenamien o emo o como Fi ebase. 2 Miguel González Villa Como se puede obse a , los obje i os es án muy cen ados en adqui i los conocimien os necesa ios pa a el desa ollo de aplicaciones en Ionic 3, un amewo k sus en ado sob e Angula 4, TypesSc ip 2.5, HTML5 y CSS3. La decisión de usa un en o no de desa ollo que apenas iene unos meses de ida se debe al deseo de abaja desde un pun o muy emp ano en un amewo k que p obablemen e acapa e el desa ollo de aplicaciones web en un u u o ce cano, con las en ajas que ello p opo ciona a ni el labo al. Es no able la al a de documen ación con espec o a desa olla en o as pla a o mas como And oid (que se sus en a en Ja a) o iOS, pe o se compensa con una in e az sencilla y la posibilidad de cons ui aplicaciones pa a ambos disposi i os an e io men e nomb ados sin la necesidad de ap ende a abaja en cada uno po sepa ado. 1.3. Me odología Se ha u ilizado una me odología con encional en cascada con e oalimen ación pa a la ealización de es e abajo. Se a a de una me odología que pe mi e o dena de mane a igu osa las ases del p oceso del desa ollo del so wa e. Cada e apa posee cie os obje i os que se deben cumpli siguiendo un conjun o de ac i idades especí icas pa a cada una. En la Imagen I se puede obse a las dis in as ases del modelo en cascada. Imagen I: E apas de la me odología en cascada En el TFT01 se especi ica on las siguien es a eas a ealiza pa a las dos aplicaciones: Repa ido : - Localización geog á ica e indicaciones de u a a segui del pun o de en ega de un pedido. - Selección del pedido que se á el siguien e en se en egado. - Ve i icación del código del pedido a en ega median e escaneo de imagen. - Posibilidad po pa e del clien e de añadi incidencias al ecibi un pedido. - P oceso de en ega del pedido en el que el clien e i ma su ecepción. 3 Miguel González Villa Clien e: - Posibilidad de egis o en la aplicación. - Visualización de los pedidos enca gados y su es ado ac ual. - Visualización de la localización del epa ido cuando en egue un pedido asignado. Aunque la mayo ía de es as a eas se han implan ado e incluso se ha ampliado a algunas más que no apa ecen (como el his o ial de los pedidos en egados en el caso del clien e y del epa ido , y la posibilidad de ealiza llamadas a los clien es en la aplicación del epa ido ), hay una de ellas que se ha decidido modi ica . Los pedidos se asignan al epa ido a a és de la aplicación del adminis ado , siendo es os e isados con an e io idad. 2. Jus i icación de las compe encias especí icas cubie as Las compe encias que cub e es e p oyec o comienzan con el ap endizaje de una nue a á ea de conocimien o y el desa ollo de la misma, además del despliegue del abajo ealizado. Todo ello sin descuida la impo ancia del abajo en equipo o el conocimien o de la legislación igen e. Pueden des aca se las siguien es compe encias: G1: Posee y comp ende conocimien os en un á ea de es udio (Ingenie ía In o má ica) que pa e de la base de la educación secunda ia gene al, y se suele encon a a un ni el que, si bien se apoya en lib os de ex o a anzados, incluye ambién algunos aspec os que implican conocimien os p oceden es de la angua dia de su campo de es udio. En es e apa ado se puede des aca el ap endizaje ela i o a las nue as ecnologías que o man el p oyec o, como Ionic 3 o el e ue zo de los conocimien os en desa ollo web que se adqui ie on a lo la go del pe iodo uni e si a io. G2: Aplica sus conocimien os a su abajo o ocación de una o ma p o esional y posean las compe encias que suelen demos a se po medio de la elabo ación y de ensa de a gumen os y la esolución de p oblemas den o de su á ea de es udio. El p oyec o desa ollado es una buena p ueba de la aplicación de los conocimien os adqui idos y la esolución de un p oblema plan eado como es la mejo a de la p oduc i idad en el sec o de anspo es, eniendo en cuen a especialmen e la p o esionalidad con la que se ha abajado pa a ob ene unas aplicaciones lo más ce canas posibles al mundo eal. N2: Coope a con o as pe sonas y o ganizaciones en la ealización e icaz de unciones y a eas p opias de su pe il p o esional, desa ollando una ac i ud e lexi a sob e sus p opias compe encias y conocimien os p o esionales y una ac i ud comp ensi a y empá ica hacia las compe encias y conocimien os de o os p o esionales. 4 Miguel González Villa Al a a se de un p oyec o que se ha desa ollado en colabo ación con o o alumno, la coope ación ha sido cla e pa a esol e los p oblemas encon ados. Las es aplicaciones que con o man la o alidad del p oyec o deben su éxi o al abajo en equipo. T7: Capacidad pa a conoce , comp ende y aplica la legislación necesa ia du an e el desa ollo de la p o esión de Ingenie o Técnico en In o má ica y maneja especi icaciones, eglamen os y no mas de obligado cumplimien o. Pues o que las aplicaciones p e enden mejo a el p oceso de ges ión y epa o de una emp esa de anspo e, e a ine i able a a con da os pe sonales, an o de los abajado es de la emp esa como los ecep o es de paque es. TI01: Capacidad pa a comp ende el en o no de una o ganización y sus necesidades en el ámbi o de las ecnologías de la in o mación y las comunicaciones. El p ime e o que se ha debido supe a a la ho a de ealiza es e p oyec o es jus amen e es a compe encia. Has a que no se iden i ica on las necesidades de una emp esa de anspo es no se pudo desa olla un p oyec o que cumplie a dichas necesidades y ga an izase un manejo iable y segu o. TI02: Capacidad pa a selecciona , diseña , desplega , in eg a , e alua , cons ui , ges iona , explo a y man ene las ecnologías de ha dwa e, so wa e y edes, den o de los pa áme os de cos e y calidad adecuados. La sinc onización en e las aplicaciones que o man el p oyec o es una necesidad que no puede e i a se, pe o hay una pieza cla e en el desa ollo y se a a del se ido de almacenamien o empleado. Dicho se ido se emplea como ges o de au en icación de los usua ios, ges o de la base de da os y como espacio de almacenamien o, po lo que la co ec a con igu ación del mismo (además de la co ec a ejecución de las ope aciones de lec u a y esc i u a ealizadas desde las aplicaciones) son i ales pa a un uncionamien o idóneo. TI06: Capacidad de concebi sis emas, aplicaciones y se icios basados en ecnologías de ed, incluyendo In e ne , web, come cio elec ónico, mul imedia, se icios in e ac i os y compu ación mó il. El desa ollo del p oyec o ha pe mi ido alcanza es a compe encia con acilidad, odo ello g acias al plan eamien o mó il de las aplicaciones, pe o ambién al desa ollo basado en ecnologías web que apo a Ionic 3. 5 Miguel González Villa TFG01: Eje cicio o iginal a ealiza indi idualmen e y p esen a y de ende an e un ibunal uni e si a io, consis en e en un p oyec o en el ámbi o de las ecnologías especí icas de la Ingenie ía en In o má ica de na u aleza p o esional en el que se sin e icen e in eg en las compe encias adqui idas en las enseñanzas. Todos los conocimien os adqui idos a lo la go del pe iodo uni e si a io se condensan en un p oyec o con g andes p oyecciones a un ce cano u u o p o esional, p oyec o que se encuen a de allado en una memo ia inal di idida en dos pa es. 3. Apo aciones al en o no socio-económico, écnico o cien í ico Al a a se de un p oyec o o ien ado a una hipo é ica emp esa de anspo es, puede conside a se una excelen e opción de mejo a del se icio a un cos e educido pa a emp esas de logís ica de amaño pequeño, habi uales en el en o no ac ual. La e sa ilidad pa a abaja con Ionic supone una impo an e mejo a a la ho a de desa olla aplicaciones des inadas al mundo emp esa ial, an o soluciones de bajo cos e como p oyec os de mayo en e gadu a en colabo ación con un equipo in o má ico, sin impo a la pla a o ma o el ipo de p oyec o en el que se abaje. Dicho en o no en colabo ación con un equipo se ha abajado du an e es e p oyec o al a a se de abajo conjun o, que iene una i al conside ación en el ámbi o labo al. Además de se impo an e el abajo en equipo, ambién lo es la comunicación en e clien e y desa ollado . Se a a de un aspec o cla e ene la capacidad de a a adecuadamen e con un clien e, o ece le un se icio adecuado y se hones o a la ho a de p esen a el desa ollo ac ual, aspec os que se abaja on en conjun o con el u o del p oyec o. Finalmen e, añadi que los conocimien os adqui idos du an e el desa ollo del p oyec o han log ado c ea una se ie de p o o ipos pe ec amen e uncionales, pe o que, debido a ca ece de un equipo de abajo, la inalización de los mismos o la mejo a del se icio son inalcanzables en es e momen o. Po o a pa e, una emp esa eal que es é in e esada en la adquisición de es e se icio, pod ía su aga los cos es de i ados, llegando a dispone de una e sión inal de las aplicaciones. 4. Desa ollo El p oyec o es á o mado po un conjun o de es aplicaciones, pe o en es a memo ia solo se mos a á el desa ollo de la p ime a pa e de dicho p oyec o, undamen ada en las aplicaciones diseñadas pa a el epa ido y el clien e. 6 Miguel González Villa 4.1. Análisis de aplicaciones simila es An es de comenza con el análisis de los equisi os del p oyec o, es impo an e alo a las soluciones so wa e exis en es de o ma que el desa ollo del p o o ipo pueda apo a algún alo ecnológico de in e és y di e encia se con uncionalidades nue as que esul en de u ilidad pa a la a ea conc e a que se p e ende desa olla . Los sis emas empleados en el campo de la dis ibución de paque e ía se basan en los SGA, cuyas siglas se co esponden a “So wa e de Ges ión de Almacén”. Es os sis emas se enca gan de acili a la ges ión de almacenes y au oma ización de con ol de me cancía, además del egis o de en adas y salidas de me cancía. El p ime sis ema pa a epa ido es analizado es “OnERP”, un so wa e online desa ollado po Web E olu i e Business So wa e S.L que, basándose en el uso de módulos es capaz de cub i las necesidades de cualquie emp esa que quie a mejo a sus sis emas en los campos de ges ión de ecu sos humanos, en as, almacenamien o, con abilidad, ges ión de p oyec os, p oducción, calidad o segu idad en e o os. Se encuen a el módulo de almacén, un p og ama pa a ges ión de almacenes que posee con ol de exis encias y azabilidad comple a, así como con ol de expediciones con su co espondien e conexión con disposi i os mó iles. Po a a se de una solución online, es posible accede desde cualquie disposi i o, ya sea un o denado que se encuen e en el almacén o un Sma phone. Po o a pa e, analizamos la aplicación u ilizada po Co eos en sus nue as PDA, que pe mi e agiliza eno memen e el abajo de los epa ido es. A pa e de las uncionalidades más habi uales en es e ipo de sis emas, es a aplicación o ece o as mucho más inno ado as como el as eo de la i ma biomé ica, la cap u a de o ma au omá ica de los da os de un DNI median e el código MZR, ga an izando así quién i ma la ecepción del pedido (con as ando dicho DNI con una base de da os cen alizada), y la posibilidad de ealiza pagos de los se icios a a és de a je as banca ias. Además, pe mi e los se icios Sma ci ies, donde el epa ido pod á hace y en ia o og a ías con el obje i o de p es a se icios de u ilidad pública. G acias al GPS, se pod á ubica de mane a exac a dónde ha sido ealizada las o os y se en iadas a en idades in e esadas. “A e Ship”, la p ime a de las aplicaciones pa a clien es analizadas, es una aplicación mó il c eada po A e Ship Limi ed que sopo a más de 370 se icios de mensaje ía y o ece una in e az a ac i a y sencilla. Tiene un amplio abanico de uncionalidades como la de ección au omá ica de la agencia de anspo e al in oduci el código de seguimien o, a isos de los cambios del es ado de los pedidos median e no i icaciones y escáne de código de ba as en e o os. Además, cuen a con una e sión pa a na egado es. O a de las aplicaciones pa a el seguimien o de en íos es “Deli e ies Package T acke ”, c eada po oRRs. O ece una in e az muy in ui i a y posee un menú la e al deslizable desde donde se puede accede con acilidad a odas las uncionalidades disponibles. Posee un diseño adap able que deja a la is a una nue a columna de in o mación en able s. Es posible comp oba las no edades de los en íos de o ma manual o au omá ica, dispone de no i icaciones push y posee una g an lis a de agencias de mensaje ía. Finalmen e, pe mi e la isualización en un mapa de la ubicación de la comp a y sis ema p opio de sinc onización en e disposi i os. 7 Miguel González Villa La úl ima de las aplicaciones des inadas a clien es es “Co eos In o”, c eada po Co eos. Facili a la in o mación sob e los en íos que has ealizado al in oduci el código de en ío (o bien leyendo el código con la cáma a del disposi i o), con la posibilidad de inco po a no as pe sonalizadas a cada en ío. Po o a pa e la aplicación incluye la posibilidad de consul a códigos pos ales y busca o icinas ce canas con su espec i a in o mación. Los sis emas an e io men e desc i os cuen an con un equipo que abaja en ellos, ac ualizando y p opo cionando man enimien o a las emp esas o clien es que adquie an cualquie a de las aplicaciones, po lo que la calidad de dichos sis emas es á ga an izada, así como su iabilidad. Pa a que el p oyec o suponga una di e enciación en un campo como la logís ica es impo an e ija se en los g andes acie os de o as compañías de “so wa e” a la ho a de diseña sus p oduc os. Es po ello que, además de eque i uncionalidades de e i icación de pedidos y es ablecimien o de la u a más óp ima al des ino de en ega, un sis ema dedicado a un epa ido debe á emplea se en un disposi i o po á il como un Sma Phone, además de eque i una in e az sencilla, pe o con las ope aciones debidamen e es ablecidas y en pe ec a sinc onización con la aplicación del adminis ado y en úl ima ins ancia, con la del clien e. Pa a cumpli es as ca ac e ís icas se desa olla á la aplicación eniendo en men e disposi i os mó iles. Po pa e del clien e, en ocasiones es e iden e la al a de in o mación que se le p opo ciona en las aplicaciones dedicadas (ya sea pa a disposi i os mó iles o en aplicaciones web). Po ello op amos po mos a la mayo can idad posible de in o mación, indi idualizada a cada usua io y sin ene que in oduci la gos códigos de seguimien o, en ocasiones se a a de códigos al anumé icos de has a 20 ca ac e es. Pa a agiliza el uso de la aplicación y con in ención de ap o echa el auge de las comp as median e disposi i os mó iles, se ha desa ollado pa a Sma Phone, pe o ambién se ía posible desa olla una e sión pa a na egado es en base al abajo ealizado. En la Tabla 1 y Tabla 2, se mues a una lis a de las ca ac e ís icas más ele an es pa a el p oyec o de cada una de las aplicaciones analizadas. APLICACIONES SIMILARES CLIENTE CARACTERÍSTICAS MÁS IMPORTANTES - No i icaciones an o den o como ue a de la aplicación. - Ve sión pa a na egado es. - Posibilidad de añadi í ulo al paque e. - Posibilidad de di e encia los paque es po ca ego ías. - Posibilidad de consul a códigos pos ales y busca o icinas ce canas. Tabla 1: Ca ac e ís icas ele an es de las aplicaciones simila es a la del clien e 14 Miguel González Villa A con inuación, se de inen cada uno de los casos de uso mos ados en la Imagen II. CU-001 Consul a paque es pendien es Ve sión 1.0 Desc ipción El clien e puede e una lis a de paque es que aún no le han sido en egados. Secuencia no mal 1. Inicia sesión en la aplicación. F ecuencia Al a Impo ancia Al a CU-002 Ve in o mación del paque e Ve sión 1.0 Desc ipción El clien e puede e oda la in o mación ele an e de un paque e seleccionado. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Selecciona un paque e en la página p incipal. F ecuencia Al a Impo ancia Al a CU-003 Añadi í ulo Ve sión 1.0 Desc ipción El usua io puede añadi un í ulo a un paque e. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Selecciona un paque e en la página p incipal. 3. Pulsa icono del lápiz. 4. Con i ma . F ecuencia Media Impo ancia Media CU-004 Ve mapa del paque e Ve sión 1.0 Desc ipción El clien e puede e la localización de su pedido en iempo eal en un mapa cuando a a se en egado. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Selecciona bo ón de mapa. F ecuencia Al a Impo ancia Al a 15 Miguel González Villa CU-005 Consul a his o ial Ve sión 1.0 Desc ipción El clien e puede consul a una lis a de los paque es que le han sido en egados. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Selecciona “His o ial de pedidos” en el menú la e al. F ecuencia Al a Impo ancia Al a CU-006 Ve in o mación de paque es en egados Ve sión 1.0 Desc ipción Se mues a oda la in o mación ele an e de un paque e. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Selecciona “His o ial de pedidos” en el menú la e al. 3. Selecciona un paque e de la lis a. F ecuencia Media Impo ancia Al a CU-007 Regis a clien e Ve sión 1.0 Desc ipción El usua io se puede egis a en la aplicación pa a luego accede a ella. Secuencia no mal 1. Pulsa link “Regís a e” en la página de acceso. 2. Rellena o mula io de egis o. 3. Con i ma . F ecuencia Al a Impo ancia Al a De la misma o ma, se de alla cada uno de los casos de uso que se e lejan en la Imagen III. CU-001 Ges iona paque es Ve sión 1.0 Desc ipción Es la pa e de la aplicación que se enca ga de los paque es del epa ido . Secuencia no mal 1. Inicia sesión en la aplicación. F ecuencia Al a Impo ancia Al a 16 Miguel González Villa CU-002 Ve pedidos asignados Ve sión 1.0 Desc ipción El epa ido puede e los paque es que le han sido asignados. Secuencia no mal 1. Inicia sesión en la aplicación. F ecuencia Al a Impo ancia Al a CU-003 Ve mapa del paque e Ve sión 1.0 Desc ipción Se mues a en un mapa la di ección donde debe se en egado el paque e. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Selecciona el bo ón del mapa de un paque e de la pes aña “Asignados” o “En epa o”. F ecuencia Al a Impo ancia Al a CU-004 Llama al des ina a io Ve sión 1.0 Desc ipción El epa ido puede hace una llamada al des ina a io. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Selecciona el bo ón de llamada de un paque e de la pes aña “Asignados” o “En epa o”. F ecuencia Al a Impo ancia Al a CU-005 Escanea paque e pa a epa o Ve sión 1.0 Desc ipción El epa ido debe escanea el código del paque e an es de me e lo en el ehículo. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Pulsa el bo ón de escáne de un paque e de la pes aña “Asignados”. F ecuencia Al a Impo ancia Al a 17 Miguel González Villa CU-006 Añadi paque e a epa o Ve sión 1.0 Desc ipción Una ez escaneado un paque e se puede añadi al epa o y pos e io men e al ehículo. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Pulsa el bo ón de escáne de un paque e de la pes aña “Asignados”. 3. Escanea el paque e. 4. Pulsa el bo ón “Añadi paque e”. F ecuencia Al a Impo ancia Al a CU-007 Limpia da os Ve sión 1.0 Desc ipción Una ez escaneado un paque e se puede limpia el código ob enido. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Pulsa el bo ón de escáne de un paque e de la pes aña “Asignados” o “En epa o”. 3. Escanea el paque e. 4. Pulsa bo ón “Limpia ”. F ecuencia Baja Impo ancia Media CU-008 Ve pedidos en epa o Ve sión 1.0 Desc ipción El epa ido puede e una lis a de los paque es que ha seleccionado pa a el epa o. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Selecciona pes aña “En epa o”. F ecuencia Al a Impo ancia Al a CU-009 Escanea paque e pa a en ega Ve sión 1.0 Desc ipción El epa ido debe escanea un paque e an es de en ega lo al des ina a io. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Pulsa el bo ón de escáne de un paque e de la pes aña “En epa o”. F ecuencia Al a Impo ancia Al a 18 Miguel González Villa CU-010 En ega paque e Ve sión 1.0 Desc ipción Una ez escaneado un paque e que se á en egado, el epa ido puede con i ma la en ega. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Pulsa el bo ón de escáne de un paque e de la pes aña “En epa o”. 3. Escanea el paque e. 4. Pulsa bo ón “En ega paque e”. F ecuencia Al a Impo ancia Al a CU-011 Fi ma en ega Ve sión 1.0 Desc ipción El des ina a io debe á i ma pa a con i ma que ha ecibido su pedido. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Pulsa el bo ón de escáne de un paque e de la pes aña “En epa o” y escanea . 3. Pulsa bo ón “En ega paque e”. 4. Fi ma 5. Con i ma . F ecuencia Al a Impo ancia Al a CU-012 Selecciona siguien e paque e en en ega Ve sión 1.0 Desc ipción El epa ido debe selecciona el siguien e paque e que se á en egado. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Selecciona la pes aña “En epa o”. 3. Pulsa sob e un paque e. F ecuencia Al a Impo ancia Al a CU-013 Consul a his o ial Ve sión 1.0 Desc ipción El epa ido puede e una lis a de odos los paque es que ha en egado. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Selecciona “His o ial de pedidos” en el menú la e al. F ecuencia Al a Impo ancia Al a 19 Miguel González Villa CU-014 Consul a mapa de pedidos pendien es Ve sión 1.0 Desc ipción El epa ido puede consul a en un mapa la ubicación de en ega de los pedidos que le han sido asignados. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Selecciona “Mapa de pedidos pendien es” en el menú. F ecuencia Al a Impo ancia Al a CU-015 In oduci ID del paque e Ve sión 1.0 Desc ipción El epa ido iene la opción de in oduci el ID del paque e de o ma manual cuando alla el escaneo. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Pulsa el bo ón de escáne de un paque e de la pes aña “En epa o” o “Asignados” y escanea . 3. Pulsa bo ón “Esc. manual”. F ecuencia Media Impo ancia Al a CU-016 Añadi incidencia Ve sión 1.0 Desc ipción Opción de añadi una incidencia al paque e en egado. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Pulsa el bo ón de escáne de un paque e de la pes aña “En epa o” y escanea . 3. Pulsa bo ón “En ega paque e”. 4. Pulsa bo ón “Añadi incidencia”. 5. Con i ma . F ecuencia Media Impo ancia Al a CU-017 Cancela i ma Ve sión 1.0 Desc ipción El epa ido puede cancela una i ma. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Pulsa el bo ón de escáne de un paque e de la pes aña “En epa o” y escanea . 3. Pulsa bo ón “En ega paque e”. 4. Pulsa bo ón “Cancela ”. 5. Con i ma . F ecuencia Baja Impo ancia Al a 20 Miguel González Villa 4.4. Mockups Una ez analizados los casos de uso, e a el momen o de diseña unas mues as de la in e az co espondien e a cada una de las aplicaciones con el obje i o de cons ui una base pa a el desa ollo del p o o ipo. La aplicación del clien e se cen a en un diseño a ac i o y manejable, de o ma que el usua io pueda accede a odas las uncionalidades o ecidas en pocas ansiciones. De es a mane a, se consigue una aplicación ápida e in ui i a. En la Imagen IV se mues a la p ime a página de la aplicación, donde el clien e debe á in oduci sus da os de acceso. Imagen IV: Página de au en icación CU-018 Limpia i ma Ve sión 1.0 Desc ipción El epa ido puede ec i ica una i ma. Secuencia no mal 1. Inicia sesión en la aplicación. 2. Pulsa el bo ón de escáne de un paque e de la pes aña “En epa o” y escanea . 3. Pulsa bo ón “En ega paque e”. 4. Pulsa bo ón “Limpia ”. 5. Con i ma . F ecuencia Media Impo ancia Al a 21 Miguel González Villa Po el con a io, si el usua io no iene aún una cuen a en la aplicación, pod á ob ene la de mane a sencilla a a és de un o mula io de egis o (Imagen V). Imagen V: Página de egis o de clien es Al a a se de una aplicación pu amen e in o ma i a, se ha p e endido que la in o mación mos ada al usua io sea cla a y concisa, sa is aciendo así las necesidades del usua io de una o ma ápida y comple a. Po ello, en la en ana p incipal (Imagen VI) se lis an aquellos pedidos que es án pendien es de en ega, mos ando el id del paque e y su emi en e. Además, en la esquina supe io de echa se puede e un icono con el que el clien e pod á busca un paque e de mane a más di ec a. Po o o lado, dispond á de un bo ón pa a accede a un mapa en el que pod á e en donde se encuen a su pedido cuando es é en u a. 22 Miguel González Villa Imagen VI: Página p incipal de la aplicación Al selecciona cualquie paque e de la lis a mos ada en la página p incipal, el clien e accede á a o a página (Imagen VII) con in o mación más de allada de dicho paque e. Imagen VII: Página de in o mación del paque e Seleccionando el icono del mapa en la página p incipal, el usua io accede á al mapa (Imagen VIII) de la localización de su pedido en iempo eal, una ez es é a pun o de se le en egado. 23 Miguel González Villa Imagen VIII: Página del mapa Po úl imo, median e el menú la e al, el usua io pod á accede a un his o ial de sus pedidos ya en egados de los que ambién pod á accede a más in o mación accediendo a ellos. En la Imagen IX se obse a una abla con los pedidos o denados po echa de en ega y una ba a de búsqueda donde se pod án il a los paque es po di e en es campos. Imagen IX: Página del his o ial 30 Miguel González Villa - nomb e: Nomb e comple o del epa ido . - numPedidos: Núme o de paque es asignados a ese epa ido . - sigDi eccion: Es la siguien e di ección de en ega a la que i á un epa ido . Pedidos - codigoPos al: Código Pos al del des ino del paque e. - des ina a io: Nomb e del des ina a io. - dimensiones: Dimensiones del paque e en cen íme os. - di ección: Domicilio donde se debe en ega el paque e. - dni: DNI del usua io que ecibi á el paque e. - es ado: Indica si un paque e es á asignado, en el almacén, en egado, en u a, e c. - echaEn adaAlmacen: La echa en la que ha llegado el paque e al almacén. - echaEn ega: Fecha en la que se ha en egado un paque e. - echaEs imadaEn ega: Fecha en la que espe a en ega se el paque e. - i ma: Fi ma del clien e una ez haya ecibido el paque e en su domicilio. - idPaque e: Núme o de iden i icación de paque e. - idRepa ido : Núme o de iden i icación del epa ido al que ha sido asignado el paque e. - la i ud: Coo denada de la i ud de la di ección donde se debe en ega . - longi ud: Coo denada de longi ud de la di ección donde se debe en ega . - nomb e: Nomb e que puede asigna el clien e a su paque e pa a iden i ica lo mejo . - obse aciones: Si e pa a indica si un paque e iene alguna conside ación especial o algún e o . - peso: Peso del paque e. - emi en e: En idad que desea en ia el paque e. - epa ido : Nomb e del epa ido al que ha sido asociado el paque e. - el : Telé ono de con ac o del clien e que ecibe el paque e. - u gen e: Si e pa a indica si un clien e ha solici ado en ío u gen e. - alo acionEn ega: Campo dedicado a la no a que o o gue el clien e sob e el p oceso de en ega de un paque e. 31 Miguel González Villa La base de da os que p opo ciona Fi ebase es conocida como Real ime Da abase, que nos o ece una base de da os NoSQL alojada en la nube. Los da os se almacenan en o ma o JSON y se sinc onizan con odos los clien es en iempo eal, pe mi iendo ealiza ope aciones básicas como subida de nue os elemen os, consul a de elemen os, ac ualización de los exis en es o bo ado de los mismos. En la Imagen XVIII e Imagen XIX se pueden e la es uc u a de las dos ablas empleadas. Imagen XVIII: Tabla “ epa ido es” Imagen XIX: Tabla “pedidos” 32 Miguel González Villa 4.6. Alcance de la implemen ación Debido a la ambición de es e p oyec o, pese a ealiza se en conjun o, el núme o de ho as necesa ias pa a comple a lo supe a con c eces las 300 ho as máximas que es ablece el eglamen o. Po ello, se ha op ado po cons ui dos p o o ipos de las aplicaciones que end án la mayo pa e de las uncionalidades desc i as an e io men e, pe o con algunas limi aciones. An es de comenza desc ibiendo las uncionalidades que se han omi ido en el p oyec o, hay que des aca que la implemen ación del se ido de almacenamien o y base de da os se ha ealizado en la nube, ap o echando el se icio Fi ebase de Google. Es o pe mi e dispone de la in o mación en iempo eal en cualquie localización, a una elocidad bas an e acep able y con una asa de ans e encia adecuada pa a un p oyec o de es as ca ac e ís icas. Es de supone que una emp esa que quisie a emplea las aplicaciones que o man es e p oyec o ecu i ía a un plan de da os con Fi ebase de mayo olumen o pond ía en uncionamien o un se ido dedicado. La p incipal uncionalidad que no se ha implemen ado es la de la comunicación en e adminis ado y epa ido es, debido a las exigencias en la segu idad de las comunicaciones. A in de p o ege las con e saciones man enidas, los mensajes debe án ci a se de ex emo a ex emo, sin posibilidad de se desci ados en su paso po el se ido . Es e ci ado equie e una implemen ación an elabo ada en el so wa e del emiso y el ecep o que hace in iable su desa ollo en un p oyec o con las limi aciones de in aes uc u a, iempo y ecu sos humanos ac uales. O a uncionalidad que no se ha implemen ado ha sido la de alo ación po pa e del clien e de paque es ecibidos. Es o es debido a que e a p io i a io lanza un p o o ipo uncional an es de añadi más unciones, po lo que dicha unción se desca ó pa a el p o o ipo inicial pa a e i a supe a el iempo disponible y de en ega. En e las uncionalidades implemen adas con limi aciones se encuen a la del se icio de egis o pa a clien es. Es e se icio pod ía mejo a se al añadi un sis ema de ecupe ación de con aseñas en caso de pe de la o la posibilidad de edi a los da os pe sonales de egis o, pe o es a ope ación equie e ac i a un módulo de e minado del se ido pa a habili a el en ío de co eos elec ónicos a clien es, además de modi ica la aplicación pa a que sea capaz de ecibi la ac ualización, con i maciones po pa e del co eo elec ónico, e c. Lo an es mencionado supone un ele ado es ue zo y iempo dedicado a las ope aciones necesa ias como pa a implemen a lo en un p o o ipo. Finalmen e, si bien la aplicación se ac ualiza co ec amen e con los cambios p oducidos en la base de da os, comple amen e en iempo eal, encon amos la limi ación de no dispone de no i icaciones an o pa a epa ido es como clien es. El desa ollo de un sis ema de no i icaciones es complejo y, del mismo modo que la an e io uncionalidad limi ada, es necesa io un cambio en el se ido pa a pe mi i a es e en ia no i icaciones a los usua ios cuando se p oduzca algún cambio en los da os que ienen asociados. Debido a es os hechos, se op ó po ampli ica el sis ema de ac ualización de da os en iempo eal, po el cual an o epa ido es como clien es ecibi án cualquie cambio en un iempo ap oximado de milisegundos desde que se ac ualice en la base de da os, además de inco po a la posibilidad de ac ualiza cie as páginas de las aplicaciones pa a eca ga los da os exis en es y solici a nue os da os si ue a necesa io a la base de da os. El es o de uncionalidades se han implemen ado comple amen e, si bien hay lige as a iaciones espec o al obje i o deseado, los equisi os se han cumplido sa is ac o iamen e. 33 Miguel González Villa 4.7. Requisi os ha dwa e mínimos La e sa ilidad que o ece Ionic ga an iza su uncionamien o en cualquie disposi i o de ipo PC, pe o es ecomendable emplea un equipo más po en e pa a saca pa ido a es a ecnología. El equipo u ilizado cuen a con un p ocesado In el i7 a 2.60 GHz; 8 GB de memo ia RAM; Windows 10 P o y un disco du o de es ado sólido (SSD) donde se ejecu a el código pa a ob ene un mayo endimien o a la ho a de ealiza las p uebas pe inen es. 4.8. He amien as de desa ollo La elección de las he amien as que se emplea on en el p oyec o equi ió un análisis p e io de las ecnologías disponibles. En pa icula , Ionic F amewo k comenzaba a se más común en el desa ollo de aplicaciones pa a disposi i os mó iles (aunque sin demasiado éxi o), pe o su elección es aba condicionada al inc eíble c ecimien o que ha expe imen ado Angula 4, al y como se demues a en la Imagen XX. En la misma imagen, encon amos que Typesc ip , ligado ambién a Ionic, es á en c ecimien o. A ni el p o esional es impo an e conside a el ap endizaje ob enido du an e el desa ollo del p oyec o, pues o que el auge de las ecnologías mó iles y po ello las he amien as de desa ollo son de e minan es a la ho a de con a a p o esionales o mados. En un ni el más p ác ico, cen ado en el desa ollo del p oyec o y como se ha comen ado en o os pun os de es e in o me, hemos elegido Ionic F amewo k po su e sa ilidad y capacidad pa a desa olla un mismo código pa a na egado es, And oid o iOS. La e sión escogida, Ionic 3, nos pe mi ía con a con las úl imas ac ualizaciones, po lo que dis u amos de una mejo a en el iempo de ejecución, mejo as de es abilidad y nue as unciones como nue as lib e ías na i as (en e las que encon amos el escáne o los mapas) o la más ecien e unción que pe mi e ealiza p uebas en di e sos disposi i os enlazados con una simple o den en la consola. Po o a pa e, Visual S udio Code mejo a mucho nues a p oduc i idad, g acias a los módulos que pueden añadi se pa a inc emen a las unciones y agiliza el abajo, que en conjun o con Lodash, es a mejo a e a e iden e. Imagen XX: G á ico de la búsqueda de las ecnologías empleadas en Google 34 Miguel González Villa Las he amien as y lib e ías que se emplea án son: Icono Nomb e Desc ipción Ve sión Ionic Es a ecnología es un amewo k de código abie o empleado en el desa ollo de aplicaciones híb idas mó iles. C eado sob e Angula JS y Apache Co do a, Ionic p opo ciona las he amien as y se icios necesa ios pa a, median e el uso de HTML y CSS3, desa olla aplicaciones pa a mó iles sin emplea el lenguaje na i o de cada pla a o ma. 3.7.1 Angula Es un amewo k de código abie o desa ollado po Google y es u ilizado pa a c ea y man ene aplicaciones web. Su p incipal obje i o es aumen a las aplicaciones basadas en na egado con capacidad de “Modelo Vis a Con olado ”. Se emplea en combinación con un en o no de ejecución como NodeJS. 4.4.5 TypeSc ip Se a a de un lenguaje de p og amación de código abie o desa ollado po Mic oso . Es un conjun o de Ja aSc ip , pe o añadiendo ipado es á ico y obje os basados en clases. 2.5.3 HTML5 y CSS3 En p ime luga , enemos HTML5, un lenguaje de ma cado que se encuen a en su quin a e isión. Es e lenguaje es empleado en la “Wo ld Wide Web”. A con inuación, enemos CSS3, una hoja de es ilo en cascada que se encuen a en su e ce a e isión, siendo empleado pa a es ablece el diseño isual de las páginas web e in e aces de usua io. HTML5 + CSS3 Co do a Apache Co do a es un ma co de desa ollo mó il de código abie o. Pe mi e u iliza las ecnologías es ánda web como HTML5, CSS3 y Ja aSc ip pa a desa ollo mul ipla a o ma, e i ando el lenguaje de desa ollo na i o de cada pla a o ma mó il. 7.0.1 NodeJS Se a a de un en o no de ejecución pa a Ja aSc ip cons uido con el mo o de Ja aSc ip V8 de Ch ome. NodeJS usa un modelo de ope aciones E/S sin bloqueo y o ien ado a e en os, que lo hace li iano y e icien e. El ecosis ema de paque es de Node.js, “npm”, supone el conjun o más g ande de lib e ías de código abie o en el mundo. 7.7.0 Visual S udio Code Edi o de código empleado pa a la ealización del p oyec o, des aca po su sencillez de uso, pe sonalización y capacidad de in eg a ex ensiones que aumen en sus uncionalidades. 1.17.2 Lodash Empleado pa a acili a el uso de Ja aSc ip , emplea mé odos pa a i e a lis as, obje os y cadenas de ex o, además de manipula alo es y c ea unciones complejas. 4.17.4 35 Miguel González Villa Typings Pues o que Ja aSc ip po sí mismo no emplea ipos de da os, es necesa io c ea iche os que desc iban los ipos empleados en nues o código que pe enezcan a lib e ías ex e nas. Typings se enca ga de ins ala los iche os desc ip i os necesa ios de dichas lib e ías. 2.1.1 Angula Fi e2 P opo ciona una o ma de comunicación en e Angula 4 y Fi ebase. La c eación de obje os obse ables, la sinc onización de obje os en iempo eal o la au en icación de usua ios son sus g andes i udes. 2.0.0- be a.8 Google Maps Es a lib e ía na i a de Ionic o ece una o al in eg ación de los componen es de Google Maps en Angula 4. 4.3.1 Momen s La lib e ía Momen .json pe mi e ealiza ope aciones con echas y ho as en Ja aSc ip . 2.18.1 Backg ound Geoloca ion Es e módulo nos p opo ciona la capacidad de ob ene en iempo eal la localización del epa ido aunque su aplicación no se encuen e en ejecución (en p ime plano) en ese momen o. 4.3.0 4.9. Diseño e implemen ación 4.9.1. A qui ec u a del so wa e La c eación de un p oyec o en Ionic 3 gene a un sis ema de ca pe as y iche os, o ganizados en una es uc u a de á bol, que pe mi e la o ganización del código. A con inuación, se puede obse a la u ilidad de cada uno de es os elemen os:  node_modules/ - En es e di ec o io se encuen an odos los módulos necesa ios pa a que Ionic uncione co ec amen e. La ins alación del p oyec o incluye es os módulos. A medida que se ayan ins alando módulos, se i án almacenando en es a ca pe a.  Pla o ms/ - Es e di ec o io con iene las pla a o mas pa a las que se ha cons uido el p oyec o. En sus espec i as ca pe as se almacena una e sión del p oyec o ac ual pa a cada pla a o ma. En es e caso, se encuen a la e sión pa a And oid.  plugins/ - Almacena los plugins que se han ido ins alando a lo la go del desa ollo del p oyec o.  esou ces/ - Con iene el icono de la aplicación, la imagen de ca ga y los iconos ela i os a las e siones de And oid e iOS.  s c/ - En es e di ec o io se encuen an las páginas de la aplicación, así como el es ilo y el con ol de los módulos que la in eg an. - app/ - Con iene los iche os p incipales del p oyec o, como el iche o que maneja la página p incipal de la aplicación y el menú la e al o el iche o que ges iona los módulos que se inclui án a la ho a de ejecu a la aplicación. 36 Miguel González Villa - asse s/ - Es e di ec o io es empleado pa a almacena elemen os po deseo del desa ollado , como las imágenes que desee inse a en la aplicación. En es e caso, se ha u ilizado pa a inclui iconos. - pages/ - Aquí se encuen an los di ec o ios que con ienen las páginas que o man la aplicación. Cada ca pe a con iene un iche o con ex ensión “h ml”, o o con ex ensión “ s” y en ocasiones uno con “scss”. o Aplicación del clien e:  home/ - El di ec o io con iene la página p incipal de la aplicación.  login/ - Almacena la página de inicio de sesión.  map/ - Es e di ec o io con iene la página que mues a el mapa con la localización del epa ido cuando a a en ega el paque e.  o de / - Con iene la página de in o mación de los paque es.  egis y/ - Se almacena la página del his o ial de la aplicación.  signup/ - Es el di ec o io que con iene la página de egis o de usua ios. o Aplicación del epa ido :  deli e y/ - Con iene la página de la pes aña “En epa o” de la página p incipal, donde se mues an odos los paque es seleccionados pa a el epa o.  d awpad/ - Almacena la página que ges iona el panel de i ma.  home/ - El di ec o io con iene la página p incipal de la aplicación, di idida en dos pes añas, “Asignados” y “En epa o”.  login/ - Almacena la página de inicio de sesión.  map/ - Es e di ec o io con iene la página que mues a el mapa con la ubicación de des ino de los paque es.  o de Assigned/ - Con iene la página de la pes aña “Asignados” de la página p incipal de la aplicación, donde se mues an los paque es asignados a un epa ido .  egis y/ - Se almacena la página del his o ial de la aplicación.  scan/ - El di ec o io con iene la página de escaneo de paque es. o pages. s - Es e iche o con iene un índice de las clases c eadas en cada página, lo que pe mi e que, en caso de se necesa io, se impo ado en una página que quie a abaja con alguna o a página, al como na ega hacia esa página. Es á p esen e en ambas aplicaciones. - p o ide s/ - Almacena el iche o “au hda a. s” (“au h-da a. s” en el caso del epa ido ), que con iene la con igu ación de con ol de la acción de inicio y cie e de sesión. Además, en la aplicación del epa ido se encuen a ambién el di ec o io loca ion- acke / que con iene el iche o que se enca ga de la localización en segundo plano. - heme/ - En es e di ec o io se encuen a el iche o “ a iables.scss”, que con iene alo es in oducidos po el desa ollado sob e el es ilo de la aplicación.  ypings/ - Es e di ec o io almacena los iche os impo ados po la lib e ía “Typings” de los módulos que equie en un ipo no p opio de TypeSc ip . 37 Miguel González Villa  www/ - Con iene el código necesa io pa a la simulación de la aplicación en el na egado , sin necesidad de cons ui el p oyec o.  .gi igno e – El iche o que con iene los a chi os que no es a án con olados po Gi .  con ig.xml - Es e iche o albe ga in o mación sob e la aplicación, al como el nomb e de la misma, desc ipción, iconos de la aplicación (pa a su isualización en un Sma phone), p e e encias de uso y plugins a impo a .  package.json - El iche o con iene el núcleo de Ionic, albe gando las dependencias necesa ias pa a ejecu a el p oyec o, las lib e ías ins aladas y los plugins añadidos. 4.9.2. Desa ollo del p o o ipo Después de analiza de o ma exhaus i a el código de la aplicación, se han encon ado cie as uncionalidades que esal an con espec o a las demás debido a su impo ancia. Es el caso de la implemen ación del mapa, po ejemplo. De las nume osas o mas exis en es de implemen a un mapa en una aplicación, se ha op ado po ecu i a la lib e ía de Google Maps pa a emplea la in e az más sencilla, ápida y de meno código posible. De mane a que, sólo es p eciso inicializa el mapa en iche o TypeSc ip , con los da os co espondien es. Como se mues a en la Imagen XX a con inuación (co espondien e al código de la aplicación del epa ido ), al mapa se le añade una ag upación de ma cado es a pa i de la línea 50, pe o el p oceso pa a añadi un único ma cado ecu e a una sin axis simila . Imagen XXI: Código de inicialización del mapa 38 Miguel González Villa O o aspec o que llama la a ención es la u ilización de la unción “ionViewDidLoad()”, en la cual se ex aen los da os de Fi ebase pa a luego se mos ados. El p opósi o esencial de es e mé odo es ejecu a se a ias eces, a di e encia del cons uc o que sólo se ejecu a una ez. Como los da os de Fi ebase a ían, es necesa io que se pueda e esos cambios en la página. Usando es e mé odo, no es p eciso e esca la página en busca de ac ualizaciones, ya que se ealizan au omá icamen e. Po ello, es empleado con ecuencia en las páginas de la aplicación. En la Imagen XXI se mues a un ejemplo de la unción usada en la aplicación del clien e, pa a ob ene y mos a los da os de los pedidos asignados a él y que no hayan sido en egados. Imagen XXII: Función “ionViewDidLoad()” en la página p incipal del clien e A con inuación encon amos un agmen o de código co espondien e a la aplicación del epa ido , que se co esponde con el mé odo pa a inicia el p oceso de geolocalización del epa ido mien as la aplicación se encuen a en segundo plano. Es e mé odo ob iene la posición geog á ica del disposi i o en base a la elocidad ac ual. A mayo elocidad, el in e alo de cálculo de una nue a posición aumen a á debido a que se eco e una mayo dis ancia en el iempo, po lo que se calcula á con más ecuencia la posición geog á ica ac ual. Po o a pa e, al disminui la elocidad se educi á el núme o de cálculos de la posición ac ual con el obje i o de op imiza el gas o de ba e ía, pues o que al eco e se meno dis ancia en el mismo iempo, la necesidad de ob ene la posición geog á ica disminuye po que el ma gen de ac ualización es bas an e escaso. 39 Miguel González Villa Imagen XXII: Función que pe mi e ob ene la posición del epa ido pese a ene la aplicación ce ada Po úl imo, cabe des aca el con ol de la au en icación po pa e de la lib e ía Angula Fi e sob e la base de da os Fi ebase. Angula Fi e se enca ga de comp oba si el usua io in oducido es á egis ado en la pa e de Au en icación de Fi ebase y si la con aseña coincide con el co eo elec ónico. De es a mane a, el desa ollado no iene que hace demasiadas comp obaciones, simplemen e en ía los da os ecogidos en el o mula io pa a inicia sesión y los en ía a las unciones de Angula Fi e. En la imagen XXIII se obse a el código de con ol pa a la au en icación del clien e, pe o en el caso del epa ido es ex emadamen e simila . Imagen XXIIIV: Código TypeSc ip de con ol de au en icación 2 Miguel González Villa Du an e es e p oceso el clien e ha obse ado los cambios de es ado del pedido, y en el his o ial de pedidos ecibidos encuen a el pedido en egado y su ecepción i mada, como se mues a en la Imagen XXXII. Imagen XXX: Cap u a del pedido inalizado en la aplicación del clien e. 8. Conclusiones y abajos u u os Es e abajo se ap oxima a su in, y con ello, el con inuo abajo dedicado mues a sus u os inalmen e. Los es p o o ipos (pe o al amen e uncionales) de las aplicaciones c eadas cuen an con una g an calidad y a anzado desa ollo g acias a que la amplia mayo ía de uncionalidades han sido implemen adas. Po ello, podemos conside a supe ados los obje i os p opues os, así como es un hecho que se a a de un impo an e pun o de pa ida en el campo de la p og amación de aplicaciones mó iles. Los comienzos suelen se complicados, y un p oyec o como es e no iba a se menos. Se han pues o a p ueba nues os conocimien os en desa ollo web, pe o ambién nos hemos en en ado a nue os lenguajes de p og amación y ecnologías cuya ida en el me cado las con ie en en desconocidas pa a la mayo ía de desa ollado es, más aun pa a dos es udian es de ingenie ía in o má ica sin documen ación en sus manos, en ocasiones i ele an e (es e p oyec o comenzó como una idea mien as exis ía Ionic 1 y ha inalizado a poco iempo del lanzamien o de Ionic 4). Pese a ello, Ionic cuen a con una comunidad de p og amado es muy ac i a y cada ez es as he amien as adquie en más éxi o. 3 Miguel González Villa Pese al du o abajo y un inicio que equi ió un pa de cu sos online sob e Angula y TypeSc ip , cuando los p o o ipos comenza on a cob a ida los ánimos se elaja on, p og ama no e a an edioso, desa olla no e a an complicado como pa ecía y has a comp endíamos el uncionamien o de la base de da os. Pasó a se un pasa iempo, el iempo lib e se con e ía en una nue a uncionalidad y aunque cada nue o e o se a on aba con una mi ada de inc edulidad al u o , no dejábamos de a anza . Po inc eíble que pa ezca, llegamos a di e i nos ealizando el p oyec o. Las pequeñas su ilezas que en aña el código, que lo hacen más i o y uncional su gían po la simple ine cia que supone abaja con una mo i ación di e en e, lo que nos pe mi ía a anza con paso i me. Después de odo, escoge una pla a o ma como Ionic pa a desa olla el p oyec o ue una buena elección. Como se menciona en a ias ocasiones a lo la go de es e in o me, es e p oyec o ha sido di idido en dos abajos dis in os debido a la en e gadu a con la que se plan eó en un comienzo. La p ime a pa e consis ía en el desa ollo de la aplicación del adminis ado , siendo es a segunda pa e la co espondien e a los epa ido es y clien es (pese a que los í ulos de los abajos no exp esen lo mismo debido a un e o a la ho a de p esen a la solici ud del p oyec o), po lo que desde el comienzo se eque ía una comunicación cons an e pa a que la in e conexión en e aplicaciones no se de umba a. El abajo en pa alelo ue c ucial pa a ga an iza un análisis de equisi os adecuados, diseño inicial consensuado e implemen aciones de p o o ipos que unciona an, a su ez, en pa alelo. Aun así, las negociaciones se o na on ag esi as al a a la o ma del á bol de almacenamien o de la base de da os, llegando a su pun o álgido cuando se alcanzó el ex emo de añadi campos en la base de da os mien as el o o alumno ealizaba p uebas. Es a es una de las muchas anécdo as que se o ma on du an e el desa ollo del p oyec o, lo que es una p ueba pe ec amen e álida de que el p oyec o inalizó como una colabo ación sa is ac o ia en las ocasiones que se eque ía y con magní icos esul ados en los p o o ipos inales. Conside amos la expe iencia ob enida du an e las ases de abajo en pa alelo de un alo incalculable y que juga á un papel muy impo an e en el u u o labo al. El p oyec o en sí puede ene un u u o po encialmen e ac i o, pa iendo de una econs ucción o al en é minos de obje i os, uncionalidades nue as y un diseño aco de al momen o en el que se e ome su desa ollo, ampliando el abajo ealizado has a el pun o de ob ene una aplicación pe ec amen e compa ible y uncional en el ámbi o emp esa ial. Si bien no hay da os conc e os, no es an descabellado supone que las aplicaciones pueden mejo a el endimien o y luidez en el en o no de abajo de aquellos que las empleen, lo que se aduce en bene icios debido al inc emen o de la p oduc i idad. Si bien el p oyec o se ha cen ado en un ema conc e o como puede se la dis ibución de paque e ía, g acias a la e sa ilidad de Ionic es posible desa olla aplicaciones especí icas en múl iples campos donde sea necesa ia una he amien a po en e y p ecisa o simplemen e una eno ación del an e io sis ema. Po ejemplo, la ges ión de lo as de ehículos o la in eg ación del g emio de axis as a la ac ualidad ecnológica, pe o ambién una aplicación de comunicación pa a la comunidad uni e si a ia o ien ada a incen i a el abajo en equipo, desa ollada pa a múl iples pla a o mas (empleando cha de ex o y oz, en ío de iche os, in eg ación de encues as y con un con ol de usua ios e icaz). La p opia uni e sidad pod ía adop a dicha aplicación y pone la a disposición de es udian es, docen es e in es igado es, acili ando la comunicación en e es udian es del mismo o dis in o cu so e incluso se pod ía llega a incen i a la colabo ación en e acul ades, dando un sal o de calidad a la educación ac ual e incluso epe cu iendo a o ablemen e sob e p oyec os de in es igación. 4 Miguel González Villa Un eno me aspec o posi i o del p oyec o es la ampli ud de he amien as empleadas, lo cual es ideal pa a un u u o a co o plazo po que no nos encamina en una di ección de e minada, sino que man iene muchas pue as abie as. El desa ollo web, de aplicaciones pa a na egado o disposi i os mó iles, de p og amación en Angula o Typesc ip , odos son posibles pun os de en ada en un me cado en auge. Mien as an o, lo que e a una posibilidad de desa olla un p oyec o po cuen a p opia comienza a se un hecho palpable, aduciéndose en un cu ículum más ex enso. Pa a inaliza , a ni el pe sonal es e p oyec o ha epe cu ido posi i amen e en mi o ma de abaja , especialmen e a la ho a de en en a un p oblema y o ques a una solución c ea i a pa a un e o que hubie a echado abajo el p oyec o. Hubo e o es de esa magni ud, e o es que nos impedían esc ibi siquie a una línea de código, pe o eso no e i ó que siguie a mo i ado día as día has a esol e cada incon enien e. Es po ello que a i mo que desa olla en Ionic ha sido ameno y en e enido, lo que ayudó eno memen e a man ene las ganas de segui a anzando con inuamen e, consiguiendo que la, en eo ía, es ic a y o mal labo de desa olla un p oyec o de inal de ca e a se con i ie a en un ac i idad apasionan e. Es posible que es e la go ayec o haya supe ado lige amen e las 300 ho as es ipuladas, pe o hay eces que no puedes esis i e a un ompecabezas sin impo a el iempo que necesi es pa a comple a lo. Como di ía F anklin D. Roose el , “Siemp e que e p egun en si puedes hace un abajo, con es a que sí y pon e enseguida a ap ende cómo se hace”. 5 Miguel González Villa 9. Fuen es de in o mación Lis ado de enlaces consul ados du an e la ealización del p oyec o.  P epa ación de Ionic o Ins alación de NodeJS: h ps://nodejs.o g/es/ o Guía de ins alación de Ionic: h p://ionic amewo k.com/docs/guide/ins alla ion.h ml o Documen ación de Ionic: h ps://ionic amewo k.com/docs/ o Gi Hub de Ionic: h ps://gi hub.com/ionic- eam/ionic/blob/mas e /CHANGELOG.md o Documen ación de Visual S udio Code: h ps://code. isuals udio.com/docs/?d =win o Documen ación de Fi ebase: h ps:// i ebase.google.com/docs/  Lib e ías y he amien as des acadas empleadas o Gi Hub de Angula Fi e2: h ps://gi hub.com/angula /angula i e2 o Gi Hub de Google Maps: h ps://gi hub.com/mapsplugin/co do a-plugin- googlemaps o Documen ación de Momen .js: h p://momen js.com/docs/ o U ilidad pa a gene a códigos QR: h p://www.q code.es/es/gene ado -q -code/ o Geolocalización en segundo plano: h ps://gi hub.com/mau on85/co do a-plugin- backg ound-geoloca ion  O os o Cu so de Ionic 2, Angula 2 y TypeSc ip : h ps://www.plu alsigh .com/cou ses/ionic2-angula 2- ypesc ip -mobile-apps o P ecios Fi ebase: h ps:// i ebase.google.com/p icing/?hl=es-419 o Blog o icial de Ionic: h p://blog.ionic.io/ 6 Miguel González Villa 10. Anexos ANEXO I: Manual de usua io y so wa e de la aplicación del clien e Es a aplicación es á pensada pa a mos a a nues os clien es in o mación de sus pedidos de mane a a ac i a y sencilla de u iliza . A con inuación, se p esen a el manual de usua io de es a aplicación, de allando cada una de las uncionalidades que o ece. En la Ilus ación 1 emos la p ime a página que apa ece al inicia la aplicación. Debemos in oduci nues o DNI y la cla e pa a accede a ella. Ilus ación 1: Página de acceso a la aplicación En el caso de que aún no engamos cuen a en la aplicación, podemos hace clic en el bo ón “REGÍSTRATE AQUÍ” y ellena el o mula io de egis o (Ilus ación 2). Ilus ación 2: Página de egis o 7 Miguel González Villa Una ez hemos accedido a la aplicación, nos encon amos con la página p incipal (Ilus ación 3). En ella emos una lis a de los paque es que enemos pendien es de en ega. Obse amos que hay dos ipos de iconos acompañando a la pequeña in o mación que se mues a de cada paque e. El icono de la casi a ep esen a que el paque e se encuen a en el almacén y el o o icono nos dice que nues o paque e es á en epa o y se nos en ega á ese mismo día. Ilus ación 3: Página p incipal La página p incipal o ece una ba a de búsqueda que nos pe mi e il a nues os paque es pendien es po a ios campos. Además, algunos paque es pueden mos a un bo ón con el icono de un mapa. Es o quie e deci que el paque e es á p óximo a se en egado y, pulsando sob e él, podemos accede a un mapa en el que e emos la localización en iempo eal del epa ido que nos ae el pedido (Ilus ación 4). Ilus ación 4: Mapa 8 Miguel González Villa En la Ilus ación 5 emos in o mación más de allada de un pedido. Pa a accede a es a página, debemos selecciona uno de los paque es de la lis a de la página p incipal. En la esquina supe io de echa nos encon amos un icono de un lápiz, el cual nos pe mi e cambia el í ulo del paque e. Po ejemplo, cambiamos el ID “5223921168” po “Silla aus aliana Win ec P o”. De es a mane a, pod emos iden i ica el paque e ácilmen e. Ilus ación 5: Página de in o mación de paque es Accediendo al menú la e al de la aplicación podemos di igi nos al his o ial de pedidos. En la Ilus ación 6 emos la página del his o ial donde se mues a una lis a de nues os paque es ya en egados, o denados po la echa de la en ega. Así mismo, ambién con amos con una ba a de búsqueda y podemos accede a más in o mación de un paque e haciendo clic sob e él. Po úl imo, podemos ce a sesión en la aplicación accediendo al menú la e al. 9 Miguel González Villa Ilus ación 6: Página del his o ial 10 Miguel González Villa ANEXO II: Manual de usua io y so wa e de la aplicación del epa ido La aplicación del epa ido es á o ien ada a p opo ciona una mejo a en la ealización del abajo de los epa ido es de una emp esa de anspo e, o eciendo una in e az amigable, ápida y muy in ui i a. Ilus ación 7: Página de acceso a la aplicación En la Ilus ación 7, emos la página de acceso a la aplicación, donde los epa ido es deben ing esa sus da os. Una ez el usua io es á au en icado, es edi eccionado a la página p incipal de la aplicación. Es a página es á di idida en dos pes añas. Po de ec o, se mues a la pes aña “Asignados”, al y como emos en la Ilus ación 8. En es a pes aña se mues an aquellos paque es asignados al epa ido y odos los da os que pueden se ú iles pa a él. Po cada paque e, enemos disponibles es bo ones. El p ime bo ón que apa ece, , nos lle a á a un mapa que mues a la di ección del des ina a io. Con el segundo bo ón, , podemos ealiza una llamada al des ina a io del paque e y con el e ce bo ón, , podemos escanea los paque es que que amos epa i . El icono con el símbolo de exclamación al p incipio del ID del paque e nos indica que ese pedido es u gen e. 11 Miguel González Villa Ilus ación 8: Página p incipal, pes aña “Asignados” Si cambiamos de pes aña, podemos e odos los paque es elegidos pa a el epa o (Ilus ación 9). Si seleccionamos sob e uno de ellos, és e cambia á de colo indicando que es el siguien e paque e que se á en egado. Ilus ación 9: Página p incipal, pes aña “En epa o”