Vous êtes sur la page 1sur 96

UNIVERSIDAD REGIONAL AUTONOMA DE LOS ANDES

“UNIANDES”

FACULTAD DE SISTEMAS MERCANTILES

CARRERA DE SISTEMAS

“APLICACIÓN WEB PARA LA GESTIÓN DE VENTAS DE UNA FARMACIA”

Autores:

CHIPANTIZA MEDINA RAÚL ALEJANDRO

CHINGO ESQUIVEL ROGER ANDRES

Monar ……… Maria

Tutores:

ING. BAÑO NARANJO FREDDY PATRICIO.

ING. LLERENA OCAÑA LUIS ANTONIO.

ING. MARTINEZ CAMPAÑA CARLOS EDUARDO.

ING. VISCAINO NARANJO FAUSTO ALBERTO.

ING. CULQUI TOAPANTA WALTER VINICIO

ABRIL- AGOSTO

2017
CERTIFICACIÓN DE TUTORES

Los docentes que impartimos las diferentes materias en el séptimo nivel de


ingeniería en sistemas, expresamos la aprobación del contemporáneo proyecto
integrador, cuyo tema es: “APLICACIÓN WEB MOVIL PARA LA PROMOCION
TURISTICA DE LA PROVINCIA DE TUNGURAHUA” ya que cumple con los
lineamientos estipulados por la institución, para este tipo de actividades.

F: /---------------------------------------------

ING.LUIS LLERENA OCAÑA.

F: /----------------------------------------

ING. FREDDY BAÑO NARANJO.

F. /----------------------------------------------

ING.CARLOS MARTINEZ CAMPAÑA

F: /---------------------------------------------.

ING. FAUSTO VISCAINO NARANJO.

F: /----------------------------------------------

ING.WALTER CULQUI TOAPANTA


DECLARACIÓN DE AUTORIA DEL PROYECTO
Yo, Raul Alejandro Chipantiza Medina ,Danny Gustavo Garcia Galarza,Roger
Andres Chingo Esquivel , estudiante de la Facultad de Sistemas Mercantiles de la
Universidad Regional Autónoma de Los Andes – UNIANDES, declaro en forma libre
y voluntaria que la presente investigación, que versa sobre el tema: “APLICACIÓN
WEB PARA LA GESTIÓN DE VENTAS DE UNA FARMACIA”, así como, las
expresiones vertidas en la misma son de exclusiva autoría del compareciente, quien
lo ha realizado a base de recopilación bibliográfica de la legislación ecuatoriana e
internacional, y consultas en Internet.
En consecuencia, asumo la responsabilidad de la originalidad de la misma y el
cuidado respectivo al remitirme a las fuentes bibliográficas respectivas para
fundamentar el contenido expuesto.

Doy potestad a la Universidad Regional Autónoma de los Andes, para que emplee
el presente trabajo investigativo como bibliografía para futuras investigaciones
relacionadas con el tema planteado.

………………………………………
Raul Alejandro Chipantiza Medina
CI: 1803879145
AUTOR

………………………………………
Roger Andres Chingo Esquivel
CI: 0502803299
AUTOR

………………………………………
Maria Monar
CI:
AUTOR
AGRADECIMIENTO
Agradecemos a Dios por protegernos durante todo nuestro camino y darnos
fuerzas para superar obstáculos y dificultades a lo largo nuestra vida.

Agradecemos también la confianza y el apoyo incondicional brindado por


parte de nuestros padres, que sin duda alguna en el trayecto de nuestra vida
nos han demostrado su amor, corrigiendo nuestras faltas y celebrando
nuestros triunfos.

Gracias a todas las personas que ayudaron directa e indirectamente en la


realización de este proyecto.

Maria, Alejandro, Roger.


DEDICATORIA

El presente Proyecto Integrador de Saberes está dedicado principalmente a


Dios, por habernos permitido llegar hasta este punto y habernos dado salud
para lograr este objetivo, además de su infinita bondad y amor.

A nuestros padres, por habernos apoyado en todo momento, por sus


consejos, sus valores, por la motivación constante que nos a permitido ser
unas personas de bien, pero más que nada, por su amor, por los ejemplos de
perseverancia y constancia que los caracterizan y que nos ha infundado
siempre, también por el valor mostrado para salir adelante.

Maria, Alejandro, Roger.


INDICE
Contenido
CERTIFICACIÓN DE TUTORES .............................................................................. II
DECLARACIÓN DE AUTORIA DEL PROYECTO.................................................. III
AGRADECIMIENTO ................................................................................................. IV
DEDICATORIA........................................................................................................... V
INDICE ....................................................................................................................... VI
RESUMEN EJECUTIVO ........................................................................................... XI
EXECUTIVE SUMMARY .......................................................................................... XI
CAPITULO I ............................................................................................................... 1
1.PROBLEMA ............................................................................................................ 1
1.1 ANTECEDENTES DE LA INVESTIGACIÓN ..................................................... 1
1.3 PROBLEMA CIENTÍFICO ................................................................................... 2
1.4 OBJETO DE INVESTIGACIÓN Y CAMPO DE ACCIÓN .................................. 2
1.4.1 OBJETO DE INVESTIGACIÓN:........................................................................................... 2
1.4.2 CAMPO DE ACCIÓN: ........................................................................................................ 3
1.4.3 IDENTIFICACIÓN DE LA LÍNEA DE INVESTIGACIÓN ............................................................ 3
1.5 OBJETIVO GENERAL. ....................................................................................... 3
1.6 OBJETIVOS ESPECÍFICOS .......................................................................................... 3
1.7 IDEA DEFENDER ................................................................................................ 3
1.8 JUSTIFICACIÓN .................................................................................................. 3
CAPITULO II .............................................................................................................. 4
2. MARCO TEORICO ................................................................................................ 4
2.1 APLICACIÓN WEB ............................................................................................. 4
2.1.1EJEMPLOS DE APLICACIONES WEB .................................................................................. 4
2.1.2 FRAMEWORK PARA APLICACIONES WEB ......................................................................... 5
2.1.3 APLICACIÓN WEB ENRIQUECIDA ..................................................................................... 5
2.1.5 ARQUITECTURA ............................................................................................. 7
2.1.5.1 ARQUITECTURA DE LAS APLICACIONES WEB. .............................................................. 7
2.1.6.1ARQUITECTURA CLIENTE/SERVIDOR ............................................................................ 8
2.1.7 TECNOLOGIA .................................................................................................. 9
2.1.7.1JAVA SERVER FACES (JSF) ................................................................................................. 9
2.1.7.2 RICHFACES ........................................................................................................................... 9
2.1.7.3 AJAX ...................................................................................................................................... 9
2.1.7.4 AJAX INCORPORA: ............................................................................................................... 9
2.1.7.5 AJAX4JSF............................................................................................................................ 10
2.1.7.6 FACELETS ........................................................................................................................... 10
2.1.7.7 LENGUAJE DE MARCADO DE HIPERTEXTO EXTENSIBLE (XHTML) ................................. 10
2.1.7.8 EXTENSIBLE MARKUP LANGUAGE (XML) ......................................................................... 11
2.1.7.9 JAVA SCRIPT ....................................................................................................................... 11
2.1.8 TECNOLOGÍAS ...............................................................................................11
2.1.8.1 SERVIDOR DE APLICACIONES .................................................................................... 11
2.1.8.2 ENTERPRISE JAVA BEANS (EJB) .............................................................................. 11
2.1.8.3 JAVA PERSISTENCE API (JPA) ................................................................................. 12
2.1.8.4 FRAMEWORK HIBERNATE .......................................................................................... 12
2.2 APLICACIONES MOVILES ...............................................................................12
2.2.1 DEFINICION .................................................................................................................. 12
2.2.2 CLOUD ......................................................................................................................... 13
2.2.3 ANDROID ................................................................................................................... 14
2.2.4 ANDROID STUDIO.......................................................................................................... 15
2.2.5 EVOLUCION .............................................................................................................. 16
2.2.6 PRE-HISTORIA DE ANDROID ......................................................................................... 16
2.2.7 HISTORIA DE ANDROID ................................................................................................. 16
2.2.8 ANDROID 1.1: BANANA BREAD .................................................................................... 17
2.2.8.1 ANDROID 1.5: CUPCAKE .................................................................................................... 18
2.2.8.2 ANDROID 1.6: DONUT......................................................................................................... 18
2.2.8.3 ANDROID 2.1....................................................................................................................... 19
2.2.8.4 ANDROID 2.1 (MULTI-TOUCH) ............................................................................................ 20
2.2.8.5 ANDROID 2.2 FROYO .......................................................................................................... 20
2.2.8.6 ANDROID 2.3 GINGERBREAD ............................................................................................. 21
2.2.8.7 ANDROID 3.0: HONEYCOMB ............................................................................................... 21
2.2.8.8 ANDROID 4.0: ICE CREAM SANDWICH............................................................................... 22
2.2.8.9 ANDROID 4.1: JELLY BEAN ................................................................................................ 22
2.2.8.10 ANDROID 4.2 .................................................................................................................... 23
2.2.8.11 ANDROID 4.3 .................................................................................................................... 23
2.2.8.12 ANDROID 4.4: KITKAT ...................................................................................................... 24
2.2.8.13 ANDROID 5.0: LOLLIPOP .................................................................................................. 25
2.2.8.14 ANDROID 5.1 .................................................................................................................... 25
2.2.8.15 ANDROID 6.0 MARSHMALLOW ......................................................................................... 26
2.3 DISPOSITIVOS MOVILES ............................................................................................ 26
2.3.1 HERRAMIENTAS DE DESARROLLO ................................................................................. 27
2.4 VISUAL STUDIO ................................................................................................28
2.4.1VISUAL NET ................................................................................................................... 28
2.4.2 PUNTOS DE INTERÉS DE VISUAL STUDIO .NET ............................................................. 29
2.4.3 APLICACIONES PARA DISPOSITIVOS INTELIGENTES ............................................................. 29
2.4.4 DISEÑADOR DE ASP.NET MOBILE ....................................................................................... 30
2.4.5 FORMULARIOS W EB FORMS ................................................................................................. 30
2.4.6 FORMULARIOS W INDOWS FORMS ........................................................................................ 30
2.4.7 SERVICIOS W EB XML ........................................................................................................... 30
2.4.8 COMPATIBILIDAD CON XML .................................................................................................. 31
2.4.9 EL ENTORNO .NET FRAMEWORK ......................................................................................... 31
2.4.10 ENTERPRISE TEMPLATES .................................................................................................... 33
2.4.11 MIGRAR LAS APLICACIONES EXISTENTES ........................................................................... 33
2.4.12 ADO.NET............................................................................................................................... 33
2.5 TURISMO ............................................................................................................33
2.5.1 DEFINICION .................................................................................................................. 33
2.5.2 ANTECEDENTES ...................................................................................................... 34
2.5.3 ETAPAS........................................................................................................................ 35
2.5.3.1 ¿QUÉ FACILITABA LOS VIAJES DE LOS HOMBRES EN EL MUNDO ANTIGUO?.................... 36
2.6 CONCLUSIONES PARCIALES DEL CAPITULO ............................................37
CAPÍTULO III ............................................................................................................39
3. MARCO METODOLÓGICO .................................................................................39
3.1 CARACTERIZACION DEL SECTOR ..................................................................................... 39
3.1.1 PROVINCIA DE TUNGURAHUA ................................................................................................ 39
3.2 DESCRIPCION DEL PROCEDIMIENTO METODOLÓGICO ....................................................... 39
3.2.1 MODALIDAD DE LA INVESTIGACIÓN ............................................................................... 39
3.2.1.1 INVESTIGACION CUANTITATIVA .......................................................................................... 39
3.2.1.2 INVESTIGACION CUALITATIVA ............................................................................................. 39
3.2.2 TIPOS DE INVESTIGACION ............................................................................................. 39
3.2.2.1 INVESTIGACIÓN APLICADA .................................................................................................. 39
3.2.2.2 INVESTIGACIÓN BIBLIOGRÁFICA - DOCUMENTAL .............................................................. 39
3.2.3 POBLACION Y MUESTRA ............................................................................................... 39
3.2.4 METODOS, TÉCNICAS E INSTRUMENTOS........................................................................ 40
3.2.4.1 MÉTODOS ................................................................................................................. 40
3.2.4.1.2 ANLITICO – SINTETICO .................................................................................................... 40
3.2.4.1.3 INDUCTIVO – DEDUCTIVO ............................................................................................... 40
3.2.4.2 TECNICA ................................................................................................................... 40
3.2.4.3 INTRUMENTOS : ......................................................................................................... 40
3.2.5 ANALISIS E INTERPRETACION DE RESULTADOS ............................................................. 40
3.2.5.1 ENCUESTA .......................................................................................................................... 40
PREGUNTA 1 .................................................................................................................................... 40
PREGUNTA 2 .................................................................................................................................... 41
PREGUNTA 3 .................................................................................................................................... 42
PREGUNTA 4 .................................................................................................................................... 43
PREGUNTA 5 .................................................................................................................................... 44
PREGUNTA 6 .................................................................................................................................... 45
PREGUNTA 7 .................................................................................................................................... 46
3.3 CONCLUSIONES PARCIALES DEL CAPITULO ..................................................................... 47
CAPITULO IV ............................................................................................................48
4.1 DESARROLLO.............................................................................................................. 48
4.1.1 METODOLOGIA ÁGIL ..................................................................................................... 49
4.1.2 METODOLOGÍAS ÁGILES UTILIZADAS PARA EL DESARROLLO DE SOFTWARE ................. 49
4.1.2.1 HERRAMIENTA DE DESARROLLO DE LA APLICACIÓN WEB .......................................... 51
4.1.2.2 MOTOR DE BASE DE DATOS ....................................................................................... 51
4.1.2.3 PRINCIPIOS DE LA METODOLOGÍA ÁGIL XP: ............................................................... 52
4.1.2.4 LOS ROLES ............................................................................................................... 54
ITERACIONES ................................................................................................................................... 56
ITERACIÓN 02 .................................................................................................................................. 57
4.1.2.5 DISEÑO ..................................................................................................................... 57
CODIFICACIÓN ........................................................................................................58
4.2 APLICACIÓN ......................................................................................................59
CONCLUSIONES .....................................................................................................59
RECOMENDACIONES .............................................................................................60
BIBLIOGRAFÍA.........................................................................................................61
ANEXO A............................................................................................................................... 67
ANEXO B............................................................................................................................... 68
ANDROID ............................................................................................................................ 68
ANEXO C............................................................................................................................... 69
PROGRAMACION .............................................................................................................. 69
ANEXO D............................................................................................................................... 76
PAGINA WEB ......................................................................................................................... 76
ANEXO E ............................................................................................................................... 77
PROGRAMACIÓN WEB............................................................................................................ 77

ILUSTRACIÓN 1:CONOCE QUE ES UNA APLICACION WEB MOVIL ..................................................................... 41


ILUSTRACIÓN 2 :LE GUSTARÍA CONOCER LOS LUGARES TURÍSTICOS DE LA PROVINCIA DE TUNGURAHUA EN
UNA APLICACIÓN MOVIL? ........................................................................................................................ 42
ILUSTRACIÓN 3 :¿HA ESCUCHADO LA EXISTENCIA DE APLICACIONES MOVILES PARA PROMOCIONAR LO
TURÍSTICO DE UNA PROVINCIA DE TUNGURAHUA? ................................................................................ 43
ILUSTRACIÓN 4 : ¿LA APLICACIÓN WEB-MOVIL CON EL NOMBRE VIVE TUNGURAHUA FAVORECERÁ CONOCER
CENTROS TURÍSTICOS DE LA PROVINCIA DE TUNGURAHUA? ................................................................. 44
ILUSTRACIÓN 5: ¿EXISTEN APLICACIONES MOVILES PARA PROMOCIONAR CENTROS TURÍSTICOS DE LOS
CANTONES DE LA PROVINCIA DE TUNGURAHUA? ................................................................................... 45
ILUSTRACIÓN 6 : ¿CREE USTED QUE EXISTIENDO UNA APLICACIÓN MÓVIL AYUDARÍA AL TURISMO DE
TUNGURAHUA? ....................................................................................................................................... 46
ILUSTRACIÓN 7 : ¿CON LA IMPLEMENTACIÓN DE LA APLICACIÓN WEB-MOVIL CREE QUE MEJORARÍA EL TURISMO
Y POR ENDE LA ECONOMÍA DE LOS CANTONES DE LA PROVINCIA DE TUNGURAHUA? ........................... 47
TABLA 1 ............................................................................................................................................................. 40
TABLA 2 ........................................................................................................................................................... 41
TABLA 3 ........................................................................................................................................................... 42
TABLA 4 ........................................................................................................................................................... 43
TABLA 5 ........................................................................................................................................................... 44
TABLA 6 ........................................................................................................................................................... 45
TABLA 7 ........................................................................................................................................................... 46
TABLA 8 ........................................................................................................................................................... 55
TABLA 9 ........................................................................................................................................................... 57
RESUMEN EJECUTIVO

El presente trabajo de investigación tiene como objetivo promocionar a través de


un aplicativo web.

Para el avance de éste proyecto se indagó en contenidos pertinentes a las


aplicaciones web

EXECUTIVE SUMMARY

The present research aims to promote the tourist attractions of Tungurahua


Province, through a web-mobile application.

For the advancement of this project, it was investigated in pertinent contents to the
mobile and web applications that promote the tourism in different contexts and then
to apply them in the local scope, the same ones that were constituted in variables
on which the investigation was developed, later it was raised A proposal of solution,
based on the analysis and interpretation of results as well as on the conclusions and
recommendations obtained.

In this way it is intended to help the tourism process, in the visitors and settlers of
the province of Tungurahua, through the use of mobile and web applications,
applying innovative technological resources that are available to all, the mobile
application is shared through Of a web page established to facilitate its download
and installation of the app "vive-tunguragua"
CAPITULO I

1.PROBLEMA

1.1 Antecedentes de la investigación

Con el objetivo de buscar información, que pudiera documentar y crear referentes


sobre el trabajo que se propone hacer, se han encontrado diversas fuentes
bibliográficas que reposan en la biblioteca de la Universidad Regional Autónoma de
los Andes, así como también se analizaron fuentes de información en revistas
digitales, bibliotecas virtuales, artículos científicos y académicos que tienen relación
directa con el tema de investigación:
Los sistemas de gestión empresarial son el conjunto de políticas, prácticas,
procedimientos y procesos utilizados en la elaboración e implementación de
estrategias, su ejecución, y toda la actividad de gestión asociada. Las empresas
utilizan actualmente sistemas de información a todos los niveles de operación para
recoger, procesar y almacenar datos, optimizando las operaciones diarias del
negocio.

La finalidad última de la Gestión de Recursos de Información es ofrecer


mecanismos que permitan a la organización adquirir, producir y transmitir, al menor
costo posible, datos e información con una calidad, exactitud y actualidad
suficientes para servir a los objetivos de la organización. Esta definición de la
Gestión de la Información aporta elementos importantes para la delimitación de sus
contenidos fundamentales.

En primer lugar la consideración de que la información es un recurso importante en


la consecución de los objetivos de cualquier organización y que, por tanto, ha de
ser administrado con criterios de economía y eficacia, aspecto que, por otro lado,
aún hoy está muy lejos de ser conscientemente admitido por la mayor parte de las
organizaciones.

En las organizaciones existen recursos visibles, tangibles como el capital, los


materiales o las máquinas necesarias para llevar a cabo las operaciones diarias de
las empresas, y recursos invisibles, intangibles como la imagen de marca, la
habilidad tecnológica, dominio de los canales de distribución, etc. El éxito de la
organización no depende sólo de cómo maneje sus recursos materiales sino de
cómo aproveche sus activos intangibles. Y su correcto desarrollo depende de que
exista un adecuado flujo de información entre la organización y su entorno y entre
las distintas unidades de la organización.
1.2 Situación Problémica
Actualmente con el desarrollo continuo de la tecnología, han surgido nuevas formas
de comunicarnos en el mundo, quizás todo se debe a la globalización y lo pequeño
que es ahora nuestro planeta; día a día estas nuevas tecnologías se imponen sobre
las viejas, y con este cambio vienen circunstancias que llevan al mal uso de la
información y de la informática. La problemática viene del uso que se le da a la
tecnología, más específicamente: los computadores y la Internet

Actualmente existe un aumento creciente de la necesidad de transmitir información,


entre las instituciones educativas y la comunidad estudiantil; con la finalidad de
reducir el uso de papel y agilizar los procesos en la toma de decisiones.

Sin embargo, una de sus funciones más importantes es el soporte a la toma de


decisiones, especialmente cuando la decisión no es de rutina, por lo que el
responsable de definir la iniciativa a aplicar debe proporcionar el juicio, la
evaluación y conocimientos sobre la definición del problema. En esta labor, la
aportación de los sistemas de gestión empresarial es insustituible ya que, sin ellos
no sería posible evaluar todas las variables que pueden afectar a la resolución de
un problema o tomar en consideración todos los datos que se deben tener en
cuenta para una visión completa y de calidad de la realidad.

1.3 Problema Científico


¿Cómo mejorar el sistema de gestión de la Farmacia” Tu Salud” ?

1.4 Objeto de investigación y campo de acción


1.4.1 Objeto de investigación: Proceso de implementación de un sistema de gestión
1.4.2 Campo de acción:

1.4.3 Identificación de la línea de investigación


Desarrollo de software y Programación de Sistemas.

1.5 Objetivo General.


Desarrollar un sistema de gestión para la la farmacia “Tu salud”

1.6 Objetivos Específicos


 Fundamentar
 Determinar mediante un estudio de campo la situación actual
 Diseñar la aplicación para facilitar el conocimiento

1.7 Idea defender


Con la utilización del sistema de gestión a desarrollarse en el presente trabajo investigativo,
que permita mejorar el proceso de gestión de la empresa

1.8 Justificación
En la actualidad en la provincia de Tungurahua no existe ninguna aplicación móvil
que brinde información descriptiva de un lugar u objeto específico, que se
encuentran dentro de los sectores turísticos de la provincia y que permita al usuario
la visualización exacta del lugar o sitio turístico de una forma clara, rápida y sencilla.

El presente proyecto lo estamos realizando con el fin de generar turismo en la


provincia de Tungurahua, el beneficio seria para todas las personas que necesiten
conocer los cantones de Tungurahua.

En la actualidad una de las tendencias informáticas son las aplicaciones móviles la


revolución tecnológica a gran escala y las necesidades de tecnología que brinde a
los seres humanos facilidades de localización han motivado el desarrollo de este
proyecto, es importante mencionar que es factible su realización ya que se cuenta
con los recursos necesarios tanto materiales como con el talento humano
indispensable para el correcto desarrollo del mismo.
CAPITULO II

2. MARCO TEORICO

2.1 APLICACIÓN WEB


Internet y la Web han influido enormemente tanto en el mundo de la informática
como es la sociedad en general. Si nos centramos en la Web, en poco menos de
10 años ha tranformado los sistemas informáticos: ha roto las barreras físicas,
económicas y lógicas y ha abierto todo un abanico de nuevas posibilidades

Las aplicaciones web se encuadran dentro de las arquitecturas cliente/servidor: un


ordenador solicita servicios (el cliente) y otro está a la espera de recibir solicitudes
y las responde (el servidor). En este libro se aborda la programación de la parte
cliente de las aplicaciones web. Existen multitud de tecnologías que se pueden
emplear para programar las aplicaciones web, como ActiveX o applets, pero no
están tan estandarizadas como las dos que se muestran en este libro: HTML y
JavaScript. (Mora, 2002)

2.1.1Ejemplos de aplicaciones web


Las aplicaciones web son utilizadas para implementar webmail, ventas online,
subastas online, wikis, foros de discusión, weblogs, MMORPGs, redes sociales,
juegos, correo electrónico y todo tipo de servicios de internet.

Características de las aplicaciones web

 El usuario puede acceder fácilmente a estas aplicaciones empleando un


navegador web (cliente) o similar.
 Si es por internet, el usuario puede entrar desde cualquier lugar del mundo
donde tenga un acceso a internet.
 Pueden existir miles de usuarios pero una única aplicación instalada en un
servidor, por lo tanto se puede actualizar y mantener una única aplicación y
todos sus usuarios verán los resultados inmediatamente.
 Emplean tecnologías como Java, JavaFX, JavaScript, DHTML, Flash, Ajax...
que dan gran potencia a la interfaz de usuario.
 Emplean tecnologías que permiten una gran portabilidad entre diferentes
plataformas. Por ejemplo, una aplicación web podría ejecutarse en un
dispositivo móvil, en una computadora con Windows, Linux u otro sistema,
en una consola de videojuegos, etc.

Interfaz gráfica de las aplicaciones web

La interfaz gráfica de una aplicación web puede ser sumamente completa y


funcional, gracias a las variadas tecnologías web que existen: Java, JavaScript,
DHTML, Flash, Silverlight, Ajax, HTML5, entre otras.Prácticamente no hay
limitaciones, las aplicaciones web pueden hacer casi todo lo que está disponible
para aplicaciones tradicionales: acceder al mouse, al teclado, ejecutar audio o
video, mostrar animaciones, soporte para arrastrar y soltar, y otros tipos de
tecnologías de interacción usuario-aplicación.Ajax es un ejemplo de una tecnología
de desarrollo web que le da gran poder de interactividad a las aplicaciones
web.(Mendoza Jose, 2015)

2.1.2 Framework para aplicaciones web


Existen completos frameworks que facilitan la creación de aplicaciones web.
Algunos framework populares son Django, Ruby on Rails o Symfony.Los
frameworks de única página como Sencha Touch y AngularJS pueden ser usados
para acelerar el desarrollo de aplicaciones web (web apps) para plataformas
móviles. Para más información ver: Framework para aplicaciones web(Manuel
Felipe ATAPAUCAR, 14:09:43 UTC).

2.1.3 Aplicación web enriquecida


Las aplicaciones web han incrementado sus posibilidades, características y poder
enormemente. De todas maneras, en ocasiones, será necesario instalar en la
computadora alguna aplicación extra para que funcione. Estas son llamadas
Aplicaciones web enriquecidas (RIA). Existen muchas funcionalidades que desde
un navegador web no pueden ofrecerse, entonces estas aplicaciones, que se
instalan como si fuera un programa más de computadora, solucionan este
inconveniente.(Manuel Felipe ATAPAUCAR, 14:09:43 UTC)

Lenguajes de programación de aplicaciones web

Los lenguajes de programación más empleados en el desarrollo de aplicaciones


web son:
 PHP
 Java (Java Servlets y JavaServer Pages).
 Javascript
 Perl
 Ruby
 Python
 C# y Visual Basic (tecnologías ASP/ASP.NET)

Funcionamiento e historia de las aplicaciones web El modelo cliente-servidor es el


origen de las aplicaciones web. En este modelo el procesamiento se realiza en
parte del lado servidor y parte del lado cliente de forma local. Entonces, en este
modelo, una aplicación tiene su cliente precompilado que sirve como interfaz de
usuario y tiene que ser instalado por separado en cada computadora. Una
actualización en el código del programa del lado del servidor también usualmente
requiere la actualización del código instalado del lado del cliente. Esto volvía la
tarea del mantenimiento y soporte mucho más trabajosa.

Las aplicaciones web pueden ser consideradas como una variante del software
cliente-servidor donde el software del cliente es descargado cuando la máquina
cliente visita una página web, usando procedimientos estándares como HTTP. El
software web del lado del cliente se "actualiza" cada vez que visita la página web.
Mientras dure la sesión, el navegador web interpreta y muestra las páginas, y actúa
como cliente universal para cualquier aplicación web.

2.1.4 EVOLUCION

En 1999, el concepto de "aplicación web" fue introducido al lenguaje Java en el


Servlet Specification versión 2.2. Al mismo tiempo se desarrolló JavaScript y XML,
pero aún Ajax no había sido acuñado. El objeto XMLHttpRequest recién se introdujo
en Internet Explorer 5 (marzo de 1999) como un objeto ActiveX.

En 2005, fue acuñado el término Ajax, y nacieron aplicaciones web sumamente


interactivas (como Gmail de Google). Ajax permite que un script se contacte con el
servidor para almacenar o recibir datos sin necesidad de descargar o actualizar la
página web completa.
En 2011, fue finalizado HTML5, que ofrece características multimedia y de gráficos
a una página web sin la necesidad de plugins del lado del servidor. Las aplicaciones
Flash comienzan a morir poco a poco.

HTML5 también enriquecen la semántica del contenido de los documentos. Se


mantiene el concepto de DOM (document object model), diseñado muchos años
antes.

HTML5 introdujo soporte de lenguaje explícito para hacer aplicaciones que son
abiertas como página web, pero pueden almacenar datos localmente y continuar
funcionando mientras se está fuera de línea.

La API WebGL permite gráficos 3D avanzados basados en canvas HTML5 y


lenguaje JavaScript. Estas tienen una importancia significativa en la creación de
verdaderas aplicaciones web independientes del navegador y la plataforma.(Cortez
Juan, 2013)

2.1.5 ARQUITECTURA

2.1.5.1 Arquitectura de las aplicaciones Web.


Una aplicación Web es proporcionada por un servidor Web y utilizada por
usuarios que se Conectan desde cualquier punto vía clientes Web (browsers o
navegadores. La arquitectura de un Sitio Web tiene tres componentes principales:

 Un servidor Web
 Una conexión de red
 Uno o más clientes

El servidor Webdistribuye páginas de información formateada a los clientes que las


solicitan. Los requerimientos son hechos a través de una conexión de red, y para
ello se usa el protocolo HTTP. Una vez que se solicita esta petición mediante el
protocolo HTTP y la recibe el servidor Web, éste localiza la página Web en su
sistema de archivos y la envía de vuelta al navegador que la solicitó. Las
aplicaciones Web están basadas en el modelo Cliente/Servidor que gestionan
servidores web, y que utilizan como interfaz páginas web.
Las páginas Web son el componente principal de una aplicación o sitio Web. Los
browsers piden páginas (almacenadas o creadas dinámicamente) con información
a los servidores Web. En algunos ambientes de desarrollo de aplicaciones Web,
las páginas contienen código HTML y scripts dinámicos, que son ejecutados por
el servidor antes de entregar la página.(Carrillo Erick, 2013)

2.1.6.1Arquitectura Cliente/Servidor
La arquitectura cliente/servidor es un modelo para el desarrollo de sistemas de
información en el que las transacciones se dividen en procesos independientes que
cooperan entre sí para intercambiar información, servicios o recursos. Se
denomina cliente al proceso que inicia el diálogo o solicita los recursos y servidor
al proceso que responde a las solicitudes. En este modelo las aplicaciones se
dividen de forma que el servidor contiene la parte que debe ser compartida por
varios usuarios, y en el cliente permanece solo lo particular de cada usuario.
Características del Cliente:
 Es quien inicia solicitudes o peticiones, tienen por tanto un papel activo
en la comunicación.
 Espera y recibe las respuestas del servidor.
 Por lo general, puede conectarse a varios servidores a la vez.
 Normalmente interactúa directamente con los usuarios finales mediante
una interfaz gráfica de usuario.
 Características del Servidor:
 Al iniciarse esperan a que lleguen las solicitudes de los clientes,
desempeñan entonces un papel pasivo en la comunicación.
 Tras la recepción de una solicitud, la procesan y luego envían la
respuesta al cliente.
 Arquitectura en tres capas

La utilización de la plataforma Java Enterprise Edition (JEE 5.0) permite una


concepción del sistema en n- capas, en específico se usará una arquitectura en tres
capas, cuyo objetivo primordial es la separación de la lógica de negocios de la
lógica de diseño; un ejemplo básico de esto consiste en separar la capa de datos
de la capa de presentación al usuario. La ventaja principal de este estilo es que el
desarrollo se puede llevar a cabo en varios niveles y, en caso de que sobrevenga
algún cambio, solo se ataca al nivel requerido sin tener que revisar entre código
mezclado. Además, permite distribuir el trabajo de creación de una aplicación por
niveles; de este modo, cada grupo de trabajo está totalmente abstraído del resto de
los niveles.(Carrillo Erick, 2013)

2.1.7 Tecnologia

2.1.7.1Java Server Faces (JSF)


La tecnología Java Server Faces es un marco de desarrollo de los componentes de
la interfaz de usuario, válido para todas aquellas aplicaciones web basadas en la
tecnología Java.(Cortez Catalina, 2011)

2.1.7.2 Richfaces
RichFaces es un marco de código abierto que añade a las aplicaciones capacidad
de Ajax en JSF, sin recurrir a Java Script. RichFaces aprovecha el framework Java
Server Faces, incluyendo su ciclo de vida, la validación, los medios de conversión
y la gestión de los recursos estáticos y dinámicos. Los componentes de RichFaces
con soporte Ajax y aspecto altamente personalizable pueden ser fácilmente
incorporados a aplicaciones JSF.

2.1.7.3 Ajax
Es el acrónimo para Asynchronous Java Script + XML y el concepto es: Cargar y
renderizar una página, luego mantenerse en esa página mientras scripts y rutinas
van al servidor buscando, en background, los datos que son usados para actualizar
la página solo re-renderizando la página y mostrando u ocultando porciones de la
misma.

2.1.7.4 AJAX incorpora:


 Presentación basada en estándares usando XHTML y CSS.
 Exhibición e interacción dinámicas usando el Document Object Model.
 Intercambio y manipulación de datos usando XML y XSLT.
 Recuperación de datos asincrónica usando XML Http Request.
2.1.7.5 Ajax4Jsf
Es una librería open source que se integra totalmente en la arquitectura de JSF y
extiende la funcionalidad de sus etiquetas dotándolas con tecnología Ajax de forma
limpia y sin añadir código Java Script. Mediante este framework se puede variar el
ciclo de vida de una petición JSF, recargar determinados componentes de la página
sin necesidad de recargarla por completo, realizar peticiones al servidor
automáticas, control de cualquier evento de usuario, etc. En definitiva Ajax4jsf
permite dotar a la aplicación JSF de contenido mucho más profesional con muy
poco esfuerzo.

2.1.7.6 Facelets
Es un framework simplificado de presentación, en donde es posible diseñar de
forma libre una página web y luego asociarle los componentes JSF específicos.
Aporta mayor libertad al diseñador y mejora los informes de errores que tiene JSF.
Permite que JSP (Java Server Pages) y JSF (Java Server Faces) puedan funcionar
conjuntamente en una misma aplicación web. Estos no se complementan
naturalmente. JSP procesa los elementos de la página de arriba a abajo, mientras
que JSF dicta su propio re-rendering (ya que su ciclo de vida está dividido en fases
marcadas). Facelets llena este vacío entre JSP y JSF, siendo una tecnología
centrada en crear árboles de componentes y estar relacionado con el complejo ciclo
de vida JSF.

Las principales ventajas de Facelets son:

 Construcción de interfaces basadas en plantillas.


 Rápida creación de componentes por composición.
 Fácil creación de funciones y librerías de componentes.
 Facelets provee un proceso de compilación más rápido que JSP.
 Provee templating, lo cual implica reutilización de código, simplificación
de desarrollo y facilidad en el mantenimiento de grandes aplicaciones.

2.1.7.7 Lenguaje de Marcado de Hipertexto Extensible (XHTML)


Es una versión más estricta y limpia de HTML, que nace con el objetivo de
remplazar a HTML ante su limitación de uso con las cada vez más abundantes
herramientas basadas en XML. XHTML extiende HTML 4.0 combinando la sintaxis
de HTML, diseñado para mostrar datos, con la de XML, diseñado para describir los
datos.

2.1.7.8 Extensible Markup Language (XML)


No es solo un lenguaje, es una forma de especificar lenguajes, de ahí el término de
extensible. Es un leguaje de etiquetas no predefinidas previamente, es decir, el
programador es el que las crea en cada caso. El XML ahorra tiempos de desarrollo
y proporciona ventajas, dotando a webs y a aplicaciones de una forma realmente
potente de guardar la información. Se ha convertido en un formato universal para
el intercambio de información estructurada entre diferentes plataformas. En la
actualidad permite la compatibilidad entre sistemas para compartir la información.

2.1.7.9 Java Script


Es un lenguaje de programación interpretado, es decir, no requiere de compilación
ya que el lenguaje funciona del lado del cliente, los navegadores son los
encargados de interpretar estos códigos. Tiene la ventaja de ser incorporado en
cualquier página web, puede ser ejecutado sin la necesidad de instalar otro
programa para ser visualizado. Tiene como principal característica ser un lenguaje
independiente de la plataforma.(Pinto Esteban, 2007)

2.1.8 Tecnologías

2.1.8.1 Servidor de Aplicaciones


JBoss es un servidor de aplicaciones para Java. Es muy reconocido por ser de los
primeros servidores de aplicación empresarial gratuito y open source. Al estar
basado en Java, puede ser utilizado en cualquier sistema operativo que lo soporte,
ofreciendo una plataforma de alto rendimiento para aplicaciones java, aplicaciones
Web y Portales.(Molina Juan Esteban, 2015)

2.1.8.2 Enterprise Java Beans (EJB)


Es una plataforma para construir aplicaciones de negocio portables, escalables, y
reutilizables utilizando el lenguaje de programación java. Permite a los
desarrolladores enfocarse en la lógica del negocio sin tener que emplear tiempo en
la conformación del código de la infraestructura. Desde el punto de vista del
desarrollador es un pedazo de código java que se ejecuta en un entorno
especializado denominado contenedor EJB que proporciona un conjunto de
servicios. El servicio de persistencia es proporcionado por un framework
especializado denominado proveedor de persistencia.(Reinoso Jose, 2016)

2.1.8.3 Java Persistence API (JPA)


El Java Persistence API fue desarrollado por el grupo de expertos de EJB 3.0,
aunque su uso no se limita a los componentes software EJB. También puede
utilizarse directamente en aplicaciones web y aplicaciones clientes; incluso fuera
de la plataforma Java EE.

En su definición, se han combinado ideas y conceptos de los principales


frameworks de persistencia como Hibernate, Toplink y JDO y de las versiones
anteriores de EJB. Todos estos cuentan actualmente con una implementación
JPA.(Reinoso Jose, 2016)

2.1.8.4 Framework Hibernate


Hibernate es una capa de persistencia objeto/relacional y un generador de
sentencias SQL. Permite diseñar objetos persistentes que podrán incluir
polimorfismo, relaciones, colecciones, y un gran número de tipos de datos. De una
manera muy rápida y optimizada se puede generar bases de datos en cualquiera
de los entornos soportados: Oracle, DB2, MySql, etc. Y lo más importante de todo,
es open source, lo que supone, entre otras cosas, que no se tiene que pagar nada
por adquirirlo.

Hibernate ofrece también un lenguaje de consulta de datos llamado HQL (Hibernate


Query Language). Puede ser usado para desarrollar y distribuir aplicaciones de
forma gratuita. Es utilizado en las aplicaciones Java EE.(«Curso Hibernate JR |
ULISES ACOSTA - Academia.edu», s. f.)

2.2 APLICACIONES MOVILES

2.2.1 Definicion
Una aplicación móvil, applo o app (en inglés) es una aplicación informática diseñada
para ser ejecutada en teléfonos inteligentes, tabletas y otros dispositivos móviles y
que permite al usuario efectuar una tarea concreta de cualquier tipo profesional, de
ocio, educativas, de acceso a servicios, etc, facilitando las gestiones o actividades
a desarrollar.

Se encuentran disponibles a través de plataformas de distribución, operadas por


las compañías propietarias de los sistemas operativos móviles como Android, iOS,
BlackBerry OS, Windows Phone.Existen aplicaciones móviles gratuitas u otras de
pago, donde en promedio el 20-30 % del costo de la aplicación se destina al
distribuidor y el resto es para el desarrollador.

Al ser aplicaciones residentes en los dispositivos están escritas en algún lenguaje


de programación compilado, y su funcionamiento y recursos se encaminan a
aportar una serie de ventajas tales como:Un acceso más rápido y sencillo a la
información necesaria sin necesidad de los datos de autenticación en cada acceso.

 Un almacenamiento de datos personales que, a priori, es de una manera


segura.
 Una gran versatilidad en cuanto a su utilización o aplicación práctica.
 La atribución de funcionalidades específicas.

Mejorar la capacidad de conectividad y disponibilidad de servicios y productos


(usuario-usuario, usuario-proveedor de servicios, etc).

Llegado a este punto, es importante que una “app” no sea una aplicación web,
tampoco es un sistema operativo, ni un servicio de alojamiento informático o web.

Un sistema operativo es un programa o conjunto de programas informáticos que


gestiona el hardware de un dispositivo y administra el servicio de aplicaciones
informáticas (Windows, iOS, Android, etc.).

Las aplicaciones web son herramientas alojadas en un servidor, a las que los
usuarios pueden acceder desde Internet (o Intranet) mediante un navegador web
genérico o específico, dependiendo del lenguaje de programación (moodle)
.(Cahvez Santiago, 2017)

2.2.2 Cloud
Un servicio de alojamiento informático o web permite a organizaciones e individuos
subir, alojar, gestionar o almacenar contenido en servidores físicos o virtuales. Por
ejemplo: Dropbox sería una aplicación de software destinada a ser un servicio de
alojamiento de archivos multiplataforma en la nube, a la cual se puede acceder a
través un interfaz web o de una app.

En los últimos años, los servicios de informática distribuida han permitido que las
organizaciones, incluidas las educativas, puedan gestionar sus procesos, actividad
y aplicaciones informáticas a través de empresas que ofrecen comercialmente
"software como servicio" (SaaS) alojado en un centro de datos o en servicios en la
"nube", y grandes redes de ordenadores pueden formar una "malla" que representa
una potencia considerable (Google, Amazon, Microsoft)

Diferencias entre aplicaciones y web móviles

Las aplicaciones comparten la pantalla del teléfono con las webs móviles, pero
mientras las primeras tienen que ser descargadas e instaladas antes de usar, a una
web puede accederse simplemente usando Internet y un navegador; sin embargo,
no todas pueden verse correctamente desde una pantalla generalmente más
pequeña que la de un ordenador de escritorio.

Las que se adaptan especialmente a un dispositivo móvil se llaman «web


responsivas» y son ejemplo del diseño líquido, ya que se puede pensar en ellas
como un contenido que toma la forma del contenedor, mostrando la información
según sea necesario. Así, columnas enteras, bloques de texto y gráficos de una
web, pueden acomodarse en el espacio de una manera diferente —o incluso
desaparecer— de acuerdo a si se entra desde un teléfono, una tableta o un
ordenador.

2.2.3 ANDROID
Android es un sistema operativo basado en el núcleo Linux. Fue diseñado
principalmente para dispositivos móviles con pantalla táctil, como teléfonos
inteligentes, tablets y también para relojes inteligentes, televisores y automóviles.
Inicialmente fue desarrollado por Android Inc., empresa que Google respaldó
económicamente y más tarde, en 2005, compró.3 Android fue presentado en 2007
junto la fundación del Open Handset Alliance (un consorcio de compañías de
hardware, software y telecomunicaciones) para avanzar en los estándares abiertos
de los dispositivos móviles.4 El primer móvil con el sistema operativo Android fue
el HTC Dream y se vendió en octubre de 2008.5 Los dispositivos de Android venden
más que las ventas combinadas de Windows Phone e IOS.6 7 8 9

El éxito del sistema operativo se ha convertido en objeto de litigios sobre patentes


en el marco de las llamadas «Guerras por patentes de teléfonos inteligentes» (en
inglés, Smartphone patent wars) entre las empresas de tecnología.10 11 Según
documentos secretos filtrados en 2013 y 2014, el sistema operativo es uno de los
objetivos de las agencias de inteligencia internacionales.

La versión básica de Android es conocida como Android Open Source Project


(AOSP).El 25 de junio de 2014 en la Conferencia de Desarrolladores Google I/O,
Google mostró una evolución de la marca Android, con el fin de unificar tanto el
hardware como el software y ampliar mercados.

El 17 de mayo de 2017, se presentó Android Go. Una versión más ligera del sistema
operativo para ayudar a que la mitad del mundo sin smartphone consiga uno en
menos de cinco años. Incluye versiones especiales de sus aplicaciones donde el
consumo de datos se reduce al máximo

2.2.4 Android studio


Android Studio es el entorno de desarrollo integrado (IDE) oficial para el desarrollo
de aplicaciones para Android, basado en IntelliJ IDEA. Además del potente editor
de código IntelliJ y las herramientas para desarrolladores, Android Studio ofrece
aún más funciones que mejoran su productividad al crear aplicaciones de Android,
tales como:
 Un sistema de compilación basado en Gradle flexible
 Un emulador rápido y rico en funciones
 Un entorno unificado en el que puedes desarrollar para todos los dispositivos
Android
Ejecutar instantáneamente para introducir cambios en la aplicación en ejecución
sin crear un nuevo APK, plantillas de código e integración GitHub para ayudarle a
crear características comunes de aplicaciones e importar código de ejemplo
Amplias herramientas y marcos de pruebas Herramientas de Lint para obtener
rendimiento, usabilidad, compatibilidad de versiones y otros problemas Soporte de
C ++ y NDK .Compatibilidad integrada con Google Cloud Platform, facilitando la
integración de Google Cloud Messaging y App Engine .Esta página proporciona
una introducción a las características básicas de Android Studio. Para obtener un
resumen de los últimos cambios, consulte las notas de la versión de Android Studio

2.2.5 EVOLUCION
La historia de Android comienza cuando el G1 fue presentado allá por 2008. Tanto
el teléfono como su sistema operativo eran tan distantes de lo que hoy
consideramos un smartphone real que casi no merece ni esa denominación.

Desde entonces, el sistema operativo de Google para móviles ha crecido y recorrido


un largo camino para destronar al iPhone como el rey de los smartphones y
posicionarse como el sistema operativo líder en todo el mercado de tablets y
smartphones.

De este modo y en parte como un homenaje te mostraremos una rápida visión de


la historia y evolución de Android a través sus versiones y lo que está aún por venir.

2.2.6 Pre-Historia de Android


Muchos usuarios creen que Android es un sistema operativo relativamente nuevo
en comparación con otros como Symbian. Sin embargo este tiene una historia
mucho más grande de la que todos pensamos. Su existencia data del 2005
propiedad de la empresa Android Inc.

Su desarrollador, y hasta recientemente ex-vicepresidente de Android, había


pasado ya por Apple y Microsoft cuando Google compro su empresa. Para
entonces, Android Inc. ya contaba con 22 meses de vida.

Desde esta fecha comienza toda una época de ocultismo entorno a Google que dio
pie al surgimiento de grandes rumores. Pero no fue hasta el 5 de Noviembre de
2007 en que el anuncio oficial de Android.

Android 1.0: Apple Pie

2.2.7 Historia de Android


Lanzado el 22 de octubre de 2008, el HTC Dream también conocido por entonces
como Google Phone. Este nombre fue acuñado por ser el primer terminal en
incorporar el sistema de Google.
 Apple Pie incluyó las primeras versiones de:
 Android Market.
 Navegador Web.
 mensajes de texto SMS y MMS.
 Grabadora de llamadas.

Una aplicacion para tomar fotos que no contaba con los ajustes de blancos y
resolución.

Ademas se llegaron algunas aplicaciones para dar soporte a los servicios de


Google. Nos referimos a las hoy imprescindibles Maps con Latitude y Street View,
Google Sync para Gmail, Contactos y Calendario, Google Search, Google Talk y
YouTube.

Por otro lado, se incluyo una aplicacion capaz de acceder a los servidores de correo
de terceros. Contaba con soporte POP3, IMAP4, y SMTP.14, que era capaz de
sincronizarse con aplicación de Gmail, Google y Google Calendar.

Tampoco falto el reproductor de archivos multimedia que por entonces no era capaz
de reproducir video.

Ya contaba con el popular sistema de notificaciones y configuración para led, tono


y vibración.

Por ultimo, cabe destacar que Android 1.0 ofreció desde sus inicios el soporte para
WiFi y Bluetooth.

2.2.8 Android 1.1: Banana Bread


Lanzada el 9 de febrero de 2009 la actualización de Android 1.1 llamada Banana
Bread llegó solo para los dispositivos T-Mobile G1.

Entre sus novedades resaltar el soporte para marquesina en diseños de sistemas,


la posibilidad de guardar los archivos adjuntos en los mensajes, y las reseñas al
buscar negocios en los mapas.
2.2.8.1 Android 1.5: Cupcake
Historia de AndroidHistoria de AndroidCon la introducción de Android 1.5 el 30 de
abril de 2009, resuena el nombre de Cupcake. Ésta sería la primera actualización
importante del sistema operativo de Google.

El sistema quedó más pulido en algunas áreas. Sus principales características


fueron la introducción del teclado virtual en la pantalla (todavía malo) y la posibilidad
de insertar widgets.

Redefinición de los Widgets. Ya venían implementándose en en otros sistemas


operativos como Bada (Samsung TouchWiz). Ninguno había sido tan convincente
como la aplicación de éstos por Android.

Contar con un catálogo decente de widgets tomó su tiempo. Aun así, finalmente
funcionó se convirtió uno de los grandes diferenciadores para Android.

Ademas, se incluyeron otras funciones bastante demandadas por los usuarios


como copiar y pegar en el navegador, la grabación de vídeo y reproducción en
formatos MPEG-4 y 3GP, la capacidad de subir videos a YouTube directamente,
transiciones animadas entre las pantallas, la opción de auto-rotacion, auto-
sincronización y soporte para Bluetooth A2DP y AVRCP.

2.2.8.2 Android 1.6: Donut


Historia de AndroidHistoria de AndroidLuego vino Android 1.6, conocido como
Donut. Esta versión fue en realidad una pequeña actualización. Vino empaquetada
con un cuadro de búsqueda mejorado, cámara y aplicación de galería, y una
renovada Android Market.

La barra de búsqueda web, ahora le permitía buscar en otros lugares dentro del
dispositivo.El cambio mas notable en Donut fue el Android Market. Rrenovó su
diseño con con colores verde y blanco frente a la mirada gris y negro de las
versiones anteriores. La nueva tienda resulto un poco mas amigable. Llegó
rompiendo las solicitudes de pago, gratis, y “just in”.También soportaba las capturas
de pantalla de las aplicación seleccionada, una característica muy solicitada.

La aplicación de la cámara también sufrió una revisión que, aunque poco estética,
era todavía un importante paso adelante.Ahora un usuario podía seleccionar
fácilmente la grabación de vídeo sin salir de la aplicación. También acceder a los
ajustes que estaban ocultos en la parte izquierda de la pantalla en una barra de
menú. La nueva aplicación de la Cámara era un 39% más rápida, y el tiempo de
disparo fue mejorado un 28%.

Lo único lamentable de la actualización de Android 1.6 fue que no muchos


dispositivos la recibieron. La mayoría como el Droide Eris o Hero saltaron
directamente de Android

 1.5 a Android
 2.1.Android
 2.0: Eclair

Historia de AndroidHistoria de AndroidLanzada el 26 de octubre del 2009, la


actualización de Android 2.0 Eclair debuto en noviembre de ese mismo año. Los
primeros dispositivos fueron los Motorola Droid. Se trato de un hito muy importante
para la plataforma que dio paso al crecimiento exponencial y atención masas.

Android Eclair nos sorprendió con su integración social permitiendo sincronizar los
contactos de Facebook, y más tarde, Twitter. Ésto, permitió a sus usuarios tener
todos sus contactos de todas las redes sociales en un solo lugar.Las imágenes de
los contactos se obtenian de una red social. Esto permitía que prácticamente
ninguno quedara con sin foto, claro esta, siempre que formaran parte de una red
concreta.

El navegador de Android también recibió una actualización, que refinó el aspecto


general, sorprendiendo con la nueva función doble toque para el zoom, lo que
permitía ampliar la foto sin la necesidad de que los usuarios tengan que depender
exclusivamente de los botones más y menos en la parte inferior de la pantalla. La
vista de favoritos se modificó también para apoyar las miniaturas, y el navegador
comenzó a dar soporte para HTML5.

2.2.8.3 Android 2.1


Historia de AndroidAndroid 2.1 representa la segunda etapa en la evolución de
Eclair con su introducción en el Nexus One. Esta trajo consigo los fondos de
pantalla animados e interactivos, siendo ahora hasta 5 escritorios de serie en lugar
de los cuales 3 que mostraban las versiones anteriores, que también estrenaban
un nuevo modo de navegación en el que con una pulsación larga aparecían las
miniaturas de todos ellos.

El Nexus One fue también el primer teléfono que extendiera las capacidades de voz
existente encontrados en versiones anteriores de Android, dando al usuario la
opción de traducir la voz en texto en cualquier campo de texto, así Android
comenzaba a dar soporte a la búsqueda a través del reconocimiento de voz. Con
esto se incorporo un botón del micrófono en el teclado, que permite hablar en lugar
de escribir mensajes de correo electrónico, textos, buscar, y casi cualquier otra cosa
que requiriera la escritura.

2.2.8.4 Android 2.1 (Multi-touch)


A tan solo un mes del lanzamiento del Nexus One, el 12 de enero de 2010, Google
lanzo una actualización para el dispositivo en la que se añadía la funcionalidad
multitouch en todos los ámbitos del Nexus One, con excepción de las aplicaciones
como Gmail.

De este modo Mapas, fotos, y el navegador tenían soporte para la tan codiciada
característica que los usuarios de iPhone habían tenido desde el primer día.

La actualización también añade Google Googles en la lista de aplicaciones pre-


instaladas con una nueva una función que utilizaba la cámara para reconocer qué
estaba viendo el terminal y lanzar su búsqueda en Internet.

2.2.8.5 Android 2.2 Froyo


Froyo incorpora el motor de Java V8 y ofrece a los usuarios un aumento de
velocidad gracias al compilador JIT que permite iniciar las solicitudes más rápido y
mejorar el rendimiento general del sistema.

A su vez, Android 2.2 incluye la posibilidad de hacer tretheing, es decir, compartir


la conexión 3G a través del wifi del teléfono con otros dispositivos, con la posibilidad
de convertir tu móvil en un hotspot.

Una característica que los usuarios habían estado esperando durante años se hace
realidad en Android 2.2, y se trata del soporte para Adobe Flash, tanto para el
navegador de Internet como para reproducir contenidos multimedia a través del
Flash Player.

2.2.8.6 Android 2.3 Gingerbread


Gingerbread incorporó una gran cantidad de novedades tanto a estético con una
renovada interfaz de usuario con incrementos de velocidad y simpleza, y se preparó
para la llegada de los smartphones de doble núcleo al cambiar al sistema de
archivos EXT4 y de pantallas más grandes con el soporte para resoluciones WXGA
y mayores.

Del lado del usuario, una de las características más notables fue el nuevo teclado
virtual que simplificó la entrada de texto y permitió una edición más rápida gracias
a la nueva disposición de las teclas y la función para corregir palabras ya ingresadas
con sugerencias del diccionario o la opción de cambiarlas mediante voz.

Sin dudas la adquisición de BlindType tuvo que ver en este sentido y le permitió a
Google implementar con características como permitir el deslizamiento al teclear,
asistencia en la escritura, ajustes personalizados al estilo de escritura del usuario y
el “multitouch key-chording”, que permite al usuario ingresar rápidamente números
y símbolos presionando Shift+ y ?123+, sin necesidad de cambiar los métodos de
entrada manualmente.Por otro lado, Android 2.3 incorporó toda la una gama de
funciones que permiten manejar el dispositivo con la voz en lo que se denomino
Voice Actions. Estas permitieron enviar mensajes, realizar llamadas, localizar
lugares con el GPS, realizar búsquedas convencionales, escuchar música, mandar
e-mails y muchos mas.

2.2.8.7 Android 3.0: Honeycomb


Basado en el kernel 2.6.36.50 de linux, Honeycomb llego por primera vez en las
tablets Motorola Xoom el 24 y sus principales características fueron una renovada
interfaz de usuario con una nueva barra de sistema en la parte inferior de la pantalla
que permitía el acceso rápido a notificaciones, estados y botones de navegación
suavizados y el Action Bar que permitía el acceso a opciones contextuales,
navegación, widgets y otros tipos de contenido desde la parte superior.
Por ultimo cabe mencionar el soporte para microprocesadores multi-núcleo, la
aceleración de hardware, la posibilidad de encriptar todos los datos del usuario, y
mejoras en el uso de HTTPS gracias a la incorporación de SNI.

2.2.8.8 Android 4.0: Ice Cream Sandwich


La nuevo interfaz de usuario se mostró como la evolución y perfeccionamiento de
las ideas de Android 3.0 dándole un poco de esa mirada limpia y futurista. Ademas
Google construyó su propia fuente denominada Roboto y en lugar de botones de
hardware, el sistema operativo ofreció sus propios botones virtuales de Atrás, Inicio,
y los botones de aplicaciones recientes en la pantalla también para los
smartphones.

Ademas el dock de aplicaciones ahora incluyo una nueva sección para mostrar los
widgets de forma separada donde son listados de forma similar a las aplicaciones
y se simplifico la posibilidad de crear carpetas, con estilo de arrastrar y soltar.

2.2.8.9 Android 4.1: Jelly Bean


Y así es como llegamos a los tiempos modernos donde Jelly Bean aun resuena
como la última actualización importante del sistema operativo de Google que dicho
sea de paso, fue presentada el 27 de junio de 2012 y llegó al mercado el 13 de julio
con el Nexus 7, el primer tablet de Google.

El objetivo primordial de Android Jelly Bean fue mejorar la estabilidad, funcionalidad


y rendimiento de la interfaz de usuario, para lo cual se implementó el núcleo de
linux 3.0.31 y una serie de mejoras en lo que se llamó Project Butter que permitió
aumentar hasta 60 FPS las transiciones en la interfaz de usuario, dando una
experiencia realmente fluida.

Sin embargo esto no fue todo lo que trabajo Jelly Bean, ya que Google mejoró
notablemente la barra de notificaciones, una de las características que distinguió a
Android desde sus inicios. Esta ahora ofrece una mayor integración ya que permite
realizar más acciones desde esta, como realizar llamadas o acceder a diferentes
opciones y mostrar información proveniente de las aplicaciones que lanzan la
notificación.
2.2.8.10 Android 4.2
A tan solo tres meses del lanzamiento de Android 4.1, Google lanzó otra importante
actualización aun bajo el nombre de Jelly Bean. Se trató de Android 4.2 que trajo
Photo Sphere entre sus principales novedades, una aplicacion que nos permite
tomar imágenes panorámicas en el plano horizontal y vertical.

Pero ello no fue todo, Android 4.2 también trajo lo que hoy conocemos como
Gesture Typing, una nueva función similar a Swype que nos permite escribir
deslizando el dedo sobre las letras y levantando después de cada palabra. Ademas
el teclado anticipa y predice la siguiente palabra, para que pueda terminar las frases
enteras con sólo seleccionar las palabras sugeridas, lo cual acelera enormemente
la escritura.

Otra de las funciones importantes que llegaron con esta actualización, fue el
soporte para múltiples usuarios que pueden tener cada uno su propia pantalla de
inicio, fondos, widgets, aplicaciones y juegos incluso con sus propias puntuaciones
y niveles.

Por otro lado, la barra de notificaciones continuó evolucionando gracias a la


incorporación de lo que Google llamó Quick Settings, una cuadrícula dividida por
varias secciones que nos permiten acceder a las configuraciones de la pantalla,
conectividad, sonido, rotación, vibración, volumen, etc; y las notificaciones
accionables para más aplicaciones que permiten responder desde la propia barra
sin lanzar la aplicación directamente.

Finalmente cabe destacar la posibilidad de incluir widgets en la pantalla de bloqueo,


la posibilidad de deslizar con el dedo para ir directamente a la cámara y el soporte
para pantallas inalámbricas.

2.2.8.11 Android 4.3


La aceleración de hardware 2D ahora optimiza el flujo de comandos de dibujo
convirtiéndolo en un formato GPU más eficiente. Une operaciones de dibujo en
multiproceso que permite aprovechar todos los núcleos del SoC.
Ademas, Android 4.3 ha incorporado el soporte para perfiles restringidos. Éstos,
permiten crear ambientes separados para cada usuario en el mismo dispositivo. El
administrador podrá configurar accesos y descargas de Google Play.

Cabe destacar el nuevo sistema de notificaciones. Permite a las aplicaciones


acceder a todas las notificaciones y mostrarlas en la forma que quieran. Incluso
podía envirlas a dispositivos cercanos conectados por Bluetooth.

Pero eso no es todo, Android 4.3 Jelly Bean también añade un nuevo marco de
DRM modular. Usa soporte para codificación VP8 integrado, mejoras en el soporte
RTL y mejoras en seguridad SELinux. Añade Google Play Games y mejora la
entrada de texto. Integra nueva interfaz de cámara y autocompletado al marcar un
número de teléfono. Mejora gestión de la batería, y nuevas versiones de las GApps
como Gmail, Hangouts, etc.

2.2.8.12 Android 4.4: KitKat


Los cambios que se notaron a primera vista fueron el incremento del tamaño de los
íconos y la condensación del texto para una visión más clara y simple. Otro detalle
fue la transparencia de la zona de notificaciones que antes era negra, ahora
fusionada al resto de la pantalla. Otra funcionalidad añadida fue la del famoso “OK
Google” reconociendo nuestra voz una vez desbloqueado el dispositivo. Sumado a
esto, tanto la barra de navegación como la de notificaciones desaparecerían en
ciertas aplicaciones.

En cuanto al apartado del rendimiento, Android 4.4 KitKat trajo la implementación


de zRAM. Esto supone optimizar el rendimiento para dispositivos con memoria de
512MB de RAM para incluir los gama baja de los mercados emergentes.

Cabe recordar que por aquel entonces GingerBread (Android 2.3) era la versión
más utilizada de Android y esto se traducía en serias complicaciones para Google
que trataba de impulsar a los fabricantes a incorporar sus nuevas funcionalidades
y servicios como así también una experiencia de usuario más fluida que sólo se
encontraba en dispositivos con versiones más modernas y de especificaciones más
elevadas.
2.2.8.13 Android 5.0: Lollipop
Nos referimos al nuevo diseño, Material Desing, que hasta el día de hoy sigue
vistiendo el sistema operativo de Google.La idea de Material Desing fue la de
renovar la estética de la interfaz de usuario de manera drástica.

Colores llamativos, un diseño intrépido y una interfaz de usuario donde todas las
animaciones y objetos. Todos salen de algún lado de la pantalla, como si formase
parte de un conjunto que es el sistema operativo.

Se incluyó un nuevo teclado en donde las letras no se dividen por casilleros. Todas
forman parte de un todo, acorde al nuevo estándar de diseño.

Sombras detalladas, mucha iluminación y animaciones fluidas componen Material


Desing, la más estética versión de diseño integrada en Android.

Historia de Android

Pero no todo fueron renovaciones estéticas en Android 5.0 Lollipop. Dentro de sus
características de funcionamiento también se destaca las nuevas formas de
controlar el consumo de batería y notificaciones. Respecto a la batería, Lollipop
extiende la vida útil del dispositivo hasta 90 minutos con Project Volta.

La lista de adiciones se completa con varias otras funcionalidades:

 Soporte para procesadores de 64 bit.


 Vectoriales dibujables.
 Soporte para vistas previas de impresión.
 Una nueva pantalla de desbloqueo que ahora ya no soporta widgets para
una visual más limpia y sencilla.
 Entrada y salida de audio vía USB.
 15 idiomas nuevos.
 Y varias otras mejoras no tan relevantes.

2.2.8.14 Android 5.1


Capacidad de unirse a redes WiFi
Emparejarse con dispositivos Bluetooth desde los ajustes rápidos para reducir la
cantidad de pasos,Soporte para múltiples tarjetas SIM,Llamadas de voz en Alta
Definición con otros equipos que cuenten con la misma versión del sistema
operativo.

Adicionalmente, Android 5.1 Lollipop añade protección por bloqueo remoto del
dispositivo. Si es robado o extraviado necesitará la última sesión con una cuenta
de Google para desbliquearlo. Se añaden mejoras de estabilidad y rendimiento
junto con otras correcciones menores.

2.2.8.15 Android 6.0 Marshmallow


En esta nueva actualización hay cambios muy interesantes que mejoran el
rendimiento y la estabilidad del sistema operativo. Entre las principales novedades
se destacan:

 Google Now on Tap.


 Permisos de aplicaciones caso por caso.
 Mejoras en la gestión de la batería gracias a Doze.
 Mejoras en las funciones copiar, cortar y pegar.
 Soporte para huellas dactilares.
 Nuevo USB Tipo-C y Chrome funcionando dentro de otras aplicaciones.
 Y otras mejoras adicionales

El 28 de Mayo de 2015 fue lanzada la primera de las tres previews que Google
lanzara durante el año. En ellas, se pueden observar mejoras en el modelo de
permisos. Ahora las aplicaciones ya no conceden automáticamente todos los
permisos al momento. Cambiando a un sistema “opt-in”, los usuarios aceptarán o
no que la aplicación acceda a diversas partes de nuestro dispositivo.(Vazques
Jairo, 2013)

2.3 DISPOSITIVOS MOVILES


Dispositivo móvil (mobile device), también conocido como computadora de bolsillo
o computadora de mano (palmtop o handheld), es un tipo de computadora de
tamaño pequeño, con capacidades de procesamiento, con conexión a Internet , con
memoria, diseñado específicamente para una función, pero que pueden llevar a
cabo otras funciones más generales.

Estrictamente hablando, muchos de los llamados dispositivos móviles no tienen la


capacidad de moverse. Más bien son dispositivos que pueden ser fácilmente
transportados por sus usuarios.(«Evolución móviles del presente - Tecnologías
Grupo 3», s. f.)

TIPOS DE APLICACIÓNES

 Teléfonos inteligentes y Tabletas.


 Relojes inteligentes
 Agendas digitales
 Calculadoras
 Videoconsolas portátiles
 Reproductores digitales
 Cámaras fotográficas digitales
 Cámaras de video digitales
 Robots
 Tarjetas inteligentes

2.3.1 Herramientas de desarrollo


Existen diversos tipos de herramientas con fines muy diversos, acontinuación se
listan algunas seguida de un ejemplo:

 Sistema de seguimiento de 1 errores: Bugzilla


 Generador de código: Make
 Conversor de código: JTest
 Compilador: gcc
 Depurador: gdb
 Desensamblador: OllyDbg
 Enlazador: ---
 Generador de documentación: Javadoc
 Generador de GUI: NetBeans cuenta con uno.
 Detector de fugas de memoria: dmalloc
 Analizador sintáctico: Lex
 Profilers: Java Virtual Machine Tools Interface (JVM TI)
 Control de versiones: CVS
 Herramienta de búsqueda: grep
 Entorno de desarrollo integrado: Netbeans
 Generador de estilo: indent
 Editor de texto: jEdit

2.4 Visual studio

Visual Studio es un conjunto completo de herramientas de desarrollo para la


generación de aplicaciones web ASP.NET, Servicios Web XML, aplicaciones de
escritorio y aplicaciones móviles. Visual Basic, Visual C# y Visual C++ utilizan todos
el mismo entorno de desarrollo integrado (IDE), que habilita el uso compartido de
herramientas y facilita la creación de soluciones en varios lenguajes. Asimismo,
dichos lenguajes utilizan las funciones de .NET Framework, las cuales ofrecen
acceso a tecnologías clave para simplificar el desarrollo de aplicaciones web ASP
y Servicios Web XML.

2.4.1Visual net
Visual Studio .NET es un conjunto completo de herramientas de desarrollo para la
construcción de aplicaciones Web ASP, servicios Web XML, aplicaciones para
escritorio y aplicaciones móviles. Visual Basic .NET, Visual C++ .NET, Visual
C# .NET y Visual J# .NET utilizan el mismo entorno de desarrollo integrado (IDE),
que les permite compartir herramientas y facilita la creación de soluciones en varios
lenguajes. Asimismo, dichos lenguajes aprovechan las funciones de .NET
Framework, que ofrece acceso a tecnologías clave para simplificar el desarrollo de
aplicaciones Web ASP y servicios Web XML.
Este tema contiene información acerca de:
Puntos de interés de Visual Studio .NET

Información general sobre Visual J#, las aplicaciones para dispositivos


inteligentes, el Diseñador de ASP.NET Mobile, los formularios Windows
Forms, los servicios XML Web y la compatibilidad XML en Visual
Studio .NET.

El entorno .NET Framework

Información breve de carácter general sobre Common Language Runtime,


las clases de programación unificadas y ASP.NET.

Introducción

Tutoriales, plantillas e información de migración para poner a funcionar esta


versión de Visual Studio.

2.4.2 Puntos de interés de Visual Studio .NET


Esta sección contiene información acerca de algunas de las herramientas y
tecnologías más avanzadas de esta versión de Visual Studio.
Visual J#

Visual J# es una herramienta de desarrollo que pueden utilizar los programadores


que estén familiarizados con la sintaxis de Java para generar aplicaciones y
servicios en .NET Framework. Integra la sintaxis de Java en el entorno de desarrollo
integrado (IDE) de Visual Studio .NET. Visual J# admite también la mayor parte de
la funcionalidad de Visual J++ 6.0, incluidas las extensiones de Microsoft. Visual J#
no es una herramienta para el desarrollo de aplicaciones que se ejecuten en Java
Virtual Machine. Las aplicaciones y los servicios generados con Visual J# se
ejecutarán solamente en .NET Framework. Microsoft ha desarrollado Visual J# de
manera independiente. No está refrendado ni aprobado por Sun Microsystems, Inc.
Para obtener más información, vea Introducción a Visual J#.

2.4.3 Aplicaciones para dispositivos inteligentes


El entorno de desarrollo integrado de Visual Studio .NET incluye ahora
herramientas para desarrollar aplicaciones para dispositivos inteligentes, como
Pocket PC. Mediante las herramientas y .NET Compact Framework, un subconjunto
de .NET Framework, puede crear, generar, depurar e implementar aplicaciones que
utilizan .NET Compact Framework para ejecutarse en asistentes digitales
personales (PDA), teléfonos móviles y otros dispositivos de recursos restringidos.
Para obtener más información, vea Proyectos de dispositivos inteligentes.
2.4.4 Diseñador de ASP.NET Mobile
El Diseñador de ASP.NET Mobile complementa a ASP.NET y a .NET Framework,
permitiendo generar aplicaciones Web para teléfonos móviles, PDA y localizadores.
Este diseñador está integrado en el IDE de Visual Studio. Puede crear aplicaciones
Web móviles, utilizar el diseñador móvil para modificar un formulario Web móvil y,
a continuación, generar y ejecutar la aplicación, todo desde Visual Studio. Para
obtener más información, vea Introducción al uso del Diseñador de ASP.NET
Mobile.

2.4.5 Formularios Web Forms


Los formularios Web Forms son una tecnología ASP.NET que se utiliza para crear
páginas Web programables. Los formularios Web Forms se representan como
código HTML y secuencias de comandos compatibles con exploradores, lo que
permite ver las páginas en cualquier explorador y plataforma. Mediante el uso de
formularios Web Forms se pueden crear páginas Web arrastrando y colocando
controles en el diseñador y agregando código posteriormente, de forma parecida a
la creación de formularios en Visual Basic. Para obtener más información,
vea Introducción a las páginas de formularios Web Forms.

2.4.6 Formularios Windows Forms


Los formularios Windows Forms son la nueva plataforma de desarrollo de
aplicaciones para Microsoft Windows, basados en .NET Framework. Este marco de
trabajo proporciona un conjunto de clases claro, orientado a objetos y ampliable,
que permite desarrollar complejas aplicaciones para Windows. Además, los
formularios Windows Forms pueden actuar como interfaz de usuario local en una
solución distribuida de varios niveles. Para obtener más información,
vea Introducción a los formularios Windows Forms.

2.4.7 Servicios Web XML


Los servicios Web XML son aplicaciones que pueden recibir solicitudes y datos
mediante el uso de XML sobre HTTP. Los servicios Web XML no están asociados
a una tecnología de componentes específica o a una convención de llamada a
objetos concreta, por lo que cualquier lenguaje, modelo de componente o sistema
operativo puede tener acceso a ellos. En Visual Studio .NET se pueden crear e
incluir con rapidez servicios Web XML mediante Visual Basic, Visual C#, JScript,
Extensiones administradas para C++ o servidor ATL. Para más información,
vea Programar el Web con servicios Web XML.

2.4.8 Compatibilidad con XML


El Lenguaje de marcado extensible (XML) proporciona un método para describir
datos estructurados. XML es un subconjunto de SGML optimizado para la entrega
a través de Web. El Consorcio World Wide Web (W3C) define los estándares de
XML para que los datos estructurados sean uniformes e independientes de las
aplicaciones. Visual Studio .NET admite totalmente XML e incluye el Diseñador
XML para facilitar la edición de XML y la creación de esquemas XML. Para más
información, vea Datos y esquemas XML y Diseñador XML.

2.4.9 El entorno .NET Framework


.NET Framework es un entorno multilenguaje que permite generar, implantar y
ejecutar Servicios Web y aplicaciones XML. Consta de tres partes principales:

 Common Language Runtime A pesar de su nombre, el motor de tiempo


de ejecución desempeña una función tanto durante la ejecución como
durante el desarrollo de los componentes. Cuando el componente se está
ejecutando, el motor de tiempo de ejecución es responsable de administrar
la asignación de memoria, iniciar y detener subprocesos y procesos, y hacer
cumplir la directiva de seguridad, así como satisfacer las posibles
dependencias del componente sobre otros componentes. Durante el
desarrollo, el papel del motor de tiempo de ejecución cambia ligeramente; a
causa de la gran automatización que permite (por ejemplo, en la
administración de memoria), el motor simplifica el trabajo del programador,
especialmente al compararlo con la situación actual de la tecnología COM.
En concreto, funciones tales como la reflexión reducen de forma
espectacular la cantidad de código que debe escribir el programador para
convertir la lógica de empresa en componentes reutilizables.
 Clases de programación unificadas El entorno de trabajo ofrece a los
programadores un conjunto unificado, orientado a objetos, jerárquico y
extensible de bibliotecas de clases (API). Actualmente, los programadores
de C++ utilizan las Microsoft Foundation Classes y los programadores de
Java utilizan las Windows Foundation Classes. El entorno de trabajo unifica
estos modelos dispares, ofreciendo a los programadores de Visual Basic y
JScript la posibilidad de tener también acceso a las bibliotecas. Con la
creación de un conjunto de API comunes para todos los lenguajes de
programación, Common Language Runtime permite la herencia, el control
de errores y la depuración entre lenguajes. Todos los lenguajes de
programación, desde JScript a C++, pueden tener acceso al entorno de
trabajo de forma parecida y los programadores pueden elegir libremente el
lenguaje que desean utilizar.
 ASP.NET ASP.NET está construida sobre las clases de programación del
entorno .NET Framework, y proporciona un modelo para aplicaciones Web
con un conjunto de controles y una infraestructura que simplifican la creación
de aplicaciones Web ASP. ASP.NET incluye un conjunto de controles que
encapsulan los elementos comunes de la interfaz de usuario de HTML, como
cuadros de texto y menús desplegables. Sin embargo, dichos controles se
ejecutan en el servidor Web, y envían al explorador Web su interfaz de
usuario en forma de HTML. En el servidor, los controles exponen un modelo
de programación orientado a objetos que ofrece al programador de Web la
riqueza de la programación orientada a objetos. ASP.NET proporciona
también servicios de infraestructura, como administración de estado de
sesión y reciclado de procesos, que reducen aún más la cantidad de código
que debe escribir el programador, e incrementan la fiabilidad de las
aplicaciones. Asimismo, ASP.NET utiliza estos mismos conceptos para
permitir a los programadores la entrega de software en forma de servicio.
Mediante las funciones de servicios Web XML, los programadores de
ASP.NET pueden escribir su lógica de empresa y utilizar la infraestructura
de ASP.NET para entregar el servicio a través de SOAP. Para obtener más
información, vea Soap Community Links.

Para obtener más información, vea Información general de .NET


Framework y Dentro de .NET Framework.
2.4.10 Enterprise Templates
Visual Studio .NET proporciona diversas plantillas de proyecto que pueden
utilizarse para iniciar el desarrollo de aplicaciones distribuidas sin tener que
empezar de cero. Las plantillas de empresa definen la estructura inicial de una
aplicación distribuida, y proporcionan una guía de arquitectura y tecnología para el
diseño de la aplicación. Aparte de las plantillas de empresa predefinidas, se pueden
crear plantillas personalizadas que los programadores pueden utilizar en un entorno
de equipo. Para obtener más información, vea Tutoriales de Enterprise
Templates y Ventajas de utilizar Enterprise Templates para crear aplicaciones
distribuidas.

2.4.11 Migrar las aplicaciones existentes


En cada versión , ciertas herramientas y tecnologías se sustituyen por métodos
mejores para conseguir los objetivos de programación. La consecuencia es que las
aplicaciones creadas con versiones anteriores de Visual Studio pueden precisar
una actualización para cargarse y generarse correctamente con la versión actual
de Visual Studio.

2.4.12 Ado.net
ADO.NET es un conjunto de clases que exponen servicios de acceso a datos para
programadores de .NET Framework. ADO.NET ofrece abundancia de
componentes para la creación de aplicaciones de uso compartido de datos
distribuidas. Constituye una parte integral de .NET Framework y proporciona
acceso a datos relacionales, XML y de aplicaciones. ADO.NET satisface diversas
necesidades de desarrollo, como la creación de clientes de base de datos front-end
y objetos empresariales de nivel medio que utilizan aplicaciones, herramientas,
lenguajes o exploradores de Int(Mantilla Eduardo, 2000)

2.5 Turismo

2.5.1 Definicion
La palabra turismo deriva del latín tornus= torno y tornare= redondear, tornear,
girar. Mientras que el sufijo -ismo se refiere a la acción que realiza un grupo de
personas, por lo que etimológicamente puede definirse al turismo como “la actividad
que realizan las personas que consiste en viajar y que además tienen la intención
de retornar a su domicilio actual”.(«Historia Del Turismo Educativo Gratis Ensayos»,
s. f.)

2.5.2 ANTECEDENTES
En el siglo 1600 antes de nuestra era, el Código Hammurabi establecía en el
numeral 299: "Será condenado a muerte aquel albañil que construya una casa y
que ésta se derrumbe matando a alguno de sus habitantes." Y en el año 1450 antes
de nuestra era, en la civilización egipcia, el castigo por hacer bloques de diferente
medida a las especificaciones de las pirámides, era la amputación de una mano.

En la producción artesanal, los criterios empleados para establecer los patrones de


calidad estaban centrados en el aspecto estético y el prestigio de los artesanos que
elaboraban el producto. Pero, el continuo incremento de la compra de bienes
fundamenta el sistema de oferta y demanda, esto fomentó la creatividad expresada
en nuevas formas de producción, y la invención de aparatos mecánicos que
ayudaban a producir con mayor rapidez.La disponibilidad de máquinas y
herramientas para aumentar la producción originó el surgimiento de talleres, lo que
impulso mejoras en la productividad. Pero al mismo tiempo, el artesano dejó de
estar presente en todas las fases de transformación del producto. De esta manera,
se perdió la comunicación directa entre el obrero productor y el usuario.

Tunguragua su capital es Ambato.Se encuentra ubicadaen la hoya oriental de


Patate.Su nombre traducido al español “ardor en la garganta o garganta en llamas
“.Se atribuye a los terminos quichuas ungur(garganta)y rauray(ardor ).Una tierra
llena de vida gistoria y oportunidades .Es la tierra de los tres Juanes, la calidez de
su gente le recuerda al visitante que no está ahí en calidad de turista.

Posee una superficie de 3.334 kilómetros cuadrados y se encuentra a 2.557 metros


de altitud. En extensión territorial es la provincia más pequeña del Ecuador.”,
representando el 1.24% de la superficie nacional y una densidad poblacional de
134.9 Hab./Km2., siendo una de las mas altas del país. Tungurahua se encuentra
ubicado en los hemisferios Sur y Occidental, está comprendida entre los paralelos
00º55'00"S y 01º35'00" y los meridianos 78º06'51" y 78º55'49". Las Historias de
amor, terremotos y de milagros que le ganaron a la muerte se esconden en las
entrañas de la provincia de Tungurahua. Ambato marcó otro gran hito en el país:
allí se instaló la primera imprenta en la época de la Colonia. Es una región que tiene
mucho que mostrar a los visitantes, sobre todo durante el Carnaval el cual se
caracteriza por ser un juego sin agua, exposiciones, festivales de danza, teatro y
desfiles.

El pueblo de la provincia se dedican a la agricultura y ganadería, turismo, comercio,


industria textil: confección de cuero, vestido, calzado, entre otras. Esta provincia se
caracteriza por las fiestas, flores, frutas y las artesanías. Los productos agrícolas
más importantes de la provincia son papa, cebolla colorada, fríjol, haba, lechuga,
maíz, tomate y una gran variedad de frutas entre ellas: claudia, durazno, mandarina,
manzana, mora, pera, abridor (guaytambo), etc. Los centros frutícolas más
importantes están ubicados en Pelileo ,Píllaro, Patate, Ambato, Huachi y Cevallos.
La producción pecuaria está orientada a la producción de ganado porcino, bovino,
ovino, caballar y a la cría de conejos. El ganado de leche y carne se procesa en la
planta de Pelileo. Tiene notable importancia la producción artesanal, dedicada,
entre otras labores, a la elaboración de tapices (Salasaca), la curtiembre (Píllaro,
Quisapincha, Picaihua), y a las cobijas y los ponchos (Quero).

2.5.3 Etapas
Época Antigua: El filósofo Heródoto, incansable viajero cuyas obras constituyeron
un caudal de información geográfica y etimológica.

En esta época las motivaciones de los viajeros no se diferenciaban mucho de las


actuales, pues se viajaba por: interés político, económico, religioso o curioso.

Políticos: el modo de producción esclavista necesitaba conquistar nuevos


territorios, adquirir esclavos para aumentar sus riquezas, lo cual está muy ligado al
interés económico y comercial, pues los mercaderes hacían largos viajes para
buscar productos raros y codiciados, ejemplo: la ruta de las especies, el comercio
con los fenicios, etc.

Religiosos: el sentimiento hacía que la gente efectuara largas peregrinaciones


hacia lugares sagrados. Los chinos, adictos a Buda, iban hasta la India recorriendo
miles de kilómetros por regiones desérticas.
Curiosidad: impulso para conocer costumbres y construcciones de otros pueblos.
Las maravillas del mundo antiguo constituirán los principales atractivos.

La gran pirámide de keops(mayor tumba faraónica de Egipto construida hacia el


2600 A.C)

Jardines Colgantes de Babilonia, construidos durante la misma época por el rey


Nabucodonosor para su mujer.

Estatua de Zeus en Olimpia, una estatua del rey de los dioces de más de 11 metros
de altura situada en el lugar donde se celebraron los primeros Juegos Olímpicos en
Grecia, los que comenzaron en el año 776 A.N.E.

Templo de Artemisa en Efeso, al Oeste de Asia Menor que actualmente pertenece


a Turquía.

2.5.3.1 ¿Qué facilitaba los viajes de los hombres en el mundo antiguo?


El imperio romano dio unidad política al mundo antiguo impulsando los viajes con
la creación de la vía Apia¨ alrededor de la cual se creó una red de caminos
que se extendió hasta el sur de Italia, obviamente estos desplazamiento fuera de
su lugar de origen inducían los viajes de placer.

La ley de hospitalidad: Cualquier viajero que acudía con un fin pacífico podía
acogerse a dicha ley mediante la cual los jefes locales le brindaban alojamiento y
comida de forma gratuita. La aparición del cristianismo y su rápida expansión trajo
nuevas formas de actuar con sus semejantes.

Los romanos viajaban a Egipto y a Grecia, a zonas marítimas de veraneo, a baños


y sepulcros, a ciudades como Heruclano y Pompeya, enterrados durante siglos bajo
la lava, procedentes de las erupciones del monte Vesubio. Son un testimonio de las
costumbres de los romanos durante su período vacacional. Ejemplo: tabernas,
bares, restaurantes, intactos y se vistan en estos momentos. Para que saques tus
propias conclusiones de este período te ofrecemos la noticia publicada por el
periódico Granma 2/8/2005 en su página 4 "Hotel de lujo del imperio Romano". Un
grupo de arqueólogos descubrieron en la localidad de Essex, Inglaterra, un
verdadero hotel cinco estrellas del siglo v de N.E, utilizado por el imperio romano...
El complejo fue construido por las autoridades de la antigua Roma para brindar
confortable alojamiento y baños termales a diplomáticos y funcionarios del imperio
romano. El hotel disponía de una amplia cocina, donde varios chefs preparaban
diferentes platos a cualquiera hora del día para los huéspedes.(ANSA)

Los guías no eran muy diferentes a los actuales, ya pera el siglo VII, todavía en el
feudalismo, surge el Islam con Mahoma como fundador.

Época Media: en este tiempo viajar fue una actividad que quedó paralizada casi por
completo, puesto que era peligroso y agotador.

La caída del imperio Romano supuso una interrupción a muchos de los avances
que estos habían introducido, no se mantuvieron los caminos en buen estado,
convirtiéndose en peligroso e inseguro, pues los ladrones acechaban para atacar a
aquellos que se arriesgaban a viajar. La mayor parte de la sociedad estaba
apegada a sus tierras, para muchos era inconcebibles viajar por placer.

La expansión del cristianismo y el Islam trajeron l conflictos entre ambos, dando


lugar a las cruzadas o Guerra Santa que llevaron a decenas de miles de europeos
al Oriente Medio. Posterior a las Cruzadas aparece la orden de San Juan de
Jerusalén, integrada por un grupo de caballeros hospitalarios cuya finalidad era
brindar protección a los peregrinos y defender los lugares santos, lo que permitió el
auge del turismo religioso, al instituirse los Jubileos de Roma, de esta etapa se
destaca la figura de Marco Polo veneciano que recorre diversos países que fueron
divulgados por libros publicados posteriormente.(«RELIGIÔN Y HOTELERIA -

Presentaciones de Google», s. f.)

2.6 Conclusiones parciales del capitulo

 El estudio y desarrollo de la aplicación web,son muchas los sucesos que


podemos destacar, los cuales nos ayudaron a comprender y mejorar en la
realización del proyecto.
 En la programación Web php, html son lenguajes que permite codificar o
preparar documentos de hipertexto, que viene a ser los lenguajes más
comunes para la construcción de las páginas Web.Con el comienzo de
Internet y la programación web, se desfasaron los diseños gráficos
tradicionales, con lo que se empezaron a diseñar interfaces concretas para
este medio, se ha optado más por el diseño sencillo y de fácil comprensió
 Con la salida al mercado de dispositivos móviles como Iphone, Blackberry y
Android, el futuro de la tecnología web está destinado para aplicaciones
móviles, no solo para los desarrolladores sino también para los usuarios que
constantemente encuentran nuevas aplicaciones o servicios disponibles en
la plataforma
 Se obtuvieron grandes conocimientos en el manejo de las tecnologías
relacionadas con un proyecto de este tipo. Se aprendieron conceptos
importantes para el desarrollo de software dentro de las limitaciones típicas
de un dispositivo móvil. También se obtuvieron conocimientos avanzados en
el uso del lenguaje de programación y un buen manejo de las diferentes APIs
que hacen posible desarrollar aplicaciones bajo la plataforma Android.
CAPÍTULO III

3. MARCO METODOLÓGICO

3.1 Caracterizacion del Sector

3.1.1 Provincia de Tungurahua

3.2 Descripcion del Procedimiento metodológico

3.2.1 Modalidad de la investigación


La modalidad utilzada de investigacion es cuantitaviva y cualitativa

3.2.1.1 Investigacion Cuantitativa


Porque el estudio se centra en aspectos observables y subceptibles de
cuantificacion, se utiliza la metodlogia Empirico - Analitica y se sirve de pruebas
estadisticas para analisis de datos.

3.2.1.2 Investigacion cualitativa


Porque el estudio se centra en el descubrimiento de conocimientos y el tratamiento
de los datos es cualitativa

3.2.2 Tipos de Investigacion

3.2.2.1 Investigación aplicada


El proyecto aprovecha la investigación aplicada en su desarrollo para la aplicación
de los conocimientos aprendidos en la carrera.

3.2.2.2 Investigación Bibliográfica - Documental


Esta modalidad jugará un gran papel dentro de la investigación debido a la gran
cantidad de información que se requiere obtener de libros, Internet, revistas y
artículos relacionados con la problemática del proyecto y la elaboración de su
solución.

3.2.3 Poblacion y muestra


En el trabajo investigativo que se esta llevando a cabo el conjunto de elementos
que vamos a extraer la información esta conformado por una muestra de 81
estudiantes de la universidad Autonoma Uniandes de la Ciudad de Ambato como
saco la muestra debe utilizar la tabla para la muestra. Delimitar

ESTRATOS POBLACION MUESTRA


ESTUDIANTES EN LA 430 81
UNIVERSIDAD
AUTONOMA UNIANDES
TOTAL 430 81
MUESTRA n=N

(𝒁)𝟐(N-1)+1

(430) n=

(𝟎. 𝟏)𝟐 +(430-1)+1

N= 81

3.2.4 Metodos, técnicas e instrumentos

3.2.4.1 Métodos

3.2.4.1.2 Anlitico – Sintetico


Para realizar una valoración del objetivo de tranformacion se realiza un análisis
general sobre la normtiva de la capacitación y el cooperativismo, hasta llegar a las
particularidades, el emprendimineto empresarial y el análisis para la capacitación a
los turistas ambulantes.

3.2.4.1.3 Inductivo – Deductivo


Lo que permitirá que las experiencias particulares de cada uno de los beneficios de
la capacitación mejoraran de el turismo en la provincia de tunguragua.

3.2.4.2 Tecnica
De igual forma será necesario para la realización de este trabajo investigativo,
técnicas para la recolección de datos como la encuesta.

A travez de la encuesta se obtiene informaciones de la fuenta del problema y su


posible solución la cual se realizará a los ciudadnos de ambato sector de la
Universidad Uniandes.

3.2.4.3 Intrumentos :
Encuestas y ficha de observación

3.2.5 Analisis e interpretacion de resultados

3.2.5.1 Encuesta

Pregunta 1
¿Conoce usted que es una aplicación web móvil?

Tabla 1

ALTERNVIVAS FRECUENCIA %
SI 20 24.69%
NO 61 75.31%
TOTAL 81 100%
Elaborador por: Los investigadores

¿Conoce usted que es una aplicación


web móvil?
90 81
80
70 61
60
50
40
30 20
20
10 0 0 0 0 100%
0
ALTERNVIVAS SI NO TOTAL

Ilustración 1:Conoce que es una aplicacion web movil

Elaborador por: Los investigadores

Analisis e interpretación: En relación a la pregunta 1¿Conoce usted que es una


aplicación web móvil,un 24.69% forma parte de los estudiantes que están
actualizados en la tecnología,mientras que un 75.31% nos expreso que no sabían
que es una aplicación web-movil.

Pregunta 2
¿Le gustaría conocer los lugares turísticos de la provincia de Tungurahua en
una aplicación movil?

SI ……………. NO …………….

Tabla 2

Autores:Danny , Roger,Alejandro

ALTERNATIVAS FRECUENCIA %
SI 81 100%
NO 0 0%
TOTAL 81 100%
¿LE GUSTARÍA CONOCER LOS
LUGARES TURÍSTICOS DE LA
PROVINCIA DE TUNGURAHUA EN
UNA APLICACIÓN MOVIL?

100% 100%

81 81

0 0%
0
ALTERNVIVAS SI NO TOTAL

Ilustración 2 :Le gustaría conocer los lugares turísticos de la provincia de


Tungurahua en una aplicación movil?

Autores:Danny,Roger,Alejandro

Analisis e interpretación:La pregunta 2:¿Le gustaría conocer los lugares turísticos


de la provincia de Tungurahua en una aplicación movil?, fue aceptada en un 100%
de los estudiantes encuestados.

Pregunta 3
¿Ha escuchado la existencia de aplicaciones moviles para promocionar lo
turístico de una provincia de Tungurahua?

SI ……………. NO …………….

Tabla 3

Autores:Danny , Roger,Alejandro

ALTERNVIVAS FRECUENCIA %
SI 20 24.69%
NO 61 75.31 %
TOTAL 81 100%
¿Ha escuchado la existencia de
aplicaciones moviles para
promocionar lo turístico de una
provincia de Tungurahua?

100
100%
0
50 81
61
0
20
0 0 0 0
0

Ilustración 3 :¿Ha escuchado la existencia de aplicaciones moviles para


promocionar lo turístico de una provincia de Tungurahua?

Autores: Danny,Roger,Alejandro

Analisis e interpretación: La pregunta 3 ¿Ha escuchado la existencia de aplicaciones


moviles para promocionar lo turístico de una provincia de Tungurahua?, un 24.69% forma
parte de los estudiantes que han escuchado sobre esta tecnología, mientras que
un 75.31% expresaron que no sabían.

Pregunta 4
¿La Aplicación web-movil con el nombre vive Tungurahua favorecerá conocer
centros turísticos de la provincia de Tungurahua?

SI ……………. NO …………….

Tabla 4

Autores:Danny , Roger,Alejandro

ALTERNVIVAS FRECUENCIA %
SI 61 75.31%
NO 20 24.69%
TOTAL 81 100%
¿La Aplicación web-movil con el
nombre vive Tungurahua favorecerá
conocer centros turísticos de la
provincia de Tungurahua?
100
80
60
40
20
0
SI NO TOTAL

FRECUENCIA %

Ilustración 4 : ¿La Aplicación web-movil con el nombre vive Tungurahua favorecerá


conocer centros turísticos de la provincia de Tungurahua?

Autores: Danny,Roger,Alejandro

Analisis e interpretación: La pregunta 4 ¿La Aplicación web-movil con el nombre vive


Tungurahua favorecerá conocer centros turísticos de la provincia de Tungurahua?, un
75.31% ,concideran que la aplicación vive Tungurahua favorecerá conocer los
centros turísticos de Tungurahua ,mientras que el 24.69% no lo considera asi.

Pregunta 5
¿Existen aplicaciones moviles para promocionar centros turísticos de los cantones
de la provincia de Tungurahua?

SI ……………. NO …………….

Tabla 5

Autores:Danny , Roger,Alejandro

ALTERNVIVAS FRECUENCIA %
SI 0 0%
NO 81 100%
TOTAL 81 100%
¿Existen aplicaciones moviles para
promocionar centros turísticos de
los cantones de la provincia de
Tungurahua?

100% 100%
100%

81 81
50%

0%
0
0%
SI NO TOTAL

FRECUENCIA %

Ilustración 5: ¿Existen aplicaciones moviles para promocionar centros turísticos de


los cantones de la provincia de Tungurahua?

Autores: Danny,Roger,Alejandro

Analisis e interpretación: La pregunta 5¿Existen aplicaciones moviles para


promocionar centros turísticos de los cantones de la provincia de Tungurahua?, el
100% de los estudiantes encuestados manifiestan un desconocimiento total.

Pregunta 6
¿Cree usted que existiendo una aplicación móvil ayudaría al turismo de
Tungurahua?

SI ……………. NO …………….

Tabla 6

Autores:Danny , Roger,Alejandro

ALTERNVIVAS FRECUENCIA %
SI 76 93.83%
NO 5 6.17%
TOTAL 81 100%
¿CREE USTED QUE EXISTIENDO
UNA APLICACIÓN MÓVIL
AYUDARÍA AL TURISMO DE
TUNGURAHUA?
FRECUENCIA %

0 100%

76 81

0
5
SI NO TOTAL

Ilustración 6 : ¿Cree usted que existiendo una aplicación móvil ayudaría al turismo de
Tungurahua?

Autores: Danny,Roger,Alejandro

Analisis e interpretación: La pregunta 6¿Cree usted que existiendo una aplicación


móvil ayudaría al turismo de Tungurahua? El 93.83 % de la encuenta tiene
aceptación considerable que ayudaría al turismo, mientras que el 6.17% estimo que
no ayudaría.

Pregunta 7
¿Con la implementación de la aplicación web-movil cree que mejoraría el
turismo y por ende la economía de los cantones de la provincia de
Tungurahua?

SI ……………. NO …………….

Tabla 7

Autores:Danny , Roger,Alejandro

ALTERNVIVAS FRECUENCIA %
SI 61 75.31%
NO 20 24.69%
TOTAL 81 100%

¿Con la implementación de la
aplicación web-movil cree que
mejoraría el turismo y por ende
la economía de los cantones de …
100 81
61
50
20
0 0 100%
0
SI NO TOTAL

FRECUENCIA %

Ilustración 7 : ¿Con la implementación de la aplicación web-movil cree que mejoraría


el turismo y por ende la economía de los cantones de la provincia de Tungurahua?

Autores: Danny,Roger,Alejandro

Analisis e interpretación: La pregunta 7¿Con la implementación de la aplicación


web-movil cree que mejoraría el turismo y por ende la economía de los cantones
de la provincia de Tungurahua?. El 75.31% piensa que es muy favorable la
aplicación para generar buena economía a los cantones , mientras que el 24.69%
piensa que no.

3.3 Conclusiones parciales del Capitulo

 Luego de la revisión bibliográfica se ha determinado la importancia del


desarrollo del sistema web-movil para la provincia de Tungurahua con fines
de insentivar el desarrollo turístico de Tungurahua.

 El problema que presenta el desarrollo turístico en la provincia y los pocos


ingresos económicos generados por el turismo justifica el desarrollo de un
aplicativo que brinde facilidades al usuario y promocione a Tungurahua como
un sector lleno de vida y oportunidades.

 Los turistas y los pobladores requieren del uso de aplicaciones móviles que
promueva el turismo en laprovincia de Tungurahua, promocionando
especialmente la cultura, gastronomía, tradiciones, festividades y lugares de
permanencia como hostales u hoteles.

CAPITULO IV

4.1 DESARROLLO
En este capítulo se hace revisión sobre la técnica usada para resolver el problema
y que corresponde a la adaptación y aplicación de la metodología. Por esta razón
en este capítulo se detalla las metodologías ágiles más usadas para el desarrollo
de software, sus aplicaciones para la generación de valor en las empresas y las
comparaciones para su correcta elección.
4.1.1 Metodologia ágil
Una metodología en particular define sus propias etapas y procesos para
desarrollar software, por lo que en algunos casos existían metodologías que son
muy estrictas en el cumplimiento de sus eta pas iniciales durante el desarrollo, el
cual ocasiona que estos enfoques no se adapten de la mejor manera a todos los
tipos de proyecto, por lo que esto causo un interés en poder tener otra alternativa
0al proceso tradicional y que ayude a evitar estos inconvenientes pero sin perder el
objetivo final de entregar un software de calidad.

En febrero de 2001, tras una reunión celebrada en Utah-EEUU, nace el término


“ágil” aplicado al desarrollo de software. En esta reunión participan un grupo de 17
expertos de la industria del software, incluyendo algunos de los creadores o
impulsores de metodologías de software. Su objetivo fue esbozar los valores y
principios que deberían permitir a los equipos desarrollar software rápidamente y
respondiendo a los cambios que puedan surgir a lo largo del proyecto. Se pretendía
ofrecer una alternativa a los procesos de desarrollo de software tradicionales,
caracterizados por ser rígidos y dirigidos por la documentación que se genera en
cada una de las actividades desarrolladas. Tras esta reunión se creó The Agile
Alliance, una organización, sin ánimo de lucro, dedicada a promover los conceptos
relacionados con el desarrollo ágil de software y ayudar a las organizaciones para
que adopten dichos conceptos. El punto de partida fue el Manifiesto Ágil, un
documento que resume la filosofía “ágil”. (Canós, José H.; Letelier, Patricio;
Penadés, Carmen, 2003, pág. 2).

Por lo que estas metodologías se basan en unos principios para el desarrollo de


software ágil, en la cual se valora: “Estamos descubriendo formas mejores de
desarrollar software tanto por nuestra propia experiencia como ayudando a
terceros. A través de este trabajo hemos aprendido a valorar: Individuos e
interacciones sobre procesos y herramientas, Software funcionando sobre
documentación extensiva, Colaboración con el cliente sobre negociación
contractual y Respuesta ante el cambio sobre seguir un plan.” (Cunningham, 2001).

4.1.2 Metodologías ágiles utilizadas para el desarrollo de software


A continuación, tenemos las metodologías ágiles más utilizados para el desarrollo
del software, que definen su enfoque de trabajo y actividades.
 Programación Extrema (XP) (Pressman, Roger. 2008).

Es una metodología ágil escrito por Kent Beck, el cual utiliza un enfoque orientado
a objetos como su paradigma de desarrollo, el cual proporciona un conjunto de
reglas y prácticas que ocurren en sus cuatro actividades de marco de trabajo.

XP cuenta con cuatro valores y principios que deben seguirse en su mayoría


durante el tiempo de desarrollo del proyecto. (Echeverry Tobón, Luis Miguel;
Delgado Carmona, Luz Elena , 2007).

Valores

La comunicación. En XP es importante la comunicación y colaboración dentro del


equipo de desarrollo, así como también en la interacción con el cliente, ya que el
cliente es considerado como parte del equipo.

La simplicidad. En XP se debe mantener diseños simples, en donde solo se


desarrolla solo lo que el cliente solicita de la manera más sencilla. Para lo cual los
diseños deben ser sencillos, así como la simplificación del código mediante la
refactorización.

La retroalimentación. En XP se presenta de dos formas, una por parte del equipo


de desarrollo hacia el cliente, con la finalidad de informar sobre la evolución del
sistema, y la otra es desde el cliente hacia el equipo el cual brinda aportes para la
construcción del proyecto.

El coraje. En XP el equipo de desarrollo debe estar preparado para los continuos


cambios que puedan presentarse en el proyecto, donde cada integrante debe tener
el valor de comunicar los inconvenientes en sus actividades, el cual no debe afectar
a las jornadas de trabajo en donde deben proporcionar el mayor rendimiento.

1. Planeación: el cliente define las características y funcionalidades requeridas para


el software.

2. Diseño: debe ser simple y ocurre tanto antes como después del comienzo de la
codificación.
3. Codificación: después de definir las historias de usuario y haber hecho el trabajo
de diseño previo, no se debe empezar a codificar antes de haber finalizado con el
desarrollo de las pruebas unitarias.

4. Pruebas: existen dos tipos de pruebas, las unitarias y las de aceptación. La


primera es diseñada por los programadores mientras que la segunda la especifica
el cliente.

En una previa investigación se muestra una visión sobre dicha metodología en


base a lo bueno, lo malo y el resultado final (Glass, 2001): - Lo malo: la
programación en parejas, en la cual muchos programadores no quieren operar de
esa manera. Otro punto malo es la refactorización, ya que parece bueno pero solo
en proyectos pequeños. - Lo bueno: las pruebas unitarias, para estar
constantemente validando los avances, otro es basándose en metáforas, la cual se
basa en pensar mejor cuando podemos relacionar un problema con otro resuelto
en el pasado. Otro es la integración continua, que es sin duda una excelente
manera de protegerse de catástrofes. - El resultado final: es que la programación
extrema es una fascinante colección de elementos algunos buenos y otros malos,
y muchos de estos elementos son inapropiados para todos, pero para proyectos
pequeños no hay excusa para verlo como una metodología convencional.

4.1.2.1 Herramienta de desarrollo de la aplicación web

Existen varias herramientas para el desarrollo de aplicaciones web, pero para


este trabajo se elige a PHP como herramienta para el desarrollo, debido a los
beneficios que ofrece y porque se tiene conocimiento previo de la herramienta.

Beneficios: Es gratuito por lo que no se tendría que invertir dinero por parte de la
pyme. Es Open Source. Tiene soporte para conexión a distintas bases de
datos como: MySQL, Oracle, PostgreSQL, MS SQLServer entre otras.

4.1.2.2 Motor de base de datos

Existen varios motores de base de datos como: Postgres, MySQL y MS SQLServer,


escogiendo a MySQL como motor de base de datos para el sistema web por las
ventajas: Soporte para poder conectarse sin complejidad a PHP. Fácil uso y
mantenimiento. Conocimiento previo de la base de datos, usando la herramienta
SQLyog.

4.1.2.3 Principios de la metodología ágil XP:

a) Planificación

En XP la planificación de entrega se realiza entre el cliente y los desarrolladores en


donde se definen qué funcionalidades se van a implementar en una determinada
iteración. Esta práctica será aplicada debido a que en cada iteración se proporciona
un valor al negocio.

b) Testing

Esta práctica será aplicada, debido a que uno de los principales aportes de esta
metodología es el concepto de desarrollo dirigido por test (Test Driven
Development). En donde se indica que los test son realizados antes de empezar a
codificar y tienen como finalidad prevenir errores, por lo que esta práctica es
importante para la metodología porque se obtiene un software de calidad.

En XP se dividen las pruebas del sistema en dos grupos: las pruebas unitarias, las
cuales tienen como objetivo la verificación del código y son elaborados por los
programadores, y por otro lado las pruebas de aceptación especificadas por los
clientes que son ejecutadas para evaluar si se consiguió la funcionalidad requerida.

c) Programación en parejas

Dado que el proyecto se está realizando de manera individual, esta práctica no será
aplicada.

d) Refactorización

En todas las iteraciones será necesario refactorizar partes del aplicativo por lo que
esta práctica será utilizada, ya que XP propone aplicar esta práctica durante todo
el proceso de desarrollo.
e) Diseño simple

Esta práctica será aplicada, ya que para XP el diseño debe ser sencillo y sin código
duplicado para lograr las funcionalidades requeridas por el cliente, por lo que sólo
se realizarán los diagramas útiles.

f) Propiedad colectiva del código

Dado que el proyecto se está realizando de manera individual, esta práctica no será
aplicada.

g) Integración continua

Debido al reducido equipo de desarrollo esta práctica no será aplicada. Ya que la


integración debe ser continua, en donde cada historia de usuario terminado deberá
ser integrada en un repositorio de control de versiones para que pueda ser
desplegado varias veces en un ambiente de pruebas y que cada programador tenga
la última versión del código.

h) Cliente en el equipo

Esta práctica será aplicada, ya que para XP el cliente es un integrante en el equipo


de desarrollo, lo cual permite que se tengan en todo momento la presencia para
apoyar a los desarrolladores.

i) Entregas pequeñas

Esta práctica será aplicada, ya que al final de cada iteración se irán entregando
partes del sistema de modo que el cliente pueda ir usando las funcionalidades
implementadas.

k) Estándares de codificación

Se seguirá el estándar de codificación para proyectos de tipo web usando patrones


de diseño y estableciendo reglas de codificación, por lo que esta práctica será
aplicada.
l) Uso de Metáforas

Esta práctica será aplicada, ya que se utilizará el vocabulario de negocio para lograr
que el equipo de desarrollo comprenda términos del negocio y cómo debería
funcionar el sistema completo.

Definiendo los roles del proyecto, siguiendo la metodología XP se tiene:

4.1.2.4 Los Roles

Hay que tener en cuenta que el desarrollador del proyecto es una sola persona,
pero lo definido por XP es que sean 2 desarrolladores por lo cual el otro cargo será
ocupado en algunos casos por compañeros de estudio.

 Programador: Danny Garcia,Roger Chingo,Raul Chipantiza quien hace las


estimaciones sobre las historias de usuario, definir tareas e implementar las
historias de usuario.
 Cliente: el representante de la uniandes área de turismo, quien ayudo en la
construcción de las historias de usuario, las pruebas de aceptación para
validar su implementación y determinar la funcionalidad del sistema. Es
importante mencionar que los desarrolladores asignarán una prioridad a las
historias de usuario y decidirán cuales se implementarán en cada iteración.
 Manager: Raul Chipantiza, se asegura que el proceso de desarrollo se
cumpla y registra los resultados de las reuniones para luego ser analizados.
 Tracker: el representante de la uniandes área de turismo, quien tiene como
tarea observar la realización del proyecto y frecuentemente estar
consultando a los miembros del equipo el avance.
 Coach: Danny Garcia,Roger Chingo,Raul Chipantiza,son los responsables
de todo el proceso en general y es el encargado de guiar al equipo de forma
que se apliquen las prácticas XP de la mejor manera.

Y por cada actividad definida en el marco de trabajo para la metodología


seleccionada se tiene:

Planificación

Historias
En esta parte el cliente describió brevemente las características que el sistema
debe presentar para la construcción del sistema web-movil. Estas descripciones
deben ser claras y simples por lo que se emplea el uso de las historias de usuario
como lo recomienda la metodología XP.

La tabla 8 muestra las historias de usuario y las tareas que se tienen que realizar a
alto nivel para cada una de éstas. Para ver más detallada cada historia de usuario.

Tabla 8

Numero de Historia Historia del Usuario Tareas


1 Solicitud de nuevo Desarrollo de modulo de
canton,gastronomía ect. cantones
2 Modificar Desarrollo de modulo de
canton(canton,gastronomía cantones
ect.)
7 Eliminar Desarrollo de modulo de
(canton,gastronomía ect) cantones
4 Crear
-Diseño e
implementación de la
Base de Datos
5 Gestionar - Diseño e
implementación de la
Base de Datos
8 Registrar - Diseño e
implementación de la
Base de Datos
6 Modificar - Diseño e
implementación de la
Base de Datos
8 Elimina - Diseño e
implementación de la
Base de Datos
5 Solicitar Diseño e
Modifica implementación del
Elimina módulo de Pedidos
Visualiza Especiales

4 Visualiza Creación de gráficos


estadísticos en base a la
información de la Base
de Datos

Iteraciones
Iteración 01

Se empezó con el diseño de la base de datos para poder iniciar con el desarrollo,
para lo cual en este diseño se contará con el apoyo de los clientes, quienes
informarán sobre los datos que son importantes para la empresa. Ver Anexo A.

Además, se empezó la construcción localmente en las máquinas de desarrollo y


con una arquitectura estándar para el desarrollo de un sistema web.

Además, en esta iteración se pretende entregar parte del sistema con las
funcionalidades sobre la gestión de los clientes, así como también la gestión de
productos (operaciones CRUD).

N.- Historia del Prioridad Riesgo Esfuerzo Iteraciòn


Usuario
4 Crear Alta Bajo 2 1
5 Modificar Alta Alta 2 1
5 Ingreasar Alta Bajo 2 1
al sistema
web
6 Registrar Alta Alta 2 1
8 Modifica Alta Bajo 2 1
4 Elimina Alta Bajo 2 1
Iteración 02
En esta iteración se pretende comenzar con las funcionalidades relacionadas con
la gestión de los pedidos. Para ello el diseño debe ser amigable e intuitivo, por lo
que se creará una página principal la cual es una pantalla en donde se tiene una
sección dinámica donde se cargan las demás vistas de la aplicación.

En la página principal su diseño incluirá un banner con el logotipo de la empresa y


un menú de navegación de la aplicación de fácil acceso, también se buscará la
combinación de colores de la página para que fuera del agrado de los usuarios. En
esta parte se utilizará los estándares de desarrollo de un web según “Heuristic
Evaluation” (Nielsen, 2005) y gracias a los controles que proporciona la herramienta
PHP se crearán los enlaces al motor de la Base de Datos y a sus diferentes tablas
para poder hacer las consultas respectivas. Para esto se seguirá con el desarrollo
de las siguientes historias de usuarios que se presentan en la tabla 9

Tabla 9

N.- Historia del Prioridad Riesgo Esfuerzo Iteraciòn


Usuario
4 Crear Alta Bajo 2 1
5 Modificar Alta Alta 2 1
5 Ingreasar Alta Bajo 2 1
al sistema
web
6 Registrar Alta Alta 2 1
8 Modifica Alta Bajo 2 1
4 Elimina Alta Bajo 2 1
N.- Historia del Prioridad Riesgo Esfuerzo Iteraciòn
Usuario

4.1.2.5 Diseño

En esta etapa se seguirá las recomendaciones de la metodología ágil XP,


enfocándose en una sola iteración para lograr la funcionalidad requerida por el
cliente y evitar el tiempo innecesario en tratar de ir trabajando con el diseño de las
siguientes iteraciones.
Otro punto importante según lo que dice XP es la refactorización del código, con el
objetivo de evitar la duplicación de código y tener un código simple y flexible para
facilitar los posibles cambios.

Además, en el equipo de desarrollo se utilizará las tarjetas CRC como lo indica la


metodología, ya que esto ayudará al equipo en tener una mejor idea sobre una
clase, identificar la relación entre clases y poder elaborar diagramas (Ver anexo A).

Codificación
 Cliente disponible

XP recomienda que el cliente esté involucrado en todo el proceso de


desarrollo, por lo que esto se cumplirá mostrando al cliente los avances y recibiendo
mayor información del negocio. Para los casos donde no se pueda contar con la
presencia del cliente, se utilizará la vía telefónica para seguir en contacto y poder
solucionar algunas dudas que puedan presentarse en el equipo de desarrollo.

 Programación en Parejas

XP dice que el proceso de programación debe ser en parejas y ambos en una


máquina de desarrollo, lo cual según la literatura revisada señalan que esta práctica
al inicio trae ciertos problemas, ya que se necesita que entre los programadores
exista una buena relación, a pesar que la metodología no lo mencione. Para este
proyecto debido a las limitantes de integrantes esta práctica no se realizará.

 Estándares de codificación

XP recomienda seguir estándares en la codificación para permitir que los miembros


del equipo de desarrollo puedan entender el código que fuera escrito por otro
programador. Esta recomendación será aplicada en el proyecto debido a que esta
práctica es conocida por los desarrolladores y se conoce la importancia en su
aplicación. En el siguiente capítulo se definen los estándares definidos para el
proyecto.

 Pruebas

XP recomienda diseñar las pruebas antes de empezar a codificar, para esto se


escribieron las pruebas unitarias antes de empezar a desarrollar las
funcionalidades, además las pruebas de aceptación serán realizadas en base a las
historias de usuarios para determinar si los resultados de una transacción en el
sistema son correctos. Por lo que esta práctica será realizada antes de codificar las
funcionalidades de cada iteración. En el siguiente capítulo se define con más
detalles todo el proceso de pruebas.Anexo C
4.2 Aplicación

CONCLUSIONES
 Los cantones de Tungurahua no disponen de un aplicativo móvil que permita
la difusión de los atractivos turísticos que posee la provincia de Tungurahua,
evidenciando así la falta de utilización de recursos tecnológicos e innovadores.

 Todos los cantones de la provincia de Tungurahua cuenta con recursos


naturales y culturales que pueden ser aprovechados sosteniblemente, mediante
el desarrollo de la actividad turística, sin embargo, el desconocimiento de los
atractivos con potencial turístico, provoca que el turista no visite dicho atractivo,
debido a la falta de difusión turística, lo que genera grandes pérdidas
económicas de los cantones.

 La demanda turística en la provincia de Tungurahua,está dada por la


cantidad de visitantes en feriados, fiestas de cantonización, populares y
religiosas, gracias a la investigación se concluyó que debido a la escasa
promoción de los atractivos naturales y culturales que posee los cantones, los
turistas nacionales e internacionales que visitan la provincia de Tungurahua
tienen desconocimiento de la existencia de los mismos.
RECOMENDACIONES

 De acuerdo a los datos obtenidos en las encuestas realizadas es


recomendable realizar aplicativos innovadores que promuevan el turismo en
la provincia de Tungurahua promocionando las bellezas y riqueza turística
que posee los cantonces de la provincia de Tungurahua.

 Impulsar el uso de las nuevas tecnologías en las diversas áreas turísticas,


que permitan la difusión de sus atractivos turísticos, para así mejorar y atraer
más turistas internos y externos a los cantonces de la provincia de
Tungurahua.

 Plantear nuevas alternativas de publicidad para la promoción de los


diferentes lugares turísticos que posee los cantones de la provincia de
Tungurahua, promoviendo así el uso de nuevas tecnologías que permitan
obtener mayores ingresos económicos a los cantones por la visita ya sea de
turistas nacionales y extranjeros.
BIBLIOGRAFÍA

Cahvez Santiago. (2017). Aplicación móvil. En Wikipedia, la enciclopedia libre. Recuperado a partir

de

https://es.wikipedia.org/w/index.php?title=Aplicaci%C3%B3n_m%C3%B3vil&oldid=100420

747

Carrillo Erick. (2013, noviembre 14). 2.1 Arquitectura de las aplicaciones Web. Recuperado a partir

de https://programacionwebisc.wordpress.com/2-1-arquitectura-de-las-aplicaciones-web/

Cortez Catalina. (2011). Introducción a JavaServer Faces. Recuperado 29 de julio de 2017, a partir

de http://www.jtech.ua.es/j2ee/publico/jsf-2012-13/sesion01-apuntes.html

Cortez Juan. (2013). Telemedicina 1. Recuperado 29 de julio de 2017, a partir de

http://www.calameo.com/read/0042492829c4ea6d9b30a

Curso Hibernate JR | ULISES ACOSTA - Academia.edu. (s. f.). Recuperado 29 de julio de 2017, a

partir de http://www.academia.edu/19759668/Curso_Hibernate_JR

Endara Eduardo. (2012). RELIGIÔN Y HOTELERIA - Presentaciones de Google. Recuperado 30 de

julio de 2017, a partir de https://docs.google.com/presentation/d/18mTJ-

gwGdHtcNzeZKxo2RlAW71RE3_8w8F9SyosBP3M/edit

Evolución móviles del presente - Tecnologías Grupo 3. (s. f.). Recuperado 30 de julio de 2017, a

partir de https://sites.google.com/a/correo.unimet.edu.ve/grupo3-md-vj-cg/home/pag-web-

3/carlos-garcia

Historia Del Turismo Educativo Gratis Ensayos. (s. f.). Recuperado 30 de julio de 2017, a partir de

http://www.buenastareas.com/materias/historia-del-turismo-educativo/0

Mantilla Eduardo. (2000). INTRODUCCIÓN A VISUAL STUDIO 2010 by Estefanía Sánchez - issuu.

Recuperado 30 de julio de 2017, a partir de

https://issuu.com/estefysanchez/docs/revista_producto_1_d13f627308d38f

Manuel Felipe ATAPAUCAR. (14:09:43 UTC). Aplicaciones web. Internet. Recuperado a partir de

https://es.slideshare.net/ManuelFelipeATAPAUCA/aplicaciones-web-68697999
Mendoza Jose. (2015). Sistemas distribuidos - Monografias.com. Recuperado 29 de julio de 2017,

a partir de http://www.monografias.com/trabajos16/sistemas-distribuidos/sistemas-

distribuidos.shtml

Molina Juan Esteban. (2015). 1.3 Tecnologías para el Desarrollo de las Aplicaciones Web -

Programación WEB. Recuperado 29 de julio de 2017, a partir de

https://sites.google.com/site/programacionwebhegm/unidad-1-arquitectura/1-3-tecnologias-

para-el-desarrollo-de-las-aplicaciones-web

Mora, S. L. (2002). Programación de aplicaciones web: historia, principios básicos y clientes web.

Editorial Club Universitario.

Pinto Esteban. (2007, julio 3). ¿Qué es Javascript? Recuperado 29 de julio de 2017, a partir de

http://www.maestrosdelweb.com/que-es-javascript/

Reinoso Jose. (2016). Tecnologías y herramientas para el desarrollo de aplicaciones web en Java -

Monografias.com. Recuperado 29 de julio de 2017, a partir de

http://www.monografias.com/trabajos98/tecnologias-y-herramientas-desarrollo-

aplicaciones-web-java/tecnologias-y-herramientas-desarrollo-aplicaciones-web-java.shtml

Vazques Jairo. (2013). Sistema Operativo Android - Monografias.com. Recuperado 30 de julio de

2017, a partir de http://www.monografias.com/trabajos101/sistema-operativo-

android/sistema-operativo-android.shtml

Al-Balushi, T., Al Badi, R., & Ali, S. (14 de Mayo de 2012). Influential factors of B2B E-Commerce
Acceptance in SMEs’ Structure and Process. Recuperado el 01 de 11 de 2013, de sitio web de la
International Journal of Information Science and Management (IJISM):
http://ijism.ricest.ac.ir/ojs/index.php/ijism/article/view/151

Aoyama, M. (30 de Octubre de 1998). Web-based agile software development - IEEE Software.
Recuperado el 11 de Junio de 2013, de Base de Datos ProQuest Computing:
http://dx.doi.org/10.1109/52.730844

Arbulú, J. (Diciembre de 2006). Características e importancia de la Pyme en nuestra economía.


Recuperado el 8 de Octubre de 2015, de Universidad ESAN - Cendoc:
http://cendoc.esan.edu.pe/fulltext/e-journals/PAD/7/arbulu.pdf

Boehm, Barry; Turner Richard. (19 de Agosto de 2005). Management challenges to implementing
agile processes in traditional development organizations - IEEE Software. Recuperado el 10 de Junio
de 2013, de Base de Datos ProQuest Computing: http://dx.doi.org/10.1109/MS.2005.129
Canós, José H.; Letelier, Patricio; Penadés, Carmen. (12 de Noviembre de 2003). Metodologías
agiles en el desarrollo de software. Recuperado el 21 de Abril de 2013, de Grupo ISSI - Ingenieria
de Software y Sistemas de Informacion - Universidad Politécnica de Valencia, España:
http:issi.dsic.upv.es/archives/f-1069167248521/actas.pdf

Cunningham, W. (2001). Manifesto for Agile Software Development. Recuperado el 20 de Octubre


de 2012, de Manifesto for Agile Software Development: http://agilemanifesto.org/iso/es/

Dyba,Tore; Dingsoyr Torgeir . (03 de Agosto de 2009). What do we know about agile software
development? - IEEE Software. Recuperado el 10 de Junio de 2013, de Base de Datos ProQuest
Computing: http://dx.doi.org/10.1109/MS.2009.145

Echeverry Tobón, Luis Miguel; Delgado Carmona, Luz Elena . (15 de junio de 2007). Caso práctico
de la metodología ágil XP al desarrollo de software (Tesis de Grado, Universidad Tecnológica de
Pereira - Facultad de Ingeniería: Eléctrica, Electrónica, Física y Ciencias de la Computación -
Colombia). Recuperado el 17 de Junio de 2013, de Repositorio de la Universidad Tecnologica de
Pereira: http://repositorio.utp.edu.co/dspace/bitstream/11059/794/1/0053E18cp.pdf

Frisancho, E. F. (14 de Septiembre de 2007). Generacion de valor agregado en las pymes a traves
de la innovacion empresarial.(Rev. de Investigación de la Fac. de Ciencias Administrativas, UNMSM
- 2007). Recuperado el 15 de Noviembre de 2014, de Sistema de Bibliotecas y Biblioteca Central
UNMSM: http://sisbib.unmsm.edu.pe/bibvirtualdata/publicaciones/administracion/n19_2007/a
03.pdf

6. GLOSARIO

CSS:Cascading Style Sheet. Hojas de estilo en cascada, formato utilizado para


describir el formato de páginas escritas en HTML o XML.

XML: Extensible Markup Language. Metalenguaje extensible de etiquetas utilizado


en desarrollo web.

HTML: Hyper Text Markup Language. Lenguaje de marcado predominante en el


desarrollo de páginas erb.

JavaScript: Lenguaje de programación interpretado utilizado principalmente en


páginas web.

Framework:Estructura de soporte que permite desarrollar proyectos de software


utilizando una metodología de desarrollo específica.
Calidad: es herramienta básica para una propiedad inherente de cualquier cosa que
permite que esta sea comparada con cualquier otra de su misma especie.

Existencia: los bienes tangibles, con la posibilidad de ser almacenables, que las
empresas adquieren en el exterior, con la finalidad de utilizarlos en el proceso
productivo para la obtención de productos finales, o bien para el mantenimiento de
los equipos productivos.

Fallas: Defecto o imperfección de alguna cosa.

Producto: El producto es un conjunto de atributos que el consumidor considera que


tiene un determinado bien para satisfacer sus necesidades o deseos.

Sistema: es un conjunto de partes o elementos organizados y relacionados que


interactúan entre sí para lograr un objetivo. Los sistemas reciben (entrada) datos,
energía o materia del ambiente y proveen (salida) información, energía o materia.

Sub: Un procedimiento SUB es como una instrucción, es decir, realiza una tarea
(ejecuta el código que haya en su interior), pero no devuelve un resultado.

Programación Orientada a Objetos (OOP / POO) : Una forma de programar basada


en la reutilización de código mediante herencia, encapsulación y polimorfismo.
ANEXOS
Anexo A
Anexo B

ANDROID
Anexo C

PROGRAMACION

package com.example.danny.proyectovivatungurahua;

import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.graphics.Rect;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;

import com.github.snowdream.android.widget.SmartImageView;
import com.loopj.android.http.AsyncHttpClient;
import com.loopj.android.http.AsyncHttpResponseHandler;

import org.json.JSONArray;
import org.json.JSONException;

import java.util.ArrayList;

import cz.msebera.android.httpclient.Header;

import static android.content.Context.LAYOUT_INFLATER_SERVICE;


public class DivicionPoliticaFragment extends Fragment {
private ListView listView;
ArrayList titulo = new ArrayList();
ArrayList descripcion = new ArrayList();
ArrayList imagen = new ArrayList();
ArrayList id_canton=new ArrayList();

public static String datocantonid="";

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup
container,
Bundle savedInstanceState) {

View view = inflater.inflate(


R.layout.fragment_divicion_politica, container, false );
listView = (ListView) view.findViewById( R.id.list_cantones );
descargarImagen();

listView.setOnItemClickListener( new
AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View
view, int i, long l) {

Intent cantones=new
Intent(getContext(),CantonesActivity.class);
startActivity(cantones);

String[] namesArr = (String[]) id_canton.toArray(new


String[id_canton.size()]);

//Toast.makeText(getContext(),"
"+namesArr[i],Toast.LENGTH_LONG).show();

datocantonid=namesArr[i];

}
} );

return view;
}

private void descargarImagen(){


titulo.clear();
descripcion.clear();
imagen.clear();

final ProgressDialog progressDialog=new


ProgressDialog(getContext());
progressDialog.setMessage("cargando datos......");
progressDialog.show();
AsyncHttpClient client=new AsyncHttpClient();

client.get(URLIP.ip+"/Web_Service_ViveTungurahua/cantones/consultaar.php"
, new AsyncHttpResponseHandler() {
@Override
public void onSuccess(int statusCode, Header[] headers,
byte[] responseBody) {
if(statusCode==200){
progressDialog.dismiss();
try {
JSONArray jsonArray=new JSONArray(new
String(responseBody));
for(int i=0;i<jsonArray.length();i++){

id_canton.add(jsonArray.getJSONObject(i).getString("id_canton"));

titulo.add(jsonArray.getJSONObject(i).getString("nombre"));

descripcion.add(jsonArray.getJSONObject(i).getString("informacion"));

imagen.add(jsonArray.getJSONObject(i).getString("img"));
}

listView.setAdapter(new
ImagenAdapter(getContext()));

} catch (JSONException e) {
e.printStackTrace();
}
}

@Override
public void onFailure(int statusCode, Header[] headers,
byte[] responseBody, Throwable error) {

}
});
}

private class ImagenAdapter extends BaseAdapter{


Context ctx;
LayoutInflater layoutinflater;
SmartImageView smartimageview;
TextView txt_titulo,txt_descripcion;

public ImagenAdapter(Context applicationContext) {


this.ctx=applicationContext;

layoutinflater=(LayoutInflater)ctx.getSystemService(LAYOUT_INFLATER_SERVI
CE);

@Override
public int getCount() {
return imagen.size();
}

@Override
public Object getItem(int i) {
return i;
}

@Override
public long getItemId(int i) {
return i;
}

@Override
public View getView(int i, View view, ViewGroup viewGroup) {
ViewGroup
viewgroup=(ViewGroup)layoutinflater.inflate(R.layout.layaut_item_lista_ca
ntones,null);

smartimageview=(SmartImageView)viewgroup.findViewById(R.id.imagenl);
txt_titulo=(TextView)viewgroup.findViewById(R.id.txtitulo);

//txt_descripcion=(TextView)viewgroup.findViewById(R.id.txdescripcion);

String urlfinal=
URLIP.ip+"/Web_Service_ViveTungurahua/imagenes/"+imagen.get(i).toString()
;

Rect rect=new
Rect(smartimageview.getLeft(),smartimageview.getTop(),smartimageview.getR
ight(),smartimageview.getBottom());

smartimageview.setImageUrl(urlfinal,rect);
txt_titulo.setText(titulo.get(i).toString());
//txt_descripcion.setText(descripcion.get(i).toString());

return viewgroup;
}
}

CANTONES

package com.example.danny.proyectovivatungurahua;

import android.content.Intent;
import android.graphics.Rect;
import android.os.AsyncTask;
import android.os.Build;
import android.os.Bundle;
import android.os.StrictMode;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;

import com.github.snowdream.android.widget.SmartImageView;
import com.koushikdutta.ion.Ion;

import org.json.JSONArray;
import org.json.JSONObject;

import okhttp3.FormBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;

public class CantonesActivity extends AppCompatActivity {


JustifyTextView txtnombrecanton, txtinformacioncanton, txthistoria,
txtactividadesproductivas, txttradiciones, txtgastronomia,txtparroquias;
SmartImageView imgescudocanton, imgbanderacanton, imghistoria,
imgcomollegar, imgtradiciones, imggastronomia;
public static String[] datos1 = new String[20];
ImageView imgcanton;
Button btnmapa;

@Override
protected void onCreate(Bundle savedInstanceState) {

super.onCreate( savedInstanceState );
setContentView( R.layout.activity_cantones );
Toolbar toolbar = (Toolbar) findViewById( R.id.toolbar );

setSupportActionBar( toolbar );
txtnombrecanton = (JustifyTextView) findViewById(
R.id.txtnombrecanton );
txtinformacioncanton = (JustifyTextView) findViewById(
R.id.txtinformacion );
imgbanderacanton = (SmartImageView) findViewById( R.id.imgbandera
);
imgescudocanton = (SmartImageView) findViewById( R.id.imgescudo
);
imgcanton = (ImageView) findViewById( R.id.img_canton );
txthistoria = (JustifyTextView) findViewById( R.id.txthistoria1
);
imghistoria = (SmartImageView) findViewById( R.id.imghistoria );
imgcomollegar = (SmartImageView) findViewById( R.id.imgcomollegar
);
txtactividadesproductivas = (JustifyTextView) findViewById(
R.id.txtactividadesproductivas );
txttradiciones = (JustifyTextView) findViewById(
R.id.txttradiciones );
txtgastronomia = (JustifyTextView) findViewById(
R.id.txtgastronomia );
imgtradiciones = (SmartImageView) findViewById(
R.id.imgtradiciones );
imggastronomia = (SmartImageView) findViewById(
R.id.imggastronomia );
btnmapa=(Button)findViewById( R.id.btnMapa );
txtparroquias=(JustifyTextView)findViewById( R.id.txtparroquias
);
if (Build.VERSION.SDK_INT > 9) {
StrictMode.ThreadPolicy policy = new
StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy( policy );
}

CLS_CANTONES c= new CLS_CANTONES();

c.consultar(DivicionPoliticaFragment.datocantonid);

txtnombrecanton.setText(datos1[1]);
txtinformacioncanton.setText(datos1[4]);
txthistoria.setText( datos1[6] );
txtactividadesproductivas.setText( datos1[10] );
txttradiciones.setText( datos1[12] );
txtgastronomia.setText( datos1[15] );
txtparroquias.setText( datos1[8] );

Ion.with(imgcanton).load(URLIP.ip +
"/Web_Service_ViveTungurahua/imagenes/"+datos1[5]);

String
urlfinal=URLIP.ip+"/Web_Service_ViveTungurahua/imagenes/"+datos1[2];
Rect rect=new
Rect(imgbanderacanton.getLeft(),imgbanderacanton.getTop(),imgbanderacanto
n.getRight(),imgbanderacanton.getBottom());
imgbanderacanton.setImageUrl(urlfinal,rect);

String
urlfinal1=URLIP.ip+"/Web_Service_ViveTungurahua/imagenes/"+datos1[3];
Rect rect1=new
Rect(imgescudocanton.getLeft(),imgescudocanton.getTop(),imgescudocanton.g
etRight(),imgescudocanton.getBottom());
imgescudocanton.setImageUrl(urlfinal1,rect1);

String
urlfinal2=URLIP.ip+"/Web_Service_ViveTungurahua/imagenes/"+datos1[7];
Rect rect2=new
Rect(imghistoria.getLeft(),imghistoria.getTop(),imghistoria.getRight(),im
ghistoria.getBottom());
imghistoria.setImageUrl(urlfinal2,rect2);

String
urlfinal3=URLIP.ip+"/Web_Service_ViveTungurahua/imagenes/"+datos1[11];
Rect rect3=new
Rect(imgcomollegar.getLeft(),imgcomollegar.getTop(),imgcomollegar.getRigh
t(),imgcomollegar.getBottom());
imgcomollegar.setImageUrl(urlfinal3,rect3);

String
urlfinal4=URLIP.ip+"/Web_Service_ViveTungurahua/imagenes/"+datos1[13];
Rect rect4=new
Rect(imgtradiciones.getLeft(),imgtradiciones.getTop(),imgtradiciones.getR
ight(),imgtradiciones.getBottom());
imgtradiciones.setImageUrl(urlfinal4,rect4);
String
urlfinal5=URLIP.ip+"/Web_Service_ViveTungurahua/imagenes/"+datos1[16];
Rect rect5=new
Rect(imggastronomia.getLeft(),imggastronomia.getTop(),imggastronomia.getR
ight(),imggastronomia.getBottom());
imggastronomia.setImageUrl(urlfinal5,rect5);

getSupportActionBar().setDisplayHomeAsUpEnabled( true );
btnmapa.setOnClickListener( new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(getApplicationContext(),
MapsActivity.class);
startActivity(intent);
}
} );
}

public class CLS_CANTONES extends AsyncTask<String,String,String> {


@Override
protected String doInBackground(String... strings) {
return "OK";
}

public void consultar(String id_canton)


{
try
{
okhttp3.Response response=null;
OkHttpClient cliente=new OkHttpClient();

RequestBody cuerpo=new FormBody.Builder()


.add("id_canton",id_canton)
.build();
Request respuesta =new Request.Builder()

.url(URLIP.ip+"/Web_Service_ViveTungurahua/cantones/consultacantonid.php"
)
.post(cuerpo)
.build();

response=cliente.newCall(respuesta).execute();
String JsonData=response.body().string();
JSONObject objeto=new JSONObject(JsonData);
JSONArray Jarray=objeto.getJSONArray("datos");
int nfilas=Jarray.length();

for(int j=0;j<=nfilas;j++)
{
JSONObject fila=Jarray.getJSONObject(j);
datos1[0]=fila.getString("id_canton");
datos1[1]=fila.getString("nombre");
datos1[2]=fila.getString("bandera_imagen");
datos1[3]=fila.getString("escudo_imagen");
datos1[4]=fila.getString("informacion");
datos1[5]=fila.getString("informacion_imagen");
datos1[6]=fila.getString("historia");
datos1[7]=fila.getString("img_historia");
datos1[8]=fila.getString("parroquias");
datos1[10]=fila.getString("actividades_productivas");

datos1[11]=fila.getString("img_actividades_productivas");

datos1[12]=fila.getString("tradiciones_celebraciones");

datos1[13]=fila.getString("img_tradiciones_celebraciones");
datos1[15]=fila.getString("gastronomia");
datos1[16]=fila.getString("img_gastronomia");
datos1[17]=fila.getString("latitud");
datos1[18]=fila.getString("longitud");
}
}
catch(Exception e)
{
e.printStackTrace();
}

}
}

Anexo D

Pagina web
Anexo E

Programación web
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.ComponentModel
Imports MySql.Data.MySqlClient

' Para permitir que se llame a este servicio web desde un script, usando ASP.NET
AJAX, quite la marca de comentario de la línea siguiente.
' <System.Web.Script.Services.ScriptService()> _
<System.Web.Services.WebService(Namespace:="http://tempuri.org/")> _
<System.Web.Services.WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)> _
<ToolboxItem(False)> _
Public Class Cantones
Inherits System.Web.Services.WebService
Dim pro As New Procedimientos_Cantones
<WebMethod()> _
Public Function DatareaderCantones() As String()
Dim cn As New
MySqlConnection(ConfigurationManager.ConnectionStrings("cnn").ToString)
Dim dr As MySqlDataReader
Dim cmd As New MySqlCommand("select * from cantones", cn)
Dim array(100) As String
Dim contador As Integer
contador = 0
cn.Open()
dr = cmd.ExecuteReader
While dr.Read
array(contador) = dr.Item(0).ToString + " " + dr.Item(1).ToString
contador = contador + 1
End While
Dim array2(contador - 1) As String
For i As Integer = 0 To contador - 1
array2(i) = array(i)
Next
Return array2
End Function
<WebMethod()>
Public Function DataSetCantones() As DataSet
Dim cn As New
MySqlConnection(ConfigurationManager.ConnectionStrings("cnn").ToString)
Dim queryString As String = "select * from cantones"
Dim adapter As MySqlDataAdapter = New MySqlDataAdapter(queryString, cn)
Dim cont As DataSet = New DataSet
adapter.Fill(cont, "canton")
Return cont
End Function
<WebMethod()> _
Public Function InsertarDatosCantones(innombre As String, inbandera_imagen As
String, inescudo_imagen As String, ininformacion As String, ininformacion_imagen As
String, inhistoria As String, inimg_historia As String, inparroquias As String,
inactividades_productivas As String, inimg_actividades_productivas As String,
intradiciones_celebraciones As String, inimg_tradiciones_celebraciones As String,
ingastronomia As String, inimg_gastronomia As String) As String
Return pro.insertarDatosCantones(innombre, inbandera_imagen,
inescudo_imagen, ininformacion, ininformacion_imagen, inhistoria, inimg_historia,
inparroquias, inactividades_productivas, inimg_actividades_productivas,
intradiciones_celebraciones, inimg_tradiciones_celebraciones, ingastronomia,
inimg_gastronomia)
End Function
<WebMethod()> _
Public Function ActualizarDatosCantones(Id As String, innombre As String,
ininformacion As String, inhistoria As String, inparroquias As String,
inactividades_productivas As String, tradiciones_celebraciones As String,
ingastronomia As String) As String
Return pro.ActualizarDatosCantones(Id, innombre, ininformacion, inhistoria,
inparroquias, inactividades_productivas, tradiciones_celebraciones, ingastronomia)
End Function
<WebMethod()> _
Public Function EliminarDatosCantones(Id As String) As String
Return pro.eliminarDatosCantones(Id)
End Function

End Class

Imports MySql.Data.MySqlClient

Public Class Procedimientos_Cantones


Public Function insertarDatosCantones(innombre As String, inbandera_imagen As
String, inescudo_imagen As String, ininformacion As String, ininformacion_imagen As
String, inhistoria As String, inimg_historia As String, inparroquias As String,
inactividades_productivas As String, inimg_actividades_productivas As String,
intradiciones_celebraciones As String, inimg_tradiciones_celebraciones As String,
ingastronomia As String, inimg_gastronomia As String) As String
Dim respuesta As String
Try
Dim cn As New
MySqlConnection(ConfigurationManager.ConnectionStrings("cnn").ToString)
Using cmd As New MySqlCommand("SP_Insertar_cantones", cn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add(New MySqlParameter("innombre", innombre))
cmd.Parameters.Add(New MySqlParameter("inbandera_imagen",
inbandera_imagen))
cmd.Parameters.Add(New MySqlParameter("inescudo_imagen",
inescudo_imagen))
cmd.Parameters.Add(New MySqlParameter("ininformacion",
ininformacion))
cmd.Parameters.Add(New MySqlParameter("ininformacion_imagen",
ininformacion_imagen))
cmd.Parameters.Add(New MySqlParameter("inhistoria", inhistoria))
cmd.Parameters.Add(New MySqlParameter("inimg_historia",
inimg_historia))
cmd.Parameters.Add(New MySqlParameter("inparroquias", inparroquias))
cmd.Parameters.Add(New MySqlParameter("inactividades_productivas",
inactividades_productivas))
cmd.Parameters.Add(New
MySqlParameter("inimg_actividades_productivas", inimg_actividades_productivas))
cmd.Parameters.Add(New MySqlParameter("intradiciones_celebraciones",
intradiciones_celebraciones))
cmd.Parameters.Add(New
MySqlParameter("inimg_tradiciones_celebraciones", inimg_tradiciones_celebraciones))
cmd.Parameters.Add(New MySqlParameter("ingastronomia",
ingastronomia))
cmd.Parameters.Add(New MySqlParameter("inimg_gastronomia",
inimg_gastronomia))

cn.Open()
respuesta = cmd.ExecuteNonQuery()
cn.Close()
End Using
Return respuesta
Catch ex As Exception
Throw ex
End Try
End Function
Public Function ActualizarDatosCantones(Id As String, innombre As String,
ininformacion As String, inhistoria As String, inparroquias As String,
inactividades_productivas As String, tradiciones_celebraciones As String,
ingastronomia As String) As String
Dim respuesta As String
Try
Using cn As New
MySqlConnection(ConfigurationManager.ConnectionStrings("cnn").ToString)
Using cmd As New MySqlCommand("SP_Actualizar_cantones", cn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add(New MySqlParameter("inid_canton", Id))
cmd.Parameters.Add(New MySqlParameter("innombre", innombre))
cmd.Parameters.Add(New MySqlParameter("ininformacion",
ininformacion))
cmd.Parameters.Add(New MySqlParameter("inhistoria", inhistoria))
cmd.Parameters.Add(New MySqlParameter("inparroquias",
inparroquias))
cmd.Parameters.Add(New
MySqlParameter("inactividades_productivas", inactividades_productivas))
cmd.Parameters.Add(New
MySqlParameter("intradiciones_celebraciones", tradiciones_celebraciones))
cmd.Parameters.Add(New MySqlParameter("ingastronomia",
ingastronomia))
cn.Open()
respuesta = cmd.ExecuteNonQuery()
cn.Close()
End Using
End Using
Return respuesta

Catch ex As Exception
Throw ex
End Try
End Function
Public Function eliminarDatosCantones(id As Integer) As String
Dim respuesta As String
Try
Using cn As New
MySqlConnection(ConfigurationManager.ConnectionStrings("cnn").ToString)
Using cmd As New MySqlCommand("SP_Eliminar_cantones", cn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add(New MySqlParameter("inid_canton", id))
cn.Open()
respuesta = cmd.ExecuteNonQuery()
cn.Close()
End Using
End Using
Return respuesta

Catch ex As Exception
Throw ex
End Try
End Function
End Class
Imports System.Drawing
Imports System.IO

Public Class VCanton


Inherits System.Web.UI.Page
Dim canton As New Cantones

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)


Handles Me.Load
ListarCanton()
'' Me.Master.FindControl("CantonSeleccionado")
Me.Master.Titulo = "TUNGURAHUA"
ImgBandera.ImageUrl = "~/Imagenes/banderaDefault.png"
ImgHistoria.ImageUrl = "~/Imagenes/HistoriaDefault.png"
ImgGastronomiaCanton.ImageUrl = "~/Imagenes/GastronomiaDefault.jpg"
ImgActividades.ImageUrl = "~/Imagenes/ProduccionDefault.png"
ImgTradiciones.ImageUrl = "~/Imagenes/CulturaDefault.jpg"
ImgEscudo.ImageUrl = "~/Imagenes/escudoDefault.png"
ImgInformacion.ImageUrl = "~/Imagenes/infoDefault.png"
End Sub
Private Sub ListarCanton()
Dim datos As New DataSet
datos = canton.DataSetCantones
TablaCanton.DataSource = datos
TablaCanton.DataBind()
For i = 0 To TablaCanton.Rows.Count - 1
TablaCanton.Rows(i).Cells(2).Visible = False
TablaCanton.Rows(i).Cells(3).Visible = False
TablaCanton.Rows(i).Cells(4).Visible = False
TablaCanton.Rows(i).Cells(5).Visible = False
TablaCanton.Rows(i).Cells(6).Visible = False
TablaCanton.Rows(i).Cells(7).Visible = False
TablaCanton.Rows(i).Cells(8).Visible = False
TablaCanton.Rows(i).Cells(9).Visible = False
TablaCanton.Rows(i).Cells(10).Visible = False
TablaCanton.Rows(i).Cells(11).Visible = False
TablaCanton.Rows(i).Cells(12).Visible = False
TablaCanton.Rows(i).Cells(13).Visible = False
TablaCanton.Rows(i).Cells(14).Visible = False
Next
TablaCanton.HeaderRow.Cells(2).Visible = False
TablaCanton.HeaderRow.Cells(3).Visible = False
TablaCanton.HeaderRow.Cells(4).Visible = False
TablaCanton.HeaderRow.Cells(5).Visible = False
TablaCanton.HeaderRow.Cells(6).Visible = False
TablaCanton.HeaderRow.Cells(7).Visible = False
TablaCanton.HeaderRow.Cells(8).Visible = False
TablaCanton.HeaderRow.Cells(9).Visible = False
TablaCanton.HeaderRow.Cells(10).Visible = False
TablaCanton.HeaderRow.Cells(11).Visible = False
TablaCanton.HeaderRow.Cells(12).Visible = False
TablaCanton.HeaderRow.Cells(13).Visible = False
TablaCanton.HeaderRow.Cells(14).Visible = False
End Sub
Protected Sub OnRowDataBound(sender As Object, e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then
e.Row.Attributes("onclick") =
Page.ClientScript.GetPostBackClientHyperlink(TablaCanton, "Select$" &
e.Row.RowIndex)
e.Row.ToolTip = "Click to select this row."
End If
End Sub
Protected Sub OnSelectedIndexChanged(sender As Object, e As EventArgs)

For Each row As GridViewRow In TablaCanton.Rows


If row.RowIndex = TablaCanton.SelectedIndex Then
row.BackColor = ColorTranslator.FromHtml("#A1DCF2")
row.ToolTip = String.Empty
lbl_codigo.Text = TablaCanton.SelectedRow.Cells(0).Text
txtnombre.Text = TablaCanton.SelectedRow.Cells(1).Text
txtInformacion.Text = TablaCanton.SelectedRow.Cells(4).Text
txtParroquias.Text = TablaCanton.SelectedRow.Cells(8).Text
TxtHistoria.Text = TablaCanton.SelectedRow.Cells(6).Text
txtActividades.Text = TablaCanton.SelectedRow.Cells(9).Text
txtTradiciones.Text = TablaCanton.SelectedRow.Cells(11).Text
txtGastronomiaCanton.Text = TablaCanton.SelectedRow.Cells(13).Text
If System.IO.File.Exists(Server.MapPath("~\Imagenes\") +
TablaCanton.SelectedRow.Cells(2).Text) Then
ImgBandera.ImageUrl = "~/Imagenes/" +
TablaCanton.SelectedRow.Cells(2).Text
Else
ImgBandera.ImageUrl = "~/Imagenes/banderaDefault.png"
End If
If System.IO.File.Exists(Server.MapPath("~\Imagenes\") +
TablaCanton.SelectedRow.Cells(3).Text) Then
ImgEscudo.ImageUrl = "~/Imagenes/" +
TablaCanton.SelectedRow.Cells(3).Text
Else
ImgEscudo.ImageUrl = "~/Imagenes/escudoDefault.png"
End If
If System.IO.File.Exists(Server.MapPath("~\Imagenes\") +
TablaCanton.SelectedRow.Cells(5).Text) Then
ImgInformacion.ImageUrl = "~/Imagenes/" +
TablaCanton.SelectedRow.Cells(5).Text
Else
ImgInformacion.ImageUrl = "~/Imagenes/infoDefault.png"
End If
If System.IO.File.Exists(Server.MapPath("~\Imagenes\") +
TablaCanton.SelectedRow.Cells(7).Text) Then
ImgHistoria.ImageUrl = "~/Imagenes/" +
TablaCanton.SelectedRow.Cells(7).Text
Else
ImgHistoria.ImageUrl = "~/Imagenes/HistoriaDefault.png"
End If
If System.IO.File.Exists(Server.MapPath("~\Imagenes\") +
TablaCanton.SelectedRow.Cells(10).Text) Then
ImgActividades.ImageUrl = "~/Imagenes/" +
TablaCanton.SelectedRow.Cells(10).Text
Else
ImgActividades.ImageUrl = "~/Imagenes/ProduccionDefault.png"
End If
If System.IO.File.Exists(Server.MapPath("~\Imagenes\") +
TablaCanton.SelectedRow.Cells(12).Text) Then
ImgTradiciones.ImageUrl = "~/Imagenes/" +
TablaCanton.SelectedRow.Cells(12).Text
Else
ImgTradiciones.ImageUrl = "~/Imagenes/CulturaDefault.jpg"
End If
If System.IO.File.Exists(Server.MapPath("~\Imagenes\") +
TablaCanton.SelectedRow.Cells(14).Text) Then
ImgGastronomiaCanton.ImageUrl = "~/Imagenes/" +
TablaCanton.SelectedRow.Cells(14).Text
Else
ImgGastronomiaCanton.ImageUrl =
"~/Imagenes/GastronomiaDefault.jpg"
End If
Else
row.BackColor = ColorTranslator.FromHtml("#FFFFFF")
row.ToolTip = "Click para seleccionar la fila."
End If
Next
End Sub
Protected Sub Guardar(sender As Object, e As EventArgs)
Dim NBandera, NEscudo, NInfo, Rpta, Historia, Actividades, Tradiciones,
gastronomia As String
If IsPostBack Then
If FUbandera.HasFile And FUescudo.HasFile And FUinformacion.HasFile And
FUhistoria.HasFile And FUactividades.HasFile And FUtradiciones.HasFile And
FUgastronomia.HasFile Then
Dim extension As String =
Path.GetExtension(FUbandera.PostedFile.FileName)
FUbandera.PostedFile.SaveAs(Server.MapPath("~\Imagenes\") +
"Bandera" + txtnombre.Text.Trim + extension)
NBandera = "bandera" + txtnombre.Text.Trim + extension
extension = Path.GetExtension(FUescudo.PostedFile.FileName)
FUescudo.PostedFile.SaveAs(Server.MapPath("~\Imagenes\") + "Escudo"
+ txtnombre.Text.Trim + extension)
NEscudo = "Escudo" + txtnombre.Text.Trim + extension
extension = Path.GetExtension(FUinformacion.PostedFile.FileName)
FUinformacion.PostedFile.SaveAs(Server.MapPath("~\Imagenes\") +
"Canton" + txtnombre.Text.Trim + extension)
NInfo = "Canton" + txtnombre.Text.Trim + extension
extension = Path.GetExtension(FUinformacion.PostedFile.FileName)
FUhistoria.PostedFile.SaveAs(Server.MapPath("~\Imagenes\") +
"Historia" + txtnombre.Text.Trim + extension)
Historia = "Historia" + txtnombre.Text.Trim + extension
extension = Path.GetExtension(FUhistoria.PostedFile.FileName)
FUactividades.PostedFile.SaveAs(Server.MapPath("~\Imagenes\") +
"Actividades" + txtnombre.Text.Trim + extension)
Actividades = "Actividades" + txtnombre.Text.Trim + extension
extension = Path.GetExtension(FUactividades.PostedFile.FileName)
FUtradiciones.PostedFile.SaveAs(Server.MapPath("~\Imagenes\") +
"Tradiciones" + txtnombre.Text.Trim + extension)
Tradiciones = "Tradiciones" + txtnombre.Text.Trim + extension
extension = Path.GetExtension(FUactividades.PostedFile.FileName)
FUgastronomia.PostedFile.SaveAs(Server.MapPath("~\Imagenes\") +
"Gastronomia" + txtnombre.Text.Trim + extension)
gastronomia = "Gastronomia" + txtnombre.Text.Trim + extension
extension = Path.GetExtension(FUgastronomia.PostedFile.FileName)
Rpta = canton.InsertarDatosCantones(txtnombre.Text.Trim, NBandera,
NEscudo, txtInformacion.Text, NInfo, TxtHistoria.Text, Historia, txtParroquias.Text,
txtActividades.Text, Actividades, txtTradiciones.Text, Tradiciones,
txtGastronomiaCanton.Text, gastronomia)
Response.Write("<script language=""javascript"">alert('" + "Datos
ingresados" + "');</script>")
End If
End If
ListarCanton()
End Sub
Protected Sub Eliminar(sender As Object, e As EventArgs)
Dim Rpta As String
If IsPostBack Then
Rpta = canton.EliminarDatosCantones(lbl_codigo.Text)
Response.Write("<script language=""javascript"">alert('" + "Datos
Eliminados" + "');</script>")
End If
ListarCanton()
End Sub
Protected Sub Modificar(sender As Object, e As EventArgs)
Dim Rpta As String
If IsPostBack Then
Dim extension As String
If FUbandera.HasFile Then
extension = Path.GetExtension(FUbandera.PostedFile.FileName)
FUbandera.PostedFile.SaveAs(Server.MapPath("~\Imagenes\") +
"Bandera" + txtnombre.Text.Trim + extension)
End If
If FUescudo.HasFile Then
extension = Path.GetExtension(FUescudo.PostedFile.FileName)
FUescudo.PostedFile.SaveAs(Server.MapPath("~\Imagenes\") + "Escudo"
+ txtnombre.Text.Trim + extension)
End If
If FUinformacion.HasFile Then
extension = Path.GetExtension(FUinformacion.PostedFile.FileName)
FUinformacion.PostedFile.SaveAs(Server.MapPath("~\Imagenes\") +
"Canton" + txtnombre.Text.Trim + extension)
End If
If FUhistoria.HasFile Then
extension = Path.GetExtension(FUinformacion.PostedFile.FileName)
FUhistoria.PostedFile.SaveAs(Server.MapPath("~\Imagenes\") +
"Historia" + txtnombre.Text.Trim + extension)
End If
If FUactividades.HasFile Then
extension = Path.GetExtension(FUhistoria.PostedFile.FileName)
FUactividades.PostedFile.SaveAs(Server.MapPath("~\Imagenes\") +
"Actividades" + txtnombre.Text.Trim + extension)
End If
If FUtradiciones.HasFile Then
extension = Path.GetExtension(FUactividades.PostedFile.FileName)
FUtradiciones.PostedFile.SaveAs(Server.MapPath("~\Imagenes\") +
"Tradiciones" + txtnombre.Text.Trim + extension)
End If
If FUgastronomia.HasFile Then
extension = Path.GetExtension(FUactividades.PostedFile.FileName)
FUgastronomia.PostedFile.SaveAs(Server.MapPath("~\Imagenes\") +
"Gastronomia" + txtnombre.Text.Trim + extension)
End If
Rpta = canton.ActualizarDatosCantones(lbl_codigo.Text, txtnombre.Text,
txtInformacion.Text, TxtHistoria.Text, txtParroquias.Text, txtActividades.Text,
txtTradiciones.Text, txtGastronomiaCanton.Text)
Response.Write("<script language=""javascript"">alert('" + "Datos
Actualizados" + "');</script>")
End If
ListarCanton()
End Sub

End Class