UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES
UNIANDES
FACULTAD DE SISTEMAS MERCANTILES
CARRERA DE SISTEMAS
PROYECTO DE INVESTIGACION PREVIO A LA OBTENCIÓN DEL TÍTULO
DE INGENIERO EN SISTEMAS E INFORMÁTICA
TEMA:
APLICACIÓN PARA DISPOSITIVOS MÓVILES MEDIANTE LA UTILIZACIÓN
DE FRAMEWORKS CON UNA ARQUITECTURA N-CAPAS PARA LA
GESTIÓN DE QUEJAS CIUDADANAS INTEGRADO CON EL SISTEMA DE
GESTIÓN DOCUMENTAL QUIPUX DEL GADM PASTAZA
AUTOR :
CRUZ GALLEGOS JAIR ALEXANDER
TUTOR :
ING. TOASA ESPINOZA JOHN LUIS, MGS.
PUYO - ECUADOR
APROBACIÓN DE ASESOR DEL TRABAJO DE TITULACIÓN
CERTIFICACIÓN:
Quien suscribe, legalmente CERTIFICA QUE: El presente Trabajo de Titulación
realizado por el señor Jair Alexander Cruz Gallegos, estudiante de la Carrera de
Ingeniero en Sistemas e Informática, con el tema “APLICACIÓN PARA
DISPOSITIVOS MÓVILES MEDIANTE LA UTILIZACIÓN DE FRAMEWORKS CON
UNA ARQUITECTURA N-CAPAS PARA LA GESTIÓN DE QUEJAS CIUDADANAS
INTEGRADO CON EL SISTEMA DE GESTIÓN DOCUMENTAL QUIPUX DEL GADM
PASTAZA”, ha sido prolijamente revisado y cumple con todos los requisitos
establecidos en la normativa pertinente de la Universidad Regional Autónoma de los Andes –UNIANDES-, por lo que apruebe su presentación.
Puyo, Agosto 2017
Ing. John Toasa Espinoza
DECLARACIÓN DE AUTENTICIDAD
Yo, Jair Alexander Cruz Gallegos, estudiante de la Carrera de Ingeniería en Sistemas
e Informática, declaro que todos los resultados obtenidos en el presente trabajo de
investigación , previo a la obtención del título de INGENIERO EN SISTEMAS E
INFORMÁTICA, son absolutamente originales, auténticos y personales; a excepción
de las citas, por lo que son de mi exclusiva responsabilidad.
Puyo, Agosto 2017
Sr. Jair Alexander Cruz Gallegos
CI. 1803716156
CERTIFICACION DEL LECTOR DEL TRABAJO DE TITULACION
Yo, Luis Gustavo Guallpa Zatan en calidad de Lector del Proyecto de Titulación.
CERTIFICO:
Que el presente trabajo de titulación realizado por el estudiante Jair Alexander Cruz
Gallegos sobre el tema “APLICACIÓN PARA DISPOSITIVOS MÓVILES MEDIANTE LA UTILIZACIÓN DE FRAMEWORKS CON UNA ARQUITECTURA N-CAPAS PARA LA GESTIÓN DE QUEJAS CIUDADANAS INTEGRADO CON EL SISTEMA DE GESTIÓN DOCUMENTAL QUIPUX DEL GADM PASTAZA”, ha sido cuidadosamente revisado por el suscrito, por lo que he podido constatar que cumple con todos los
requisitos de fondo y forma establecidos por lo que autorizo su presentación.
Puyo, Agosto 2017
Ing. Luis Gustavo Guallpa Zatan
DERECHOS DE AUTOR
Yo, Jair Alexander Cruz Gallegos, declaro que conozco y acepto la disposición
constante en el literal d) del Art. 85 del Estatuto de la Universidad Regional Autónoma
de Los Andes, que en su parte pertinente textualmente dice: El Patrimonio de la
UNIADES, está constituido por: La propiedad intelectual sobre las Investigaciones,
trabajos científicos o técnicos, proyectos profesionales y consultoría que se realicen en
la Universidad o por cuenta de ella;
Puyo, Agosto 2017
Sr. Jair Alexander Cruz Gallegos
CI. 1803716156
DEDICATORIA
Dedico este trabajo:
A Dios, por brindarme entendimiento, salud y vida para poder seguir adelante y
culminar con mi meta de vida trazada.
A mis Padres.
Quienes fueron el apoyo moral y espiritual durante mi trayectoria como estudiante y
supieron darme la fuerza necesaria para no declinar y ser ejemplo de superación para
la sociedad.
AGRADECIMIENTO
Al concluir el proyecto de investigación previo a la obtención del título de Ingeniero en
Sistemas e Informática presento mi más profundo agradecimiento:
De manera especial a la UNIVERSIDAD REGIONAL AUTONOMA DE LOS ANDES “UNIANDES”, a sus distinguidos docentes quienes compartieron sus experiencias y
conocimientos, contribuyendo de esta manera mi formación profesional.
A los asesores y coordinadores por su guía y recomendaciones para la elaboración del
presente trabajo de investigación.
Mi profundo agradecimiento a las personas que durante la vida estudiantil me
apoyaron y más aun a quienes durante la ejecución de este proyecto de investigación
previo a la obtención del título de Ingeniero en Sistemas e Informática me brindó
desinteresadamente su ayuda.
RESUMEN
El presente trabajo de investigación se fundamentó en el desarrollo de una aplicación
para dispositivos móviles mediante el uso de frameworks, que permite la interacción
directa entre los Gobiernos Autónomos Descentralizados Municipales y la ciudadanía,
permitiendo generar quejas y denuncias ciudadanas para que sean consideradas
dentro de las atenciones que estas entidades gubernamentales administran, haciendo
uso de la tecnología de dispositivos móviles que de acuerdo al crecimiento social da
la factibilidad de atenciones digitales directas, a través de los sistemas de información
existentes, como es el Sistema de Gestión Documental Quipux, software libre que
permite una modificación de acuerdo a las necesidades de las entidades y que puede
interconectarse a través de su base de datos; de esta manera las quejas generadas
pueden ser atendidas con una mayor veracidad debido a que el Quipux permite dar un
seguimiento de atención a las quejas o denuncias generadas por los ciudadanos a
través de la aplicación, además, permite a la municipalidad mediar cuantitativamente
la eficacia en la gestión de atención a la ciudadanía a través del dashboard generado
según la operatividad de cada área de gestión que puede ser utilizado en el GPR
ABSTRACT
Current investigation was based on the development of an application for mobile
devices through the use of frameworks, which allows direct interaction between the
Municipal Decentralized Autonomous Governments and citizenship, allowing them to
generate complains and citizen denounces to be considered inside management
government entities , using mobile devices technology, according to the social growth
gives feasibility to direct digital entertainment, through existing information systems,
such as Quipux Management Document System, free software that allows modifying
according to the needs of the entities and that can be interconnected through its
database; in this way complains generated can be addressed with greater accuracy
because the Quipux allows to give a follow-up attention to complains or reports
generated by citizens through the application, it also allows the municipality to mediate
quantitatively the effectiveness in management attention to the public through the
dashboard generated according to the operability of each management area that can
be used in the GPR municipal.
Msc. José Miguel Narváez A.
COORDINADOR CAI
INDICE GENERAL
APROBACIÓN DE ASESOR DEL TRABAJO DE TITULACIÓN
DECLARACIÓN DE AUTENTICIDAD
CERTIFICACION DEL LECTOR DEL TRABAJO DE TITULACION
DERECHOS DE AUTOR
DEDICATORIA
AGRADECIMIENTO
RESUMEN
ABSTRACT
INTRODUCCION ... 1
CAPÍTULO I. MARCO TEÓRICO... 6
1.1.Origen y evolución de los Sistemas de Información ... 6
1.1.1.Dispositivos Móviles ... 8
1.1.2.Sistemas Operativos para Dispositivos Móviles ... 9
1.2. Análisis de las distintas posiciones teóricas sobre Sistemas de Información..……….….12
1.2.1.Programación de sistemas móviles. ... 12
1.2.2.Web Services ... 14
1.2.3.Programación Web ... 15
1.2.4.Frameworks ... 18
1.2.5.Software para desarrollo para Aplicaciones Android ... 21
1.2.6.Base de Datos ... 23
1.2.7.Sistema de Gestión Documental ... 24
1.2.8.Metodología de desarrollo XP ... 25
1.3. Valoración crítica de los conceptos principales de las distintas posiciones teóricas sobre los sistemas de información. ... 29
1.4. Conclusiones parciales del capítulo ... 30
CAPÍTULO II. MARCO METODOLÓGICO Y PLANTEAMIENTO DE LA PROPUESTA . ……….. ... .31
2.1.Caracterización del Gobierno Autónomo Descentralizado Municipal del Cantón Pastaza. ... 31
2.2. Descripción del procedimiento metodológico para el desarrollo de la investigación
sobre los sistemas de información. ... 34
2.3. Título de la Propuesta ... 43
2.4. Conclusiones Parciales del Capítulo ... 43
CAPITULO III. VALIDACIÓN Y/O EVALUACIÓN DE RESULTADOS ... 44
3.1 Desarrollo de la Propuesta. ... 44
3.2. Análisis e Interpretación de los resultados ... 58
3.2.1.Historias de Usuario ... 58
3.2.2.Plan de Entregas ... 61
3.2.3.Plan de Iteraciones ... 62
3.2.4.Diccionario de Datos ... 64
3.2.6.Diseño Lógico de la Base de Datos. ... 98
3.2.7.Diseño Físico de la Base de Datos ... 100
3.2.8.Diseño de Interfaces ... ……103
3.3. Conclusiones Parciales del Capítulo ... 115
CONCLUSIONES GENERALES
RECOMENDACIONES
INDICE DE FIGURAS
Figura 1 Componentes de un sistema de información ... 7
Figura 2 Porcentaje en el mercado por Sistema Operativo Móvil ... 11
Figura 3 Cuota de mercado de los Sistemas Operativos Móviles ... 12
Figura 4 Orgánico Estructural ... 31
Figura 5 Análisis Encuesta - Pregunta 1 ... 37
Figura 6 Análisis Encuesta - Pregunta 2 ... 38
Figura 7 Análisis Encuesta - Pregunta 3 ... 39
Figura 8 Análisis Encuesta - Pregunta 4 ... 40
Figura 9 Análisis Encuesta - Pregunta 5 ... 41
Figura 10 Análisis Encuesta - Pregunta 6 ... 42
Figura 11 Fases de la metodología XP ... 50
Figura 12 Diseño Lógico – Base de Datos ... 99
Figura 13 Diseño Físico – Base de Datos ... 102
Figura 14 Interfaz de Aplicación ... 103
Figura 15 Interfaz Menú ... 104
Figura 16 Interfaz Menú Trámites ... 104
Figura 17 Interfaz Generar Quejas ... 105
Figura 18 Interfaz Menú Servicios... 106
Figura 19 Interfaz Quejas y Reclamos Servicios ... 106
Figura 20 Interfaz Ingreso de Quejas o reclamos ... 107
Figura 21 Interfaz de seguimiento de Quejas o reclamos ... 107
Figura 22 Interfaz de seguimiento de Quejas o reclamos ... 108
Figura 23 Interfaz de Ingreso a Quipux ... 109
Figura 24 Interfaz de gestión de Quejas o reclamos recibidos- Quipux ... 110
Figura 25 Interfaz de Procesamiento de Quejas o reclamos – Quipux ... 111
Figura 26 Interfaz de Reportes - Quipux ... 112
Figura 27 Interfaz de Generador de Reportes por fechas- Quipux ... 113
INDICE TABLAS
Tabla 1 Cuota de mercado de los Sistemas Operativos Móviles ... 12
Tabla 2 Análisis Encuesta - Pregunta 1 ... 37
Tabla 3 Análisis Encuesta - Pregunta 2 ... 38
Tabla 4 Análisis Encuesta - Pregunta 3 ... 39
Tabla 5 Análisis Encuesta - Pregunta 4 ... 40
Tabla 6 Análisis Encuesta - Pregunta 5 ... 41
Tabla 7 Análisis Encuesta - Pregunta 6 ... 42
Tabla 8 Factibilidad técnica - Hardware ... 45
Tabla 9 Factibilidad técnica - Software ... 46
Tabla 10 Factibilidad Económica – Recursos Humanos ... 46
Tabla 11 Factibilidad Económica - Servicios ... 48
Tabla 12 Factibilidad técnica - Equipo de trabajo ... 48
Tabla 13 Factibilidad técnica, Económica y Operacional ... 49
Tabla 14 Requisito Funcional 1 - Autentificación de Usuario ... 51
Tabla 15 Requisito Funcional 2 - Generar queja o reclamo ... 51
Tabla 16 Requisito Funcional 3 - Consulta de quejas y reclamos ... 52
Tabla 17 Requisito Funcional 4 - Visualizar quejas y reclamos ... 52
Tabla 18 Requisito Funcional 5- Gestionar quejas y reclamos ... 53
Tabla 19 Requisito Funcional 6 - Generar Reportes ... 53
Tabla 20 Requisito no Funcional 1 - Interfaz del sistema. ... 54
Tabla 21 Requisito no Funcional 2 - Ayuda en el uso de la Aplicación ... 54
Tabla 22 Requisito no Funcional 3 - Mantenimiento ... 55
Tabla 23 Requisito no Funcional 4
-
Diseño de la interfaz. ... 55
Tabla 24 Requisito no Funcional 5 - Desempeño ... 56
Tabla 25 Requisito no Funcional 6 - Nivel de Usuario... 56
Tabla 26 Requisito no Funcional 7 - Confiabilidad continúa del sistema ... 57
Tabla 27 Requisito no Funcional 8 - Seguridad en información ... 57
Tabla 28 Historia de Usuario - Autentificación de Usuario ... 58
Tabla 29 Historia de Usuario - Consumo de Web Service ... 59
Tabla 30 Historia de Usuario - Generar queja o reclamo ... 59
Tabla 31 Historia de Usuario - Consulta de quejas y reclamos ... 60
Tabla 32 Historia de Usuario - Visualizar quejas y reclamos ... 60
Tabla 33 Historia de Usuario - Gestionar quejas y reclamos ... 61
Tabla 34 Historia de Usuario - Generar Reportes ... 61
Tabla 35 Plan de Entregas ... 62
Tabla 36 Iteración 1 - Autentificación de Usuario ... 62
Tabla 37 Iteración 2 - Generar queja o reclamos ... 62
Tabla 38 Iteración 3 - Consultar de quejas y reclamos ... 63
Tabla 39 Iteración 4 - Visualizar quejas y reclamos generados. ... 63
Tabla 41 Iteración 6 - Generar Reportes ... 63
Tabla 42 Velocidad del Proyecto – Iteraciones ... 64
Tabla 43 Diccionario de Datos – Tablas ... 64
Tabla 44 Tabla - accion ... 69
Tabla 45 Tabla - anexos ... 70
Tabla 46 Tabla - anexos_tipo ... 70
Tabla 47 Tabla - archivo ... 71
Tabla 48 Tabla - archivo_nivel ... 71
Tabla 49 Tabla - archivo_radicado ... 71
Tabla 50 Tabla - Asunto ... 72
Tabla 51 Tabla - atencion_servicio ... 72
Tabla 52 Tabla - atencion_tramite
... 72
Tabla 53 Tabla - bandeja_compartida ... 73
Tabla 54 Tabla - bloqueo_sistema ... 73
Tabla 55 Tabla - cargo ... 73
Tabla 56 Tabla - carpeta ... 74
Tabla 57 Tabla - categoria ... 74
Tabla 58 Tabla - ciudad ... 74
Tabla 59 Tabla - ciudadano ... 74
Tabla 60 Tabla - ciudadano_tmp ... 75
Tabla 61 Tabla - codificacion
... 76
Tabla 62 Tabla - comentario_queja ... 76
Tabla 63 Tabla - comentarios_queja ... 76
Tabla 64 Tabla - contadores ... 76
Tabla 65 Tabla - datos_solicitud ... 77
Tabla 66 Tabla - datos_usuarios ... 77
Tabla 67 Tabla - dependencia ... 78
Tabla 68 Tabla - estado ... 78
Tabla 69 Tabla - estado_queja ... 79
Tabla 70 Tabla - formato_numeracion ... 79
Tabla 71 Tabla - hist_envio_fisico ... 79
Tabla 72 Tabla - hist_eventos
... 80
Tabla 73 Tabla - hist_opc_impresion
... 80
Tabla 74 Tabla - informados ... 80
Tabla 75 Tabla - institucion ... 81
Tabla 76 Tabla - lista ... 81
Tabla 77 Tabla - lista_usuarios ... 82
Tabla 78 Tabla - log ... 82
Tabla 79 Tabla – log_acceso ... 82
Tabla 80 Tabla - log_full_backup ... 83
Tabla 81 Tabla - log_paginas_visitadas ... 83
Tabla 82 Tabla - log_sesion ... 83
Tabla 84 Tabla - nombres_usuarios ... 84
Tabla 85 Tabla - opciones_impresion
... 84
Tabla 86 Tabla - opciones_impresion_sobre ... 85
Tabla 87 Tabla - permiso ... 85
Tabla 88 Tabla - permiso_usuario ... 85
Tabla 89 Tabla - radi_texto ... 86
Tabla 90 Tabla - respaldo_usuario ... 86
Tabla 91 Tabla - radicado ... 87
Tabla 92 Tabla - respaldo_usuario_radicado ... 88
Tabla 93 Tabla - sgd_ttr_transaccion ... 88
Tabla 94 Tabla - solicitud_firma_ciudadano ... 89
Tabla 95 Tabla - tarea ... 89
Tabla 96 Tabla - tarea_hist_eventos ... 90
Tabla 97 Tabla - tarea_radi_respuesta
... 90
Tabla 98 Tabla - tipo_certificado ... 90
Tabla 99 Tabla - tipo_queja ... 90
Tabla 100 Tabla - tiporad ... 91
Tabla 101 Tabla - titulo ... 91
Tabla 102 Tabla - tmpreporteestadisticas ... 91
Tabla 103 Tabla - tmpreporteestadisticas_dia_mes_hora ... 92
Tabla 104 Tabla - trd
... 92
Tabla 105 Tabla - trd_nivel ... 93
Tabla 106 Tabla - trd_radicado ... 93
Tabla 107 Tabla - usuario ... 93
Tabla 109 Tabla - usuarios ... 94
Tabla 110 Tabla - usuarios_queja ... 95
Tabla 111 Tabla - usuarios_radicado ... 96
Tabla 112 Tabla - usuarios_sesion ... 96
1
INTRODUCCION
ANTECEDENTES DE LA INVESTIGACIÓN
Santa Tecla, es una ciudad de El Salvador que cuenta con un alto índice de población
y al estar en constante crecimiento el Municipio brinda servicios públicos y como
medida de seguimiento de su estado actual se ha implementado por medio de la ESCUELA ESPECIALIZADA EN INGENIERÍA ITCA – FEPADE un sistema móvil para
quejas y reclamos ciudadanas que fomente la participación ciudadana permitiendo
emitir a cada habitante sus inconformidades, generando quejas o reclamos con fotos
geo referenciadas ayudando a la Alcaldía Municipal de Santa Tecla a brindar un
servicio de calidad para sus habitantes.
Ecuador haciendo uso de la LEY ORGANICA DEL CONSEJO DE PARTICIPACION
CIUDADANA Y CONTROL SOCIAL ha implementado por medio de la SECRETARIA
GENERAL DE ADMINISTRACION PUBLICA un aplicativo web donde propios y
extraños pueden generar su reclamo o queja dando libre expresión a su inconformidad
en temas referentes a atención al cliente y servicios públicos que cada Municipalidad
brinda a su ciudad manteniendo así su armonía y contribuyendo al buen vivir que cada
ser humano merece.
Una vez que se ha procedido a revisar los registros en el repositorio de la Universidad Regional Autónoma de los Andes “Uniandes”, se puede determinar que no existe una
investigación referente al tema de gestión de quejas y reclamos automatizadas a
través de sistemas móviles.
PLANTEAMIENTO DEL PROBLEMA
La alcaldía municipal de Pastaza es reconocida por su constante compromiso con su
pueblo, por lo que mantiene abierta la libre expresión a quejas y reclamos de los
ciudadanos hacia las competencias y los servicios que la Municipalidad de Pastaza
mantiene, las cuales incluyen la atención, mantenimiento, control y todas las
actividades de seguimiento a los proceso desempeñados por este gobierno autónomo
2
En la actualidad el Municipio de Pastaza recepta las quejas y reclamos mediante
oficios, por lo que el ciudadano inconforme debe realizar un escrito redactando su
queja o reclamo, este documento inicialmente pasa por secretaria general quien
posteriormente es la encargada de entregar el documento al Alcalde quien a su vez
confirma y da paso a las autoridades pertinentes encargadas del tipo de queja
presentada.
Estos documentos pueden tardar varios días en tener un acuse de recibo, por lo tanto
el problema no se resuelve con rapidez, lo que provoca que el usuario se vea
involucrado en procesos largos y engorrosos, motivo por el cual prefieren desistir en la
presentación de la queja o reclamo originando la inexistencia de un control real de las
necesidades ciudadanas.
La falta de información presentada a través de los oficios de quejas y reclamos, no
permite la oportuna ubicación del lugar donde se generan las novedades, en cuanto a
los servicios y competencias municipales se refiere, dificultando la atención oportuna
de las autoridades pertinentes.
Se puede constatar que el desempeño del servicio de quejas y reclamos ciudadanos
no es muy eficiente, ya que no se lleva un control real de cada una de las novedades
generadas, únicamente se ingresa el trámite, sin un respectivo seguimiento por parte
de las áreas encargas, ocasionando una inconformidad en la ciudadanía, que genera
documentación con la finalidad de ser atendido en los distintos tipos de
inconformidades que a diario experimentan con los servicios municipales, que no
cumplen con un respectivo control y un estándar de seguimiento.
La implementación de un sistema de gestión documental ha permitido que se reduzca
la cantidad de documentación extraviada que es muy común en la municipalidad, pero
esta salvedad no es una solución directa al trámite correspondiente y tratamiento de
una queja o reclamo; lo que denota que la introducción de tecnologías permite un
mejor desempeño de las funciones administrativas y de coordinación institucional.
Otro problema común es recibir reclamos sobredimensionadas o falas, generando
movilizaciones innecesarias al lugar donde se generar las novedades, ocasionado una
inversión de tiempo y recursos de la municipalidad, o viceversa, el ciudadano tiene que
continuamente acercarse para ver el estado del trámite, lo que para la mayor parte de
3
La falta de seguimiento y control sobre la situación real de los bienes y servicios
públicos que son competencias de la municipalidad, genera una imagen errónea de las
gestión realizada por las autoridades; cabe indicar que la ciudadanía evita al máximo
inmiscuirse y presentar quejas y reclamos a entes burocráticos y optan por mantener
un conformidad ante la situación que se desarrolla día a día en esta ciudad y por
consiguiente dentro de la Municipalidad de Pastaza por no mejorar u automatizar
procesos y servicio para la conformidad absoluta de la ciudadanía, otorgándole un
empoderamiento al ciudadano para que manifieste sus necesidades imperantes y que
su clamor sea atendido de una manera eficaz, rápida y oportuna.
FORMULACIÓN DEL PROBLEMA
¿Cómo agilizar la gestión de quejas y reclamos ciudadanos del Gobierno Autónomo
Descentralizado Municipal del Cantón Pastaza, de una manera operativa, oportuna y
veraz?
DELIMITACIÓN DEL PROBLEMA
La investigación está orientada en el GADM Pastaza ubicado en las calles 9 de
Octubre y Francisco de Orellana de la ciudad de Puyo, diagonal a la Universidad Regional Autónoma de los Andes “UNIANDES” donde se considera el plan piloto de
prueba para el sistema, que generara información para el control de quejas y reclamos
ciudadanos.
OBJETO DE INVESTIGACIÓN Y CAMPO DE ACCIÓN
Objeto de Investigación: Sistema de información
Campo de Acción: Sistemas Móviles con frameworks.
IDENTIFICACIÓN DE LA LÍNEA DE INVESTIGACION
Desarrollo de Software y Programación de Sistemas.
OBJETIVOS
Objetivo General
Implementar una aplicación para dispositivos móviles mediante la utilización de
frameworks con una arquitectura N-capas para la gestión de quejas ciudadanas
4 Objetivos Específicos
Fundamentar bibliográficamente las bases teóricas que permita consolidar el diseño, desarrollo e implementación de la aplicación para dispositivos móviles y sus
herramientas de desarrollo, así como la gestión de quejas y reclamos ciudadanas.
Diagnosticar el proceso actual de quejas y reclamos ciudadanas del GADM
Pastaza, utilizando herramientas investigativas y técnicas.
Desarrollar los componentes de la aplicación para dispositivos móviles de quejas y reclamos ciudadanas para el GADM Pastaza.
IDEA A DEFENDER
Con la implementación de la aplicación para dispositivos móviles mejorara la gestión
de quejas y reclamos ciudadanos de forma automática, en el Gobierno Autónomo
Descentralizado Municipal del Cantón Pastaza, generando una rápida y efectiva
composición para el control y atención de las novedades establecidas en cada queja y
reclamo respectivamente.
JUSTIFICACIÓN DEL TEMA
A través del presente proyecto de tesis se generara herramientas tecnológicas que
permitirán evidenciar mediante plataformas web resultados a tiempo real de las quejas
y reclamos realizados por la ciudadanía, generados mediante la aplicación para
sistemas móviles, por consiguiente disminuirá sustancialmente los actuales procesos
para la gestión de quejas y reclamos ciudadanos permitiéndole a la población
expresar su inconformidad en trámites y servicios municipales que brinda el GADM
Pastaza.
El personal de la alcaldía tendrá la posibilidad de ubicar las quejas reportadas por los
ciudadanos según la gerencia asociada a dicha queja, con un seguimiento continuo de
cumplimiento, basado en datos en tiempo real, que pormenorizan la situación actual
de los servicios públicos, permitiendo que la alcaldía de Pastaza realice los correctivos
pertinentes para poder brindar un servicio de mayor calidad.
Dicho proyecto está enfocado y maneja una conformidad con la LEY ORGANICA DEL
CONSEJO DE PARTICIPACION CIUDADANA Y CONTROL SOCIAL debido a que su
principal objetivo es promover el ejercicio de los derechos de participación y control
social en el ámbito público, la lucha contra la corrupción y la promoción de la
transparencia; además de designar u organizar procesos de nominación de las
5
De esta manera, acorde con el mandato ciudadano y constitucional, la premisa que
guía el trabajo del CPCCS es impulsar el empoderamiento ciudadano, la inclusión y la
intervención activa de todos y todas para lograr una verdadera democracia
participativa.
Cabe indicar que dentro de la investigación, netamente se utilizara una Investigación
Bibliográfica en un sentido amplio, ya que dicho método permita la obtención,
localización, identificación y acceso a todos aquellos documentos que contienen la
información pertinente para la presente investigación, que abarque los temas incluidos
en el desarrollo de este proyecto de investigación.
De la misa manera la aplicación de método inductivo/deductivo y el analítico/sintético
permiten establecer puntos base el inicio de la investigación y tratamiento de la
información obtenida sin englobar un único método de integración de información, sino
también la aplicación de dicha información en base a conceptos y definiciones las
cuales nos ayudan a conocer más a fondo el impacto positivo que podría tener este
tipo de gestión al automatizar sus procesos para el control de quejas y reclamos
ciudadanos.
A través de estos métodos se observan los efectos que producen el desconocimiento
de la opinión ciudadana y la magnitud de impacto que produce.
Considerando la necesaria intervención en el campo donde se mantiene una
visualización clara y concreta de la realidad en cuanto a la gestión de quejas y
reclamos que maneja el GADM Pastaza obteniendo variables importantes para la
6 CAPÍTULO I. MARCO TEÓRICO
Este capítulo recolecta y presenta temas y subtemas relacionados con el fundamento
teórico relevante que contribuye a la investigación, análisis y construcción de la
solución práctica propuesta, se presentan conceptos, definiciones, elementos,
características referentes al desarrollo de este tipo de Aplicaciones para así tener un
mejor entendimiento del tema y proponer una solución práctica con fundamentos
teóricos reales y claros. Además se presenta información sobre lo que son los
Dispositivos Móviles y sus Sistemas Operativos.
1.1. Origen y evolución de los Sistemas de Información
Un sistema de información (SI) es un conjunto de elementos orientados al tratamiento
y administración de datos e información, organizados y listos para su uso posterior,
generados para cubrir una necesidad u objetivo. Dichos elementos formarán parte de
alguna de las siguientes categorías:
• Personas • Datos
• Actividades o técnicas de trabajo
• Recursos materiales en general (generalmente recursos informáticos y de
comunicación, aunque no necesariamente).
Todos estos elementos interactúan para procesar los datos (incluidos los procesos
manuales y automáticos) y dan lugar a información más elaborada, que se distribuye
de la manera más adecuada posible en una determinada organización, en función de
sus objetivos.
Habitualmente el término se usa de manera errónea como sinónimo de sistema de
información informático, en parte porque en la mayor parte de los casos los recursos
materiales de un sistema de información están constituidos casi en su totalidad por
sistemas informáticos. Estrictamente hablando, un sistema de información no tiene por
qué disponer de dichos recursos (aunque en la práctica esto no suela ocurrir). Se
podría decir entonces que los sistemas de información informáticos son una subclase
7
Figura 1 Componentes de un sistema de información
Fuente: (Aceituno, 2004)
Un sistema de información realiza cuatro actividades básicas: entrada,
almacenamiento, procesamiento y salida de información. A continuación se definen
cada una de estas actividades.
1. Entrada de información: La entrada es el proceso mediante el cual el sistema de
información toma los datos que requiere para procesar la información. Las entradas
pueden ser manuales o automáticas. Las entradas manuales son aquellas que son
proporcionadas en forma directa por el usuario, mientras que las automáticas son
datos o información que provienen o son tomados de otros sistemas o módulos.
Esto último, se denomina interfaces automáticas. Así, un sistema de control de clientes
podrá tener una interface automática de entrada con el sistema de facturación, ya que
toma las facturas que genera o elabora el sistema de facturación como entrada al
sistema de control de clientes.
2.Almacenamiento de información: El almacenamiento es una de las actividades o
capacidades más importantes que tiene una computadora, ya que, a través de esta
propiedad el sistema puede recordar la información guardada en la sesión o proceso
anterior. Esta información suele ser almacenada en estructuras de información
denominadas archivos.
3.Procesamiento de información: Es la capacidad del sistema de información para
efectuar cálculos de acuerdo con una secuencia de operaciones preestablecida. Estos
cálculos pueden efectuarse con datos introducidos recientemente en el sistema o bien
8
4. Salida de información: La salida es la capacidad de un sistema de información
para sacar la información procesada o bien datos de entrada al exterior. Las unidades
típicas de salida son las impresoras, estaciones de trabajo, USB, CD, la voz, los
plotters, entre otros. Es importante aclarar que la salida de un sistema de información
puede constituir la entrada a otro sistema de información o módulo. (Ibarra, 2013)
1.1.1. Dispositivos Móviles
Un dispositivo móvil es un aparato electrónico de tamaño pequeño que las siguientes
características:
Tiene capacidades de procesamiento de información
Ofrecen conexión permanente o intermitente a la red
Posee memoria limitada
Poseen una función principal y da la posibilidad de desarrollo de nuevas funciones
Es portable
Su posesión y operación se asocian a una sola persona, la cual lo puede personalizar a su gusto.
Son considerados como computadoras pequeñas pero tiene algunas características
que las diferencia de las computadoras tradicionales son:
Tienen menores funcionalidades
No permiten mayor cambio en su estructura
Tiene menor tiempo de vida útil
Son más baratos
Su manejo es menos complicado y operación
No es necesario ser un experto para utilizarlos
Tipos de Dispositivos Móviles
a. Dispositivos Móviles de Datos Limitados
Son dispositivos de pantalla pequeña de tipo texto y ofrecen funcionalidades o
servicios limitados como llamadas telefónicas, sms o conexión WAP. Ejemplo:
Teléfonos Móviles: Su principal función es la de realizar y recibir llamadas telefónicas
así como también el de enviar y recibir mensajes de texto, además pueden poseer
9 b. Dispositivos Móviles de Datos Básicos
Se caracterizan por tener pantallas de tamaño mediano, menús, navegación basada
en iconos, conexión a internet, navegación web, llamadas telefónicas y sms, entre
otras funcionalidades.
Teléfono Inteligente (Smarthphone): Además de las funcionalidades de un teléfono
móvil tradicional, por su capacidad de procesamiento este ofrece nuevas
características y funciones como: mejor resolución de pantalla, mejor resolución de
cámara, grabación de videos, GPS, lectura y edición de documentos, juegos y
navegación web.
Videoconsolas de Juego: Es un dispositivo especialmente diseñado para jugar,
permiten la instalación de juegos de video o ejecución de los mismos a través de cd,
cartuchos u otro tipo de dispositivo de entrada. Además de dar la posibilidad de
utilizarlo como reproductor multimedia e instalación de nuevas aplicaciones. Algunas
de las consolas de juegos portátiles más conocidas en la actualidad son: PSVita,
Nintendo 3DS, PSP y GameBoy.
Dispositivos Móviles de Datos Mejorados
Su pantalla es de tamaño mediano y grande, además de contar con las
funcionalidades básicas de los dispositivos móviles anteriores posee un conjunto de
funcionalidades extensas y sus capacidades de procesamiento y almacenamiento son
altas. Ejemplo:
Tablets: Es casi considerada como una computadora portátil pero no posee teclado
físico, es de mayor tamaño a un teléfono inteligente y su interacción es a través de una
pantalla táctil con los dedos o lápiz óptico. (García, 2016)
1.1.2. Sistemas Operativos para Dispositivos Móviles
Sabiendo que un Sistema Operativo es un programa que controla la interacción entre
el hardware, software y el usuario, además de gestionar los recursos de una
computadora, un Sistema Operativo Móvil es exactamente lo mismo pero está
diseñado para dispositivos móviles.
El tipo de sistema operativo de los dispositivos móviles determinara las capacidades y
10
A continuación se describen algunos de los sistemas operativos móviles más
conocidos en la actualidad. (Chávez, Cruz, Posada, & Montejo, 2014)
Sistema Operativo Android
Es un Sistema Operativo desarrollado en sus primeras versiones por la empresa
Android Inc. que después fue adquirida por Google, quien se ha encargado de
mejorarlo. Está basado en el conocido sistema operativo Linux es decir también está
bajo licencia Open Source.
Su lanzamiento oficial se lo hizo en el año 2007 y el primer teléfono con este sistema
operativo se vendió en Octubre del 2008. Este sistema operativo está desarrollado
para diferentes dispositivos como son teléfonos, tablets, relojes, televisores y
automóviles. (Chávez, Cruz, Posada, & Montejo, 2014)
Sistema Operativo Ios (Iphone Os)
Es una versión reducida del sistema operativo MAC OSX desarrollado por la empresa
Apple INC. Es un sistema optimizado para procesadores ARM, este puede ser
instalado en dispositivos de la empresa como Iphone, Ipod, Ipad, Watch y Apple TV,
mas no en hardware de terceros. Su lanzamiento inicial fue en Junio del 2007 bajo
licencia propietario. Han existido varias versiones desde la 1.0 hasta la 8.0. (Chávez,
Cruz, Posada, & Montejo, 2014)
Sistema Operativo Windows Phone
Sistema Operativo desarrollado por la empresa Microsoft teniendo como objetivo los
dispositivos móviles, en un principio se conocido como Windows CE y Windows
Mobile. Utiliza algunas convenciones y características de la interfaz de usuario del
Windows utilizado en computadoras, además de permitir la integración a servicios
propios de la empresa como OneDrive, Skype, Outlook y Xbox Live.
Windows Phone fue presentado en febrero del año 201 bajo licencia propietario de
Microsoft. Desde esta fecha han existido algunas versiones desde 7.0 pasando por
7.1, 7.5, 7.8, 8.0, hasta la 8.1, y cada una de ellas con pequeñas actualizaciones.
(Chávez, Cruz, Posada, & Montejo, 2014)
Sistema Operativo Blackberry Os
Sistema operativo móvil desarrollado por la empresa RIM (Research In Motion) bajo
licencia propietaria únicamente para dispositivos de la marca BlackBerry, su desarrollo
11
En sus primeras versiones fue denominado RIM Os y estuvo instalado en los
dispositivos llamados buscapersonas (RIM Os 1.0) hasta hoy se ha lanzado el sistema
BlackBerry OS 10. (Chávez, Cruz, Posada, & Montejo, 2014)
Cuota de mercado de Sistemas Operativos Móviles
El uso de los sistemas operativos ha ido cambiando de porcentaje en los últimos años,
en el gráfico de la Figura 2 se observa algunos datos estadísticos:
Figura 2 Porcentaje en el mercado por Sistema Operativo Móvil
Fuente: Global Web Index
Existe gran variedad de Sistemas Operativos para dispositivos móviles pero entre los
más populares y comercializados en el mundo en el año 2013 tenemos según la Tabla
12
Sistema Operativo
Cuota de mercado (2015)
Android
82.20%
IOS
14,60%
Windows Phone
2,50%
BlackBerry
0,30%
Otros
0,40%
Tabla 1 Cuota de mercado de los Sistemas Operativos Móviles
Fuente: http://www.gartner.com/newsroom/id/3115517
Figura 3. Cuota de mercado de los Sistemas Operativos Móviles
Fuente: http://www.gartner.com/newsroom/id/3115517
Como se puede observar en los gráficos el Sistema Operativo con más crecimiento en
su uso en estos últimos años es Android que desde el año 2011 hasta el año 2015 ha
variado del 27% al 82% del uso en dispositivos móviles en todo el mundo.
1.2. Análisis de las distintas posiciones teóricas sobre Sistemas de Información.
1.2.1. Programación de sistemas móviles.
El mercado de las aplicaciones para móviles ha cambiado de una forma radical en los
últimos dos años.
82.2% 14.6%
2.5% 0.3% 0.4%
0% 10% 20% 30% 40% 50% 60% 70% 80% 90% Android
IOS Windows Phone BlackBerry Otros
Cuota de mercado
13
Al principio, para publicar aplicaciones móviles tenía que disponer del apoyo de una
operadora o de una gran firma de juegos, pero con la aparición de los markets de
aplicaciones, esto ha cambiado y cualquier persona puede publicar una app y empezar
a ganar dinero. (Alejandro, 2000)
Puede ser una buena apuesta posicionarte en desarrollar para Android o Iphone. Esto
tiene sus ventajas e inconvenientes. Como ventaja, estás trabajando en un mercado
amplio, con demanda (a priori), pero como inconveniente, es un mercado donde hay
ya muchísima gente trabajando. Así que otra posible opción es optar por mercados
más selectos como RIM o Windows Phone 7. Todo dependerá de cómo plantees tu
estrategia y en qué mercado te vas a sentir más cómodo. (Alejandro, 2000)
Otra alternativa que tienes a la hora de acceder a un mercado, es optar por un sistema
de desarrollo multiplataforma. Este tipo de soluciones te van a permitir acceder a
múltiples mercados a la vez, pero posiblemente con un sacrificio en el rendimiento de
las aplicaciones.
Todo depende del tipo de aplicaciones que pretendas desarrollar. Existen algunos
frameworks de desarrollo que una vez realizado el código puedes compilarlo y
distribuirlo en múltiples plataformas. Normalmente estos frameworks están basados en
HTML5 como el caso de PhoneGap, o AppAcelerator o en otros lenguajes de
programación como Corona SDK que trabaja usando LUA como lenguaje de
programación. (Alejandro, 2000)
A continuación a modo de resumen, se relacionan algunos tipos de aplicaciones, y una
valoración personal de que se podría utilizar para desarrollarlas:
Desarrollo nativo en la plataforma (máximo rendimiento)
Corona SDK (Multiplataforma)
AndEngine (Android)
Cocos 2d (iOS)
Aplicaciones multiventana (información turística, app empresarial, BBDDs, etc…)
nativo (Si realmente es necesario)
PhoneGap (Multiplataforma con html5)
14 1.2.2. Web Services
Un servicio web es una tecnología que utiliza un conjunto de protocolos y estándares
que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de
software desarrolladas en lenguajes de programación diferentes, y ejecutadas sobre
cualquier plataforma, pueden utilizar los servicios web para intercambiar datos
en redes de ordenadores como Internet.
La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las
organizaciones OASIS y W3C son los comités responsables de la arquitectura y
reglamentación de los servicios Web. Para mejorar la interoperabilidad entre distintas
implementaciones de servicios Web se ha creado el organismo WS-I, encargado de
desarrollar diversos perfiles para definir de manera más exhaustiva estos estándares.
Es una máquina que atiende las peticiones de los clientes web y les envía los recursos
solicitados. (Schlamman, 2006)
Ventajas
Aportan interoperabilidad entre aplicaciones de software independientemente de sus
propiedades o de las plataformas sobre las que se instalen.
Los servicios Web fomentan los estándares y protocolos basados en texto, que
hacen más fácil acceder a su contenido y entender su funcionamiento.
Permiten que servicios y software de diferentes compañías ubicadas en diferentes lugares geográficos puedan ser combinados fácilmente para proveer servicios
integrados. (Munilla, 2003)
Desventajas
Para realizar transacciones no pueden compararse en su grado de desarrollo con
los estándares abiertos de computación distribuida como CORBA (Common Object
Request Broker Architecture).
Su rendimiento es bajo si se compara con otros modelos de computación distribuida, tales como RMI (Remote Method Invocation), CORBA o DCOM (Distributed
Component Object Model). Es uno de los inconvenientes derivados de adoptar un
formato basado en texto. Y es que entre los objetivos de XML no se encuentra la
15
Al apoyarse en HTTP, pueden esquivar medidas de seguridad basadas en firewall cuyas reglas tratan de bloquear o auditar la comunicación entre programas
a ambos lados de la barrera. (Munilla, 2003)
1.2.3. Programación Web
Desarrollo web es un término amplio que define la creación de sitios
web para Internet o una intranet. Para conseguirlo se hace uso de tecnologías
de software del lado del servidor y del cliente que involucran una combinación de
procesos de base de datos con el uso de un navegador web a fin de realizar
determinadas tareas o mostrar información.
Tradicionalmente un software departamental o incluso un ambicioso proyecto
corporativo de gran envergadura es desarrollado en forma standalone, es decir,
usando lenguajes ya sea compilados(C, C++, Delphi),
semicompilados(.NET, Mono, Java), o interpretados (Python, PHP), donde cabe
perfectamente un desarrollo orientado a web para dichos propósitos, siendo más
homogéneo y multiplataforma, y dependiendo de las tecnologías utilizadas, más rápido
y robusto tanto para diseñar, implementar y probar, como para su uso una vez
terminado.
Funcionalmente, el desarrollador web, que es quien realiza esta labor, normalmente
sólo se preocupa por el funcionamiento del software, es tarea del diseñador
web preocuparse del aspecto final (layout) de la página y del webmaster el integrar
ambas partes. En ocasiones el webmaster también se encarga de actualizar los
contenidos de la página.Los lenguajes de programación más usados en desarrollo web
son principalmente: ASP.NET, PHP y JSP, aunque aún hay quienes
usan ASP, Macromedia ColdFusion y Perl. También hay un proyecto para
usar Pascal en web a través del lenguaje Pascal Server Pages - PSP pero aún no se
han concretado desarrollos, hasta donde se conoce.
El sistema de gestión de base de datos más popular en desarrollo web es MySQL,
seguida por Oracle, SQL Server y PostgreSQL, también puede usarse
perfectamente Firebird o HSQL.Idealmente un desarrollador web debería conocer,
además de al menos un lenguaje de programación y el manejo de al menos una base
de datos, HTML, CSS yJavaScript, tres tecnologías que bien trabajadas
16 AJAX
AJAX, acrónimo de Asynchronous JavaScript And XML (JavaScript asíncrono y XML),
es una técnica de desarrollo web para crear aplicaciones interactivas o RIA (Rich
Internet Applications). Estas aplicaciones se ejecutan en el cliente, es decir, en
el navegador de los usuarios mientras se mantiene la comunicación asíncrona con el
servidor en segundo plano. De esta forma es posible realizar cambios sobre las
páginas sin necesidad de recargarlas, mejorando la interactividad, velocidad
y usabilidad en las aplicaciones.
Ajax es una tecnología asíncrona, en el sentido de que los datos adicionales se
solicitan al servidor y se cargan en segundo plano sin interferir con la visualización ni
el comportamiento de la página, aunque existe la posibilidad de configurar las
peticiones como síncronas de tal forma que la interactividad de la página se detiene
hasta la espera de la respuesta por parte del servidor.
JavaScript es el lenguaje interpretado (scripting language) en el que normalmente se
efectúan las funciones de llamada de Ajax mientras que el acceso a los datos se
realiza mediante XMLHttpRequest, objeto disponible en los navegadores actuales. En
cualquier caso, no es necesario que el contenido asíncrono esté formateado en XML.
Ajax es una técnica válida para múltiples plataformas y utilizable en muchos sistemas
operativos y navegadores, dado que está basado en estándares abiertos como
JavaScript y Document Object Model (DOM). (Zakas, 2005)
HTML
HTML, siglas de HyperText Markup Language («lenguaje de marcas de hipertexto»),
hace referencia al lenguaje de marcado para la elaboración de páginas web. Es un
estándar que sirve de referencia para la elaboración de páginas web en sus diferentes
versiones, define una estructura básica y un código (denominado código HTML) para
la definición de contenido de una página web, como texto, imágenes, videos, entre
otros.
Es un estándar a cargo de la W3C, organización dedicada a la estandarización de casi
todas las tecnologías ligadas a la web, sobre todo en lo referente a su escritura e
17
Se considera el lenguaje web más importante siendo su invención crucial en la
aparición, desarrollo y expansión de la World Wide Web. Es el estándar que se ha
impuesto en la visualización de páginas web y es el que todos los navegadores
actuales han adoptado.
El lenguaje HTML basa su filosofía de desarrollo en la referenciación. Para añadir un
elemento externo a la página (imagen, vídeo, script, entre otros.), este no se incrusta
directamente en el código de la página, sino que se hace una referencia a la ubicación
de dicho elemento mediante texto.
De este modo, la página web contiene sólo texto mientras que recae en el navegador
web (interpretador del código) la tarea de unir todos los elementos y visualizar la
página final. Al ser un estándar, HTML busca ser un lenguaje que permita que
cualquier página web escrita en una determinada versión, pueda ser interpretada de la
misma forma (estándar) por cualquier navegador web actualizado. (Álavarez García,
1996)
PHP
PHP es un lenguaje de programación de uso general de código del lado del
servidor originalmente diseñado para el desarrollo web de contenido dinámico.
Fue uno de los primeros lenguajes de programación del lado del servidor que se
podían incorporar directamente en el documento HTML en lugar de llamar a un archivo
externo que procese los datos. El código es interpretado por un servidor web con un
módulo de procesador de PHP que genera la página Web resultante. PHP ha
evolucionado por lo que ahora incluye también una interfaz de línea de comandos que
puede ser usada en aplicaciones gráficas independientes.
Puede ser usado en la mayoría de los servidores web al igual que en casi todos los
sistemas operativos y plataformas sin ningún costo.
PHP se considera uno de los lenguajes más flexibles, potentes y de alto rendimiento
conocidos hasta el día de hoy, lo que ha atraído el interés de múltiples sitios con gran
demanda de tráfico, como Facebook, para optar por el mismo como tecnología de
18 JAVASCRIPT
Javascript es un lenguaje que puede ser utilizado por profesionales y para quienes se
inician en el desarrollo y diseño de sitios web. No requiere de compilación ya que el
lenguaje funciona del lado del cliente, los navegadores son los encargados de
interpretar estos códigos.
Muchos confunden el Javascript con el Java pero ambos lenguajes son diferentes y
tienes sus características singulares. Javascript tiene la ventaja de ser incorporado en
cualquier página web, puede ser ejecutado sin la necesidad de instalar otro programa
para ser visualizado.
Java por su parte tiene como principal característica ser un lenguaje independiente de
la plataforma. Se puede crear todo tipo de programa que puede ser ejecutado en
cualquier ordenador del mercado: Linux, Windows, Apple, etc. Debido a sus
características también es muy utilizado para internet.
Como síntesis se pude decir que Javascript es un lenguaje interpretado, basado en
prototipos, mientras que Java es un lenguaje más orientado a objetos.
Javascript es un lenguaje con muchas posibilidades, utilizado para crear pequeños
programas que luego son insertados en una página web y en programas más grandes,
orientados a objetos mucho más complejos. Con Javascript podemos crear diferentes
efectos e interactuar con nuestros usuarios.
Es necesario resaltar que hay dos tipos de JavaScript: por un lado está el que se
ejecuta en el cliente, este es el Javascript propiamente dicho, aunque técnicamente se
denomina Navigator JavaScript. Pero también existe un Javascript que se ejecuta en
el servidor, es más reciente y se denomina LiveWire Javascript. (Valdés, 2007)
1.2.4. Frameworks
PHONEGAP
PhoneGap es un framework para el desarrollo de aplicaciones móviles producido por
Nitobi, y comprado posteriormente por Adobe Systems. Principalmente, PhoneGap
permite a los programadores desarrollar aplicaciones para dispositivos móviles
utilizando herramientas genéricas tales como JavaScript, HTML5 y CSS3.
Las aplicaciones resultantes son híbridas, es decir que no son realmente aplicaciones
19
En la tercera versión de PhoneGap se incorpora el uso de una interfaz de comandos a
través de consola, una nueva arquitectura de complementos descentralizados y la
posibilidad de utilizar un código web unificado para crear múltiples proyectos.
PhoneGap maneja API que permiten tener acceso a elementos como el acelerómetro,
la cámara, los contactos en el dispositivo, la red, el almacenamiento, las notificaciones,
etc. Estas API se conectan al sistema operativo usando el código nativo del sistema
huésped a través de una Interfaz de funciones foráneas en Javascript.
PhoneGap permite el desarrollo ya sea ejecutando las aplicaciones en nuestro
navegador web, sin tener que utilizar un simulador dedicado a esta tarea, y brinda la
posibilidad de soportar funciones sobre frameworks como Sencha Touch o JQuery
Mobile.
PhoneGap es una distribución de Apache Cordova. La aplicación se llamó en un
principio "PhoneGap", y posteriormente "Apache Callback". Ambos sistemas tienen
funciones casi idénticas, la diferencia principal entre Apache Cordova y Phonegap es
que el segundo tiene acceso a servicios de compilación en la nube proporcionados por
Adobe Creative Cloud.
Apache Cordova es un software de código abierto y tanto este como PhoneGap
pueden ser utilizados libremente en cualquier aplicación sin necesidad de atribución o
licencias de ningún tipo. (Wargo, 2009)
JQUERY MOBILE
JQuery Mobile es un Framework optimizado para dispositivos táctiles (también
conocido como Framework móvil) que está siendo desarrollado actualmente por el
equipo de proyectos de jQuery.
El desarrollo se centra en la creación de un Framework compatible con la gran
variedad de smartphones y tablets, algo necesario en el creciente y heterogéneo
mercado de tablets y smartphones. El Framework de jQuery Mobile es compatible con
otros frameworks móviles y plataformas como PhoneGap y Worklight entre otros.
Todos los proyectos que utilizan jQuery Mobile utilizan más o menos el mismo código.
Es importante enlazar las librerías JavaScript de jQuery y jQuery Mobile, así como sus
hojas de estilo (estos archivos pueden descargarse y utilizarse localmente, pero se
20
jQuery Mobile provee un Framework potente de “tematización” que permite a los
desarrolladores personalizar los esquemas de color y determinados aspectos de la UI
(User Interface) controlados por CSS.
Los desarrolladores pueden usar la aplicación de jQuery Mobile ThemeRoller para
personalizar estos aspectos y crear una amplia gama de experiencias. Tras desarrollar
un tema con ThemeRoller, el desarrollador puede descargar su CSS personalizado y
emplearlo directamente en su proyecto.
Cada tema contiene hasta 26 permutaciones de color, cada una de ellas consistente de un “header bar”, “content body” y “button states”. Combinar estas diferentes
permutaciones permite a los desarrolladores crear un rango de efectos visuales más
grande de lo que podrían lograr con solo una permutación por tema. Cambiar entre los diferentes temas es tan sencillo como añadir un atributo llamado “data-theme” a los
elementos HTML. (Firtman, 2012)
BOOTSTRAP
Es un framework originalmente creado por Twitter, que permite crear interfaces web
con CSS y JavaScript, cuya particularidad es la de adaptar la interfaz del sitio web al
tamaño del dispositivo en que se visualice. Es decir, el sitio web se adapta
automáticamente al tamaño de una PC, una Tablet u otro dispositivo. Esta técnica de diseño y desarrollo se conoce como “responsive design” o diseño adaptativo.
El beneficio de usar responsive design en un sitio web, es principalmente que el sitio
web se adapta automáticamente al dispositivo desde donde se acceda. Lo que se usa
con más frecuencia, y que a mi opinión personal me gusta más, es el uso de media
queries, que es un módulo de CSS3 que permite la representación de contenido para
adaptarse a condiciones como la resolución de la pantalla y si trabajas las
dimensiones de tu contenido en porcentajes, puedes tener una web muy fluida capaz
de adaptarse a casi cualquier tamaño de forma automática.
Pero si no quieres nada que ver con los media queries, otra muy buena opción es el
uso del framework de Bootstrap, que como te dije te ayudará a desarrollar tus sitios
adaptativos.
Aun ofreciendo todas las posibilidades que ofrece Bootstrap a la hora de crear
interfaces web, los diseños creados con Bootstrap son simples, limpios e intuitivos,
esto les da agilidad a la hora de cargar y al adaptarse a otros dispositivos. El
21
Botones, Menús desplegables, Formularios incluyendo todos sus elementos e
integración jQuery para ofrecer ventanas y tooltips dinámicos.
Bootstrap tiene un soporte relativamente incompleto para HTML5 y CSS 3, pero es
compatible con la mayoría de los navegadores web. La información básica de
compatibilidad de sitios web o aplicaciones está disponible para todos los dispositivos
y navegadores.
Existe un concepto de compatibilidad parcial que hace disponible la información básica
de un sitio web para todos los dispositivos y navegadores. Por ejemplo, las
propiedades introducidas en CSS3 para las esquinas redondeadas, gradientes y
sombras son usadas por Bootstrap a pesar de la falta de soporte de navegadores
antiguos. Esto extiende la funcionalidad de la herramienta, pero no es requerida para
su uso. (Cochran, 2012)
1.2.5. Software para desarrollo para Aplicaciones Android
Para el desarrollo de aplicaciones móviles es necesario contar con un conjunto de
herramientas hardware y software las cuales proporciones las características y
funcionalidades deseadas para que la aplicación a desarrollar sea de calidad y cumpla
con los objetivos deseados.
La elección correcta de estas herramientas permite también que la productividad en el
trabajo sea mejorada.
Entre las herramientas indispensables para el desarrollo de aplicaciones se tiene:
Lenguaje de Programación
Compilador
Depurador
Entorno de Desarrollo
Emuladores
Drivers
Librerías
22 SDK (Software Development Kit)
Traducido al español un SDK es un Kit de Desarrollo de Software, es decir son un
conjunto de herramientas de tipo software las cuales sirven para el desarrollo de
aplicaciones para un entorno tecnológico en particular ya sea un dispositivo en
especial o para un sistema operativo específico.
Son muchas las herramientas que forman parte de este conjunto dependiendo igual
del entorno en el cual se va a trabajar, pero las herramientas principales presentes en
todo SDK son:
API: Es la Interfaz de Programación de Aplicaciones, está formada por un conjunto
de funciones, procedimientos, rutinas, estructuras de datos, clases y variables que
permitirán manipular el mecanismo de la plataforma sin conocerlo internamente.
IDE: Entorno de Desarrollo Integrado, Es un software de tipo editor en el cual se puede escribir el código fuente de las aplicaciones, diseñar interfaces, elegir el
lenguaje de programación, es decir ofrece una interfaz amigable y fácil de usar. Este a
su vez está compuesto por los siguientes elementos:
Depurador: Es el encargado de probar el programa, lo va revisando en cada
proceso que se ejecuta con el fin de encontrar errores y eliminarlos si es posible
automáticamente o enviar alertas al programador para su posterior corrección.
Compilador: El compilador es también denominado traductor ya que se encarga de
traducir el lenguaje de programación del código fuente al lenguaje que entiende la
máquina.
Interprete: Es el programa encargado de analizar y ejecutar los programas escritos
en lenguaje de alto nivel. A diferencia del compilador este traduce solo lo necesario
instrucción por instrucción y no guarda resultados de dicha traducción.
Editor de Código: Es un programa que permite editar texto, de forma que la
codificación sea más ordenada y sencilla de escribir.
Constructor de Interfaz Grafica: Se encarga de ofrecer al desarrollador las
herramientas y recursos para la construcción de las interfaces que serán el medio por
las cuales interactúan la aplicación y el usuario.
Actualmente toda empresa involucrada en la tecnología, ya sea a nivel de hardware o
software ofrece su propio SDK para que los desarrolladores contribuyan con el
desarrollo de aplicaciones para sus dispositivos, plataformas o sistemas. (Ocaña &
23 SDK Android
El Kit de Desarrollo para el Sistema Operativo Android fue creado por la empresa
Google la cual además de darle los elementos básicos de un SDK también incluyo
otros elementos como documentación, ejemplos y tutoriales de desarrollo, por lo que
se convierte en una herramienta poderosa para el desarrollo de aplicaciones Android.
El SDK Android se puede integrar a varios entornos de desarrollo pero la plataforma
oficial es ECLIPSE.
1.2.6. Base de Datos
POSTGRESQL
PostgreSQL es un Sistema de gestión de bases de datos relacional orientado a
objetos y libre, publicado bajo la licencia PosgreSQL, similar a la BSD o la MIT.
Como muchos otros proyectos de código abierto, el desarrollo de PostgreSQL no es
manejado por una empresa y/o persona, sino que es dirigido por una comunidad de
desarrolladores que trabajan de forma desinteresada, altruista, libre y/o apoyada por
organizaciones comerciales. Dicha comunidad es denominada el PGDG (PostgreSQL
Global Development Group).
Alta concurrencia
Mediante un sistema denominado MVCC (Acceso concurrente multiversión, por sus
siglas en inglés) PostgreSQL permite que mientras un proceso escribe en una tabla,
otros accedan a la misma tabla sin necesidad de bloqueos. Cada usuario obtiene una
visión consistente de lo último a lo que se le hizo commit. Esta estrategia es superior al
uso de bloqueos por tabla o por filas común en otras bases, eliminando la necesidad
del uso de bloqueos explícitos.
Otras características
Claves ajenas también denominadas Llaves ajenas o Claves Foráneas (foreign keys).
Disparadores (triggers): Un disparador o trigger se define como una acción específica
que se realiza de acuerdo a un evento, cuando éste ocurra dentro de la base de datos.
En PostgreSQL esto significa la ejecución de un procedimiento almacenado basado en
24 1.2.7. Sistema de Gestión Documental
QUIPUX
QUIPUX es un sistema de gestión documental, modificado a partir del sistema de
gestión documental ORFEO. Quipux está liberado bajo licencia GPL utiliza tecnologías
y estándares abiertos.
La Subsecretaría de Tecnologías de Información efectuó modificaciones a la versión
original (ORFEO) adaptándolas a las necesidades de gestión documental de las
entidades de la Administración Pública Central del Ecuador. Su uso se ha difundido
por sus beneficios, entre los que se puede mencionar, su orientación a "cero papeles",
actualmente varias instituciones (públicas y privadas) se encuentran utilizando el
sistema Quipux. (Gobierno de la Republica del Ecuador, 2016)
EL SISTEMA DE GESTIÓN DE QUEJAS Y SUGERENCIAS
El proceso de transformación de las quejas y sugerencias de los usuarios en
conocimiento útil para la entidad, que proporcione un valor añadido para su gestión,
implica la existencia de un sistema robusto para la gestión de quejas y sugerencias.
Así como también es necesario disponer de mecanismos que incentiven la
participación de los clientes y usuarios.
Este sistema de gestión de quejas y sugerencias permitirá el nivel de calidad con el
que se prestan los servicios y productos ofrecidos por la entidad, y generar sistemas
para la participación de los clientes/usuarios para la mejora integral de los servicios.
Para que dicho sistema constituya un instrumento eficaz y operativo, son necesarias
algunas consideraciones básicas para su implantación (Martín, J.I., 2006):
Es importante disponer de una unidad o personal designado, responsable de la
gestión de las quejas, sugerencias y reclamaciones. Este personal debe estar
capacitado para las actividades de recogida, gestión, tramitación, resolución y
comunicación, especialmente la capacidad de respuesta al cliente.
Disponer de un procedimiento establecido y formal para la gestión de las
sugerencias y quejas.
Difusión y comunicación hacia los usuarios sobre la existencia de un sistema para
la recogida y gestión de quejas y sugerencias, además deben ser públicos y
suficientemente claros los procedimientos que el usuario debe llevar a cabo para la