UNIVERSIDAD CENTRAL DEL ECUADOR - … · Universitario en un dispositivo móvil, haciendo uso de...

92
UNIVERSIDAD CENTRAL DEL ECUADOR FACULTAD DE INGENIERÍA, CIENCIAS FÍSICAS Y MATEMÁTICA CARRERA DE INGENIERÍA INFORMÁTICA APLICACIÓN MÓVIL PARA LA UBICACIÓN GEOGRÁFICA DENTRO DE LA UNIVERSIDAD CENTRAL (GEOUBÍCATE UCE) TRABAJO DE GRADUACIÓN, PREVIO LA OBTENCIÓN DEL TÍTULO DE INGENIERO INFORMÁTICO AUTOR: Mina Herrera Víctor Manuel TUTOR: ING. Robert Arturo Enríquez Reyes QUITO - 27 de Octubre 2016

Transcript of UNIVERSIDAD CENTRAL DEL ECUADOR - … · Universitario en un dispositivo móvil, haciendo uso de...

UNIVERSIDAD CENTRAL DEL ECUADOR FACULTAD DE INGENIERÍA, CIENCIAS FÍSICAS Y MATEMÁTICA

CARRERA DE INGENIERÍA INFORMÁTICA

APLICACIÓN MÓVIL PARA LA UBICACIÓN GEOGRÁFICA

DENTRO DE LA UNIVERSIDAD CENTRAL

(GEOUBÍCATE UCE)

TRABAJO DE GRADUACIÓN, PREVIO LA OBTENCIÓN DEL TÍTULO DE INGENIERO INFORMÁTICO

AUTOR: Mina Herrera Víctor Manuel

TUTOR: ING. Robert Arturo Enríquez Reyes

QUITO - 27 de Octubre

2016

AUTORIZACIÓN DE AUTORÍA INTELECTUAL

Yo VÍCTOR MANUEL MINA HERRERA en calidad de autor del Proyecto integrador

titulado: “APLICACIÓN MÓVIL PARA LA UBICACIÓN GEOGRÁFICA DENTRO DE

LA UNIVERSIDAD CENTRAL DEL ECUADOR (GEOUBICATE UCE)”, autorizo a

la Universidad Central del Ecuador hacer uso de todos los contenidos que me

pertenecen o parte de los que contiene esta obra, con fines estrictamente

académicos o de investigación.

Los derechos que como autor me corresponden, con excepción de la presente

autorización, seguirán vigentes a mi favor, de conformidad con lo establecido en los

artículos 5, 6, 8; 19 y demás pertinentes de la Ley de Propiedad Intelectual y su

Reglamento.

Asimismo, autorizo a la Universidad Central del Ecuador para que realice la

digitalización y publicación de este trabajo en el repositorio virtual, de conformidad

a lo dispuesto en el Art. 144 de la Ley Orgánica de Educación Superior.

Quito, 27 de Octubre del 2016

Víctor Manuel Mina Herrera CI: 1720501236 Telf. 0987393300 Email: [email protected]

II

CERTIFICACIÓN DEL TUTOR

III

ING. Robert Arturo Enríquez Reyes C.I.:1708600240 Telf.0984466366E-mail.:[email protected]

Este proyecto fue revisado con el control antiplagio URKUND

INFORME DE TUTORES Y NOTAS

IV

CALIFICACIÓN DEL PROYECTO

V

VI

DEDICATORIA

A mis padres que amo con todo mi corazón,

A mi esposa que es mi compañera,

A los pequeños de la casa

VII

AGRADECIMIENTO

El autor expresa su agradecimiento a:

Agradezco a los docentes de la Facultad de Ingeniería Ciencias Físicas y

Matemáticas por la manera de impartir sus conocimientos en cada etapa hasta

llegar a la cumbre, muchos de ellos fueron compañeros, amigos o simplemente

guías para alcanzar el objetivo.

Ing. Robert Enríquez, por su apoyo como tutor y por haber brindado las directrices

adecuadas para culminar con éxito este trabajo de graduación.

Es de gran felicidad y satisfacción hoy finalizar una etapa más de mi vida, cumplir

un sueño y ver el fruto de un gran esfuerzo.

A mis padres Vicente Mina y Mariana Herrera por su paciencia y sabiduría,

a mis hermanas Narcisa y M a r í a por su compañía, a mi esposa Cristina

quien ha demostrado ser una guerrera ante todo, a mis hijos Martina y Nicolás

quienes son los pilares para luchar y ser mejor cada día, a toda mi familia por

creer en mí.

A mis queridos Suegros: Edguitar, Teresita, Cuñados, Sobrinos y demás

familiares por su cariño y apoyo.

VIII

CONTENIDO

pág. AUTORIZACIÓN DE AUTORÍA INTELECTUAL ........................................................... II CERTIFICACIÓN DEL TUTOR .................................................................................... III INFORME DE TUTORES Y NOTAS ............................................................................ IV

CALIFICACIÓN DEL PROYECTO ................................................................................ V

DEDICATORIA ............................................................................................................. VI AGRADECIMIENTO .................................................................................................... VII CONTENIDO ...............................................................................................................VIII LISTA DE FIGURAS ......................................................................................................X

LISTADO DE TABLAS ................................................................................................XII RESUMEN ...................................................................................................................XIII ABSTRACT ................................................................................................................. XIV

INTRODUCCIÓN ................................................................................................................ 1

1 ANTECEDENTES ....................................................................................................... 2

1.1 Definición del Problema .................................................................................... 2

1.2 Planteamiento del Problema ............................................................................. 2

1.3 Formulación del Problema ................................................................................ 2

1.4 Objetivos ............................................................................................................. 3

1.5 Justificación ....................................................................................................... 3

1.6 Alcance ............................................................................................................... 5

1.7 Delimitaciones del Proyecto ............................................................................. 5

2 MARCO TEÓRICO ..................................................................................................... 6

2.1 Marco Conceptual ............................................................................................... 6

2.2 Marco Técnico .................................................................................................. 13

2.3 SISTEMAS DE INFORMACIÓN GEOGRÁFICA............................................... 21

2.4 Notepad++ ............................................................................................................. 25

2.5 Algoritmo para encontrar la ruta más corta entre dos puntos ...................... 25

2.6 Factibilidad Económica ........................................................................................ 27

3 HERRAMIENTAS DE DESARROLLO ..................................................................... 28

3.1 Lenjuages de Programación ........................................................................... 28

3.2 QUANTUM GIS ................................................................................................. 31

3.3 NODE.js ............................................................................................................. 34

IX

3.4 APACHE CORDOVA ........................................................................................ 36

4 METODOLOGÍA ....................................................................................................... 38

4.1 Introducción ..................................................................................................... 38

4.2 Selección de la Metodología y Herramientas de Desarrollo ........................ 38

4.3 Valores de la Metodología XP ......................................................................... 41

5 DESARROLLO DEL PROYECTO ............................................................................ 43

5.1 Fases de la Metodología ................................................................................. 43

5.2 Fase 2: Análisis y Diseño Global .................................................................... 49

5.3 Fase 3: Desarrollo ............................................................................................ 50

5.4 Fase 4: Puesta en Producción ........................................................................ 50

6 CONCLUSIONES ..................................................................................................... 52

7 RECOMENDACIONES ............................................................................................. 54

ANEXOS ....................................................................................................................... 61

ANEXO A ..................................................................................................................... 62 Instalar QGIS ........................................................................................................ 67 Abrir QGIS ............................................................................................................ 70

Instalación Android Studio y Android SDK .............................................................. 72

Descarga de componentes de Android SDK ........................................................... 72

Creando un Android Virtual Device AVD .................................................................. 73

Una vez creada la máquina virtual se procede a correr el simulador. ................. 74

Instalación Apache Cordova ..................................................................................... 75

ANEXO B ..................................................................................................................... 77

X

LISTA DE FIGURAS

pág.

Figura 1 Problemas frecuentes en el Google maps (Elaboración propia) .............. 4 Figura 2 Capas de los S.O. ( Informaticohoy. (2007)) ............................................... 9 Figura 3 Kernel S.O.( LINUX HOWTO. (2007)) ........................................................ 10 Figura 4 MIDDLEWARE (Mele Jarq . (2012)) ............................................................ 10 Figura 5 Entorno de Ejecución (Jjparra . (2005)) ..................................................... 11 Figura 6 Modelo de capas de un sistema operativo móvil (Maksim, 2013). ......... 11 Figura 7 Porcentaje de distribución del mercado mundial según el sistema operativo al año 2014, 2015 (CANTAR WORLDPANEL)...................................... 12 Figura 8 Evolución ventas de Smartphone clasificados por sistema operativo (KCPB) ......................................................................................................................... 12 Figura 9 A-GPS. Diagrama de funcionamiento. (Qualcomm Technologies. (2011)) ..................................................................................................................................... 17 Figura 10 Orbitas de satélites en la tierra, Glonass y GPS (Ms. Lisa. (2015).) .... 17 Figura 11 Simulación de GPS(mediarts.com.ve. (2015)) ........................................ 17 Android Framework o Servicio de Localización ..................................................... 18 Figura 12 Android Studio (Android Developer, 2016). ( Fco. José Hidalgo.(2015).) ..................................................................................................................................... 20 Figura 13 IDE XCode (Apple, Inc., 2016). ................................................................. 20 Figura 14 SIG ((DIDIANA GONZALEZ (2015)) .......................................................... 22 Figura 15 Modelo Ráster y Vector (Gauss-Krüger. (2002). ..................................... 24 Figura 16 Ejemplo de la topología vial UCE ............................................................ 26 Figura 17 Esquema HTML(Enrique González. (2015).) ........................................... 28 Figura 18 Esquema de JavaScript(Elaboración propia) ......................................... 29 Figura 19 Esquema XML(Elaboración propia) ......................................................... 30 Figura 20 Opciones del OpenGeo (Elaboración propia) ......................................... 34 Figura 21 GUI Quantum GIS (Elaboración propia) .................................................. 34 Figura 22: CUADRO COMPRARTIVO FRAMEWORKS UTILIZADOS Carlos Azaustre.. (2015) ......................................................................................................... 35 Figura 23 V8 de Google CECILIO ÁLVAREZ. (2014) ............................................... 35 Figura 24 V8 Navegador y Servidor CECILIO ÁLVAREZ. (2014) ............................ 36 Figura 24 V8 Navegador y Servidor CECILIO ÁLVAREZ. (2014) ............................ 36 Figura 25 Presentación del Menú en el aplicativo (Elaboración propia) ............... 44 Figura 25 Presentación del Menú en el aplicativo (Elaboración propia) ............... 44 Figura 26 Casos de Uso (Elaboración propia) ......................................................... 45 Figura 27 Caso de Uso Ingresar al Aplicativo (Elaboración propia) ..................... 46 Figura 28 Caso de Uso Información relevante (Elaboración propia) .................... 46 Figura 29 Caso de Uso Mostrar Facultades, ed. Académica, entre otras Unidades Académicas y Administrativas (Elaboración propia) ............................................. 47 Figura 30 Caso de Uso Trazar la ruta (Elaboración propia) ................................... 47 Figura 31 Caso de Uso Ubicarse (Elaboración propia)........................................... 48 Figura 32 Caso de Uso Testear Métodos (Elaboración propia) ............................. 48 Figura 33 Arquitectura de la app (Elaboración propia)........................................... 49

XI

Figura 34 Aplicación puesta en producción (Elaboración propia) .................... 51 Figura A35. Opciones de descarga de JRE (Elaboración propia........................... 62 Figura A36. Pantalla de instalación de JRE (Elaboración propia) ......................... 63 Figura A37. Comprobación de versión de Java (Elaboración propia) .................. 63 Figura A38. Opción propiedades de equipo (Elaboración propia)…………….…..64 Figura A39. Opción configuración avanzada del sistema (Elaboración propia) .. 64 Figura A40. Opción de variables de entorno (Elaboración propia) ....................... 64 Figura A41. Detalles de variable JAVA_HOME (Elaboración propia) .................... 65 Figura A42. Instalación Notepad++ (Elaboración propia)....................................... 66 Figura A43. Instalación Notepad++ (Elaboración propia)....................................... 66 Figura A44. Instalación Notepad++(Elaboración propia)........................................ 66 Figura A45. Instalación Notepad++(Elaboración propia)........................................ 67 Figura A46. Instalación Notepad++(Elaboración propia)........................................ 67 Figura A47. Instalación Quantum Gis (Elaboración propia)................................... 68 Figura A48. Instalación Quantum Gis (Elaboración propia)................................... 68 Figura A49. Instalación Quantum Gis (Elaboración propia)................................... 69 Figura A50. Instalación Quantum Gis (Elaboración propia…………………….......69 Figura A51. Instalación Quantum Gis (Elaboración propia)................................... 69 Figura A52. Instalación Quantum Gis (Elaboración propia)................................... 70 Figura A53. Instalación Quantum Gis (Elaboración propia)................................... 70 Figura A54. Instalación Js (Elaboración propia) ..................................................... 71 Figura A55. Verificar Instalación Js (Elaboración propia) ...................................... 72 Figura A56. Verificar Android Studio (Elaboración propia) .................................... 72 Figura A57. Crear Máquina Virtual (Elaboración propia) ........................................ 73 Figura A58. Instalación Android Studio (Elaboración propia)………….....……….73 Figura A59. Máquina Virtual (Elaboración propia)…………………………......…….74 Figura A60. Simulador App en el celular (GEOUCE) (Elaboración propia) ........... 74 Figura A61. App en el celular (Elaboración propia) ................................................ 75 Figura A62. Instalación Apache Cordova (Elaboración propia) ............................. 75 Figura A63. Instalación apk en celular (Elaboración propia) ................................. 76 Figura A64. Verificación de la instalación del apk (Elaboración propia) .............. 76 Figura B65. Estadisticas presentadas por el INEC (INEC2015) ............................. 77 Figura B66. Estadisticas presentadas por el INEC (INEC2015) ............................. 77 Figura B67. Estadisticas presentadas por el INEC (INEC2015) ............................. 78

XII

LISTADO DE TABLAS

pág.

Tabla 1 Presentación de la información relevante y actualizada (Elaboración propia) ........................................................................................................................... 4 Tabla 2 Ventajas y Desventajas de la aplicación nativa (Elaboración propia) ....... 7 Tabla 3 Ventajas y Desventajas de la aplicación web (Elaboración propia)........... 7 Tabla 4 Ventajas y Desventajas de la aplicación hibrida (Elaboración propia)… . 8 Tabla 5. Cuadro comparativo de Sistemas Operativos ( Alfonso Cervera. (2015)) ..................................................................................................................................... 14 Tabla 6. Cuadro comparativo de Emuladores de Android (Academia Android. (2015)) .......................................................................................................................... 19 Tabla 7. Cuadro comparativo de costos (Elaboración propia) .............................. 27 Tabla 8 Soporte de CSS en los navegadores (Elaboración propia) ..................... 31 Tabla 9. Cuadro Comparativo de Metodologías (Sergio Granizo. (2015)) ............. 40 Tabla 10. Valores de la Metodología XP (Elaboración propia) ............................... 42 Tabla 11. Herramientas para desarrollo (Elaboración propia) ............................... 44 Tabla 12. Lista de Procedimientos para manejo y uso de la aplicación móvil (Elaboración propia) .................................................................................................. 49

XIII

RESUMEN

“APLICACIÓN MÓVIL PARA UBICACIÓN GEOGRÁFICA DENTRO DE LA

UNIVERSIDAD CENTRAL DEL ECUADOR (GEOUBICATE UCE)”

Autor: Víctor Manuel Mina Herrera

Tutor: Ing. Robert Arturo Enríquez Reyes

La tecnología y la ciencia son los pilares de una cadena evolutiva en la historia del ser

humano, contribuyendo al desarrollo global, abarcando todas las áreas que involucran

al mismo, principalmente conllevando al crecimiento económico y social.

La Universidad tiene como objetivo desarrollar investigación y proponer soluciones

Tecnológicas a requerimientos de usuarios, de esta manera se hace necesaria la

creación de una aplicación móvil para la Universidad Central del Ecuador

“GEOUBICATE UCE”; cuyo propósito es la presentación del entorno geográfico

Universitario, la búsqueda de una Facultad en particular, con su respectiva información

relevante y actualizada, para los usuarios cuyo equipo celular tenga plataforma Android

e IOS, la geo ubicación actual y el mejor camino de un punto a otro.

La aplicación fue desarrollada con conceptos de sistemas de información geográficas,

utilizando el entorno QGIS, permitiendo una aplicación amigable, escalable y una

capa de presentación desarrollada con HTML5, JavaScript, JQuery Movil,

OpenLayers, JSON, y GeoJSON.

PALABRAS CLAVES: /APLICACIÓN MÓVIL / LOCALIZACIÓN DE MAPAS/ SISTEMA

DE INFORMACIÓN GEOGRÁFICA (QGIS)/ NOTACIÓN DE OBJETOS DE

JAVASCRIPT (JSON)/ CARACTERÍSTICAS GEOGRÁFICAS (GEOJSON) / MAPAS

INTERACTIVOS (OPENLAYERS)/ LENGUAJE DE MARCAS DE HIPERTEXTO

(HTML5)/ FRAMEWORK MÓVIL (JQUERY MOBILE)/

XIV

ABSTRACT

“MOBILE APPLICATION AIMED TO GEOGRAPHIC LOCATION INSIDE THE CENTRAL UNIVERSITY OF ECUADOR (GEOUBICATE UCE)”

Technology and science are the pillars of an evolutionary chain in human history. They

contribute to global development by covering all growth areas mainly by leading to

economic and social development.

Central University of Ecuador aims to develop research and deliver technology solutions

to user requirements, thus it is necessary to create “GEOUBICATE UCE”, which is a mobile

application, for this university. Its purpose is the presentation of this university geographical

environment. It searches a specific Faculty including relevant and updated information for

users whose mobiles have Android and IOS platform. This application gives users their

current location and suggests the best way from one place to other.

The application was developed with concepts of geographic information systems. The

QGIS environment, which allows a user-friendly application, was used. It has a

presentation layer that was developed with HTML5, JavaScript, JQuery Mobile,

OpenLayers, JSON, and GeoJSON.

KEYWORDS: /MOBILE APPLICATION/ MAP LOCATION/ GEOGRAPHIC INFORMATION SYSTEM (QGIS)/ JAVASCRIPT OBJECT NOTATION (JSON) / GEOGRAPHIC FEATURES (GEOJSON)/ INTERACTIVE MAPS (OPENLAYERS)/ HYPERTEXT MARKUP LANGUAGE (HTML5)/ MOBILE FRAMEWORK / JQUERY MOBILE/

Autor: Víctor Manuel Mina Herrera

Tutor: Ing. Robert Arturo Enríquez Reyes

1

INTRODUCCIÓN

La iniciativa de “Geoubicate UCE” consiste en una forma de presentar el entorno

Universitario en un dispositivo móvil, haciendo uso de aplicaciones que permite vincular

las 17 Facultades, Centros Académicos, Colegios a su alrededor, entre otras Unidades

Académicas y Administrativas, para optimizar el tiempo de búsqueda.

Existen miles de aplicaciones móviles que podemos encontrar en el mercado,

prácticamente hay aplicaciones para todo tipo de personas de diferente género, edad,

gustos, preferencias, entre otros; que han ayudado en diferentes aspectos como; en el

mejoramiento de la calidad de vida, el ahorro de tiempo en la realización de ciertas

actividades, en mantenernos comunicados a pesar de la distancia.

Viendo la necesidad de compañeros nuevos, docentes y personas visitantes a la

Universidad Central del Ecuador, se analizó la ventaja de tener la app instalada en los

dispositivos móviles y utilizarla en cualquier momento que se requiera ya sea para uso

personal o para dirigir a un solicitante.

2

1 ANTECEDENTES

1.1 Definición del Problema

Actualmente es difícil encontrar la ubicación geográfica de cada Facultad,

canchas, laboratorios, entre otras Unidades Académicas y Administrativas, de

forma visual, al utilizar aplicaciones externas no constan en los registros como

por ejemplo Google Maps, razón por la cual se dificulta conocer información

básica como:

Ubicación exacta del destino a llegar.

Geolocalización.

Horarios de atención y de la Jornada de estudios.

Autoridades.

Teléfonos.

Descripción.

Ruta para llegar.

Información importante de cada Facultad.

1.2 Planteamiento del Problema

Cuando un estudiante, funcionario o persona particular de Universidad Central

del Ecuador, quiere realizar algún trámite personal o Institucional, se encuentra

con el problema de la ubicación de la Facultad, Centro Académico, entre otras

Unidades Académicas y Administrativas.

La Universidad cuenta aproximadamente con 38.000 alumnos, 8.000

funcionarios entre profesores y personal administrativo según (Wikipedia 2015),

adicional se tiene que el 30% del entorno geográfico no tiene señalización

adecuada.

1.3 Formulación del Problema

Por los datos obtenidos anteriormente se tiene una clara visión de cuán

importante es el desarrollo de la app según las siguientes preguntas:

• ¿De qué manera nos ayuda tener el conocimiento de la app para los

integrantes de la Comunidad Universitaria?

• ¿Qué tan factible es la implementación de la app entre la Comunidad

Universitaria?

3

• ¿Cuáles serían los factores que impulsarían a los estudiantes a participar

en esta iniciativa de implementación?

1.4 Objetivos

1.4.1 Objetivo General

Desarrollar un prototipo de sistema que permita la ubicación geográfica para

llegar a las diferentes Facultades, Centros Académicos, entre otras Unidades

Académicas y Administrativas, ubicados en el entorno Universitario.

1.4.2 Objetivos Específicos

Mediante la implementación de la aplicación tener a las Facultades,

Centros Académicos, entre otras Unidades Académicas y

Administrativas, en un solo entorno geográfico.

Desarrollar una aplicación móvil la cual nos ayude a la búsqueda de cierta

Facultad, Centro Académico, entre otras Unidades Académicas y

Administrativas, obtener información ágil y precisa

A través de la geo ubicación llegar al punto de destino optimizando el

tiempo y recursos.

1.5 Justificación

El desarrollo de la aplicación móvil permitirá conocer mejor la ubicación

geográfica de cierta Facultad, canchas, laboratorios, entre otras Unidades

Académicas y Administrativas, lo cual no constan en los registros del Google

Maps, razón por la cual se dificulta mucho conocer información relevante como:

Nombre de la Facultad, Centro Académico, entre otras Unidades

Académicas y Administrativas.

Teléfono de actual de la Facultad, Centro Académico, otras unidades

academias y administrativas.

Horarios de atención y de la Jornada de estudios

Autoridades de la Facultad, Centro Académicos, entre otras Unidades

Académicas y Administrativas.

Descripción detallada de la Facultad, Centro Académico, entre otras

Unidades Académicas y Administrativas.

Descarga de la App disponible (siempre y cuando tenga Internet).

4

El proyecto integrador APLICACIÓN MÓVIL PARA UBICACIÓN GEOGRÁFICA

DENTRO DE LA UNIVERSIDAD CENTRAL DEL ECUADOR (GEOUBICATE

UCE), avalado por la prestigiosa Universidad Central del Ecuador, propone

obtener esta información de forma rápida, clara y oportuna; para ofrecer una

solución tecnológica y muy fácil de utilizar y así apoyar a la comunidad

Universitaria con una aplicación informática que provea toda la información antes

mencionada, además, dicha aplicación funcionará en tiempo real.

Para comprender de forma más clara, veamos la siguiente tabla a manera de

ejemplo: CAMPO DESCRIPCIÓN

Facultad, Centro Académico, entre otras Unidades Académicas y Administrativas,

Es el nombre de la Facultad, Centro Académico, entre otras Unidades Académicas y Administrativas., Ejm: ARQUITECTURA Y URBANISMO

Teléfono Es el número o números de los teléfonos convencionales (añadido la extensión 02) que posee la institución Ejm: (593-02) 2229537 2235269

Horario_Atención Es la hora adecuada para poder acudir a realizar a cualquier trámite. Ejm: Administración 08:00 – 16:00

Autoridades Los nombres de las autoridades principales. Ejm: Decano: Arq. Luciano Bonilla.

Descripción Es una rápida guía de información para el conocimiento de los usuarios.

Imagen Es una foto representativa del lugar a buscar.

Tabla 1 Presentación de la información relevante y actualizada (Elaboración propia)

Figura 1 Problemas frecuentes en el Google maps (Elaboración propia)

5

Hay que indicar que el formato de la información lo provee cada una de las

Facultades o a su vez en el portal web de la Universidad Central del Ecuador,

razón por la cual, nuestra aplicación no puede alterar ningún campo antes

mencionado.

1.6 Alcance

Se desarrollará una aplicación móvil que constara básicamente de dos perfiles el

cual va a poder realizar:

• Buscar una Facultad, Centro Académico, entre otras Unidades

Académicas y Administrativas.,

• Cambiar de capas a la presentación del mapa (satelital o con los nombres

de las calles)

• Trazar la ruta para llegar a su destino

• Ubicarse en su posición actual (geo ubicación)

• No se podría trazar una ruta, si el usuario está fuera del perímetro

Universitario

1.7 Delimitaciones del Proyecto

Se puede determinar las siguientes limitaciones:

La aplicación móvil será creada solo para dispositivos que tengan

sistemas operativos Android e IOS.

El usuario debe tener un dispositivo móvil inteligente.

Debe tener activado un plan de datos o a su vez la red inalámbrica.

6

2 MARCO TEÓRICO

2.1 Marco Conceptual

2.1.1 Antecedentes

Actualmente la Universidad Central ha ido creciendo paulatinamente tanto en

infraestructura como en el rediseño de sus edificios, lo cual ha generado

controversia al momento de identificar una Facultad, Centro Académico, entre

otras Unidades Académicas y Administrativas. Ya sea que el estudiante/visitante

ingrese a la Universidad en carro o caminando muchas de las veces dan la vuelta

en círculos, sin encontrar o localizar un lugar específico.

En ocasiones no se tiene la cultura aún de utilizar los servicios de las app que nos

provee Android (PlayStore) o IOS (AppleStore) e incluso el que se tiene instalado

en el teléfono por default (Maps). Los estudiantes han utilizado el aplicativo Maps

para poder buscar un edificio en particular dentro de la Universidad pero como el

repositorio de Google no los contiene pues no lo encuentra o si lo encuentra no se

tiene información de la misma.

Para la solución de este inconveniente se ha desarrollado la app “GEOUBICATE

UCE” con lo cual se tiene el Entorno Geográfico de las 17 Facultades, Centros

Académicos, entre otras Unidades Académicas y Administrativas. Es muy

importante tener en cuenta que para cumplir con el objetivo se debe tener una

dispositivo móvil inteligente.

Uno de las problemáticas importantes dentro de la Universidad Central era la

seguridad ya que se tenían robos a los estudiantes/personas particulares en los

lugares menos transitados, actualmente la Universidad cuenta con un grupo

permanente de vigilantes para resguardar la seguridad de todos con ello se puede

utilizar con seguridad el celular y buscar con libertad el destino al que se quiere

llegar.

2.1.2 Aplicaciones Móviles

Es una aplicación informática desarrollada para ser ejecutada a través de un

dispositivo móvil inteligente, Tablet y otros dispositivos móviles y que permite al

usuario efectuar una tarea concreta de cualquier tipo profesional, de ocio,

educativa, de acceso a servicios, entre otros. (Comisión de Comercio. (2011))

• Aplicaciones Nativas: son aquellas desarrolladas bajo un

7

lenguaje y entorno de desarrollo específico, lo cual permite, que

su funcionamiento sea muy fluido y estable para el sistema

operativo que fue creada.

VENTAJAS DESVENTAJAS

Utilización de los recursos tantos

del sistema como del hardware

Solo pueden ser utilizadas por un

dispositivo que cuente con el

sistema para el cual fue

desarrollada.

Permite ser publicada en tiendas

para su distribución.

Requiere de un costo para

distribuirla en una tienda, y

dependiendo el sistema, para el

uso del entorno de desarrollo.

En su mayoría, no necesitan estar

conectadas a Internet para su

funcionamiento.

Necesitan aprobación para ser

publicadas en la plataforma.

Tabla 2 Ventajas y Desventajas de la aplicación nativa (Elaboración propia)

• Aplicación Web: Desarrolladas usando lenguajes para el desarrollo web

como lo son html, css y javascript y un framework para el desarrollo de

aplicaciones web, como por ejemplo jquery mobile, Sencha, Kendo UI,entre otros..(Javier Cuello & José Vittone. (2013))

VENTAJAS DESVENTAJAS

Pueden ser utilizadas desde cualquier

dispositivo sin importar el sistema

operativo.

No pueden ser publicadas en

plataformas para su distribución.

Puede que requiera un coste para su

desarrollo, peor este puede ser

mínimo en comparación con las

nativas.

No utilizan los recursos del

sistema ni del dispositivo de

manera óptima.

No requieren de ninguna aprobación

para su publicación.

Tabla 3 Ventajas y Desventajas de la aplicación web (Elaboración propia)

8

• Aplicaciones Híbridas: Desarrolla utilizando lenguajes de desarrollo web

y un framework dedicado para la creación de aplicaciones híbridas, como

por ejemplo phonegap, titanium appacelerator, Steroids, entre otros.

(Javier Cuello & José Vittone. (2013))

VENTAJAS DESVENTAJAS

Uso de los recursos del

dispositivo y del sistema operativo

El costo de desarrollo puede ser

menor que el de una nativa

Son multiplataforma

Permite distribución a través de

las tiendas de su respectiva

plataforma.

La documentación puede ser

un poco escasa y

desordenada.

Tabla 4 Ventajas y Desventajas de la aplicación hibrida (Elaboración propia)

2.1.3 Tipos de Aplicaciones para Dispositivos Móviles

Funcionalidad básica: Pensar en esto como una jerarquía, como el correo

electrónico en el iPhone es un buen ejemplo de esto. Sin duda es de fácil

construcción y diseño y una buena opción para las empresas que desean una

aplicación “simple” que muestre información básica.

Base de datos con funcionalidad personalizada: Un ejemplo sería tener cientos

de razas de perros que desea organizar y mostrar de manera diferente. Esto se

puede hacer más allá del formato de tabla básica, el desarrollo se vuelve más

complejo.

Juegos: La gama de complejidad en este tipo de App es muy amplia, se puede

empezar por algo muy simple hasta llegar al 3D o la incorporación de la

experiencia del usuario a través del movimiento físico del dispositivo.

Mejoras o modificaciones del hardware del dispositivo: Esto significa que al

crear la app se toman ciertas funciones del teléfono, como la alarma, la cámara o

el flash, para hacerlo mejor. Por ejemplo, el de la cámara + app que añade filtros

a las imágenes que sacas con el teléfono.

(Javier Cuello & José Vittone. (2013))

2.1.4 Sistemas Operativos para Dispositivos Móviles

Los Sistemas Operativos para teléfonos móviles se vuelven cada día más

9

importantes pues la tecnología avanza y en materia de comunicaciones aún más,

la telefonía celular cada vez se convierte más en una parte importante de nuestras

vidas, y en una sociedad que exige más y más, es importante diseñar sistemas

que soporten las aplicaciones que se demandan, que sean fluidos, fáciles,

accesibles y hasta divertidos. Es por eso que las compañías móviles han

desarrollado una competencia bastante reñida en cuanto al desarrollo de SO se

refiere, desde los inicios en los años 90 con las versiones de EPOC32 para PDA’s

hasta los más avanzados y sofisticados como Android, IOS, BlachBerry que

además de ser eficientes y estables son multiplataforma, lo que hace que cualquier

persona tenga acceso a ellos desde un celular básico hasta un Smartphone.

Las siguientes ventajas

• Acceso a Internet y conectividad mediante Bluetooth.

• Envío de mensajes cortos.

• Aceleración 2D y 3D.

• Reproducción de video y sonido.

• Cámara integrada.

• Información de localización GPS.

• Sensores de orientación.

2.1.5 Componentes de los sistemas Operativos en Dispositivos Móviles

CAPAS

Al igual que los sistemas operativos presentes en los componentes informáticos

más grandes, un sistema operativo móvil también se encuentra compuesto por

varias capas. (Gabriel Osmar Pedrozo (2012))

Figura 2 Capas de los S.O. ( Informaticohoy. (2007))

10

KERNEL

Una de las más importantes y esenciales piezas que componen cualquier sistema

operativo, sea el de nuestro móvil, o el de la PC, es el denominado núcleo o Kernel.

(Gabriel Osmar Pedrozo (2012)).

Figura 3 Kernel S.O.( LINUX HOWTO. (2007))

MIDDLEWARE

Esta capa es el conjunto de módulos que permite que las aplicaciones diseñadas

y escritas para tales plataformas puedan ser ejecutadas. Entre los servicios que

presta esta capa podemos citar los motores de comunicaciones y mensajería,

funciones de seguridad, servicios para la gestión de diferentes aspectos del móvil,

ofrece servicios claves como el motor de mensajera y comunicaciones. (Gabriel

Osmar Pedrozo (2012))

Figura 4 MIDDLEWARE (Mele Jarq . (2012))

ENTORNO DE EJECUCIÓN DE APLICACIONES

11

Esta capa provee de todos los elementos necesarios para la creación y desarrollo

de software a los programadores, es decir contiene elementos que serán de gran

ayuda a los mismos, en el momento de escribir aplicaciones compatibles con ese

sistema operativo. (Gabriel Osmar Pedrozo (2012))

Figura 5 Entorno de Ejecución (Jjparra . (2005))

INTERFAZ DE USUARIO

La interfaz de usuario es el elemento del teléfono que usualmente utilizamos para

interactuar con el aparato. Sin esta capa no sería posible utilizar nuestro

dispositivo, ya que la misma presenta todos los elementos necesarios para facilitar

cualquier tipo de tarea que deseemos realizar en nuestra terminal.

Figura 6 Modelo de capas de un sistema operativo móvil (Maksim, 2013).

12

(Gabriel Osmar Pedrozo (2012))

MERCADO EN SISTEMAS OPERATIVOS

A medida que los teléfonos móviles crecen en popularidad, los sistemas

operativos con los que funcionan adquieren mayor importancia. La cuota de

mercado de sistemas operativos móviles era el siguiente: (Expansión. (2015)).

Figura 7 Porcentaje de distribución del mercado mundial según el sistema operativo al año 2014, 2015 (CANTAR WORLDPANEL)

PORCENTAJE DE VENTAS DE SMARTPHONE A NIVEL MUNDIAL

Figura 8 Evolución ventas de Smartphone clasificados por sistema operativo (KCPB)

13

Como se puede observar Android es el sistema operativo móvil más usado en el

mundo con una cuota superior al 80%, esto debido a su código fuente libre que

permite a diversas empresas ensambladoras de dispositivos móviles ajustar,

calibrar y modificar dichos fuentes para sacar mayor provecho al hardware de sus

dispositivos. (Expansión. (2015)).

2.2 Marco Técnico

Para la presentación del proyecto se ha considerado dos sistemas operativos,

como se representa en la figura 7 a nivel mundial son los más comprados y

utilizados por sus características y funcionalidades.

A continuación se presentara las características que cada sistema operativo nos

ofrece:

Características Android IOS

Personalizar

Es muy personalizable, pero

se necesita invertir tiempo y

tener algo de conocimiento

para personalizar el teléfono.

Está muy personalizado y la

plataforma lo tiene todo bajo control.

Está bien para quienes se

conforman con las cosas ya

predeterminadas

Actualizar

Debido a la fragmentación que

existe, las actualizaciones

dependen del modelo y el

fabricante de cada dispositivo.

Los usuarios siempre pueden

contar con la versión más reciente

de IOS, gracias a las

actualizaciones gratuitas y

automáticas.

Disponibilidad

Está disponible en equipos de

diversos fabricantes: HTC,

Google, Samsung, Sony,

Motorola, LG, etc, en una gran

variedad de modelos.

Solo está disponible en los

dispositivos de Apple: iPod touch,

iPad, iPhone y Apple TV.

Publicación

Cualquiera puede crear y

distribuir apps para Android.

Los usuarios pueden

descargar e instalar apps

Para los desarrolladores es más

caro publicar apps para iOS. La App

Store es prácticamente el único

lugar desde el que se pueden

descargar.

14

desde fuera de la tienda

oficial.

Tabla 5. Cuadro comparativo de Sistemas Operativos (Alfonso Cervera. (2015))

Teniendo en cuenta sus características vamos a profundizar un poco más sobre

los dos sistemas operativos a desarrollar.

2.2.1 Android

Es un sistema operativo móvil basado en Linux, que junto con aplicaciones

middleware está enfocado para ser utilizado en dispositivos móviles como

teléfonos inteligentes, tabletas, Google TV y otros dispositivos. Es desarrollado

por la Open Handset Alliance, la cual es liderada por Google. Este sistema por lo

general maneja aplicaciones como Google Play. Fue desarrollado inicialmente por

Android Inc., una firma comprada por Google en 2005. El anuncio del sistema

Android se realizó el 5 de noviembre de 2007 junto con la creación de la Open

Handset Alliance, un consorcio de 78 compañías de hardware, software y

telecomunicaciones dedicadas al desarrollo de estándares abiertos para

dispositivos móviles. Google liberó la mayoría del código de Android bajo la

licencia Apache, una licencia libre y de código abierto. (Gabriel Osmar Pedrozo

(2012))

Características y especificaciones actuales:

Arquitectura

Los componentes principales del sistema operativo de Android (cada sección se

describe en detalle):

Aplicaciones: las aplicaciones base incluyen un cliente de correo

electrónico, programa de SMS, calendario, mapas, navegador, contactos y

otros. Todas las aplicaciones están escritas en lenguaje de programación

Java.

Marco de trabajo de aplicaciones: los desarrolladores tienen acceso

completo a los mismos APIs del framework usados por las aplicaciones

base. La arquitectura está diseñada para simplificar la reutilización de

componentes (sujeto a reglas de seguridad del framework).

Bibliotecas: Android incluye un conjunto de bibliotecas de C/C++ usadas

15

por varios componentes del sistema. Estas características se exponen a

los desarrolladores a través del marco de trabajo de aplicaciones de

Android; algunas son: System C library (implementación biblioteca C

estándar), bibliotecas de medios, bibliotecas de gráficos, 3D y SQLite,

entre otras.

Runtime de Android: Android incluye un set de bibliotecas base que

proporcionan la mayor parte de las funciones disponibles en las bibliotecas

base del lenguaje Java. Cada aplicación Android corre su propio proceso,

con su propia instancia de la máquina virtual Dalvik.

Núcleo Linux: Android depende de Linux para los servicios base del

sistema como seguridad, gestión de memoria, gestión de procesos, pila de

red y modelo de controladores.

(Gabriel Osmar Pedrozo (2012))

Seguridad

Según un estudio de Symantec de 2011, comparado con el iOS, Android es un

sistema más vulnerable, debido principalmente a que el proceso de certificación

de aplicaciones es menos riguroso que el de Apple y el esquema de gestión de

permisos para éstas, que pone muchas decisiones de seguridad importantes en

manos del usuario, lo expone a mayores riesgos y le hace más atractivo a los

ataques de ingeniería social. Sin embargo, en base a números absolutos

contabilizados de los boletines de seguridad de Microsoft, Adobe, Oracle y Apple,

el 85% de los agujeros de seguridad en 2011 sucedieron en sistemas iOS, pese a

que éste posee una cuota de mercado inferior a la de Android. (Sophos. (1997)).

2.2.2 iOS

Sin duda la gran ventaja del sistema operativo de Apple es la sencillez de manejo.

Además de la facilidad de configurar en los primeros pasos del teléfono.

El sistema operativo está diseñado para los teléfonos de Apple, prácticamente por

los mismos que realizan el dispositivo. Por lo tanto la velocidad, el ajuste de iOS,

entre otras opciones, es muy buena, tanto como la seguridad del sistema.

La desventaja de IOS es la poca personalización que tiene, ya que viene ajustada

por defecto. La disposición es la que viene definida de fábrica. En las últimas

actualizaciones del sistema operativo se han ido incorporando nuevas opciones

16

para incluir, por ejemplo, teclados de terceros o widgets en el centro de

notificaciones.

Otra desventaja, es la navegación por páginas web que contengan flash. Apple no

ha dado soporte y aunque el flash se utiliza cada vez menos, en las webs que

tengan notaras el defecto. (ALBERTO SÁNCHEZ. (2015))

Características

Multitarea

Antes de iOS 4, la multitarea estaba reservada para aplicaciones por defecto del

sistema. A Apple le preocupaba los problemas de batería y rendimiento si se

permitiese correr varias aplicaciones de terceros al mismo tiempo. A partir de iOS

4, dispositivos de tercera generación y posteriores permiten el uso de 7 APIs para

multitarea, específicamente:

Audio en segundo plano

Voz IP

Localización en segundo plano

Notificaciones push

Notificaciones locales

Completado de tareas

Cambio rápido de aplicaciones

2.2.3 Componentes incorporados en los móviles actuales.

Los dispositivos móviles en la actualidad incorporan gran cantidad de

componentes (sensores) de hardware, cámaras, giroscopios, sensores de luz,

GPS, Glonass.

Para el objetivo del presente documento se consideran los componentes de

posicionamiento global (GPS y Glonass), tanto los equipos con iOS como los

dispositivos con Android cuentan con chips A-GPS incorporados, que a diferencia

del tradicional GPS obtienen la información de la ubicación de una manera más

rápida gracias a la asistencia de un servidor de asistencia en línea.

Modo online.- Acceden a los datos en tiempo real, por lo que es necesario una

conexión de datos activa proveniente de la red celular GSM, haciendo el

posicionamiento más rápido y preciso.

17

Modo offline.- Acceden a los datos previamente descargados de una red GPRS,

WiFi o similar, estos datos pueden ser usados por varios días hasta que la misma

se vuelve obsoleta y se necesite realizar una actualización de los mismos.

Glonass es el sistema de posicionamiento global ruso, puede ser usado

independientemente o en conjunción con el GPS o A-GPS tradicional permitiendo

una precisión de localización a 2 metros a la redonda

Figura 10 Orbitas de satélites en la tierra, Glonass y GPS (Ms. Lisa. (2015).)

Figura 11 Simulación de GPS(mediarts.com.ve. (2015))

Figura 9 A-GPS. Diagrama de funcionamiento. (Qualcomm Technologies. (2011))

18

Android Framework o Servicio de Localización

Consiste en una serie de clases como puede ser el Location Manager, que

proporcionan servicios para que una aplicación use el GL Engine. Es una especie

de puente entre la aplicación y el GL Engine.

Pertenecen al Framework de Android, y por lo tanto de java. Se trata de un grupo

de funciones contenidas en el paquete android.location del framework que

controlan diferentes aspectos del GPS con el fin de comunicarse entre Apps y GL

Engine.

Algunos ejemplos son:

addGpsStatusListener (GpsStatus.Listener listener): Cambia el

estado del GPS a escuchando.

getProviders (Criteria criteria, boolean enabledOnly): Retorna

una lista de torres cercanas que satisfacen X criterios pasados a

la función.

Aplicaciones de Usuario

La última capa son las aplicaciones que se tiene instaladas en el terminal, se trata

de cualquier aplicación que use el GPS. Google Maps, Navigation, etc.

2.2.4 Frameworks de desarrollo de aplicaciones móviles.

Existen dos tipos de frameworks para el desarrollo de aplicaciones web,

uno se basa en el soporte nativo y el otro en aplicaciones hibridas.

Como se analizó previamente las dos plataformas predominantes en el

mercado son Android y iOS.

2.2.5 Frameworks nativos

Características Android Studio ADT

Sistema de construcción Gradle ANT

19

Construcción y gestión de proyectos basado en

Maven (herramienta de software para la gestión

y construcción de proyectos Java, similar a

Apache ANT, pero su modelo es más simple ya

que está basado en XML) Si

No (es necesario instalar

un plugin auxiliar)

Construir variantes y generación de múltiples

APK (muy útil para Android Wear) Si No

Refactorización y completado avanzado de

código Android Si No

Diseño del editor gráfico Si Si

Firma APK y gestión de almacén de claves Si Si

Soporte para NDK (Native Development Kit:

herramientas para implementar código nativo

escrito en C y C++)

Próximas

versiones Si

Soporte para Google Cloud Platform Si No

Vista en tiempo real de renderizado de layouts Si No

Nuevos módulos en proyecto Si No

Editor de navegación Si No

Generador de assets Si No

Datos de ejemplo en diseño de layout (sin

renderizar en tiempo de ejecución) Si No

Visualización de recursos desde editor de

código

Si (a la

izquierda de

la línea de

asignación

del recurso) No

Tabla 6. Cuadro comparativo de Emuladores de Android (Academia Android. (2015))

20

Android Studio

Es toda una suite para desarrollar aplicaciones nativas en código java

interpretables por la máquina virtual Dalvik, cuenta con api’s para el manejo y

administración de los componentes internos del dispositivo móvil. Al ser de código

libre y estar basado en lenguaje Java la suite provee desarrollar una aplicación

móvil en casi cualquier sistema operativo de escritorio como Linux, Windows y/o

Mac Os con un coste relativamente bajo.

Figura 12 Android Studio (Android Developer, 2016). ( Fco. José Hidalgo.(2015).)

XCode

Es el entorno de desarrollo de los dispositivos Apple como el iPad, su lenguaje de

desarrollo principal es objetive-C aunque puede compilar código escrito en C,

C++, Java, Apple Script, XCode es distribuido gratuitamente con los sistemas

operativos Mac Os X el cual integra el framework Cocoa lo cual convierte a XCode

en una suite de uso limitado a sistemas operativos Mac Os X.

Figura 13 IDE XCode (Apple, Inc., 2016).

21

2.2.6 Frameworks híbridos

Uno de los objetivos de los frameworks híbridos es permitir el desarrollo de

aplicaciones multiplataforma, existe una gran variedad de frameworks para

aplicaciones híbridas, a continuación una de las más utilizadas.

JQuery Mobile

Es un framework basado en HTML5, el más querido de todos los frameworks

móviles, jQuery Mobile no trata de hacer que las aplicaciones se vean como

Android o iOS. Por el contrario, su propósito es ayudar a desarrollar aplicaciones

web que funcionan igual de bien en todos los navegadores móviles (incluyendo

antiguos como Windows Phone, BlackBerry y Symbian). Como tal, es muy ligero,

sólo depende de jQuery y es bastante fácil de aprender, sin dejar de ofrecer un

buen reconocimiento táctil y soporte PhoneGap / Cordova. (JQuery Mobile, 2016).

2.3 SISTEMAS DE INFORMACIÓN GEOGRÁFICA

2.3.1 Antecedentes

Los SIG han revolucionado el mundo de la cartografía, del análisis espacial, de la

planificación y de la gestión del territorio. Casi todas las cosas que suceden,

suceden en alguna parte (cavamos zanjas, construimos puentes, perforamos el

subsuelo para obtener petróleo…).

Un SIG es “Un sistema de hardware, software, datos, personas, organizaciones y

convenios institucionales para la recopilación, almacenamiento, análisis y

distribución de información de territorios de la Tierra”. (Deuker, Kjerne, 1989)

Un SIG es “Una poderosa caja de herramientas para recoger, almacenar,

recuperar, transformar y visualizar datos del mundo real” (Burrough, 1986)

A grandes rasgos, un SIG funciona como una gran base de datos con información

georreferenciada que es mostrada sobre un mapa digital. Podremos consultar la

información sobre el mapa o consultando la base de datos. Existen muchas más

definiciones para un SIG, pero estas son las más comunes.

2.3.2 Componentes

Para poder saber y conocer de las herramientas a utilizar es importante

22

conocer los componentes que rodean a un SIG, con lo cual nos va a llevar

a tener un panorama más claro de lo que estamos utilizando.

A continuación se representara la figura de los componentes del SIG:

a) Software Lo primero que necesitaremos será un almacén de datos

geográficos donde una vez introducida, consultar la información. Una vez

introducidos nuestros datos, con ayuda de un software de escritorio

jugaremos con la información y veremos en todo momento las capas

posibles o agregaremos aquellas que sean de nuestro interés. Cuando

tengamos definida la información que queremos difundir, podemos

desplegarla a otros ordenadores mediante servicios web; éstos se

conectarán con sus respectivos clientes consumidores de información

georreferenciada (p.ej en nuestro visor web).

b) Hardware Será conveniente la utilización de una amplia gama de

tipologías de hardware (Un PC común, un plotter, servidores de alta

capacidad, tabletas digitalizadoras, un Smartphone con conexión a

internet, etc.)

c) Datos Existe gran diversidad de datos. (Ficheros SHP KML, GML TIFF…).

En este TFC principalmente se utilizarán los ficheros en formato GPX.

d) Procedimientos Todo SIG debería operar de acuerdo a una organización

y unos métodos de funcionamiento acordados

e) Personas Aquellas que actualizarán los datos del sistema y se

preocuparán de la calidad del contenido del mismo y crearán nuevas

consultas para nuevas necesidades de información.

Figura 14 SIG ((DIDIANA GONZALEZ (2015))

23

2.3.3 Funcionalidades

Las funcionalidades más importantes son:

a) Entrada de información: La primera necesidad con la que nos

encontraremos será la de aportar información a nuestro sistema, editarla y

visualizarla correctamente. Esta primera funcionalidad parece banal, pero

conlleva gran trascendencia, pues sin la información carecería de sentido

nuestro SIG.

b) Funciones de Almacenamiento: Una vez capturada la información

geográfica tendremos que diseñar un sistema de almacenamiento y

protección de los datos.

c) Funciones de Gestión: Una vez capturada y almacenada la información

geográfica, el siguiente paso a realizar será el de extraer de la base de

datos del SIG las porciones de información espacial que interesan en cada

momento. Mostraremos aquella información de nuestro interés.

d) Funciones de análisis espacial: Estas funciones, (según Arnoff, 1989),

pueden separarse en 4 tipos: Recuperación, Superposición, Vecindad y

Conectividad. Entre ellas se incluyen las operaciones de consulta.

2.3.4 Datos Geográficos

Los datos son proposiciones referentes a experiencias efectuadas. Éstas se

almacenan para ser utilizadas como evidencias de un fenómeno u objeto una vez

interpretado; los datos que la ciencia utiliza son los que se refieren a hechos

comprobados.

Los datos geográficos son entidades espacio–temporales que cuantifican la

distribución, el estado y los vínculos de los distintos fenómenos u objetos naturales

y sociales. Un dato se caracteriza por tener:

Posición absoluta: sobre un sistema de coordenadas (x, y, z).

Posición relativa: frente a otros elementos del paisaje (topología, incluido,

adyacente, cruzado, entre otros).

Figura geométrica que lo representa (punto, línea, polígono).

24

Atributos que lo describen (características del elemento o fenómeno).

Desde la perspectiva tecnológica, los SIG deben ser capaces de manipular y

analizar entidades, atributos, geometría y topología de forma integrada.

Los datos geográficos son la clave para diferenciar un SIG de otro sistema de

información. Además, antes de discutir operaciones SIG, se debe comprender la

naturaleza de los datos geográficos; por ejemplo, si tomamos el elemento vías,

podemos referirnos a su ubicación con la pregunta ¿dónde está? Y a sus

características, como longitud, nombre, límite de velocidad y dirección.

La ubicación, también llamada geometría o forma (figura), representa datos

espaciales. Así, el elemento vías tiene dos componentes: el espacial y sus

atributos (Kang–Tsung Chang, 2004).

Toda esta información es usual verla en los SIG mostrada por capas sobre un

mapa. Una capa es una representación de la información concreta plasmada

sobre un mapa. Primeramente introduciremos el concepto de ´escala´. Según la

cantidad de información y precisión con la que queramos trabajar, utilizaremos

una escala u otra. Si trabajamos con fotografías aéreas, aparecerá el concepto

resolución. A mayor resolución, mayor es el tamaño de la imagen y menor la

velocidad a la que se consulta información en ella. Ya que hemos hablado de

escala y resolución, introducimos también el concepto de precisión. A mayor

precisión con la que trabajemos menor será el margen de error provocado al

georreferenciar información. Para representar en capas información utilizaremos

lo que denominamos formato vectorial. Ahora sin embargo pensemos en que

queremos saber en un monte muy grande, en que zonas del 1 al 10, pasan más

tiempo los animales. Para esta información utilizaremos el formato ráster.

El formato Ráster. Localización de información continúa. Este formato lo que hace

Figura 15 Modelo Ráster y Vector (Gauss-Krüger. (2002).

25

es dibujar una malla de valores sobre un área. En resumen, los datos Ráster se

componen de valores asignados a una posición de una matriz. Un valor concreto

en una fila y una columna.

2.4 Notepad++

2.4.1 Introducción

Es un editor de texto y de código fuente libre con soporte para varios lenguajes de

programación. De soporte nativo a Microsoft Windows. Incluye opciones más

avanzadas que pueden ser útiles para usuarios avanzados como desarrolladores

y programadores. (Miguel Angel Alvarez. (1997))

2.4.2 Características

Coloreado y envoltura de sintaxis: si se escribe en un lenguaje de

programación o marcado, Notepad++ es capaz de resaltar las expresiones

propias de la sintaxis de ese lenguaje para facilitar su lectura.

Pestañas: al igual que en muchos navegadores, se pueden abrir varios

documentos y organizarlos en pestañas.

Grabación y reproducción de macros.

Soporte de extensiones: incluye algunas por defecto.

2.5 Algoritmo para encontrar la ruta más corta entre dos puntos

El problema de la ruta más corta puede resolverse con métodos de programación

lineal, al ser un problema de optimización se realiza una combinatoria cuyo

objetivo es encontrar las rutas más cortas o de menor coste.

Algoritmo de Dijkstra:

Sea la distancia más corta del nodo fuente 1 hasta el nodo, y se define como (≥ 0)

como la longitud del arco (i, j). Entonces el algoritmo define la etiqueta de un nodo

inmediato posterior como:

La etiqueta del nodo de inicio es [0,-], que indica que el nodo no tiene predecesor.

Las etiquetas de nodos en el algoritmo de Dijkstra son de dos clases: temporales

y permanentes. Una etiqueta temporal se modifica si se puede encontrar una ruta

más corta a un nodo. Cuando se ve que no se pueden encontrar rutas mejores,

cambia el estado de la etiqueta temporal a permanente.

26

Paso 0.

Etiquetar el nodo fuente (nodo 1) con la etiqueta permanente [0,-]. Igualar i=1.

Paso i

a) Calcular las etiquetas temporales para cada nodo j al que

pueda llegarse desde el nodo i, siempre y cuando j no tenga etiqueta

permanente. Si el nodo ya está etiquetado con por otro nodo k, y si

, sustituir por .

b) Si todos los nodos tienen etiquetas permanentes, detenerse. En caso

contrario, seleccionar la etiqueta que tenga la distancia más corta

entre todas las etiquetas temporales (los empates se rompen de

forma arbitraria). Hacer que i=r y repetir el paso i.

La representación vial es un claro ejemplo de una red (grafo dirigido y ponderado)

que puede ser resuelta con el algoritmo de Dijkstra.

Al tener una red vial existen muchos aspectos que considerar como el costo que

puede ser definido en función de la distancia de la vía, tipo de vía, hora del día,

carga vehicular, direccionalidad de vías, etc., para el cálculo de la ruta óptima con

el algoritmo de Dijkstra en el presente documento se considera el uso de la

variable, la distancia como coste.

Oracle Spatial cuenta con un motor para consultas de ruteo que incorpora el

algoritmo de Dijkstra para el cálculo de rutas óptimas en una red, hace uso de la

representación de matriz de adyacencias para determinar las rutas óptimas

considerando que las mismas tienen direccionalidad (una vía, doble sentido).

(Algoritmos de ruta más corta (TAHA, 2004, pág. 225))

Figura 16 Ejemplo de la topología vial UCE

27

2.6 Factibilidad Económica

Se requieren:

Recurso Cantidad Costo Total

Computador Core

i7, 8gb de RAM y

1Tb de disco

1 $800 $800

Desarrollador

(periodo de 4

meses)

1 $1000 $4000

Telefono

inteligente HTC

one

1 $150 $150

Tablet con 2 $150 $300

navegador web que

soporte HTML5

Pago por albergar el

aplicativo en Play

Store

1 $25 $25

TOTAL $5275

Tabla 7. Cuadro comparativo de costos (Elaboración propia)

28

3 HERRAMIENTAS DE DESARROLLO

3.1 Lenjuages de Programación

Actualmente existen diferentes lenguajes de programación para el desarrollo de

aplicaciones móviles, estos han ido surgiendo debido a las tendencias y

necesidades de las plataformas. En las siguientes líneas se pretende mostrar las

ventajas y desventajas de los lenguajes seleccionados para el desarrollo del

proyecto.

3.1.2 Lenguaje HTML

Es un lenguaje de programación estático para el desarrollo de

aplicaciones web. Desarrollado por el W3C. Los archivos pueden tener

las extensiones (htm, html). La sintaxis es la siguiente:

Ventajas

• Fácil y sencillo para representar hipertexto.

• Presenta el código en forma vistosa, organizada y estructurada.

• Se dispone de editores de páginas web o WYSIWYG, por lo tanto no es

necesario tener mucho conocimiento de programación.

• Los ficheros que se generan son pequeños.

• Facilita un rápido despliegue.

• Tiene mucha documentación por lo tanto es fácil de aprender.

• Todos los navegadores web admiten este lenguaje.

Desventajas

• El lenguaje generado es estático.

• Los browsers o navegadores pueden interpretar el código de forma

diferente.

• Guarda etiquetas que se convierten en “basura” y obstaculizan la

Figura 17 Esquema HTML(Enrique González. (2015).)

29

corrección.

• El diseño de sitios web son más lentos.

(MANCILLA MEZA. (2011).)

3.1.3 Lenguaje JavaScript

Es un lenguaje de programación interpretado. Fue creado por Brendan

Eich en la empresa Netscape Communications Este lenguaje es

semejante a Java, con la diferencia de que no está orientado a objetos.

(Enrique González. (2015))

Este código es introducido dentro de las páginas web, para ejecutar funciones

programadas. Debido a las incompatibilidades la W3C diseño el estándar DOM.

Su sintaxis es la siguiente:

Ventajas:

• Lenguaje fiable.

• Poseen capacidades limitados por motivo de seguridad.

• Se ejecuta al lado del cliente.

Desventajas:

• Código visible para todo usuario.

• Código se descarga totalmente.

• El problema XSS, puede colocar en peligro la seguridad del sitio.

3.1.4 XML

XML (eXtensible Markup Language), Lenguaje extensible de

marcas, es un lenguaje formado por un conjunto de reglas que

sirven para definir etiquetas semánticas para organizar un documento. XML es un

metalenguaje, lo que permite diseñar un propio lenguaje de etiquetas. (Frankmch.

(2015).)

Figura 18 Esquema de JavaScript(Elaboración propia)

30

Ventajas:

• De fácil interpretación por humanos y por software, y es gratuito.

• Separa radicalmente el contenido de su presentación o formato.

• Puede ser utilizado con cualquier lenguaje o alfabeto. Estructura jerárquica

• El análisis sintáctico es fácil por las reglas de composición del documento.

• Poderosos enlaces (XLL).

Desventajas:

• Con el tiempo la mayoría de las ventajas que disponibles se pueden volver

sus desventajas.

• Requiere más espacio en disco, ya que un archivo de texto es de mayor

tamaño que un binario.

3.1.5 CSS

CSS (Cascading StyleSheets), Hojas de estilo en cascada, es una herramienta

impresionante para agregar estilos de presentación a los sitios web. Ahorra tiempo

y permite diseñar sitios web de un modo totalmente nuevo. Es imprescindible para

los que trabajan en el diseño web.

La siguiente tabla muestra el soporte de CSS 1, CSS 2.1 y CSS 3 de los cinco

navegadores más utilizados por los usuarios:

NAVEGADOR MOTOR CSS 1 CSS 2 CSS 3

Google Chrome

Webkit Completo desde

la versión 85 del

motor

Completo Todos los selectores,

pseudo-clases y muchas

propiedades

Internet Explorer

Trident Completo desde

la versión 7.0

Completo Todos los sectores,

pseudo-clases y

propiedades a partir de la

versión 10

Figura 19 Esquema XML(Elaboración propia)

31

Firefox Gecko Versión 1.0 Completo Todos los sectores,

pseudo-clases

Safari Webkit Versión 85 del

motor

Completo Todos los sectores,

pseudo-clases

Opera Presto Versión 1.0 del

navegador

Completo Todos los sectores,

pseudo-clases

Tabla 8 Soporte de CSS en los navegadores (Elaboración propia)

Ventajas:

• Aplicación de varios estilos a diferentes tipos de medios (impresión,

pantalla, y otros). Posee técnicas sofisticadas y avanzadas.

• Con una sola hoja de estilo es posible alterar la presentación de cada

elemento sin manipular el código HTML, ahorrando esfuerzo y tiempo de

edición.

• El lenguaje de CSS ofrece una gran cantidad de herramientas de

composición.

• Evita recurrir a trucos para obtener efectos. Potente, sencillo y fácil de

aprender.

• Los documentos que usan CSS resultan más compactos.

Desventajas

• El navegador aplica un formato y el trabajo resulta casi inútil.

• Varias propiedades de CSS ocasionan que partes de la página resulten

inaccesibles para algunos navegadores si no son empleados

correctamente.

3.2 QUANTUM GIS

3.2.1 Introducción

Quantum GIS (QGIS) es un sistema de información

geográfica de código abierto. Este software surgió en

mayo de 2002 y se instauró en junio del mismo año como un proyecto en

SourceForge. Se ejecuta bajo plataformas GNU/Linux, Unix, Mac OS y Windows.

Distribuido bajo la licencia GNU GPL, por lo que puede ser modificado libremente

para que realice diferentes y más especializadas funciones.

32

3.2.2 Características

QGIS proporciona varias funcionalidades SIG dotadas por los plugins que lo

forman. Mostrar datos: Obtener y superponer datos vectoriales y ráster en

diferentes formatos y proyecciones, sin hacer una conversión a un formato interno

o común. Datos soportados:

PostgreSQL para el uso de tablas PostGIS, formatos vectoriales con el

soporte de la librería de instalación OGR, incluyendo archivos de formato

ESRI,

MapInfo, SDTS y GML.

Ráster y soporte de formatos de imágenes por la librería GDAL, tales como

GeoTiff, Erdas Img., ArcInfo Ascii Grid, JPEG, PNG.

Base de datos SpatiaLite.

GRASS ráster y los datos vectoriales de bases de datos de GRASS

Datos en línea como OGC-compliant en WMS o WFS.

Datos OpenStreetMap.

Explora los datos y componer mapas: Puede diseñar mapas y explorar

interactivamente los datos espaciales en la interfaz de usuario. Entre las

herramientas útiles de la GUI se encuentran:

Proyección de vuelo.

Diseño de mapas.

Panel de descripción.

Marcadores espaciales.

Identificación, selección de características.

Editar y ver atributos de búsqueda.

Características de etiquetado.

Cambio de simbología vectorial y ráster.

Añadir una capa de cuadrícula.

Decorar el mapa con una flecha norte, escala y etiqueta copyright.

Guardar y restaurar proyectos.

Crear, editar, manejar y exportar datos: Puede crear, editar, manejar y exportar

mapas vectoriales en varios formatos. QGIS ofrece lo siguiente:

Herramientas de digitalización, soporte a formatos OGR y capas

vectoriales.

Crear y editar shapefiles y capas vectoriales GRASS.

Herramientas GPS para importar y exportar en formato GPX, y convertir

33

otros formatos GPS a GPX, bajar y subir directamente a una unidad GPS.

Visualizar y editar los datos OpenStreetMap.

Crear capas PostGIS desde shapefiles con el plugin SPIT.

Manejo mejorado de tablas PostGIS.

Manejo de atributos de tablas vectoriales.

Guardar capturas de pantalla como imágenes geo referenciadas.

Analizar los datos: Puede realizar análisis de datos espaciales de PostGIS y

otros formatos admitidos por OGR usando el plugin de Python fTools. Ofrece

análisis vectorial, muestreo, geo procesamiento, geometría y herramientas de

gestión de bases de datos. También puede utilizar las herramientas de GRASS

integradas, que incluyen la funcionalidad completa de GRASS con más de 400

módulos.

Publicar mapas en internet: Puede ser utilizado para exportar datos a un archivo

de mapa y publicarlos en el internet usando el servidor web UMN MapServer.

También se pueden utilizar como un cliente WMS, WMS-C o CMA y CMA-T, y

como WMS o WFS.

Otros plugins interesantes:

QSpatiaLite. Este plugin sirve para administrar bases de datos SpatiaLite

directamente dentro de QGIS. Utiliza el compositor de consultas con

resaltador de sintaxis y autocompletado. Importa/exportar capas de/a

QGIS. Importación / exportación DBF / TXT / CSV.

OpenGeo Explorer. El plugin para QGIS OpenGeo Explorer se utiliza para

configurar los componentes de la suite OpenGeo (PostGIS y GeoServer) desde

QGIS.

Con OpenGeo Explorer tenemos lo mejor de ambos mundos: una interfaz de

escritorio junto con la publicación en web.

OpenLayer Plugin: Si necesitas capas base una gran manera de

hacerlo es a través de la API de OpenLayers para QGIS.

OpenStreetMap, Google Maps, Bing Maps, Yahoo Maps y Apple

34

Maps. Por supuesto que si tiene un buen WMS de tu área de interés puedes optar

por él, y si no, el plugin OpenLayers es un gran aliado en tus complementos de

QGIS.

3.2.4 GUI de Quantum GIS

3.3 NODE.js

3.3.1 Introducción

Figura 20 Opciones del OpenGeo (Elaboración propia)

Barra de menú

Crear capas

Barra de Herramientas

Zoom +, Zoom -

Panel Capas

Panel explorador

Visualizador de Mapas

Herramientas de Exportar/Importar

Figura 21 GUI Quantum GIS (Elaboración propia)

35

Es básicamente un framework para implementar operaciones de entrada y salida.

Está basado en eventos, streams y construido encima del motor de Javascript V8,

que es con el que funciona el Javascript de Google Chrome.

Además, NodeJS implementa los protocolos de comunicaciones en redes más

habituales, de los usados en Internet, como puede ser el HTTP, DNS, TLS, SSL,

etc. Mención especial al protocolo SPDY, fácilmente implementado en Node, que

ha sido desarrollado mayoritariamente por Google y que pretende modernizar el

protocolo HTTP, creando un sistema de comunicaciones que es sensiblemente

más rápido que el antiguo HTTP (apuntan un rendimiento 64% superior).

3.3.2 V8

Node.js está basado en el motor V8 de JavaScript de Google. Este motor está

diseñado para correr en un navegador y ejecutar el código de Javascript de una

forma extremadamente rápida.

Figura 23 V8 de Google CECILIO ÁLVAREZ. (2014)

Figura 22: CUADRO COMPRARTIVO FRAMEWORKS UTILIZADOS Carlos Azaustre.. (2015)

36

La tecnología que está detrás de Node.js permite ejecutar este motor en el lado

del servidor abriendo un nuevo abanico de posibilidades en cuanto al mundo de

desarrollo se refiere.

3.4 APACHE CORDOVA

3.4.1 Introducción

Es un framework de licencia libre que cuenta con muchas Apis de diversos

dispositivos móviles para desarrollar aplicaciones nativas dentro de

un smartphone, para el desarrollo de las aplicaciones se utilizan las tecnologías

web HTML, CSS y JavaScript.

Una de las grandes peculiaridades de este entorno de trabajo es la posibilidad de

desarrollar para iOS, Android y demás sistemas operativos sin la necesidad de

programar en sus lenguajes nativos (Java, Objetive-C,)

Ventajas: Sólo tienes que escribir el código "una vez" para todas las plataformas.

Pongo "una vez" entre comillas porque no es del todo cierto. En algunas

plataformas tendrás que modificar algunas cosillas, dependiendo de la

aplicación que desarrolles, pero bueno lo que se toca suele ser mínimo.

Si conoces javascript, html y css te será mucho más fácil implementar una

aplicación que con lenguaje nativo de cada plataforma.

Libre y gratuito.

Desventajas No se puede acceder a todas las características ni funcionalidades como

lo hace el SDK de cada plataforma. Esto conlleva que para cada plataforma

se deban de implementar funciones específicas.

Las aplicaciones pueden resultar pesadas, que tardan mucho en

Figura 24 V8 Navegador y Servidor CECILIO ÁLVAREZ. (2014)

37

ejecutarse, pero esto depende de la complejidad de la aplicación.

Al utilizar javascript puede haber incompatibilidad con los navegadores.

Necesitas configurar cada entorno y la configuración de cordova/phonegap

puede ser distinta para cada uno de ellos ( en ios necesitas un MAC y

xcode).

Inconsistencia con el diseño visual para cada plataforma. Se necesitan

frameworks para que parezca una aplicación nativa (jQuery mobile, nova

framework, JQTouch,...).

38

4 METODOLOGÍA

4.1 Introducción

Una metodología de desarrollo de software se refiere a un framework que es

usado para estructurar, planear y controlar el proceso de desarrollo en sistemas

de información.

A lo largo del tiempo, una gran cantidad de métodos han sido desarrollados

diferenciándose por su fortaleza y debilidad.

El framework para metodología de desarrollo de software consiste en:

Una filosofía de desarrollo de programas decomputación con el enfoque del proceso de desarrollo de

software

Herramientas, modelos y métodos para asistir al proceso de

desarrollo de software

Estos frameworks son a menudo vinculados a algún tipo de organización, que

además desarrolla, apoya el uso y promueve la metodología. (Fundación

Wikimedia, Inc. (2016))

4.2 Selección de la Metodología y Herramientas de Desarrollo

Para las metodologías de aplicaciones móviles, en esta ocasión se ha tomado

tres de las más importantes cada una con sus respectivas características

principales para poder tomar la decisión de trabajo.

Con respecto a los pesos se ha tomado como referencia su funcionalidad

dependiendo del enfoque, con ello se ha puesto su respectiva equivalencia para

la toma de decisión.

Prince 2 Scrum Extreme Programing (XP)

Descripción Peso

Descripción Peso

Descripción Peso

Enfoque de desarrollo

Se centra en las mejores prácticas para la gestión de todo tipo de

9

Se centra en la gestión de proyectos, en situaciones en las que es difícil

7

Se centra en la mentalidad de los desarrolladores guiándolos a través del desarrollo y enfocándose en la calidad del producto

9

39

Características

Un comienzo organizado y controlado Un desarrollo organizado y controlado, Un final organizado y controlado Revisiones periódicas de los progresos. Flexibilidad en las decisiones. Buena comunicación

8

El software es desarrollado por un equipo de auto- organización en incrementos. Los cambios que deben aplicarse se registran en un backlog. El “Scrum Master” es el encargado de resolver los problemas que impiden que el equipo

trabaje eficazmente

8

Planificación, pequeñas emisiones, diseño sencillo, pruebas, y refactorización, programación en parejas, propiedad colectiva, integración continua, semana 40-h

8

Interacción con el usuario

El cliente forma el equipo de desarrollo hasta la entrega del software

7 El usuario interactúa todo el tiempo con el desarrollo del software

8 El cliente permanece fuera del proyecto hasta finalizar cada etapa de desarrollo

7

Proceso de desarrollo

Releases cortos Diseño Simple Pruebas y Refactorización Programación en parejas Propiedad continua

8

Equips de Scrum Product backlog Sprint Revision del Sprint

8

Elegir un requisitoEscribir una prueba Verificar que la prueba fallaEscribir la i mplementación

Ejecutar las pruebas automatizadas.

8

Usabilidad en aplicaciones móviles

Se ajusta aplicaciones al desarrollo todo tipo de proyectos informáticos

8

Se centra en proyectosnmás grandes, no específicamente en aplicaciones móviles

6 Se ajusta perfectamente al diseño de aplicaciones móviles

9

Proceso de gestión del

Reunión de planificación 6

Scrum Master Reunión de Planificación de Sprint Reunión scrum diaria

7 Reuniones de planificación

7

Proceso de configuración del software

No especificado 1 No especificado 1

Se actualiza la lista de requisitos tachando el requisito implementado. Asimismo se agregan requisitos que se hayan visto como necesarios durante este ciclo y se agregan requisitos de diseño

8

Proceso de gestión

No especificado 1 No especificado 1 No especificado

1

Manejo de errores

Los planes del proyecto se centran en obtener resultados concretos, y no sólo en la planificación de las actividades

8

Scrum, es una metodología, muy bien recomendada, por su efectividad en la detección de errores

8

XP es una de las metodologías con mayor acogida en el campo profesional, ya que está orientada precisamente a crear el software a partir de los errores

9

Aceptación

Satisfacción del programador. Solución de errores de programas

9

Ha sido utilizada por grandes empresas como Google y Yahoo con resultados muy satisfactorios

9

Continua expandiéndose debido a sus buenos resultados 9

40

Flexibilidad

Algunas prácticas son imposibles de eliminar ya que son necesarias para mantener las otras en su lugar

5

Algunos proyectos por ser muy grandes, se vuelven muy difíciles de manejar 8

Es una metodología propia, que tiene un campo de acción especifico en el desarrollo de apps móviles, por lo tanto posee mayor flexibilidad

7

Tamaño de los proyectos Pequeños y Medianos 8 Pequeños, Medianos

y grandes 8 Pequeños y medianos 8

Tamaño de equipo Menor que 10 9 Múltiples equipos

menores que 10 8 Menor que 10 9

Estilo de desarrollo Iterativo y rápido 8 Iterativo y rápido 8 Iterativo 8

Estilo de código Limpio y sencillo 7 No especificado 1 Limpio y sencillo 7

Entorno tecnológico

Requiere rápida retroalimentación 7 No especificado 1 Requiere retroalimentación 7

Entorno físico Equipos en un mismo lugar y equipos distribuidos

7 No especificado 1 No especificado 1

Cultura de negocio

Colaborativo y cooperativo 7 No especificado 1 Colaborativo 7

Mecanismos de abstracción Orientado a objetos 7 Orientado a objetos 7 Orientado a objetos 7

Curva de aprendizaje Mediana 8 Compleja 6 Mediana 8

Peso Sumatoria 13

8 Sumatoria 11 2 Sumatoria 14

4

Porcentual 69 %

Porcentual 56 %

Porcentual 72 %

Tabla 9. Cuadro Comparativo de Metodologías (Sergio Granizo. (2015))

Como se puede ver la sumatoria de pesos nos da a conocer la metodología que

más se adapta el proyecto integrador.

La Metodología seleccionada es XP, ya que es la que mejor se adapta a nuestro

proyecto, tomando en cuenta que la aplicación a desarrollar, debe superar muchos

test y además tomando en cuenta el tiempo de desarrollo con el que contamos, es

ideal tener una curva de aprendizaje no muy compleja, esta metodología, tiene un

mejor enfoque hacia tendencia móvil.

La metodología XP o Programación Extrema es la más destacada en cuanto al

manejo de procesos ágiles, pues, brinda un mayor control y visibilidad del proyecto

a corto, mediano y largo plazo.

Tomando en cuenta que en el proyecto APLICACIÓN MÓVIL PARA LA

UBICACIÓN GEOGRÁFICA DENTRO DE LA UNIVERSIDAD CENTRAL

(GEOUBÍCATE UCE), es altamente cambiante pues integra varios paradigmas de

programación, las modificaciones en el desarrollo son prácticamente inevitables,

por lo tanto es de vital importancia aplicar XP para agilizar su desarrollo y minimizar

41

su complejidad.

XP también incorpora al usuario como parte activa durante todo el ciclo de

desarrollo del software, razón por la cual, se estará interactuando de manera

continua con los clientes, obviamente cada avance debe contar con la aprobación

del cliente y si se genera algún tipo de error o alguna duda se tomarán accione

como:

• Revisión del código

• Corrección de errores

• Refactorización del Código

A continuación se mencionará los Valores más importantes de la metodología XP

y su relación con el proyecto que se está realizando

4.3 Valores de la Metodología XP

Los valores nos ayudan a tener una mejor visualización de la metodología que

se está aplicando a la app, por ende tenemos las características importantes:

Valor Descripción Valor en la aplicación web

Simplicidad

Se simplifica el diseño para

agilizar el desarrollo y

facilitar el mantenimiento.

La app se ha creado en base a

JQuery, JavaScript,

precisamente pensando en su

fácil mantenimiento y en la

agilidad del desarrollo

Comunicación

Debe comentarse sólo

aquello que no va a variar,

por ejemplo el objetivo de

una clase o la funcionalidad

de un método.

Se ha comentado la definición

de cada método, tanto en

clases java como en funciones

JavaScript de acuerdo a su

importancia y prioridad

Retroalimentación

Al realizarse ciclos muy

cortos tras los cuales se

muestran resultados, se

minimiza el tener que

rehacer partes que no

cumplen con los requisitos

Constantemente se han venido

realizando pruebas unitarias y

de integración para mejorar el

rendimiento de la aplicación

42

Coraje

Siempre diseñar y

programar para hoy y no

para mañana

Se ha tratado de optimizar el

tiempo de la mejor forma

posible para programar la

aplicación en el menor tiempo,

pero con la mayor calidad

posible, es decir, programar

con eficiencia, eficacia y

efectividad

Respeto

Los miembros del equipo

respetan el trabajo del resto

no haciendo

menos a otros

Una de las mayores cualidades

que se resaltan en el desarrollo

de este proyecto integrador es

precisamente el respeto por el

trabajo al momento de

programar

Tabla 10. Valores de la Metodología XP (Elaboración propia)

43

5 DESARROLLO DEL PROYECTO

5.1 Fases de la Metodología

5.1.1 Fase 1: Estudio de Factibilidad

Esta fase tendrá como objetivo relevar y analizar en líneas generales los

requerimientos y características globales de la aplicación a desarrollar, a fin de

establecer el alcance del sistema y el esfuerzo necesario para su desarrollo, de

forma que se pueda conformar una propuesta lo más precisa posible.

En los casos en que sea factible, es conveniente mencionar la descripción de la

aplicación y los requerimientos necesarios para su desarrollo.

Descripción de la aplicación: La aplicación móvil, será gestionada a través de

Play Store para que sea utilizada en la plataforma Android por los usuarios,

adicional utilizando el apache Córdova se podrá desplegar en el navegador web

(Google Chrome, etc.)

Una vez descargado el aplicativo en un celular Android, ingresar y observar el

entorno Geográfico de la Universidad a su vez cada una de las Facultades,

Centros Académicos, Colegios en sus alrededores y demás. Al presionar en cada

uno de estos se puede observar la información necesaria, y precisa que el usuario

desearía conocer.

En la parte izquierda tenemos el menú en el cual se puede cambiar las capas al

estilo y preferencia que se desee según la figura 25, el buscar una Facultad, centro

recreativo, Centro Académico, entre otras Unidades Académicas y

Administrativas., ir de un punto a otro por la mejor ruta, la ubicación de la persona

y dirigirse al lugar buscado sin perderse ni tomar caminos que pueden ser

peligrosos.

44

Requerimientos Técnicos para desarrollar la aplicación

Para los requerimientos técnicos es muy importante especificar las herramientas

que se va a emplear para el desarrollo de la app, la cual nos va a poder facilitar

tanto la inducción como su utilidad.

HERRAMIENTA DESCRIPCIÓN

JDK Es un kit de herramientas de desarrollo para la creación de programas en Java

Notepad ++ Es un editor de texto y de código fuente libre con soporte para varios lenguajes de programación. De soporte nativo a Microsoft Windows.

Android Studio Es un entorno de desarrollo integrado para la plataforma Android.

QGis Es un Sistema de Información Geográfica (SIG) de código libre JavaScript Es un lenguaje de programación interpretado, dialecto del

estándar ECMAScript Apache Cordova Es un popular entorno de desarrollo de aplicaciones

móviles JQuery Bibliotecas de JavaScript

API Google Maps Elementos de Google Maps para visualizar puntos de referencia

Tabla 11. Herramientas para desarrollo (Elaboración propia)

MENÚ

Figura 25 Presentación del Menú en el aplicativo (Elaboración propia)

45

Casos de Uso

A continuación detallaremos los actores principales y los casos de uso que

tenemos en la aplicación:

Actores:

Usuario Administrador: Es la persona que gestiona la aplicación, si se necesita,

mantenimiento, refactorización del código, configuración de los módulos,

actualización o algún tipo de cambio adicional; este actor puede realizar tareas

especificas

Usuario: Es el cliente o usuario final, es decir la persona que únicamente usara la

aplicación como producto final una vez terminado el proyecto, desde la capa del

cliente

Descripción de los Casos de Uso

5.1.2 Ingresar al Aplicativo:

Figura 26 Casos de Uso (Elaboración propia)

46

Descargar el aplicativo desde la tienda de Android (GEOUCE), verificar la

instalación, y activar la app para que nos despliegue el mapa de la Universidad

Central

5.1.3 Información a presentar:

El usuario podrá ver información básica e importante de cada una de las

Facultades, Centros Académicos, Espacios recreativos, Colegios aledaños, entre

otras Unidades Académicas y Administrativas.

Figura 27 Caso de Uso Ingresar al Aplicativo (Elaboración propia)

Figura 28 Caso de Uso Información relevante (Elaboración propia)

47

5.1.4 Mostrar Facultad, Ed. Académica, entre otras Unidades Académicas y Administrativas.

Permite la visualización de cada uno de los edificios, espacios recreacionales,

centros académicos, en tiempo real.

5.1.5 Trazar la ruta:

Lo más importante para el usuario es poder conocer la ruta por la cual dirigirse sin

tener desvíos o dificultades. Para esto se debe colocar el lugar de origen y lugar

de destino presionar el botón aceptar y en entorno geográfico nos aparece la ruta

optima a llegar...

Figura 29 Caso de Uso Mostrar Facultades, ed. Académica, entre otras Unidades Académicas y Administrativas (Elaboración propia)

Figura 30 Caso de Uso Trazar la ruta (Elaboración propia)

48

5.1.6 Ubicarse:

Permite a los usuarios ubicarse geográficamente en el punto donde se

encuentran a través del GPS.

5.1.7 Testear Métodos

Consiste en probar regularmente los métodos para medir su eficiencia, velocidad,

rendimiento, utilidad; los métodos siempre son susceptibles de mejora o desuso

dependiendo la evolución de la aplicación, estos pueden ser refactorizados,

actualizados, eliminados o a su vez se pueden crear nuevos métodos para

reemplazar a métodos obsoletos

Figura 31 Caso de Uso Ubicarse (Elaboración propia)

Figura 32 Caso de Uso Testear Métodos (Elaboración propia)

49

Procesos

Son aquellos procesos que se realizaran en la aplicación una vez instalada

y funcional en el celular

PASO ACTIVIDAD

1 Ingresar al portal de la aplicación

2 Mostrar lista de Facultades, Centros Académicos en el mapa

3 Seleccionar Facultades, Centros Académicos en el mapa

4 Trazar ruta para llegar a la Facultades, Centros Académicos en el mapa seleccionado

5 Mostrar información relevante de la Facultades, Centros Académicos en el mapa

6 La ubicabilidad de los usuarios/estudiantes

Tabla 12. Lista de Procedimientos para manejo y uso de la aplicación móvil (Elaboración propia)

5.2 Fase 2: Análisis y Diseño Global

Se analizará a bajo nivel cada requerimiento documentado en la etapa anterior y

se realizará un diseño global de los principales circuitos del sistema. El resultado

de esta etapa será el “Análisis de Requerimientos”, con el cual se confeccionará

la “Propuesta Definitiva”.

La arquitectura física de la aplicación móvil consiste en una aplicación que se

encuentra alojada en un dispositivo móvil con sistema operativo Android.

Figura 33 Arquitectura de la app (Elaboración propia)

50

5.3 Fase 3: Desarrollo

Se compone de varias etapas bien diferenciadas y repetitivas por cada submódulo

del sistema (llamadas iteraciones):

a) Diseño Detallado: Se elaborarán las Especificaciones de Diseño de cada

programa del sistema, se realizará un análisis de las herramientas, para

elegir las más adecuadas y acordes para nuestro sistema, también se

realizará un análisis de los lenguajes de programación, para elegir el

programa más robusto y que cumpla con los requerimientos del proyecto

b) Desarrollo: Se codificará cada uno de los programas especificados en la

etapa anterior usando la plataforma Java

c) Control de Calidad: se realizarán las pruebas unitarias y de integración

necesarias para que la calidad de los programas desarrollados sea la más

óptima posible. Esta etapa incluye el ajuste de los módulos con calidad

inaceptable.

d) Implementación: se llevara a cabo gracias al apache Cordova el cual

generara archivo apk que será alojado en el dispositivo como una

aplicación nativa y la verificación de la misma, siempre y cuando el

dispositivo tenga Internet.

5.4 Fase 4: Puesta en Producción

Esta etapa tiene lugar cuando ya se terminó de desarrollar todos los módulos del

sistema. Su función es realizar los ajustes requeridos para que el mismo pueda

llevarse a producción, realizar la carga inicial y migración definitiva de los datos,

parametrizar el sistema, e implementarlo adecuadamente, de ser necesario,

comprar un dominio o un espacio en la tienda de aplicaciones para la descarga.

51

La aplicación puesta en producción se encuentra en la tienda Play Store de

Android, la cual será gratis su descarga.

Figura 34 Aplicación puesta en producción (Elaboración propia)

52

6 CONCLUSIONES

La aplicación móvil desarrollada en este proyecto integrador está basada

en las necesidades que día a día se reflejan en los visitantes/ estudiantes

de la Universidad Central.

Con la geo ubicación se ha reducido favorablemente el tiempo de

ubicación de cierta Facultad, Centro Académico, entre otras Unidades

Académicas y Administrativas, optimizando recursos.

El desarrollo de la app permite que los usuarios tengan información clara,

precisa y en tiempo real en todo momento.

A través de las herramientas de desarrollo la implementación de tener

una app que nos permita visualizar el entorno geográfico Universitario es

una realidad.

Basado en un análisis de mercado según el Anexo B, en la

comercialización de telefonía móvil, teniendo en cuenta los planes en

megas, redes inalámbricas que hoy por hoy la Universidad está

implementando su nueva infraestructura para robustecer la conectividad

y debido a la mayoría de estudiantes que poseen telefonía con acceso a

la Wifi, es de gran oportunidad el desarrollo de la app para que todos la

puedan descargar y utilizar en cualquier rincón de la Universidad Central

del Ecuador.

A través del Middleware, se logró desarrollar una aplicación de tipo

hibrido que relacionó lo mejor de cada componente (Google Maps, Java,

JavaScript, etc.) para producir un producto útil y fácil de utilizar, tomando

en cuenta un principio básico de las aplicaciones modernas, ya que tienen

que ser orientadas a servicios.

El desarrollo de la tecnología hace fundamental el uso del internet como

herramienta esencial para la solución de problemas cotidianos que

necesariamente implica la construcción de aplicaciones más allá del

53

ámbito local, impulsando aún más los sistemas en tiempo real y todo lo

referente al paradigma de la app.

Este tipo de aplicaciones permiten cohesionar de mejor manera la

educación con la tecnología y despertar el interés de todos los agentes

implicados(Empresa Privada, Población, Ministerios y Universidades)

para mejorar el proceso de acceso a la información, selección y

capacitación a la comunidad

Además del campo académico, la Geolocalización puede desempeñar un

rol fundamental en otras áreas como: Control de Tránsito Vehicular,

Localización de puntos estratégicos en caso de emergencia, Definición

de Zonas de Vulnerabilidad ya sea por la pobreza o por el nivel de

delincuencia, Posicionamiento para determinadas actividades

comerciales de las empresas, entre otras cosas.

El manejo de la aplicación ha conllevado a generar versiones y

actualizaciones para la vista del usuario, la facilidad de ver la información

actualizada, mejoras que ayudan al crecimiento y poder de aceptación en

el mercado.

54

7 RECOMENDACIONES

• La aplicación actualmente posee un gran número de elementos

integrados, se recomienda analizar más profundamente todas las

herramientas actuales que existen de desarrollo, así como las nuevas

tendencias y los paradigmas de programación para que la aplicación sea

un poco más ligera, entendible, portable y se vaya innovando para que

pueda perdurar en el tiempo.

• Se recomienda subir la aplicación a la tienda del Apple Store ya que es

la forma de poder tener la aplicación en un dispositivo con sistema

operativo iOS.

• Se recomienda continuar con el desarrollo de la aplicación tomando en

cuenta la funcionalidad de la aplicación para que el sistema pueda

mejorar y convertirse en un sistema experto que incluso pueda tomar

decisiones como: ¿Qué tipo de Facultad, Centro Académico, entre otras

Unidades Académicas y Administrativas., necesita el estudiante?, ¿Qué

tipo de Jornada de atención es la más apta para realizar trámites o visitas

pedagógicas?, etc. utilizando técnicas de Minería de Datos y Business

Intelligence.

• Se recomienda incorporar elementos multimedia en la aplicación como:

vista en tres dimensiones, realidad aumentada o videos de las

Facultades, Centros Académicos, entre otras Unidades Académicas y

Administrativas, que el usuario visite para que tenga una idea más clara

del destino.

• Con el paso del tiempo indudablemente la base de datos del sistema va

a seguir creciendo, razón por la cual se recomienda crear un sistema de

replicación o de backups, para tener un respaldo, en caso que la

aplicación colapse o sufra algún daño que afecte los datos o su estructura

como tal.

• Actualmente no se toman casos especiales al trazar la ruta como:

Huelgas, desfiles o algún tipo de eventos, se recomienda unificar la base

de datos con la información que provea la policía Nacional al respecto de

estos contratiempos para mejorar la eficiencia de la aplicación

• Se recomienda la administración de la app a un único administrador, con

el fin de que la información actualizada sea verídica y confiable, adicional

55

se resguarde la seguridad de los usuarios de no recibir información

infectada que pueda dañar sus dispositivos móviles.

• Una funcionalidad muy importante es la de captura de imágenes y

compartirla a través de diferentes medios como Ej: WhatsApp, Facebook,

email, entre otros, se recomienda la implementación de este método.

• Para IOS se recomienda subirla a la tienda de Apple Store pagando la

inscripción y las mensualidades por el espacio que va a ocupar la

aplicación, ya que no se puede pasar la apk sin una licencia de

desarrollador como facilita Android.

56

BIBLIOGRAFÍA

1. FUNDACIÓN WIKIMEDIA. (2016). aplicaciones moviles.

18/08/2016, de Licencia Creative Commons Atribución Compartir

Igual 3.0 Sitio web:

https://es.wikipedia.org/wiki/Aplicaci%C3%B3n_m%C3%B3vil

2. CUELLO,Javier; VITTONE, José. (2013). tipos de aplicaciones.

2015, de appdesignbook Sitio

web: http://appdesignbook.com/es/contenidos/las-

aplicaciones/

3. PEDROZO Gabriel. (2012). Sistemas Operativos en Dispositivos

Móvile. En Licenciatura en Sistemas de Información (3-6). Uruguay:

Universidad Noroeste

4. EXPANSIÓN. (2015). Economía Digital. 2016, de Unidad Editorial

Información General, S.L.U. Sitio web:

http://www.expansion.com/economia-

digital/companias/2015/12/09/56684be1ca474151018b4590.html

5. EXPANSIÓN. (2015). Las cinco marcas de smartphone más

vendidas en el mundo. 2016, de Unidad Editorial Información

General, S.L.U. Sitio web: http://www.expansion.com/economia-

digital/companias/2015/11/18/564c5be6268e3eb9688b45a5.html

6. SOPHOS. (1997). Cuando el malware llega a los dispositivos

móviles. 2016, de Sophos Ltd. Todos los derechos reservados Sitio

web: https://www.sophos.com/es-es/security-news-trends/security-

trends/malware-goes-mobile/why-ios-is-safer-than-android.aspx

7. COMISIÓN DE COMERCIO. (2011). Aplicaciones móviles: Qué son

y cómo funcionan. 2016, de LA COMISIÓN FEDERAL DE

COMERCIO Sitio web:

https://www.consumidor.ftc.gov/articulos/s0018-aplicaciones-

moviles-que-son-y-como-funcionan

8. ALVAREZ Miguel Angel. (1997). Notepad ++. 2016, de

57

DesarrolloWeb.com y la plataforma de formación online EscuelaIT

Sitio web: http://www.desarrolloweb.com/articulos/notepad.html

9. JQUERY MOBILE. (2015). A Touch-Optimized Web Framework.

Obtenido de https://jquerymobile.com/

10. ANCHETA Wernher-Bel. (2016). Una introducción a NativeScript.

2016, de Envato Pty Ltd. Trademarks and brands are the property of

their respective owners. Sitio web:

http://code.tutsplus.com/es/articles/an-introduction-to-nativescript--

cms-26771

11. KJERNE Deuker, (1989). Concepto GIS. 2016, de Editorial UOC.

Página de créditos. Sitio web:

https://books.google.com.ec/books?id=xip1wtr8k58C&pg=PA202&l

pg=PA202&dq=Deuker,+Kjerne,+1989&source=bl&ots=OihipwzrGn

&sig=PWPFrizoKZtOZgLu2tlX_yl7xPM&hl=es&sa=X&ved=0ahUKE

wiRzJXQ_v7OAhWC4iYKHaSeCI

12. BURROUGH (1986). Concepto GIS. 2016, de Editorial UOC. Página

de créditos. Sitio web:

https://books.google.com.ec/books?id=xip1wtr8k58C&pg=PA202&l

pg=PA202&dq=Deuker,+Kjerne,+1989&source=bl&ots=OihipwzrGn

&sig=PWPFrizoKZtOZgLu2tlX_yl7xPM&hl=es&sa=X&ved=0ahUKE

wiRzJXQ_v7OAhWC4iYKHaSeCI

13. GRANIZO, Sergio. (2015). METODOLOGÍAS. En SISTEMA WEB DE

UBICACIÓN GEOGRÁFICA Y TRAZO DE RUTAS DE

TRANSPORTE PARA LLEGAR A LOS COLEGIOS DE QUITO (17-

18). Repositorio de Tesis de La Universidad Central del Ecuador:

Universidad Central del Ecuador.

14. TAHA, H. (2004). Investigación de operaciones (Séptima ed.).

México: Pearson

Educación. Obt

enido de

https://books.google.com.ec/books?id=3oHztjMSuL8C&pg=PA224&lpg=

PA

58

224&dq=taha+investigacion+de+operaciones+dijkstra&source=bl&ots=n

MA I950WHP&sig=6IqQePw8Pt21xCuvBVlPbWPRII4&hl=es-

419&sa=X&ei=QwocVdHFCsSIsQSxvIC4DA&ved=0CBwQ6AEwAA#v=

o nepage&q=taha%20investi

15. ACADEMIA ANDROID. (2015). Android Studio v1.0: características

y comparativa con Eclipse. 2016, de Versiones de Android Studio y

del SDK Sitio web: http://academiaandroid.com/android-studio-v1-

caracteristicas-comparativa-eclipse/

16. SÁNCHEZ Alberto. (2015). Ventajas y Desventajas de Android vs

iOS vs Windows Phone. 2016, de © 2016 Asociación INDISMATIC.

All rights reserved. Sitio web: http://www.indismatic.es/cadena-ser-

rioja-baja/diferencias-android-ios-windows-phone/

17. INFORMATICOHOY. (2007). Componentes de un Sistema

Operativo Móvil. 2016, de www.informatica-hoy.com.ar Sitio web:

https://www.google.com.ec/search?q=Problemas+frecuentes+en+el

+Google+maps&biw=1366&bih=599&source=lnms&tbm=isch&sa=X

&ved=0ahUKEwj6t8aMmZPPAhWF7iYKHWLMDxIQ_AUIBigB#tbm

=isch&q=capas+de+los+sistemas+o

18. JARQ, Mele. (2012). desarrollo de aplicaciones moviles. 2016, de

Plantilla Simple. Tecnología de Blogger. Sitio web:

http://desarrolloaplimovil.blogspot.com/p/los-servicios-de-

middleware.html

19. JJPARRA. (2005). Arquitectura del Framework. 2016, de

Desarrollador 5 estrellas Sitio web:

https://jjparra.wordpress.com/category/visual-basicnet/

20. QUALCOMM TECHNOLOGIES. (2011). GpsOne. 2016, de Inc. All

rights reserved. Sitio web:

https://developer.brewmp.com/resources/tech-guides/position-

determination-technology-guide/position-determination-concepts

21. LISA, Ms... (2015). GPS. 2016, de Best GNSS/GPS

Tracker/GLONASS Tracking/ pets tracking /GSM/GPRS LBS Car

59

tracker box Sitio web: http://www.gnsstracker.com/

22. MEDIARTS.COM.VE. (2015). GPS Particular. 2016, de Inversora

Nacional GP Responsable 2016 Sitio web:

http://inversoranacionalgpresponsable.com/index.php/productos/gp

s-particular

23. HIDALGO, Fco. José. (2015). Google lanza la vista previa de Android

Studio 2.0. 2016, de Tecnología, Internet y Marketing Sitio web:

http://wwwhatsnew.com/2015/11/23/google-lanza-la-vista-previa-

de-android-studio-2-0/

24. MEZA, Mancilla. (2011). Ventajas y desventajas de html. 2016, de

Entradas (Atom) Sitio web: http://vhtml-mancilla-

mayer.blogspot.com/

25. GONZÁLEZ, Enrique. (2015) ¿Qué es y para qué sirve HTML?

El lenguaje más importante para crear páginas webs. HTML

tags (CU00704B). 2016, de Codificación

aprenderaprogramar.com: CU00704B Sitio

web: http://aprenderaprogramar.com/

index.php?option=com_content&vie w=article&id=435:ique-es-y-

para-que-sirve-html-el-lenguaje-mas-importante-para-crear-paginas-

webs-html-tags-

cu00704b&catid=69:tutorial-basico-programador-web-html-desde-

cero&Itemid=192

26. GONZÁLEZ, Didiana (2015). EL SISTEMA DE INFORMACIÓN

GERENCIAL. 2016, de Creative Commons Attribution Share-Alike

3.0 License Sitio web:

https://lasempresasylastics.wikispaces.com/1.+EL+SISTEMA+DE+I

NFORMACION+GERENCIAL

27. GAUSS-KRÜGER. (2002). 3. TOPOLOGíAS, MODELOS DE

DATOS Y TIPOS DE SIG. 2016, de GabrielOrtiz.com Sitio web:

http://www.gabrielortiz.com/index.asp?Info=012

28. GONZÁLEZ, Enrique. (2015). JavaScript. 2016, de

60

aprenderaprogramar.com Sitio web:

http://aprenderaprogramar.com/index.php?option=com_content&vie

w=article&id=590:ique-es-y-para-que-sirve-javascript-embeber-

javascript-en-html-ejercicio-ejemplo-basico-

cu00731b&catid=69:tutorial-basico-programador-web-html-desde-

cero&Itemid=192

29. FRANKMCH. (2015). XML. 2016, de El Centro de Tesis,

Documentos, Publicaciones y Recursos Educativos más amplio de

la Red. Sitio web:

http://www.monografias.com/trabajos6/ixml/ixml.shtml

30. AZAUSTRE Carlos. (2015) ¿QUÉ FRAMEWORK O LIBRERÍA DE

JAVASCRIPT ELEGIR PARA MIS DESARROLLOS?. 2016, de

DIGITALOCEAN Sitio web:

https://carlosazaustre.es/blog/frameworks-de-javascript/

31. ÁLVAREZ Cecilio. (2014). Introducción a la programación con

Node.js. 2016, de GENBETA Sitio web:

http://www.genbetadev.com/frameworks/como-funciona-node-js

32. CERVERA Alfonso. (2015). iOS VS Android. 2016, de wondershare

Sitio web: https://www.wondershare.es/mobile-phone/como-

transferir-datos-desde-dispositivos-ios-a-telefonos-android.html

61

ANEXOS

62

ANEXO A

Manual para despliegue de la aplicación móvil

A continuación se detallan los pasos para el despliegue de la app en

dispositivos móviles.

Software necesario:

• Sistema operativo Windows 7, 64 bits.

• JRE 8.1

• Notepad ++

• Quantum GIS.

• NODE.js.

• APACHE CORDOVA

Pasos para el despliegue del sistema:

Instalar JRE:

Ir a http://www.oracle.com/technetwork/java/javase/downloads/jre8-

downloadshttp://www.oracle.com/technetwork/java/javase/downloads/jre

8-downloads-2133155.html2133155.html y descargar el JRE más

reciente e instalarlo.

Figura A34. Opciones de descarga de JRE (Elaboración propia)

63

Instalar JRE ejecutando el instalador seleccionando los valores por

defecto.

Comprobar que Java está instalado ejecutando por línea de

comandos java –versión

Crear la variable de entorno JAVA_HOME

En Windows clic en Inicio luego en Computer, clic derecho, seleccionar

la opción Propiedades.

Figura A36. Pantalla de instalación de JRE (Elaboración propia)

Figura A37. Comprobación de versión de Java (Elaboración propia)

64

En la ventana que aparece dar clic en Configuración avanzada delsistema.

Figura A38. Opción propiedades de equipo (Elaboración propia)

Figura A39. Opción configuración avanzada del sistema (Elaboración propia)

Figura A40. Opción de variables de entorno (Elaboración propia)

65

En la nueva ventana que aparece, dentro de la pestaña Opcionesavanzadas, dar clic en el botón Environment Variables (Variables deentorno).

1. Crear una variable de sistema llamada JAVA_HOME. Para eso:

2. Clic en el botón New…3. Escribir JAVA_HOME como nombre de la variable.

4. Como valor de la variable escribir C:\ProgramFiles\Java\jre1.7.0_51 o el path en donde se instaló JRE.

5. Clic en el botón OK (se cierra el dialogo de Nueva variable del

sistema).

6. Clic en el botón OK.

Instalar Notepad++

Ir a https://notepad-plus-plus.org/download/v6.9.2.html, descargar e

instalar.

1

2 3

4

5

Figura A41. Detalles de variable JAVA_HOME (Elaboración propia)

66

Escogemos el idioma a instalar

OK

Leer la Introducción del instalador

Siguiente

Leer las políticas del instalados

Figura A42. Instalación Notepad++ (Elaboración propia)

Figura A43. Instalación Notepad++ (Elaboración propia)

Figura A44. Instalación Notepad++(Elaboración propia)

67

Verificar el tamaño del programa y el lugar de instalación

Aceptar

Instalar

Instalar QGIS

La instalación del programa QGIS está disponible por Windows, MacOS X,

Linux y Android.

• Ingrese a la página siguiente: http://qgis.org/es/site/ y hacer clic

en Descargar ahora

Figura A45. Instalación Notepad++(Elaboración propia)

Figura A46. Instalación Notepad++(Elaboración propia)

68

• Descarga QGIS para tu plataforma

• En la próxima página escoge el instalador de acuerdo a tu tipo de

quipo. En este ejemplo se instalará QGIS Standalone Version 2.8(64 bit).

• Clic QGIS Standalone Installer Version 2.8 (64 bit) para bajar el

instalador (QGIS-OSGeo4W-2.8.1-1-Setup-x86_64.exe).

• Doble Clic al archivo .exe bajado para abrir la siguiente caja y

seleccionar Ejecutar.

Figura A47. Instalación Quantum Gis (Elaboración propia)

Figura A48. Instalación Quantum Gis (Elaboración propia)

69

• Hacer clic en Siguiente en la Instalación de QGIS caja.

• Acepta la licencia.

• Escoger un directorio en donde instalar el programa (En este caso se

dejará enC:\Program Files\QGIS Wien)

Figura A49. Instalación Quantum Gis (Elaboración propia)

Figura A50. Instalación Quantum Gis (Elaboración propia)

Figura A51. Instalación Quantum Gis (Elaboración propia)

70

• Clic en Siguiente.

• En Selección de componentes dejar la opción por defecto

• Clic en Instalar.

• Hacer clic en Terminar para completar la instalación.

Abrir QGIS

Desde el menú Windows hacer clic en Todos los programas y navegar

al archivo QGIS Wien y seleccionar QGIS Desktop 2.8.2 para abrir el

programa que contiene los trazos del entorno geográfico Universitario.

Instalar node js.

Figura A52. Instalación Quantum Gis (Elaboración propia)

Figura A53. Instalación Quantum Gis (Elaboración propia)

71

Para instalar Node.js simplemente debemos descargar el paquete msi

desde node-v0.6.2.msi Windows installer, con esto simplemente seguimos las

indicaciones.

Instalación de Node.js en Windows - Damos el permiso necesario

Figura A54. Instalación Js (Elaboración propia)

Figura A54 Instalación Js

72

Instalación de Node.js en Windows - Completa Una vez que finaliza la instalación lo cual no toma más de un minuto reiniciamos

nuestro equipo y ejecutamos una consola en la cual verificamos la versión que

acabamos de instalar.

Instalación Android Studio y Android SDK

Descarga de componentes de Android SDK

Llegados a este punto procederemos a descargar el SDK y el emulador

para la Android 4.4.2(API 19). Esta versión de Android es la utilizada por

defecto por Apache Cordova 3.6.3 para crear y compliar proyectos.

Descargando paquetes Android SDK

Figura A55. Verificar Instalación Js (Elaboración propia)

Figura A56. Verificar Android Studio (Elaboración propia)

73

Descargando complementos Android SDK

Creando un Android Virtual Device AVD

Luego de terminarse de descargar los componentes, ingresar

a Tools, Manage AVDs. En la ventana de Android Virtual Device crear un

dispositivo para poder desplegar el proyecto que se creó con Apache

Cordova.

Ingresar a Manage AVDs

Crear un Android Virtual Device

Figura A58. Instalación Android Studio (Elaboración propia)

Figura A57. Crear Máquina Virtual (Elaboración propia)

74

Una vez creada la máquina virtual se procede a correr el simulador.

Figura A59. Máquina Virtual (Elaboración propia)

Figura A60. Simulador App en el celular (GEOUCE) (Elaboración propia)

75

Proceder a correr la app

Instalación Apache Cordova

Ahora sí, hemos descargado y configurado el componente previo para iniciar la

descarga de Apache Cordova; crear el proyecto, adicionar la

plataforma Android y finalmente desplegarlo en el dispositivo virtual. Para ello

nos apoyaremos en Node.js utilizando el siguiente comando.

Con el apache Córdova se puede ejecutar el proyecto en varias plataformas

como:

En la parte web en cualquier browser que se tenga instalado

Figura A61. App en el celular (Elaboración propia)

Figura A62. Instalación Apache Cordova (Elaboración propia)

76

En Android pasando el apk e instalándolo directamente para que pueda

correr en el dispositivo móvil

En IOS igual proceso que en Android.

Para instalar la apk en el dispositivo móvil se sigue los siguientes comandos

Una vez terminada nos presenta

Con eso se puede verificar en un dispositivo Android ya se Tablet, celular

entre otros.

Figura A63. Instalación apk en celular (Elaboración propia)

Figura A64. Verificación de la instalación del apk (Elaboración propia)

77

ANEXO B

Según las estadísticas de tanto del consumo de celulares como de internet

a nivel nacional

Figura B65. Estadisticas presentadas por el INEC (INEC2015)

Figura B66. Estadisticas presentadas por el INEC (INEC2015)

78

Figura B67. Estadisticas presentadas por el INEC (INEC2015)