• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
 

Proyecto integrador: Desarrollo del videojuego “El Ahorcado” usando la Herramienta Canvas orientado a dispositivos con Sistema Operativo Android

on

  • 2,153 views

Trabajo Estudiantil: Desarrollo del videojuego “El Ahorcado” usando la Herramienta Canvas orientado a dispositivos con Sistema Operativo Android

Trabajo Estudiantil: Desarrollo del videojuego “El Ahorcado” usando la Herramienta Canvas orientado a dispositivos con Sistema Operativo Android

Statistics

Views

Total Views
2,153
Views on SlideShare
2,126
Embed Views
27

Actions

Likes
1
Downloads
1
Comments
0

1 Embed 27

http://faccilearn.uleam.edu.ec 27

Accessibility

Categories

Upload Details

Uploaded via as Microsoft Word

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Proyecto integrador: Desarrollo del videojuego “El Ahorcado” usando la Herramienta Canvas orientado a dispositivos con Sistema Operativo Android Proyecto integrador: Desarrollo del videojuego “El Ahorcado” usando la Herramienta Canvas orientado a dispositivos con Sistema Operativo Android Document Transcript

    • UNIVERSIDAD LAICA ELOY ALFARO DE MANABÍ FACULTAD DE CIENCIAS INFORMÁTICASPROYECTO INTEGRADORINTEGRANTES:ALCÍVAR ARAY ROSA ANDREAGOMEZ BRAVO JOSSELYN TATIANAVELÁSQUEZ CASTILLO MIGUEL ÁNGELCATEDRÁTICO:ING. JORGE PINCAYCARRERA:INGENIERÍA EN SISTEMASCURSO:CUARTO NIVEL “A”AÑO LECTIVO:2012-2013
    • DEDICATORIA Un sueño no se convierte en realidad a través de la magia sino a través del esfuerzo, determinación y trabajo duro Collen PowellA Dios:Por guiar siempre nuestros pasos y nuestras mentes.A nuestros padresPor el apoyo incondicional que siempre nos otorgan y aunque no sepan de laexistencia de este proyecto siempre están prestos.A nuestro equipo en sí por el apoyo que nos brindamos mutuamente, las largashoras de trabajo y la amistad con la que contamos.A nuestros profesores por su gran apoyo y motivación para la culminación de esteproyecto, por habernos transmitido los conocimientos obtenidos y habernos guiadopaso a paso en este proceso.
    • AGRADECIMIENTO Toda la vida exige lucha en su camino los que todo lo tienen se vuelvenperezosos, egoístas e insensibles a los valores reales de la vida. El trabajo duro y la lucha componen lo que somos hoy. Anónimo A gradecemos a:Dios y a nuestros padres por ser parte fundamental de nuestras vidas.A nuestros docentes por incentivarnos en la elaboración de este juego.A nuestroprofesor y amigo el Ingeniero Jorge Pincay por todos sus consejosy sugerencias. Por el tiempo dedicado, el apoyo brindado durante eldesarrollo de nuestro proyecto.
    • RESUMENLos dispositivos móviles constituyen cada vez más una realidad que ofrece alusuario, en un mismo y reducido aparato, funciones de comunicación yprocesamiento de datos que van mucho más allá de las simples llamadastelefónicas o la ejecución de aplicaciones básicas. El gigante de Internet Googlepresentó en el 2008 un sistema operativo para este tipo de dispositivos, Android,que busca ser una firme alternativa a otros sistemas ya ampliamente extendidoscomo Symbian o Windows Mobile.El presente proyecto busca conocer y comprender las características y elfuncionamiento de este sistema operativo, averiguando sus posibilidades yventajas frente a otras alternativas. Además, abarca el desarrollo completo de unaaplicación de juego conocida como “El Ahorcado”, que permite brindar unaherramienta de entretenimiento al público en general.Contará con una pantalla inicial donde se podrá elegir entre las opcionesbrindadas de comenzar o salir del juego.Cuando se comienza el juego tienes 6 oportunidades para adivinar la palabra, delo contrario el juego finalizará.Cuando el juego se haya cargado se hace clic en las letras que conformaran lapalabra a adivinar y se tendrá que seleccionar la letra que se crea correspondienteoprimiéndola en el teclado.Además también estará en los siguientes lenguajes: Español Inglés
    • ÍNDICEContenidoCAPÍTULO I ....................................................................................................................... 1 1.1. PRESENTACIÓN DEL TEMA .............................................................................. 1 1.1.1. TEMA ........................................................................................................... 1 1.1.2. BENEFICIARIOS .......................................................................................... 1 BENEFICIARIOS DIRECTOS ........................................................................................ 1 LOS USUARIOS ............................................................................................................ 1 LOS QUE DESARROLLAMOS LA APLICACIÓN. .......................................................... 1 1.1.3. PROYECCIÓN PROFESIONAL ................................................................... 1 1.2. SITUACIÓN PROBLEMÁTICA ............................................................................ 2 1.2.1. ENTIDAD/INSTITUCIÓN DE APLICACIÓN .................................................. 2 1.2.2. PLANTEAMIENTO DEL PROBLEMA ........................................................... 2 1.2.3. DIAGRAMA DE CAUSA- EFECTO ............................................................... 2 1.2.4. PLANTEAMIENTO DEL PROBLEMA ........................................................... 3 1.3. OBJETIVOS ........................................................................................................ 3 1.3.1. OBJETIVO GENERAL .................................................................................. 3 1.3.2. OBJETIVOS ESPECÍFICOS DE INVESTIGACIÓN ...................................... 3 1.3.3. OBJETIVOS ESPECÍFICOS DE RESOLUCIÓN DEL PROBLEMA .............. 3 1.4. JUSTIFICACIÓN ................................................................................................. 4 1.5. IMPACTOS ESPERADOS ................................................................................... 4 1.5.1. IMPACTO TECNOLÓGICO .......................................................................... 4 1.5.2. IMPACTO SOCIAL ....................................................................................... 5CAPÍTULO II ...................................................................................................................... 6 2.1 MARCO TEÓRICO REFERENCIAL .................................................................... 6 2.1.1 LA PLATAFORMA ANDROID ............................................................................ 6 1.1.3 MÁQUINA VIRTUAL DALVIK........................................................................... 13
    • 2.1.4 LA PLATAFORMA WINDOWS PHONE ........................................................... 14 2.1.4.1 EXTINCIÓN DE WINDOWS PHONE 7 ......................................................... 14 2.1.4.2 CICLO DE VIDA DE LAS APLICACIONES DE WINDOWS PHONE ............. 14 2.1.4.3 DESACTIVACIÓN FRENTE A EXTINCIÓN ................................................. 18 2.1.4.4 GUARDADO Y RESTAURACIÓN DEL ESTADO ......................................... 20 2.1.4.5 ELIMINACIÓN DE RIESGOS....................................................................... 22 2.1.4.6 PUEDE HACERLO MUY BIEN ......................................................................... 24 2.2 MARCO TEÓRICO LEGAL .................................................................................... 25 2.2.1 CÓMO SUBIR APLICACIONES .......................................................................... 25CAPÍTULO III ................................................................................................................... 28 3.1 MARCO PROPOSITIVO (PROPUESTA) ........................................................... 28 3.1.1 INTRODUCCIÓN ............................................................................................. 28 3.1.2 DESCRIPCIÓN DE LA PROPUESTA .............................................................. 28 3.1.4 RECURSOS NECESARIOS ............................................................................ 29 3.1.5 ESTUDIO DE FACTIBILIDAD .......................................................................... 30 3.1.6 REQUISITOS................................................................................................... 31 3.2 DISEÑO Y CONSTRUCCIÓN DE LA PROPUESTA .......................................... 34 3.2.1 CASO DE USO ................................................................................................ 343.2.2 SESIÓN DE SCRUM .............................................................................................. 35 3.2.2.1 PRIMERA REUNIÓN (VISIÓN) ........................................................................ 35 3.2.2.2 SEGUNDA REUNIÓN (EXPOSICIÓN) ............................................................. 35 3.2.2.3 TERCERA REUNIÓN (RESOLUCIÓN) ............................................................ 37 3.2.3 PRIMER ENTREGABLE .................................................................................. 39 3.2.4 SEGUNDO ENTREGABLE .............................................................................. 40 3.2.5 TERCER ENTREGABLE ................................................................................. 41 3.2.6 CUARTO ENTREGABLE (FINAL) ................................................................... 42CONCLUSIÓN ................................................................................................................. 43RECOMENDACIONES .................................................................................................... 44BIBLIOGRAFÍA ................................................................................................................ 45
    • ÍNDICE DE IMÁGENESIlustración 1 - Ciclo de Vida en Windows Phone ............................................................................... 16Ilustración 2 Caso de Uso ................................................................................................................. 34Ilustración 3 - Primer Entregable ...................................................................................................... 40Ilustración 4 - Segundo Entregable (Escenario) ............................................................................... 41Ilustración 5 - Segundo Entregable (Pantalla Principal) .................................................................... 41Ilustración 6 - Tercer Entregable ....................................................................................................... 42Ilustración 7 - Cuarto entregable (Página principal) ......................................................................... 42Ilustración 8 - Cuarto entregable (Splash Screen) ............................................................................. 42Ilustración 9 - Icono de la Aplicación................................................................................................. 46Ilustración 10 – Splash del Juego ...................................................................................................... 46Ilustración 11 –Selección del Idioma (juego) .................................................................................... 46Ilustración 12 - Selección del Nuevo Juego ....................................................................................... 46Ilustración 13 - Selección del Nuevo Juego en Inglés........................................................................ 46Ilustración 14 – Escenario del Juego ................................................................................................. 46Ilustración 15 – Primera Palabra Acertada........................................................................................ 46Ilustración 16 - Segunda Palabra Acertada ....................................................................................... 46Ilustración 17 - Tercera Palabra Acertada ......................................................................................... 46Ilustración 18 - Primera Palabra Incorrecta ...................................................................................... 46Ilustración 19 - Cuarta Palabra Acertada .......................................................................................... 46Ilustración 20 - Segunda Palabra Incorrecta ..................................................................................... 46Ilustración 21 - Quinta Palabra Acertada .......................................................................................... 46Ilustración 22 - Sexta Palabra Acertada ............................................................................................ 46Ilustración 23 - Tercera Palabra Incorrecta ....................................................................................... 46Ilustración 24 - Cuarta Palabra Incorrecta ........................................................................................ 46Ilustración 25 - Quinta Palabra Incorrecta ........................................................................................ 46Ilustración 26 – Juego Ganado .......................................................................................................... 46Ilustración 27 - Nuevo Juego ............................................................................................................. 46Ilustración 28 - Juego Perdido ........................................................................................................... 46Ilustración 29 - Selección de Idioma ................................................................................................. 46Ilustración 30 - Escenario del Juego .................................................................................................. 46Ilustración 31 - Ayuda del Juego ....................................................................................................... 46Ilustración 32 - Escenario del Juego .................................................................................................. 46Ilustración 33 - Monigote del Juego .................................................................................................. 46
    • Ilustración 34 - Monigote del Juego 2 ............................................................................................... 46Ilustración 35 - Perdió.. ..................................................................................................................... 46Ilustración 36 - Monigote del juego 3 ............................................................................................... 46Ilustración 37 - Monigote del Juego 1 ............................................................................................... 46
    • CAPÍTULO I Capítulo 11.1. PRESENTACIÓN DEL TEMA1.1.1. TEMADesarrollo delvideojuego “El Ahorcado”usando la HerramientaCanvasorientado a dispositivos con Sistema Operativo Android.1.1.2. BENEFICIARIOS BENEFICIARIOS DIRECTOS Los Usuarios Los que desarrollamos la aplicación.1.1.3. PROYECCIÓN PROFESIONALEs indudable que los juegos tienen día a día una mayor influencia en la vidacontemporánea: incide en áreas como educación, medicina,sustentabilidad, economía, turismo, arte y diseño, entre muchas otras.Es el espacio en el que se puede combinar la mercadotecnia, producción,artes visuales, programación, diseño de juego, sonido y música, entre otros;y nosotros futuros Ingenieros en Sistemas debemos estar al tanto de todoestos espacios para poder saber combinar nuestros conocimientos e irpreparándonos poco a poco para un futuro inmediato. 1
    • 1.2. SITUACIÓN PROBLEMÁTICA1.2.1. ENTIDAD/INSTITUCIÓN DE APLICACIÓNEntidad:Público en general1.2.2. PLANTEAMIENTO DEL PROBLEMACada día los jóvenes y personas en general buscamos nuevas formas deentretenimiento y nuestro dispositivo móvil se ha convertido en uncompañero inseparable para todo, el ritmo de vida que llevamos hace quenos estresemos por lo que surge el requerimiento de buscar pequeñasherramientas para distraernos.1.2.3. DIAGRAMA DE CAUSA- EFECTO Aburrimiento Desconcentración Mal humorEFECTOS ¿Cómo podemos con una aplicación móvil contribuir a la sociedad para que las personas sobrelleven el peso del estrés generado por las actividades del día a día?CAUSASActividades rutinarias Actividades pendientes 2
    • 1.2.4. PLANTEAMIENTO DEL PROBLEMA¿Cómo podemos con una aplicación móvil contribuir a la sociedad para quelas personas sobrelleven el peso del estrés generado por las actividades deldía a día?1.3. OBJETIVOS1.3.1. OBJETIVO GENERALDesarrollar el videojuego “El Ahorcado”usando la HerramientaCanvasorientado a dispositivos con Sistema Operativo Android.1.3.2. OBJETIVOS ESPECÍFICOS DE INVESTIGACIÓN Conocer las principales características de Android. Estudiar el entorno de desarrollo de Android. Estudiar la herramienta Canvas.1.3.3. OBJETIVOS ESPECÍFICOS DE RESOLUCIÓN DEL PROBLEMA Seleccionar la interface que conformará nuestra aplicación. Desarrollar el juego el Ahorcado en base a los requerimientos definidos. Testear el juego y corregir errores. 3
    • 1.4. JUSTIFICACIÓNEn una sociedad dinámica donde las personas se encuentran abrumadas yrodeadas por sus actividades rutinarias es necesario encontrar unadistracción que sirva como entretenimiento para que dichas personaspuedan despejar su mente y cumplir con sus actividades.Por esta razón nos vimos motivados a escoger este tema para contribuir deuna u otra manera a la sociedad.1.5. IMPACTOS ESPERADOS1.5.1. IMPACTO TECNOLÓGICOLas personas de hoy en día son dueños de nuevas tecnologías como elcelular, el internet, iPod, tv satelital, nintento Wii, entre otros, por lo tantopresentan grandes dificultades para retener información y asimilarfácilmente el aprendizaje de conocimientos y una estrategia para lamotivación y para ir superándolas poco a poco es el juego “El Ahorcado”siendo un juego que exige apropiarse de métodos, estrategias y didácticasque respondan a la interacción del mismo.Al utilizar las palabras que conocemos no es tarea fácil pero desarrollandoestrategias se logra tener nuevas visiones del mundo; por tal razón laspalabras ocultas del juego hay que analizarlas y encontrarlas, dándolefuncionalidad a nuestro diario vivir, ayudando a la concentración deljugador. 4
    • 1.5.2. IMPACTO SOCIALLos videojuegos no solo ayudan al entretenimiento también aportan alaprendizaje de idiomas, ayudan a mejorar habilidades lingüísticas y aaumentar la concentración.Mark Griffiths, profesor de la NottinghamTrentUniversity, pasó quince añosrealizando estudios que entregaron alentadores resultados referentes apacientes bajo largos tratamientos contra el cáncer. Las personasmostraron valiosas mejoras en cuanto a su presión sanguínea ymanifestaron menor necesidad de analgésicos si contaban con videojuegospara ayudar a manejar la ansiedad. (Terapia Integral, 2011).Un estudio de la Universidad de Helsinki revela que los estudiantesfinlandeses de bachillerato que juegan a videojuegos de forma habitualtienen mejor nivel de inglés que quienes juegan poco o nunca.Según el informe, los estudiantes de bachillerato que juegan al menos 15horas semanales tienen una nota media en inglés de 8.79 puntos (sobre unmáximo de diez), mientras que la calificación de quienes no juegan nuncaes de 7.28."La relación entre los videojuegos y las notas académicas es tan indiscutibleque es importante reconocer su importancia a la hora de aprender idiomas",explica Sanna-KaisaTanskanen, catedrática de inglés de la Universidad de Helsinki.(universal.com, 2011) 5
    • CAPÍTULO IICAPITULO II 2.1 MARCO TEÓRICO REFERENCIAL 2.1.1 LA PLATAFORMA ANDROIDAndroid constituye una pila de software pensada especialmente para dispositivosmóviles y que incluye tanto un sistema operativo, como middleware y diversasaplicaciones de usuario. Representa la primera incursión seria de Google en elmercado móvil y nace con la pretensión de extender su filosofía a dicho sector.Todas las aplicaciones para Android se programan en lenguaje Java y sonejecutadas en una máquina virtual especialmente diseñada para esta plataforma,que ha sido bautizada con el nombre de Dalvik. El núcleo de Android está basadoen Linux 2.6.La licencia de distribución elegida para Android ha sido Apache 2.0, lo que loconvierte en software de libre distribución. A los desarrolladores se les proporcionade forma gratuita un SDK y la opción de un plug-in para el entorno de desarrolloEclipse que incluyen todas las API necesarias para la creación de aplicaciones,así como un emulador integrado para su ejecución. Existe además disponible unaamplia documentación de respaldo para este SDK.El proyecto Android está capitaneado por Google y un conglomerado de otrasempresas tecnológicas agrupadas bajo el nombre de Open Handset Alliance(OHA). El objetivo principal de esta alianza empresarial (que incluye a fabricantesde dispositivos y operadores, con firmas tan relevantes como Samsung, LG, 6
    • Telefónica, Intel o Texas Instruments, entre otras muchas) es el desarrollo deestándares abiertos para la telefonía móvil como medida para incentivar sudesarrollo y para mejorar la experiencia del usuario. La plataforma Androidconstituye su primera contribución en este sentido.Cuando en noviembre de 2007 Google anunció su irrupción en el mundo de latelefonía móvil a través de Android, muchos medios especializados catalogaroneste novedoso producto como un nuevo sistema operativo, libre y específico parateléfonos móviles. Sin embargo, los responsables del proyecto se han esforzadodesde entonces en destacar que la motivación de Android es convertirse en algomás que un simple sistema operativo.Con Android se busca reunir en una misma plataforma todos los elementosnecesarios que permitan al desarrollador controlar y aprovechar al máximocualquier funcionalidad ofrecida por un dispositivo móvil (llamadas, mensajes detexto, cámara, agenda de contactos, conexión Wi-Fi, Bluetooth, aplicacionesofimáticas, videojuegos, etc.), así como poder crear aplicaciones que seanverdaderamente portables, reutilizables y de rápido desarrollo. En otras palabras,Android quiere mejorar y estandarizar el desarrollo de aplicaciones para cualquierdispositivo móvil y, por ende, acabar con la perjudicial fragmentación existente hoydía.Además de todo ello, otro aspecto básico para entender la aparición de Android esque pretende facilitar la integración de estos dispositivos con las posibilidadescada día mayor ofrecidas por la Web. Por ejemplo, una aplicación desarrollada enAndroid podría ser aquella que indicase al usuario, a través de Google Maps, lalocalización de sus diferentes contactos de la agenda y que avisase cuando éstosse encuentren a una distancia cercana o en una ubicación determinada.Mejorar el desarrollo y enriquecer la experiencia del usuario se convierte, portanto, en la gran filosofía de Android y en su principal objetivo. 7
    • 2.1.2 ARQUITECTURA ANDROIDComo ya se ha mencionado, Android es una plataforma para dispositivos móvilesque contiene una pila de software donde se incluye un sistema operativo,middleware y aplicaciones básicas para el usuario. Su diseño cuenta, entre otras,con las siguientes características: Busca el desarrollo rápido de aplicaciones, que sean reutilizables y verdaderamente portables entre diferentes dispositivos. Los componentes básicos de las aplicaciones se pueden sustituir fácilmente por otros. Cuenta con su propia máquina virtual, Dalvik, que interpreta y ejecuta código escrito en Java. Permite la representación de gráficos 2D y 3D. Posibilita el uso de bases de datos. Soporta un elevado número de formatos multimedia. Servicio de localización GSM. Controla los diferentes elementos hardware: Bluetooth, Wi-Fi, cámara fotográfica o de vídeo, GPS, acelerómetro, infrarrojos, etc., siempre y cuando el dispositivo móvil lo contemple. Cuenta con un entorno de desarrollo muy cuidadoso mediante un SDK disponible de forma gratuita. Ofrece un plug-in para uno de los entornos de desarrollo más populares, Eclipse, y un emulador integrado para ejecutar las aplicaciones.En las siguientes líneas se dará una visión global por capas de cuál es laarquitectura empleada en Android. Cada una de estas capas utiliza serviciosofrecidos por las anteriores, y ofrece a su vez los suyos propios a las capas deniveles superiores. 8
    • APPLICATIONS HOME CONTACTS PHONE BROWER … APPLICATION FRAMEWORK ACTIVITY MANAGER WINDOWS MANAGER CONTACTS PROVIDERS VIEW SYSTEM PACKAGE MANAGER TELEPHON MANAGER RESOURCE MANAGER LOCATION MANAGER ANDROID RUNTIMELIBRARIES CoreLibraries SURFACE MANAGER MEDIA FRAMEWORK SQLite Dalvik Virtual Machine OpenGL/ES FREETYPE WebKit SGL SSL Libc LINUX KERNEL Display Driver Cámara Driver DBluetooth Flash Memory Binder (PC) Driver Driver Driver USB Driver Keypad Driver Wifi Driver Audio Driver PowerManag ementeLa capa más inmediata es la corresponde al núcleo de Android. Android utiliza elnúcleo de Linux 2.6 como una capa de abstracción para el hardware disponible enlos dispositivos móviles. Esta capa contiene los drivers necesarios para que 9
    • cualquier componente hardware pueda ser utilizado mediante las llamadascorrespondientes. Siempre que un fabricante incluya un nuevo elemento dehardware, lo primero que se debe realizar para que pueda ser utilizado desdeAndroid es crear las librerías de control o drivers necesarios dentro de este kernelde Linux embebido en el propio Android.La elección de Linux 2.6 se ha debido principalmente a dos razones: la primera, sunaturaleza de código abierto y libre se ajusta al tipo de distribución que sebuscaba para Android (cualquier otra opción comercial disponible hoy día hubieracomprometido la licencia de Apache); la segunda es que este kernel de Linuxincluye de por sí numerosos drivers, además de contemplar la gestión dememoria, gestión de procesos, módulos de seguridad, comunicación en red yotras muchas responsabilidades propias de un sistemas operativo.La siguiente capa se corresponde con las librerías utilizadas por Android. Éstashan sido escritas utilizando C/C++ y proporcionan a Android la mayor parte de suscapacidades más características. Junto al núcleo basado en Linux, estas libreríasconstituyen el corazón de Android.Entre las librerías más importantes de este nivel, se pueden mencionar lassiguientes: La librería libc incluye todas las cabeceras y funciones según el estándar del lenguaje C. Todas las demás librerías se definen en este lenguaje. La librería Surface Manager es la encargada de componer los diferentes elementos de navegación de pantalla. Gestiona también las ventanas pertenecientes a las distintas aplicaciones activas en cada momento. OpenGL/SL y SGL representan las librerías gráficas y, por tanto, sustentan la capacidad gráfica de Android. OpenGL/SL maneja gráficos en 3D y permite utilizar, en caso de que esté disponible en el propio dispositivo móvil, el hardware encargado de proporcionar gráficos 3D. Por otro lado, SGL proporciona gráficos en 2D, por lo que será la librería más habitualmente utilizada por la mayoría de las aplicaciones. Una 10
    • característica importante de la capacidad gráfica de Android es que es posible desarrollar aplicaciones que combinen gráficos en 3D y 2D. La librería Media Libraries proporciona todos los códecs necesarios para el contenido multimedia soportado en Android (vídeo, audio, imágenes estáticas y animadas, etc.) FreeType, permite trabajar de forma rápida y sencilla con distintos tipos de fuentes. La librería SSL posibilita la utilización de dicho protocolo para establecer comunicaciones seguras. A través de la librería SQLite, Android ofrece la creación y gestión de bases de datos relacionales, pudiendo transformar estructuras de datos en objetos fáciles de manejar por las aplicaciones. La librería WebKit proporciona un motor para las aplicaciones de tipo navegador, y forma el núcleo del actual navegador incluido por defecto en la plataforma Android.Al mismo nivel que las librerías de Android se sitúa el entorno de ejecución. Éstelo constituyen las CoreLibraries, que son librerías con multitud de clases de Java,y la máquina virtual Dalvik.Los dos últimos niveles de la arquitectura de Android están escritos enteramenteen Java. El framework de aplicaciones representa fundamentalmente el conjuntode herramientas de desarrollo de cualquier aplicación. Toda aplicación que sedesarrolle para Android, ya sean las propias del dispositivo, las desarrolladas porGoogle o terceras compañías, o incluso las que el propio usuario cree, utilizan elmismo conjunto de API y el mismo framework, representado por este nivel.Entre las API más importantes ubicadas aquí, se pueden encontrar las siguientes: Activity Manager, importante conjunto de API que gestiona el ciclo de vida de las aplicaciones en Android. Window Manager, gestiona las ventanas de las aplicaciones y utiliza la librería ya vista Surface Manager. 11
    • Telephone Manager, incluye todas las API vinculadas a las funcionalidades propias del teléfono (llamadas, mensajes, etc.) Content Providers, permite a cualquier aplicación compartir sus datos con las demás aplicaciones de Android. Por ejemplo, gracias a esta API la información de contactos, agenda, mensajes, etc. será accesible para otras aplicaciones. View System, proporciona un gran número de elementos para poder construir interfaces de usuario (GUI), como listas, mosaicos, botones, check-boxes , tamaño de ventanas, control de las interfaces mediante tacto o teclado, etc. Incluye también algunas vistas estándar para las funcionalidades más frecuentes. Location Manager, posibilita a las aplicaciones la obtención de información de localización y posicionamiento, y funcionar según ésta. Notification Manager, mediante el cual las aplicaciones, usando un mismo formato, comunican al usuario eventos que ocurran durante su ejecución: una llamada entrante, un mensaje recibido, conexión Wi-Fi disponible, ubicación en un punto determinado, etc. Si llevan asociada alguna acción, en Android denominada Intent, (por ejemplo, atender una llamada recibida) ésta se activa mediante un simple clic. XMPPService, colección de API para utilizar este protocolo de intercambio de mensajes basado en XML.El último nivel del diseño arquitectónico de Android son las aplicaciones. Éstenivel incluye tanto las incluidas por defecto de Android como aquellas que elusuario vaya añadiendo posteriormente, ya sean de terceras empresas o de supropio desarrollo. Todas estas aplicaciones utilizan los servicios, las API ylibrerías de los niveles anteriores.(Tudela, 2009) 12
    • 1.1.3 MÁQUINA VIRTUAL DALVIK En Android, todas las aplicaciones se programan en el lenguaje Java y se ejecutan mediante una máquina virtual de nombre Dalvik, específicamente diseñada para Android. Esta máquina virtual ha sido optimizada y adaptada a las peculiaridades propias de los dispositivos móviles (menor capacidad de proceso, baja memoria, alimentación por batería, etc.) y trabaja con ficheros de extensión .dex (DalvikExecutables). Dalvik no trabaja directamente con el bytecode de Java, sino que lo transforma en un código más eficiente que el original, pensado para procesadores pequeños. Gracias a la herramienta “dx”, esta transformación es posible: los ficheros .class de Java se compilan en ficheros .dex, de forma que cada fichero .dex puede contener varias clases. Después, este resultado se comprime en un único archivo de extensión .apk (AndroidPackage), que es el que se distribuirá en el dispositivo móvil. Dalvik permite varias instancias simultáneas de la máquina virtual, y a diferencia de otras máquinas virtuales, está basada en registros y no en pila, lo que implica que las instrucciones son más reducidas y el número de accesos a memoria es menor. Así mismo, Dalvik no permite la compilación Just-in-Time. Esta máquina virtual responde a un deseo de mejorar y optimizar la ejecución de aplicaciones en dispositivos móviles, así como evitar la fragmentación de otras plataformas como Java ME. A pesar de esta aclaración oficial, no ha pasado inadvertido que con esta maniobra Android ha esquivado tener que utilizar directamente Java ME, evitando así que los futuros desarrolladores de aplicaciones tengan que comprar ninguna licencia, ni tampoco que publicar el código fuente de sus productos. El lenguaje Java utilizado en Android no sigue ningún JSR determinado, y Google se afana en recordar que Android no es 13
    • tecnología Java, sino que simplemente utiliza este lenguaje en sus aplicaciones.(Google World, 2011) 2.1.4 LA PLATAFORMA WINDOWS PHONE2.1.4.1 EXTINCIÓN DE WINDOWS PHONE 7Una buena plataforma móvil debe reconocer las restricciones de hardware que lamovilidad impone sobre el dispositivo. En comparación con los equipos deescritorio, los dispositivos móviles tienen menos memoria, menor eficacia deprocesamiento, un estado real de pantalla limitado y una duración limitada de labatería. Sume estas restricciones y concluirá que, en un dispositivo no dedicadodonde se ejecutarán varias aplicaciones, a la larga las aplicaciones se deberáncerrar para que haya recursos disponibles para otras aplicaciones.Windows Phone enfrenta esta restricción a través de una característica llamadaextinción. A pesar de que extinción pudiera sonar como una propuesta directa, enrealidad es un punto de contención entre los desarrolladores. Algunos planteanque no debiera ser necesaria. Otros plantean que es demasiado complicada. Elresto simplemente odiamos el nombre de la característica. Incluso así, lasrestricciones de dispositivos móviles la convierten en un mal necesario, por lo quelas buenas aplicaciones móviles deben ser capaces de administrar la extinción.2.1.4.2 CICLO DE VIDA DE LAS APLICACIONES DE WINDOWS PHONELa mayoría de los desarrolladores de Windows Phone llegan a la plataforma con laexpectativa de que el ciclo de vida de una aplicación se vea similar a:1. Inicio2. Ejecutar3. Salir4. Vuelva a 1 y empiece nuevamente. 14
    • Windows Phone 7 desafía esta expectativa al exponer un ciclo de vida distinto,uno que está menos orientado al proceso y más orientado a las sesiones.En Windows Phone 7, podría considerar al ciclo de vida como:1. Inicio2. Ejecutar3. Ejecución interrumpida o terminada4. Si se interrumpe, vuelva o, incluso si se interrumpe, comience de nuevo5. Si se termina, comience de nuevo.El beneficio de este nuevo modelo orientado a las sesiones es que los usuariospueden navegar entre las aplicaciones sin tener que pensar cómo el sistemaoperativo administra sus recursos. Al usuario no le interesa saber si interrumpir eljuego para responder un mensaje SMS entrante terminará el proceso del juego. Elusuario esperará poder volver al juego una vez que termine de leer el mensaje. Sieso funciona bien, los detalles subyacentes no resultan importantes.La desventaja para los desarrolladores es que hay un poco más que controlar parabrindar realmente la percepción de la continuidad de la sesión, dado que lassesiones siguen en ejecución en un sistema operativo tradicional y centrado en losprocesos. Para ajustar las sesiones en un mundo centrado en los procesos, puedecrear estados lógicos para la sesión: Iniciado, Activado, En ejecución,Desactivado, Extinto y Cerrado (o Finalizado).La ilustración 1 muestra el ciclo de vida práctico para una aplicación de WindowsPhone 7. Los eventos del ciclo de vida de la aplicación, descritos en la tablasiguiente, son expuestos por la claseMicrosoft.Phone.Shell.PhoneApplicationService. 15
    • Ilustración 1 - Ciclo de Vida en Windows PhoneEventos del ciclo de vida de aplicaciones Estado Evento DESCRIPCIÓN lógico PhoneApplicationService La aplicación se inicia cuando el usuario presiona el mosaico de inicio o el icono de Iniciado Inicio la lista de aplicaciones, o el usuario hace clic en una notificación de aviso. “Iniciado” es un inicio nuevo de la sesión. Activado Activado La aplicación se activa cuando el usuario presiona el botón Atrás y trae al primer 16
    • plano la aplicación que se ha desactivado anteriormente. En este caso, el usuario espera volver a una sesión en curso. Una vez que se ha iniciado o activado, laEn ejecución En ejecución aplicación está en ejecución. Una aplicación que está en ejecución se desactiva cuando el procesamiento en primer plano se transfiere desde su aplicación a otra aplicación o a unDesactivado Desactivado componente de sistema operativo(como un Selector o un Iniciador o la pantalla de bloqueo). La sesión se interrumpe, pero se espera reanudar más adelante. El usuario sale de la aplicación al presionar la tecla atrás en la páginaFinalizado (o Cierre principal.Terminado) Una vez que sale, el usuario espera volver a una aplicación nueva y actualizada.El estado extinto es un poco más complicado y no está directamente relacionadocon un evento PhoneApplicationService. Cuando una aplicación se desactiva, elsistema operativo no termina inmediatamente el proceso de esa aplicación. Enteoría, el sistema operativo termina la aplicación cuando necesita recursos y,cuando esto ocurre, la aplicación no recibe ninguna notificación, sino quesimplemente se termina. 17
    • En la práctica, Windows Phone 7 termina el proceso rápidamente una vez que elcontrol se transfiere a otra aplicación en primer plano, pero este no es un detallecon el que debiera contar. Microsoft ya anunció en el Congreso Mundial Móvilfuturas mejoras, como cambio rápido de aplicaciones, por lo tanto, no se basa enun detalle de la implementación para determinar cuándo se produce la extinción.En lugar de eso, prepárese para la extinción haciendo el trabajo adecuado en ladesactivación.2.1.4.3 DESACTIVACIÓN FRENTE A EXTINCIÓNUn teléfono tiene muchos procesos en ejecución a cada momento (shell, teléfono,etc.) pero tiene, como máximo, una aplicación en ejecución en primer plano.(Puede no tener ninguna si no hay una aplicación ejecutándose en primer plano).Cuando una aplicación en primer plano transfiere el control a otra aplicación o a uncomponente de sistema operativo, se desactiva. Cuando se desactiva un proceso,el sistema operativo puede terminar el proceso para liberar los recursos. Estaacción se llama extinción.Como puede ver, la extinción no ocurre cada vez que se desactiva la aplicación,pero sí ocurre siempre después de una desactivación. De hecho, desactivado esel último evento que PhoneApplicationService activa antes de la extinción, por lotanto, es aquí donde debe trabajar para activar nuevamente la aplicación másadelante.La siguiente tabla muestra todas las tareas distintas que llevan a la desactivacióny realiza una estimación de la probabilidad de que se produzca una extinción.Tareas de desactivación Acción ¿Desactivado? ¿Extinto? 18
    • El usuario presiona el No; con esto se No; la desactivación nunca ocurrió.botón Atrás en la cierra laprimera página de la aplicación.aplicación.El usuario presiona el Sí Muy probable, pero no garantizado. Unosbotón Inicio pocos segundos después de desactivar la aplicación, se extingue. Si el usuario vuelve rápidamente a la aplicación después de la desactivación, no se extinguirá. Esto podría considerarse como un tiempo de expiración indeterminado.El usuario invoca un Sí Muy probable, pero se aplica tiempo deselector o un iniciador expiración.que se extingueEl usuario invoca un Sí Menos probable, pero puede pasar. Si elselector o un iniciador usuario presiona el botón Inicio en medioque no se extingue de la tarea, verá la regla “El usuario presiona el botón Inicio”. No se activa un nuevo evento Desactivado, porque la aplicación ya estaba desactivada.Aparece la pantalla de Sí Muy probable, pero se aplica tiempo debloqueo y la aplicación expiración.no está configuradapara ejecutarse enmodo de bloqueo 19
    • Aparece una Sí Muy probable, pero se aplica tiempo denotificación de aviso y el expiración.usuario la tocasuavemente,transfiriéndola a otraaplicación en primerplanoHay un subconjunto de selectores que no se extinguen de inmediato, pero que sepueden extinguir si el usuario realiza una acción que extinga el proceso. Estasacciones incluyen PhotoChooserTask (a menos que el usuario especifique elrecorte), CameraCaptureTask, MediaPlayerLauncher, EmailAddressChooserTasky PhoneNumberChooserTask.Todos los demás selectores e iniciadores se extinguen una vez que se llama almétodo Show.Para ver en acción el ciclo de vida de aplicaciones de Windows Phone 7, inicie lamuestra LWP.TombStoning que aparece en la descarga del código.2.1.4.4 GUARDADO Y RESTAURACIÓN DEL ESTADOComo el objetivo de la navegación basada en sesión es facilitar que el usuarioalterne sin problemas entre las aplicaciones de primer plano, debe guardar todoestado pertinente en el evento Desactivado y restaurar el estado en el eventoActivado. La mayoría de las aplicaciones tienen tres tipos de estado queadministrar: El estado de aplicación persistente siempre se debe conservar. Esto incluye la configuración de la aplicación, los datos del usuario, etc. 20
    •  El estado de la aplicación específica de sesión incluye un estado temporal como memorias caché y ViewModels que se deben restaurar en la activación, pero que se iniciaron de nuevo en un inicio nuevo de la aplicación. El estado específico de UI o de página es necesario para restaurar un PhoneApplicationPage cuando se activa una aplicación. Windows Phone 7 guarda la pila de retroceso de una aplicación cuando se extingue. Después de la activación, restaura solo la última página activa antes de que se extinguiera la aplicación. Si el usuario presiona el botón Atrás, se inicia la página anterior.El estado de aplicación persistente se debe guardar en IsolatedStorage o a travésde la clase ApplicationSettings. El estado de aplicación se debe guardar lo antesposible, por ejemplo, en caso de que la batería se agote.Si son datos de usuario (como una memoria caché de sesión) y no deseaserializar con demasiada frecuencia, debieran guardarse tanto en el eventoDesactivado como en el de Cierre y (de manera simétrica), se debieran restauraren los eventos Activado o de Inicio.El estado específico de sesión se puede guardar en un almacenamiento aislado sidesea tener el control sobre los formatos de serialización o si tiene demasiadosdatos, o se pueden guardar en el diccionario PhoneApplicationService.State.Debiera guardarlo solo en el evento Desactivado y restaurarlo en el eventoActivado.El estado específico de página debiera guardarse en el diccionarioPhoneApplication Page State. La clave para guardar el estado de página esrecordar que la aplicación tiene una pila de retroceso de páginas que seserializarán automáticamente cuando se produzca elPhoneApplicationServiceDeactivated.Para mantener las páginas listas para extinción, debe escuchar el reemplazo dePhoneApplication Page OnNavigatedFrom en la página y guardar cualquier estadode vista que todavía no se haya confirmado en el modelo (o ViewModel) en el 21
    • diccionario de la página. No espere hasta el evento Desactivado, porque entoncesno podrá alcanzar las páginas en la pila de retroceso.Por supuesto, si guardar el estado de página cuando recibe OnNavigatedFrom,debiera restaurarlo en el reemplazo de OnNavigatedTo para la página.También podría guardar el estado específico de página en ViewModels y luegoserializar su ViewModels como estado de sesión, pero eso requeriría guardar unestado no confirmado en un ViewModel, por lo que no lo recomiendo. Use lainfraestructura disponible para mantenerse disponible para optimizacionesposteriores de la plataforma.2.1.4.5 ELIMINACIÓN DE RIESGOSLa extinción no es difícil. Es un trabajo algo tedioso y exige coherencia yplaneación. Si la aplicación se desactiva pero no se extingue, su estado seguirá enla memoria y no se reconstruirá.Evita basarse en constructores de clase que crean un estado necesario para suaplicación, pero que se pueda liberar durante la desactivación. Se prefiere lasimetría. Use los eventos Desactivado y Activado de PhoneApplicationServicepara el estado en el nivel de la aplicación y OnNavigatedFrom u OnNavigatedTopara el estado de la página.Si tiene objetos (singletons) en la aplicación con instancias que se crean fuera delas llamadas de activación (probablemente debido a una creación de instancia conretraso), compruebe siempre si están construidos y se inicializan correctamenteantes de intentar usarlos.Un error común que he encontrado es leer datos en el eventoPhoneApplicationServiceActivated o en PhoneApplication Page OnNavigatedTo yno restablecerlos. Las páginas se pueden NavigatedTo varias veces(independientemente de la extinción) e incluso una sesión se puede extinguirvarias veces durante una sesión. 22
    • Una vez que ha restaurado el estado, elimínelo. Puede definirlo más tarde en elreemplazo de NavigatedFrom para su página o en el evento Desactivado de laaplicación.Sepa qué guarda y cuándo restaurarlo. Restaurar oportunamente la aplicación esparte de hacer que sea fácil que el usuario vuelva a la aplicación. Si guardamuchos datos de cualquier estado de aplicación o página, la activación sedemorará. Aproveche el almacenamiento aislado si es necesario poner ensegundo plano el estado de carga que pudiera no ser necesario inmediatamentecuando se activa la aplicación. Tanto la activación como la desactivación debieranocurrir en menos de 10 segundos. Tenga en cuenta esto o el sistema operativopodría terminar el proceso antes de finalizar la desactivación o cuando se reactive.Sin embargo, debiera apuntar a mucho menos de 10 segundos.Comprenda las restricciones del marco de serialización. Como máximo, puedealmacenar alrededor de 2 MB en todo el estado de aplicación y la página. Si eltotal suma más, comenzará a ver excepciones cuando navega y cuando hace ladesactivación. No debiera serializar esta cantidad de datos en el estado de página.Si necesita almacenar en caché conjuntos de datos de gran tamaño, manténgalosen un almacenamiento aislado.Use cadenas de consulta para la navegación de páginas. Si debe pasar contexto auna página nueva, use la cadena de consulta pasada a la página para pasar todoslos datos o solo un identificador único (un token) a un localizador de servicios quepuede buscar los datos basándose en ese token. No piense que ViewModels o elestado de página estarán disponibles cuando las páginas se activan después de laextinción.Tenga presente la relación entre OnNavigatedTo y PhoneApplication PageLoaded. Dentro de OnNavigatedTo, el árbol visual de la página todavía no estácompletamente construido. A menudo, deberá extraer el estado restaurado, peroespere a que el evento Cargado de la página restaure el estado de UI. Losejemplos de las acciones que se deben retrasar incluyen el Enfoque, la definiciónde SelectedIndex en un control dinámico y un desplazamiento. 23
    • Si tiene muchos datos que guardar y restaurar, y no debiera, considere algunasoptimizaciones avanzadas. Observe que debe hacer esto solo si es necesario yasegúrese de realizar pruebas exhaustivas.Para detectar extinciones, establezca una marca en su clase de aplicación enDesactivado. Si la marca no se restablece en Activado, significa que no estabaextinto y que todas sus páginas debieran estar todavía en la memoria y que nonecesitan restauración. Para combinarla con la detección de extinción en laspáginas, puede usar un token para cada activación dentro de una sesión.Otra optimización es escuchar el reemplazo de OnNavigatingFrom de la página ydetectar la dirección. Si NavigationMode retrocede, la página se destruirá y nohabrá motivo para guardar su estado.Nuevamente, la planeación resulta clave para realizar una extinción adecuada. Nodeje la extinción para el final del ciclo de desarrollo de la aplicación ni intenteajustarla retroactivamente. Planéela en una etapa temprana, impleméntela cuandoesté en el proceso y realice pruebas exhaustivas.2.1.4.6 PUEDE HACERLO MUY BIENUna última sugerencia para los desarrolladores es pensar muy bien respecto dehacer que la experiencia no presente inconvenientes. Los controles de WindowsPhone 7 le permiten evitar fácilmente una página. Para hacerlo realmente sininconvenientes para el usuario, para que así sientan que nunca han salido de unapágina o de una aplicación, debiera considerar la restauración de los siguienteselementos: SelectedIndex para el control dinámico (si la página contiene un control dinámico) La posición de desplazamiento en un ListBox o en cualquier otro ScrollViewer en la página 24
    •  Niveles de zoom y otras transformaciones en un control de mapa, visor de imágenes o cualquier otro control que admite manipulación Texto no confirmado en un TextBox; si el TextBox es crítico para la aplicación (el texto de los mensajes en una aplicación de Twitter, por ejemplo) considere restaurar la selección de texto, la posición del símbolo de intercalación y el enfoque Elemento que tenía enfoque en una página (especialmente si es un TextBox, que necesita mostrar SIP) 2.2 MARCO TEÓRICO LEGAL 2.2.1 CÓMO SUBIR APLICACIONESSubir aplicaciones a Google Play es muy fácil una vez que te has registrado. En lapantalla principal de laconsola para desarrolladores, selecciona "Subiraplicaciones". Tendrás que completar la información de tu aplicación que se indicaa continuación:Subir recursos Tamaño de archivo APK: el tamaño máximo admitido es 50 MB. Borrador de archivo .apk de aplicación: al subir un archivo .apk, se puede guardar como un borrador mientras editas el resto de aspectos de la lista.Ten en cuenta que los nombres de paquetes de los archivos de aplicaciones sonúnicos y permanentes, por lo que debes elegirlos con cuidado. Los nombres depaquetes no se pueden eliminar ni utilizar en el futuro. Capturas de pantalla: son necesarias dos capturas de pantalla. Las seis restantes son opcionales. Icono de aplicación de alta resolución (obligatorio) 25
    • Gráfico promocional (opcional) Gráfico de funciones (opcional) Vídeo promocional (opcional)Especificación de detalles Idioma: sirve para indicar el idioma de la aplicación. El idioma predeterminado es el inglés de EE.UU. La lista de idiomas irá aumentando a medida que los dispositivos con la tecnología de Android estén disponibles en más idiomas. Nombre: es el nombre de la aplicación tal como te gustaría que apareciera en Google Play. Puedes añadir un nombre por idioma. Descripción: es la descripción de tu aplicación que se puede consultar en Google Play. Utiliza la función de traducción para traducir la descripción de tu aplicación a otros idiomas. En este campo, puedes utilizar un máximo de 4.000 caracteres. Cambios recientes: la función de cambios recientes te ofrece la oportunidad de añadir notas sobre los cambios específicos de la versión más reciente de tu aplicación. Utiliza el campo de cambios recientes para informar a tus usuarios sobre los cambios que has hecho en la aplicación. Texto promocional: es el texto situado junto al gráfico promocional en lugares destacados de Google Play. Tipo de aplicación: Google Play se divide en dos tipos de aplicaciones principales ("Aplicaciones" y "Juegos"). Categoría: debes elegir una categoría para la aplicación.Opciones de publicación Protección contra copias: la protección contra copias puede contribuir a evitar que se copien las aplicaciones desde un dispositivo. Aumenta la 26
    • cantidad de memoria necesaria para instalar la aplicación en el teléfono. Pensamos que la protección contra copias quedará obsoleta en breve. Ubicaciones: son las ubicaciones en las que puedes distribuir tus aplicaciones. o No todas las ubicaciones de la lista actual tienen usuarios con dispositivos con la tecnología de Android. o Puedes seleccionar las ubicaciones de una en una o elegir la opción "Todas las ubicaciones actuales y futuras". Esta opción significa que se habilitarán más ubicaciones de distribución a medida que las vayamos habilitando para tu aplicación.Información de contacto Debes elegir un canal de asistencia para tu aplicación: sitio web, correo electrónico o teléfono. Los usuarios de Google Play verán esta información. Puedes elegir más de un canal de asistencia.(Google Play, s.f.). 27
    • CAPITULO III CAPÍTULO III 3.1 MARCO PROPOSITIVO (PROPUESTA)3.1.1 INTRODUCCIÓN Hoy en día, los videojuegos conforman un papel primordial en la vida de las personas, ya que ayudan a mejorar su estado emocional, su rendimiento, y ayudan a centrarse en tareas que agreguen valor. Y que mejor manera de solucionarlo con un video juego en la plataforma móvil Android, llamado “El ahorcado” usando la herramientaCanvas.3.1.2 DESCRIPCIÓN DE LA PROPUESTA Nuestra propuesta es contribuir a la sociedad, tratando de solucionar un poco el estrés ejercido por nuestras acciones del día a día dejando de lado el aburrimiento, desconcentración y mal humor por nuestras actividades rutinarias; y que mejor manera que con el videojuego “El ahorcado”; dándonos un poco de distracción y entusiasmo en dicho entorno. 28
    • 3.1.3 ALCANCE DE LA PROPUESTA Siempre que exista una necesidad humana, real o inducida, de un bien o un servicio, habrá necesidad de invertir, pues hacerlo es la única forma de producir dicho bien o servicio. En la actualidad, una inversión inteligente requiere una base que lo justifique, y como ya se mencionó la base es el aburrimiento, desconcentración y mal humor; y para completar estoel videojuego será gratuito para mejorar nuestro día a día con esta distracción.3.1.4 RECURSOS NECESARIOS HUMANOS:  Rosa Andrea Alcívar Aray  Josselyn Tatiana Gómez Bravo  Miguel Ángel Velásquez Castillo  Ing. Jorge Pincay (Tutor)  Ing. Cesar Cedeño  Ing. Edgardo Panchana  Ing. Jacinto Reyes MATERIALES:  Espacio de trabajo  Mobiliario  Ordenadores  Hojas 29
    •  Lapiceros  Lápiz  Teléfonos Celulares  Impresora, etc. TECNOLÓGICOS:  Entorno de desarrollo “Eclipse”  Software DevelopmentKit - Kit de desarrollo de software o devkit (SDK)de Android.  Programas ofimáticos.  Android Development Tools - Herramienta de desarrollo para Android (ADT).  Expression Blend para visual studio 2012.  Software Development Kit - Kit de desarrollo de software o devkit (SDK) de Windows Phone.3.1.5ESTUDIO DE FACTIBILIDAD Factibilidad Técnica Para la óptima ejecución del videojuego “El ahorcado”, se utilizará la plataforma Android, API 8 (2.2). El cual es óptimo para el manejo del juego y por lo cual es una versión base de la plataforma. 30
    • Factibilidad Operacional En base a los requerimientos técnicos antes establecidos, es necesario para la óptima utilización del videojuego y ejecución del mismo, se requiere que el usuario tenga conocimientos de la versión del sistema operativo móvil, así como experiencia del manejo del juego, para una óptima utilización. Estos requerimientos del usuario ayudaran a reducir los tiempos de espera en ejecutar la aplicación. Factibilidad Económica El desarrollo de este proyecto solo produce inversión de tiempo en el desarrollo del videojuego “El ahorcado”, ya que lo material esta adquirido y las horas hombre se tomaran como un beneficio a los desarrolladores del sistema, ya que se utilizara para la acreditación de la materia de Proyecto Integrador I, Ingeniería de Software y Programación Móvil, del curso escolar. Solo se invertirán los gastos que provocara la investigación inicial y en transcurso del desarrollo del sistema que en su momento se justificaran; como son uso de material de papelería e Internet, que son los que se hasta el momento se han utilizado.3.1.6REQUISITOS REQUISITO 1 Detalle.- Debe tener la opción de cambiar de idioma (Español o Inglés). 31
    • Fundamentación.- De acuerdo al estudio realizado por la Universidad deHelsinki se revelo que los videojuegos que se encuentran en un idiomadiferente al del usuario, permiten que estos desarrollen sus habilidades yconocimientos en este idioma.Especificación.- Opción para el cambio de idioma.Fuente.- Ing. Jorge Pincay. REQUISITO 2Detalle.- Debe estar desarrollado en la plataforma Android.Fundamentación.- Al ser Android una de las plataformas más grandes desistemas operativos orientados a móviles, esté cuenta con una grancantidad de información y herramientas para el desarrollo de videojuegosademás que se puede contar con la ayuda de los foros de las comunidadesde desarrollo de software libre.Especificación.- Desarrollo en la plataforma Android.Fuente.- Ing. Edgardo Panchana. REQUISITO 3Detalle.- Debe contar con la opción de activar o desactivar el sonido delvideojuego.Fundamentación.- Numerosos estudios demuestran que escuchar músicajunto con un juego es una gran combinación para desestresarse, pero hayque tener en cuenta que a algunas personas no les agrada mucho lamúsica pero si los juegos. 32
    • Especificación.- Opción para activar y desactivar el sonido.Fuentes.- Andrea Alcívar, Tatiana Gómez, Miguel Velásquez. REQUISITO 4Detalle.- Debe contar con un escenario elaborado con la herramientaCanvas.Fundamentación.- La herramienta Canvas ofrece muchos beneficios almomento de desarrollar un videojuego ya que permite generar gráficosdinámicamente.Especificación.- Escenario elaborado con herramienta Canvas.Fuentes.- Andrea Alcívar, Tatiana Gómez, Miguel Velásquez. 33
    • 3.2 DISEÑO Y CONSTRUCCIÓN DE LA PROPUESTALa metodología escogida para aplicar en el diseño y construcción de la propuestaes la metodología Scrum ya que permitemostrar los resultados cada poco tiempo,podemos gestionar las expectativas del cliente de una forma más efectiva. Permitegenerar gran parte del producto en poco tiempo y el cliente ya puede empezar autilizar esa funcionalidad.Y por último al ser un proceso iterativo incremental el proceso se va mejorando encada iteración.3.2.1CASO DE USO. Ilustración 2 Caso de Uso 34
    • 3.2.2SESIÓN DE SCRUM 3.2.2.1Primera Reunión (Visión) En la primera reunión se realizó una pequeña exposición del proyecto a desarrollar. El proyecto consiste en desarrollar el videojuego “El ahorcado” para la plataforma Android. La visión del proyecto es que esta aplicación permita distraer a los usuarios de las actividades rutinarias que los agobian a la vez que pueden ir aprendiendo un nuevo idioma y mejorar su ortografía. Se trató de una breve reunión de 45 minutos, donde se comunicó la visión del proyecto y todos comprendieron la importancia y el valor del mismo. 3.2.2.2 Segunda Reunión (Exposición) En esta reunión se especificaron y expusieron el Backlog del producto. 3.2.2.2.1Backlog del Producto Opción de nuevo juego y salir. Opción de activar o desactivar la música. Opción para cambiar el idioma. Escenario del juego. Listado de palabras para el juego. Pantalla de inicio. 35
    • Opción de Nuevo Juego y salir Al seleccionar la opción de nuevo juego aparecerá la pantalla del escenario del juego donde se podrá comenzar a jugar. Al seleccionar la opción de salir la aplicación se cerrará.Opción de activar y desactivar la música Con esta opción el usuario podrá activar o desactivar la música del juego, para esto se debe de tener en cuenta que debe de ser un sonido agradable, por este motivo se llegó al acuerdo que la música del juego sería “Némesis”.Opción para cambiar de idioma. Esta opción le permitirá al usuario cambiar el idioma del videojuego, las opciones disponibles serán español e inglés, se escogieron estos idiomas ya que son los 2 más populares en los videojuegos.Escenario del juego El escenario del juego será la pantalla donde se desarrollará el videojuego la cual debe contar con las rayas donde se colocarán las palabras acertadas y el monigote que indicará el fin del juego.Listado de palabras Se debe escoger una gran cantidad considerable de palabras tanto en español como en inglés, en este listado se deben incluir palabras sencillas como complicadas. 36
    • Escenario del juego (2) Después de analizar cuál sería la mejor herramienta para la creación del escenario del juego se llegó a la conclusión que se utilizaría la herramienta Canvas ya que permite generar gráficos dinámicos y estáticos.3.2.2.3 Tercera Reunión (Resolución)En esta reunión se estimó el tiempo que se dedicó a cada una de las tareas.Escenario del juego:4 semanasOpción de nuevo juego: 2 semanasOpción de cambio de idioma: 2 semanasOpción de activar y desactivar música: 2 semanasListado de palabras: 1 semana Comienzo del Sprint Para el comienzo del Sprint se dividieron algunas de las tareas entre los integrantes del equipo para que cada uno consultara todo lo posible sobre el tema que a cada uno le toco. Quedando lo siguiente: Andrea Alcívar.- Investigar sobre cómo poner música en las aplicaciones en Android. Tatiana Gómez.- Investigar las reglas y los pasos del videojuego “El Ahorcado”. 37
    • Miguel Velásquez.- Investigar sobre cómo trabajar con la herramienta Canvas en la plataforma Android.Reunión DiariaLas reuniones diarias se realizaron de Lunes a Viernes en las instalacionesde la Facultad de Ciencias Informáticas a las 3:00 PM.En cada reunión diaria cada miembro del equipo da a conocer el avanceque han obtenido en las tareas destinadas.Revisión del objetivoCada semana (dos veces en las 3 semanas del sprint) se realiza unarevisión del objetivo.Pasada la primera semana.Los integrantes del equipo comienzan la elaboración del primer entregablea partir de toda la información investigada.Pasada la segunda semanaEl equipo sigue trabajando en el primer entregable.Pasada la tercera semanaSe analiza que se ha logrado hasta el momento y que falta para el primerentregable. 38
    • Reunión de revisión Para esta reunión ya se cuenta con el primer entregable el cual consiste de la pantalla de nuevo juego, salir y la pantalla del escenario. Reunión de Retrospectiva Esta reunión se realiza el mismo día de la reunión de revisión en la cual se llegó al acuerdo que a la pantalla del escenario del juego había que mejorar el diseño y además de aumentar las demás tareas a la aplicación Más adelante se detallan cada uno de los entregables y el resultado obtenido, teniendo en cuenta que cada entregable corresponde a un Sprint.3.2.3PRIMER ENTREGABLEEl primer entregable consistía en realizar la aplicación en la plataforma Androiddonde se pudiera jugar el Ahorcado. 39
    • Ilustración 3 - Primer Entregable3.2.4SEGUNDO ENTREGABLEA partir del primer entregable se pudieron realizar algunas modificaciones ymejoras las cuales fueron: La opción de escoger el idioma El fondo de la aplicación de color oscuro El monigote realizado con la herramientaCanvas 40
    • Ilustración 5 - Segundo Entregable (Pantalla Ilustración 4 - Segundo E Principal)3.2.5TERCER ENTREGABLEA partir del segundo entregable se le aumentó a la aplicación la opción de poderactivar o desactivar la música del juego. 41
    • Ilustración 6 - Tercer Entregable3.2.6CUARTO ENTREGABLE (FINAL)Una vez se tuvo la aplicación terminada solo faltaba agregar la pantalla de inicio y darle un diseño agradable y amigable para Ilustración 8 - Cuarto entregable (SplashScreen) Ilustración 7 - Cuarto entregable (Página principal) 42
    • el usuario. CONCLUSIÓNCONCLUSIÓN Concluimos, de lo explicado en este documento, que el juego “El Ahorcado” ha sido diseñado pensando para el entretenimiento y facilitar la labor del día a día teniendo un medio para relajarnos del estrés vivido en estos días. Al dibujar el monigote tener en cuenta el orden que se debe seguir:  Base  Cabeza  Cuerpo  Brazos  Piernas 43
    • RECOMENDACIONESRecomendacionesAndroid Se debe tener cuidado con los valores que se le asignan al Canvas, puesto que cualquier modificación exagerada puede alterar la figura del monigote. La longitud de las palabras no debe exceder el límite de 10 letras.Windows Phone: Se recomienda realizar el diseño en Blend. La longitud de las palabras no debe exceder el límite de 8 letras. 44
    • BIBLIOGRAFÍABIBLIOGRAFÍAAndroideity. (s.f.). Obtenido de Androideity: http://androideity.com/tag/primeros-pasos-en- android/Autentia. (s.f.). Obtenido de Autentia: http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=inicioAndroid#033Avilez, J. (s.f.). Monografias. Recuperado el 29 de Octubre de 2012, de Moniografias: http://www.monografias.com/trabajos12/recoldat/recoldat.shtmlCurso Programación Android. (s.f.). Obtenido de Curso Programación Android: http://www.sgoliver.net/blog/?page_id=3011Google paly. (s.f.). Recuperado el 23 de Noviembre de 2012, de http://support.google.com/googleplay/android- developer/bin/answer.py?hl=es&answer=113469Google Play. (s.f.). Recuperado el 21 de Noviembre de 2012, de http://support.google.com/googleplay/android- developer/bin/answer.py?hl=es&answer=113469 45
    • Google World. (2 de Febrero de 2011). Google World. Obtenido de http://google- world.webnode.es/news/plataforma-android/Terapia Integral. (2011). Obtenido de http://www.terapiaintegral.com/2011-02-04/los- videojuegos-mejoran-tu-memoria-y-masTudela, J. A. (Enero de 2009). Recuperado el 29 de Octubre de 2012, de http://e- archivo.uc3m.es/bitstream/10016/6506/1/PFC_Jaime_Aranaz_Tudela_2010116132629.pd funiversal.com. (9 de noviembre de 2011). Obtenido de http://www.eluniversal.com.mx/articulos/67124.htmlWikipedia. (s.f.). Wikipedia. Recuperado el 28 de Octubre de 2012, de Wikipedia: http://es.wikipedia.org/wiki/Android 46
    • ANEXOS 47
    • UNIVERSIDAD LAICA ELOY ALFARO DE MANABÍ FACULTAD DE CIENCIAS INFORMÁTICASJUEGO EL AHORCADO MANUAL DE USUARIO DESARROLLADORES: ALCÍVAR ARAY ROSA ANDREA GOMEZ BRAVO JOSSELYN TATIANA VELÁSQUEZ CASTILLO MIGUEL ÁNGEL 48
    • Manual de UsuarioEl Ahorcado es un clásico que todos conocemos y que seguro que habrán jugadomás de una vez. Se tiene que ir diciendo letras hasta conseguir adivinar la palabraque nos indican. Pero cuidado con las letras que se digan, ya que por cada unaque se diga mal se irá dibujando el muñeco de El Ahorcado y como se dibujeentero se habrá perdido la partida.Quien no ha jugado nunca a El Ahorcado dibujándolo en una hoja de papelcuando éramos pequeños. Este juego es todo un clásico y ahora podremosdisfrutar de él donde y cuando queramos en nuestro móvil ya sea en Android oWindows Phone, aunque no tengamos una hoja de papel a mano.El Ahorcado para Android o Windows Phone sigue conservando su esencia másallá de las novedades que nos trae esta versión. Se puede elegir entre los idiomasinglés o español para jugar y en la versión Android tiene 6 opciones para fallar yen Windows Phone 7.Una vez seleccionada se tiene que adivinar las palabra que hay escondida detrásde los guiones, los guiones son el número de letras que tiene esa palabra y setiene que ir diciendo letras hasta que se consiga adivinarla, pero deberéis dellevar cuidado porque cada letra que se diga mal el ahorcado se irá dibujandoarriba y como se dibuje entero se habrá perdido.Una vez se sepa la palabra que hay escondida, solo bastará con indicar las letrascorrectas para que la palabra se vaya formando, cuando se complete saldrá unaventana nueva en la que se indicará que se ha ganado esa partida y se puedejugar todas las veces que se quiera.El Ahorcado es un juego que no puede faltar en nuestros dispositivos móviles,debemos de tenerlo aunque solo sea para recordar viejos tiempos. 49
    • El Ahorcado en AndroidSe abre la aplicación en Android. Ilustración 9 - Icono de la AplicaciónSe abre la pantalla de bienvenida. Ilustración 10 – Splash Inicio Fig. 13Pantalla de del JuegoSe selecciona el lenguaje con el que desea jugar y el sonido si se desea activar odesactivar. 50
    • Ilustración 11 –Selección del Idioma (juego)En la siguiente pantalla selecciona si quiere empezar un nuevo juego o se deseasalir de la aplicación. Ilustración 12 - Selección del Nuevo Juego Fig. 15 Nuevo juego (Español) Ilustración 13 - Selección juego (Ingles) Fig.16 Nuevo del Nuevo Juego en Inglés 51
    • Seleccionamos Empezar Nuevo Juego, y nos muestra la pantalla del juego con lasopciones de las letras para adivinar. Ilustración 14 – Escenario del JuegoY comenzamos a jugar, seleccionando las letras; por ejemplo seleccionamos laletra A. Ilustración 15 – Primera Palabra Acertada 52
    • Se acertó y se coloca la letra A en la pantalla, seleccionamos la letra P. Ilustración 16 - Segunda Palabra AcertadaSe acertó y se coloca la letra P en la pantalla, insertamos la letra O. IlustraciónFig. - Tercera Palabra Acertada 17 20 Palabra acertada 53
    • Se acertó y se coloca la letra O en la pantalla, insertamos la letra E. Ilustración 18 - Primera Palabra IncorrectaFalló y se comienza a dibujar el monigote por la cabeza, insertamos la letra L. Ilustración 19 - Cuarta Palabra Acertada 54
    • Fig. 22 Palabra acertada Ilustración 20 - Segunda Palabra IncorrectaSe acertó y se coloca la letra L en la pantalla, insertamos la letra Y.Falló y continua dibujándose el monigote por el cuerpo, insertamos la letra T. 55
    • Se acertó y se coloca la letra T en la pantalla, insertamos la letra C. Ilustración 21 - Quinta Palabra Acertada Ilustración 22 - Sexta Palabra AcertadaSe acertó y se coloca la letra C en la pantalla, insertamos la letra M. Ilustración 23 - Tercera Palabra Incorrecta 56
    • Falló y se sigue dibujándose el monigote por el brazo izquierdo, insertamos la letraE. Ilustración 24 - Cuarta Palabra IncorrectaFalló y sigue dibujándose el monigote por el brazo derecho, insertamos la letra U. Ilustración 25 - Quinta Palabra Incorrecta 57
    • Falló y sigue dibujándose el monigote por la pierna izquierda, insertamos la letra I. Ilustración 26 – Juego Ganado Fig. 28 Palabra incorrectaY se encontró la palabra correcta; POLITICA!! Saliendo un mensaje deFELICITACIONES GANASTE.Aceptamos en el mensaje y nos vuelve a la páginaanterior. Ilustración 27 - Nuevo Juego 58
    • Aquí seleccionamos Empezar Nuevo Juego si queremos seguir jugando o Salir siqueremos salir de la aplicación.Y en el caso de no acertar nos sale el siguiente mensaje. Ilustración 28 - Juego Perdido 59
    • El Ahorcado en Windows PhoneSe abre la aplicación en Windows Phone y el procedimiento es parecido al delAndroid, se abre una ventana para elegir en que idioma queremos jugar. Ilustración 29 - Selección de IdiomaSeleccionamos el que mejor nos parezca dirigiéndonos a la siguiente ventana paracomenzar el juego. Ilustración 30 - Escenario del Juego 60
    • Nos aparecen las opciones de las letras para adivinarlas. Ilustración 31 - Ayuda del JuegoY cuando a medida que se vaya perdiendo va apareciendo el monigote ahorcado. Ilustración 32 - Escenario del Juego 61
    • Ilustración 33 - Monigote del JuegoIlustración 37 - Monigote del Juego 1 Ilustración 36 - Monigote del Juego 2 62Ilustración 34 - Monigote del juego 3 Ilustración 35 - Perdió.