republica bolivariana de venezuela universidad

Anuncio
REPUBLICA BOLIVARIANA DE VENEZUELA
UNIVERSIDAD NUEVA ESPARTA
FACULTAD DE CIENCIAS DE LA INFORMÁTICA
ESCUELA DE COMPUTACIÓN
TRABAJO DE GRADO
SISTEMA AUTOMATIZADO BASADO EN TÉCNICAS DE GAMIFICACIÓN
PARA EL REGISTRO DE DATOS DE USUARIOS CON FINES
PREDICTIVOS. CASO: PREDICTVIA
Tutor: Jorge A. Padua
Trabajo de Grado presentado por:
Br. Serrada, Ismael
C.I 18.830.513
Para optar por el título de:
Licenciado en Computación
Mayo, 2015
Caracas – Venezuela
SISTEMA AUTOMATIZADO BASADO EN TÉCNICAS DE GAMIFICACIÓN PARA EL REGISTRO DE DATOS DE
USUARIOS CON FINES PREDICTIVOS. CASO: PREDICTVIA by Ismael Serrada is licensed under a Creative
Commons Attribution 4.0 International License.
APROBACIÓN DEL TUTOR
En mi carácter de Tutor del Trabajo de Grado presentado por el
ciudadano ISMAEL SERRADA para optar al grado de Licenciado en
Computación, considero dicho Trabajo de Grado reúne los requisitos y
méritos suficientes para ser sometido a la presentación pública y evaluación
por parte del jurado examinador que se designe.
En la Ciudad de Caracas, a los 27 del mes de Julio de 2015.
__________________
Lic. Jorge A. Padua
C.I:14.889.520
ii
Universidad Nueva Esparta
Facultad de Ciencias de la Informática
Escuela de Computación
Trabajo de Grado
SISTEMA AUTOMATIZADO BASADO EN TÉCNICAS DE GAMIFICACIÓN PARA
EL REGISTRO DE DATOS DE USUARIOS CON FINES PREDICTIVOS. CASO:
PREDICTVIA
HOJA DE JURADOSdo
JURADO I
JURADO II
Nelly Meléndez
Martha E. Gómez
C.I:7.835.301
C.I: 11.819.722
Firma
Firma
Tutor
Jorge A. Padua
C.I: 14.889.520
Firma
Julio, 2015
Caracas, Venezuela
3
DEDICATORIA
A mis padres Jaime Serrada y Luz Serrada por ser siempre guía en mi vida, y
la inspiración necesaria para llevar a cabo mi carrera profesional con esmero y
esfuerzo.
A todas las personas cuya pasión por el tema de aplicaciones de
entretenimiento digital han marcado pauta y momentos vitales en sus vidas. La
perseverancia siempre nos hará alcanzar grandes metas.
Ismael Serrada.
4
AGRADECIMIENTOS.

Primeramente a Dios, por siempre estar presente en mi vida, por darme la
sabiduría y las fuerzas para crear y desarrollar este trabajo de grado, y a su
vez permitir que pudiera desarrollarme en una trayectoria profesional.

A mis padres Jaime y Luz Serrada, y mi Hermano Samuel Serrada por
siempre darme su apoyo incondicional en todos los momentos de este
trabajo, por su ejemplo vital en mi vida.

A PREDICTVIA C.A, por darme la oportunidad de formar parte de su equipo
de desarrollo. Por todas las enseñanzas y conocimientos que pude
conservar en el desarrollo de todo el proyecto.

A la Profesora Nelly Meléndez, por su apoyo incondicional y consejos
motivadores que fueron de gran ayuda en momentos difíciles del trayecto
de trabajo de grado.

A mi tutor José A. Padua, por ser un tutor excepcional, un gran compañero
de trabajo, y un vital amigo. Su apoyo, su ayuda, y su guía fueron
invaluables para el desarrollo de este trabajo de grado, y por siempre ser un
modelo ejemplar como profesional.

A Rosamar Osorio, por ser mi soporte en momentos difíciles y siempre
impulsarme a mejorar mi desarrollo tanto en la elaboración de este
proyecto, como en mis estudios universitarios.

A Pablo Temoche, Arnaldo Añez y Daniel Garrido. Por su aporte
incondicional como compañeros de trabajo y como amigos. Por el aporte
fundamental de sus talentos profesionales a lo largo de todo el proyecto
dentro de la empresa.
5
INDICE GENERAL
APROBACION DEL TUTOR
ii
HOJA DE JURADOS
iii
DEDICATORIA
iv
AGRADECIMIENTOS
v
INDICE GENERAL
vi
LISTA DE CUADROS
x
LISTA DE GRAFICOS
xii
RESUMEN
xiii
INTRODUCCION
1
CAPITULOS
I
II
MARCO PROBLEMATICO
3
1.1 Planteamiento del problema
3
1.2 Objetivo General
6
1.3 Objetivos Específicos
6
1.4 Justificación
6
1.5 Delimitación
7
1.5.1 Temática
7
1.5.2 Geográfica
7
1.5.3 Temporal
7
MARCO REFERENCIAL
8
2.1 Antecedentes de la Investigación
8
2.2 Bases teóricas y conceptuales
9
2.2.1 Ludificación o Gamification
9
2.2.2 Video Juegos o Juegos de Video
10
2.2.3 Creación de Juegos
11
2.2.4 Géneros de Aplicaciones de entretenimiento digital
6
Interactivo
12
2.2.5 Física para videojuegos
17
2.2.6 Base de Datos para videojuegos
17
2.2.7 Programación Grafica
18
2.2.8 Técnicas de Programación para tecnologías especificas
18
2.2.9 Sistemas en Red
18
2.2.10 Actionscript
19
2.2.11 Starling
19
2.2.12 FlashDevelop
19
2.2.13 MySQL
20
2.2.14 TexturePacker
20
2.2.15 GitHub
20
III MARCO METODOLOGICO
21
3.1 Tipo de la Investigación
21
3.2 Diseño de Investigación
21
3.4 Población
22
3.5 Muestra
23
3.6 Técnicas e Instrumentos de Recolección de Información
24
3.7 Metodología de Desarrollo de Sistema
25
3.7.1 Definición de Scrum
25
3.7.2 Características de Scrum
25
3.7.3 Roles de Scrum
26
3.7.3.1 Product Owner
26
3.7.3.2 ScrumMaster (Facilitador)
26
3.7.3.3 Equipo de Desarrollo
26
3.7.3.4 StakeHolders
26
3.7.3.5 Administradores
27
7
3.7.4 Sprint
27
3.7.5 Product Backlog
27
3.7.6 Sprint Backlog
28
IV SISTEMA ACTUAL
V
29
4.1 Análisis e Interpretación de Resultados
29
4.2 Sprint / Iteración 1
32
4.2.1 Elemento número 1 del Sprint Backlog 1
33
4.2.2 Elemento número 2 del Sprint Backlog 1
34
4.2.3 Elemento número 3 del Sprint Backlog 1
34
4.2.4 Elemento número 4 del Sprint Backlog 1
35
4.2.4 Elemento número 5 del Sprint Backlog 1
36
SISTEMA PROPUESTO
38
5.1 Sprint / Iteración 2
38
5.1.1 Elemento número 1 del Sprint Backlog 2
38
5.1.2 Elemento número 2 del Sprint Backlog 2
39
5.2 Sprint / Iteración 3
40
5.2.1 Elemento número 1 del Sprint Backlog 3
41
5.2.2 Elemento número 2 del Sprint Backlog 3
42
5.2.3 Elemento número 3 del Sprint Backlog 3
44
5.2.4 Elemento número 4 del Sprint Backlog 3
47
5.3 Sprint / Iteración 4
48
5.3.1 Elemento número 1 del Sprint Backlog 4
50
5.3.2 Elemento número 2 del Sprint Backlog 4
55
5.3.3 Elemento número 3 del Sprint Backlog 4
57
5.3.4 Elemento número 4 del Sprint Backlog 4
59
5.4 Sprint / Iteración 5
65
5.5 Sprint / Iteración 6
66
8
5.6 Sprint / Iteración 7
67
5.7 Sprint / Iteración 8
68
5.5 Sprint / Iteración 9
69
5.6 Pruebas
70
CONCLUSIONES
75
BIBLIOGRAFIA
77
ANEXOS
79
9
LISTA DE CUADROS
Cuadros
01
Objetivos Específicos del sistema propuesto
31
02
Historias de Usuario 1
32
03
Sprint número 1
33
04
Sprint Backlog 2
38
05
Product Backlog
40
06
Sprint Backlog 3
40
07
Sprint Backlog 4
48
08
Diccionario de Datos tbl_user
50
09
Diccionario de Datos tbl_user_megatiles
51
10
Diccionario de Datos tbl_user_missions
52
11
Diccionario de Datos tbl_user_trophies
53
12
Diccionario de Datos tbl_user_vehicles
54
13
Diccionario de Datos tbl_user_friends
55
14
Diccionario de Datos tbl_votes
56
15
Diccionario de Datos tbl_trophy_types
56
16
Diccionario de Datos tbl_trophies_vs_votes
57
17
Diccionario de Datos tbl_languages
58
18
Diccionario de Datos tbl_missions_vs_text_values
58
19
Diccionario de Datos tbl_text_identifiers
59
10
20
Diccionario de Datos tbl_categories
60
21
Diccionario de Datos tbl_logins
60
22
Diccionario de Datos tbl_megamaps
61
23
Diccionario de Datos tbl_megatiles
61
24
Diccionario de Datos tbl_object_media
62
25
Diccionario de Datos tbl_object_sources
63
26
Diccionario de Datos tbl_objects
63
27
Diccionario de Datos tbl_objects_vs_categories
64
28
Diccionario de Datos tbl_scenes
64
29
Sprint Backlog 5
65
30
Sprint Backlog 6
66
31
Sprint Backlog 7
67
32
Sprint Backlog 8
68
33
Sprint Backlog 9
69
34
Product Backlog resultante de la etapa de desarrollo
71
11
LISTA DE GRÁFICOS
Gráficos
01
Esquema de Análisis Predictivo de Predictvia C.A.
3
02
Pantalla de Flujo de Selección de niveles
41
03
Pantalla de Sistema de votación 01
42
04
Pantalla de Sistema de votación 02
43
05
Pantalla de Sistema de juego 01
44
06
Pantalla de Sistema de juego 02
46
07
Pantalla de Sistema de juego 03
46
08
Pantalla de flujo del escenario de historia 01
47
09
Pantalla de flujo del escenario de historia 02
48
10
Modelo Entidad Relación de la Base de Datos
49
11
Burndown Chart del Sprint 5
66
12
Burndown Chart del Sprint 6
67
13
Burndown Chart del Sprint 7
68
14
Burndown Chart del Sprint 8
69
15
Burndown Chart del Sprint 9
70
12
UNIVERSIDAD NUEVA ESPARTA
FACULTAD DE CIENCIAS DE LA INFORMÁTICA
ESCUELA DE COMPUTACIÓN
SISTEMA AUTOMATIZADO BASADO EN TÉCNICAS DE GAMIFICACIÓN
PARA EL REGISTRO DE DATOS DE USUARIOS CON FINES PREDICTIVOS.
CASO: PREDICTVIA
Autor:
Tutor:
Fecha:
Br. Ismael Serrada
Lic. Jorge A. Padua
Julio del 2015
Resumen
Esta investigación plantea el desarrollo y solución de un problema
proporcionado por una empresa llamada Predictvia C.A. Dicho problema radica en
la búsqueda de mejor información y una manera más acertada, portátil y a su vez
entretenida de la captura de datos con el fin de análisis predictivo. El objetivo el
cual desarrollaremos será el de desarrollar una aplicación de entretenimiento
digital interactiva de acceso libre para teléfonos inteligentes y computadoras
personales, basada en el método de gamificación, para incrementar las frecuencia
de uso de las aplicaciones de captura de datos y registrar un mayor número de
acciones que permitan afinar el proceso de análisis predictivo. Nos
desenvolveremos en la metodología de investigación de tipo factible, ya que
procederemos a investigar, elaborar y desarrollar, a su vez el diseño de
investigación será del tipo investigación de campo, de la perspectiva de la
temporalidad. Como población para el desarrollo se seleccionarán personas con
un perfil orientado a mayoría de edad, así como gustos por temas en específicos;
y respecto a la muestra, nos enfocaremos en el muestreo no probabilístico ya que
el sistema será de acceso libre, por ende utilizaremos como técnica de recolección
de información la entrevista no estructurada, y así poder indagar sobre las
necesidades de la empresa así como herramientas anteriores utilizada por la
misma. El presente sistema se desarrollara bajo la metodología ágil Scrum, ya que
posee herramientas útiles para este proyecto. De este modo podemos finiquitar
que el resultado de las pruebas vía mediante este sistema optimizo de manera
efectiva, la información necesaria para la empresa y su desarrollo de análisis
predictivo, del cual se puede recomendar principalmente mantener una
actualización activa de la plataforma, y mantener siempre la comunicación
continua.
Palabras Clave: Captura de datos, sistema de entretenimiento, Metodología
Scrum,
13
INTRODUCCION
El desarrollo de software, siempre ha estado relacionado con elementos de la
informática, siendo este uno de los tantos productos de esta ciencia. Entonces,
¿qué es en esencia un sistema automatizado? Es un sistema donde se transfieren
tareas de producción, realizadas habitualmente por operadores humanos a un
conjunto de elementos tecnológicos.
En esta investigación se encuentra un problema para la empresa Predictvia
C.A. el cual reside en la necesidad de otro método de captura de datos más
eficiente, portátil y entretenido, ya que el medio de captura actual está basado en
métodos tradicionales no suficientes; por lo tanto, el objetivo de esta investigación
es desarrollar una aplicación de entretenimiento digital interactiva de acceso libre
para teléfonos inteligentes y computadoras personales, basada en el método de
gamificación, para incrementar la frecuencia de uso de las aplicaciones de captura
de datos y registrar un mayor número de acciones que permitan afinar el proceso
de análisis predictivo.
Para el desarrollo del mismo, se estudió una nueva estrategia para la creación
de una aplicación de entretenimiento digital interactivo llamada Gamificación, que
junto a estudios hechos y comprobados de ciclos de compulsión podremos tener
un buen soporte para la finalidad de este trabajo de investigación.
Una vez completado el trabajo, se espera poder recibir los datos e información
necesaria, obtenidas por la constancia y esfuerzo de la participación de diversos
usuarios, para abastecer de información acertada y más confiable al predictor de
la empresa.
14
A continuación en esta investigación se estudiarán las diferentes etapas para el
desarrollo de este sistema automatizado. Este posee la siguiente estructura:

Capítulo I: Se desarrolla y explica los elementos que conforman la
problemática que posee la empresa, en el cual se denotan: El
planteamiento del problema, los objetivos, la justificación y delimitaciones.

Capítulo II: En este, se describen los elementos teóricos en los cuales se
sustenta la investigación al igual que los antecedentes, bases teóricas y las
bases legales utilizadas en este documento.

Capítulo III: Este capítulo contempla todas las explicaciones referentes a la
metodología a emplear tanto en la investigación como en el desarrollo del
sistema propuesto, se definirá
el tipo y diseño de la investigación,
población y muestra de la misma, técnicas e instrumentos de recolección de
datos, así como una explicación en detalle de la metodología de desarrollo
de sistemas.

Capítulo IV: Comprende todo el desarrollo y aplicación de la metodología
planteada en el capítulo anterior, aplicada al análisis e interpretación de los
resultados obtenidos.

Capítulo V: Comprende todo los procesos de desarrollo, creación,
modelados,
pruebas
e
implementaciones
del
sistema
propuesto,
especificados bajo la metodología elegida.

Bibliografía: Donde se encuentran detalladas cada una de las referencias
hechas en la presente investigación.
15
CAPITULO I
MARCO PROBLEMATICO
Planteamiento del Problema
Predictvia C.A. es una empresa dedicada al análisis predictivo de datos, para
una descripción más breve utilizan la frase “Plug-and-Play Predictive Analytics
Platform”.
El sistema de análisis predictivo de Predictvia, se resume en el siguiente
gráfico:
Apps
Acciones
Final
Aprendizaje de
Tickets
Economía
Valor
máquina,
Sistema
Decisión
Predictores,
etc.
Secuencia de
Secuencia de
Valor para ser
Acción
Votos
aprendido
(Votos
(Valores)
Abstractos)
Gráfico n°01: Esquema de Análisis Predictivo de Predictvia C.A.
El sistema de análisis predictivo de la empresa utiliza un conjunto de
aplicaciones, sistemas de tickets, entre otras para obtener una secuencia de
acciones provenientes de los usuarios, las cuales tienen la propiedad de reflejar la
conducta de un usuario con respecto a un objeto. Estas acciones son manipuladas
por un sistema de economía que busca generar una equivalencia entre los
sentimientos provenientes de estas acciones, es decir, una asociación de acciones
a valores en el intervalo.
16
Actualmente, el principal procedimiento para la captura de datos que realiza
dicha empresa son las aplicaciones,
de estadística y aplicaciones en redes
sociales, cuyo objetivo principal es servir de encuestas de satisfacción de
usuarios. En este caso en particular, realizan encuesta de gustos y preferencias
personales, otorgándole un valor de puntos a uno o varios objetos en particulares,
que pueden ser: marcas, comidas, actores o personajes, entre otros.
Este procedimiento tradicional, y otros aplicados como la utilización de redes
sociales como Facebook para obtener datos presentan ciertas desventajas, como
son la inconsistencia de datos y la actualización de dichas votaciones recolectadas
por este medio. Dicho esto se formula la siguiente pregunta: ¿Se puede realizar
una aplicación de entretenimiento que sea de acceso libre y a su vez portátil, para
obtener más datos que permitan afinar la predicción de un análisis predictivo?
El problema radica en que la captura de datos del sistema de análisis predictivo
de esta empresa se realiza mediante un sistema de encuestas y consumo (algo
parecido al sistema que desarrollan empresas como Amazon, EBay, Hunch,
Wish). Al realizarse de esta manera las personas, a las cuales se les dirige la
encuesta, no responden de manera objetiva puesto que realizan esta actividad por
obligación, pero, a través de mecánicas de juego, estas personas se comprometen
de mayor manera y tienden a dar mayor cantidad de información debido a la
naturaleza adictiva que generan estas mecánicas de juegos aplicadas, también
tomando en cuenta que la información proporcionada es de mayor constancia
gracias a su repetición.
La Ludificación o “Gamification” es el empleo de mecánicas de juego en
entornos y aplicaciones no lúdicas con el fin de potenciar la motivación, la
concentración, el esfuerzo, la fidelización y otros valores positivos comunes a
todos los juegos. Se trata de una nueva y poderosa estrategia para influir y motivar
a grupos de personas (Gamificacion S.L., 2013).
17
Por esta razón se necesita buscar una vía alterna que sea más entretenida,
portátil y constante; para ello se propone desarrollar una aplicación de
entretenimiento digital interactivo para mejorar y refinar la captura de datos.
Una correcta implementación de estrategias de Ludificación permite pasar de la
mera conectividad al compromiso, logrando que los miembros de una comunidad,
los trabajadores de una empresa, los estudiantes de un instituto, los habitantes de
una ciudad -prácticamente cualquier colectivo o individuo- participen de una
manera dinámica y proactiva en acciones que generalmente requieren un esfuerzo
de la voluntad (Gamificacion S.L., 2013).
La integración de dinámicas de juego en entornos no lúdicos no es un
fenómeno nuevo, pero el crecimiento exponencial del uso de videojuegos en los
últimos años ha despertado el interés de expertos en comunicación, psicología,
educación, salud, productividad –y cualquier área de actividad humana- por
descifrar las claves que hacen del video juego un medio tan eficaz. En estos
últimos años ha comenzado también la expansión en el estudio de su aplicación a
otros ámbitos no necesariamente lúdicos. Gamificación es el término escogido
para definir esta tendencia. (Gamificacion S.L., 2013).
Una vez que estas acciones son asociadas a valores, se podrá estimar,
utilizando mecanismos como series de tiempo (basado en la variación del
comportamiento de una persona con respecto a un objeto), para así generar el
siguiente valor que mostrará dicha persona por ese objeto. Finalmente, utilizando
el valor para aprender de cada persona por cada objeto se procede a realizar el
aprendizaje mediante el cual se podrá predecir preferencias, atributos reales,
similitud entre sujetos y objetos, entre otras cosas.
Una vez desarrollada esta aplicación se puede obtener datos más específicos
que definan aún mejor los gustos de las personas para la posterior creación de un
perfil característico definiremos como ADN virtual, no obstante, la empresa cuenta
con procesos como aplicaciones y encuestas, esta necesita de datos más
18
constantes de parte del usuario que se vean alimentados con procesos más
compulsivos que responder una encuesta o comprar un producto.
Objetivo General
Implementar un sistema automatizado basado en técnicas de Ludificación, de
acceso libre para computadoras personales y teléfonos inteligentes, para
incrementar las frecuencias de uso de las aplicaciones de captura de datos para
afinar el proceso de análisis predictivo de la empresa.
Objetivos Específicos
-
Realizar el levantamiento de información de los requerimientos actuales de
la empresa Predictvia para la captura de datos.
-
Analizar los requerimientos dictados por la empresa para la selección de la
metodología a emplear.
-
Establecer las interfaces gráficas y modelo de base de datos.
-
Seleccionar las herramientas necesarias para la realización de la aplicación.
-
Establecer y desarrollar el algoritmo necesario para crear un sistema que
sirva de solución al problema general de la empresa.
-
Definir la estrategia de implantación de la aplicación y elegir en que medios
se distribuirá.
Justificación
Para el desarrollo de este trabajo especial de grado se aplicara la técnica o
metodología de Ludificación previamente definida, una de las mayores razones
por la cual se aplicará, es por el gran aumento de las aplicaciones de
entretenimiento digital en los últimos 5 a 10 años (Association, 2013)
El estudio de “Ciclos de compulsión (Compulsion Loops)”, demuestra que: Los
ciclos de compulsión son unas estructuras diseñadas para mantener a una
persona ocupada mediante la relación entre sus acciones y las recompensas
apropiadas para dicho esfuerzo. (Collier, 2011)
19
Dicho esto, se demuestra que las aplicaciones mediante la ludificación o
gamificación son una gran fuente de entretenimiento y de información.
Implementaciones previas de esta metodología ha demostrado un cambio positivo
para los usuarios en actividades no lúdicas, por ende, es importante el estudio e
implementación de ello para este problema planteado (Tuutti, 2012)
Para la empresa Predictvia este desarrollo resuelve el problema de incrementar
para refinar la captura de datos para el aprendizaje de máquina del análisis
predictivo, pero a su vez, podremos demostrar la aplicabilidad de ella, la cual no
se ha desarrollado a nivel nacional, aportando así una nueva herramienta de
desarrollo para las instituciones y para la región, las cuales podrán beneficiarse en
un futuro de la investigación en este aspecto en particular.
Delimitación
Temática
Este sistema se sitúa en la línea de la tecnología, debido a que es el desarrollo
e implementación de un sistema informático.
Geográfica
La producción de este sistema propuesto será desarrollada para el
departamento de desarrollo digital de la empresa Predictvia, ubicada en CaracasVenezuela, Municipio Chacao, Edif. Xerox, piso 6
Temporal
Se estima que el desarrollo de esta aplicación de entretenimiento digital será de
un promedio de 12 meses distribuidos en análisis de requerimiento, diseño de la
aplicación desarrollo de la aplicación.
20
CAPITULO II
MARCO REFERENCIAL
Antecedentes de la investigación
A continuación se presentan algunos estudios que de una forma u otra resultan
antecedentes de sustento a la presente investigación. Entre ellas cabe destacar:
Díaz y Lizárraga (2013), desarrollaron para la Universidad de Sonora, una
experiencia en ludificación para la entrega de trabajos en un curso híbrido
(blended learning) de Física Computacional. Usando como metodología el plan de
ludificación en la entrega de productos en el curso.
El desarrollo consistió en una variedad de actividades y tareas, que
involucraron la descarga y configuración de software, involucrándose además
actividades de aprendizaje como son búsquedas en Internet, resolución de
problemas, contestar cuestionarios de autoevaluación y participar en un sitio de
red social en línea.
Como conclusión, la estrategia de ludificación del proceso reporto los avances
y la conclusión de cada actividad en un wiki público, sirvió como motivación para
los estudiantes participaran en una competencia sana donde se presumían los
avances y a la vez se ejerce presión de avanzar a aquellos que se retrasaban por
diversos motivos.
Este trabajo de investigación aporta una referencia bastante directa, ya que en
ella se presencia la metodología de ludificación para servir como motivación en la
población en la cual fue efectuada.
Hagglund (2013) desarrollo su tesis para la universidad UMEA Universitet,
Hagglund determino que el enfoque esta tesis fue el de incrementar el
conocimiento general acerca de la ludificación (Gamification) mediante la
explicación de cómo y por qué funciona. Explora la ludificación en detalle y
explica, no solo como son utilizados los conceptos de ludificación, sino también
motiva la efectividad de estos conceptos en una base científica.
21
Su aporte a esta investigación será invaluable ya que el enfoque en el cual
estará dirigido el desarrollo de esta aplicación de entretenimiento digital, será el de
la ludificación del proceso de recolección de información. Además que nos da un
mejor entendimiento del pasado, presente y posible futuro de la ludificación o
“Gamification”.
Bases Teóricas y Conceptuales
Ludificación o Gamificación
Ludificación se refiere a la acción de convertir algo en actividad lúdica, cuyas
raíces etimológicas provienen del latín ludus de lūdere, que significa jugar,
divertirse, pasar el tiempo. También es utilizado a veces el anglicismo
gamificación, por referirse al término correspondiente en Inglés gamification, pero
en Español ya se tiene ludificación.
Gamificación es el empleo de mecánicas de juego en entornos y aplicaciones
no lúdicas con el fin de potenciar la motivación, la concentración, el esfuerzo, la
fidelización y otros valores positivos comunes a todos los juegos. Se trata de una
nueva y poderosa estrategia para influir y motivar a grupos de personas. (S.L.,
2013)
(De acuerdo con Huzinga) Todos jugamos, es parte de naturaleza humana
(Huizinga, 1938). El jugar es divertido, el juego es distinto de la vida real, el jugar
nos ofrece la posibilidad de explorar, de aprender, exige reglas, respetar un orden
y nos ofrece retos a vencer. Aunque no ofrece una satisfacción material, si ofrece
un reto intelectual y satisfacción personal, que nos motiva y nos atrae.
La integración de dinámicas de juego en entornos no lúdicos no es un
fenómeno nuevo, pero el crecimiento exponencial del uso de videojuegos en los
últimos años ha despertado el interés de expertos en comunicación, psicología,
educación, salud, productividad -y casi cualquier área de actividad humana- por
22
descifrar las claves que hacen del videojuego un medio tan eficaz. En estos
últimos años ha comenzado también la expansión en el estudio de su aplicación a
otros ámbitos no necesariamente lúdicos. Gamificación es el término escogido
para definir esta tendencia (S.L., 2013)
Video Juegos o Juego de Video
Es un juego electrónico en el que una o más personas interactúan, por medio
de un controlador, con un dispositivo dotado de imágenes de vídeo. Este
dispositivo
electrónico
puede
ser una computadora, una máquina arcade,
una videoconsola, un dispositivo portátil (un teléfono móvil, por ejemplo), etc., los
cuales son conocidos como "plataformas".
Al dispositivo de entrada usado para manipular un videojuego se lo conoce
como controlador de videojuego, y varía dependiendo de la plataforma. Por
ejemplo, un controlador podría únicamente consistir de un botón y una palanca de
mando (joystick), mientras otro podría presentar una docena de botones y una o
más palancas.
Los primeros juegos informáticos solían hacer uso de un teclado para llevar a
cabo la interacción, o bien requerían que el usuario adquiriera un joystick con un
botón como mínimo. Muchos juegos de computadora modernos permiten o exigen
que el usuario utilice un teclado y un ratón de forma simultánea. Entre los
controladores más típicos están los gamepads, joysticks, teclados, ratones y
pantallas táctiles.
Por lo general, los videojuegos hacen uso de otras maneras, aparte de la
imagen, de proveer la interactividad e información al jugador. El audio es casi
universal,
usándose
dispositivos
como altavoces y auriculares.
Otros
de reproducción
tipos
de
de feedback se
sonido,
hacen
a
tales
través
de periféricos hápticos que producen una vibración o realimentación de fuerza,
con la manifestación de vibraciones cuando se intenta simular la realimentación de
fuerza.
23
Creación de juegos
Al investigar o buscar por diferentes medios, podemos conseguir en varios
foros, comunidades, e institutos vía web, podemos observar que algunos piensas
que la creación de juegos es un arte, en la cual no existe un método formal para
su realización y que simplemente son una serie de representaciones artísticas
como lo puede llegar a ser una pintura o escultura.
Según lo observado en muchos videojuegos y en los comentarios realizados
por varios de sus creadores, no se le podría considerar como ninguna de las dos
en su totalidad. En los juegos, el arte viene a jugar un rol importante cuando se
está teniendo la visión inicial del videojuego y en las primeras etapas de diseño, lo
que llamaríamos la etapa de creación. Pero tampoco se le puede considerar una
ciencia ya que no se rige por un método científico donde se plantee una hipótesis
o se esté buscando una verdad absoluta.
Algo que se debe tener en cuenta a la hora de crear videojuegos, es que estos
son en esencia un desarrollo de software. Los videojuegos son software con arte,
audio y jugabilidad (gameplay). Muchas veces el desarrollo de un juego no se
considera como una ciencia si no como un arte y es excluido de los métodos de
producción y desarrollo formales, cosa que es completamente falsa.
Los juegos contienen elementos tanto artísticos como funcionales a la vez, ya
que deben ser (de alguna u otra manera) estéticamente atractivos y al mismo
tiempo divertido para el jugador.
Existen distintos ciclos de vida del desarrollo de estos juegos, los cuales han
sido actualizados a través de los años. Según (McConnell, 1996) podría
encontrarse los siguientes tipos:

Ciclo de vida en cascada

Ciclo de vida en espiral

Ciclo de vida incremental

Ciclo de vida basado en prototipos
24

Ciclo de vida basado en versiones
Además existen diversas metodologías que son aplicadas en la actualidad en la
mayoría de los desarrollos grandes de software, entre las cuales encontramos:
RUP (Rational unified Process)
AUP (Agile Unifiied process)
AM (Agile Modeling)
XP (eXtreme Programming)
Aunque estos métodos han sido comprobados y utilizados en innumerables
ocasiones, ninguno de ellos contempla aspectos particulares de un software en
específico, incluyendo los videojuegos. Estas faltas o deficiencias de las
metodologías establecidas, hacen que se pierda tiempo y dinero en adaptarlas al
desarrollo que se está realizando.
Géneros de aplicaciones de entretenimiento digital interactivo
Para el desarrollo de una aplicación de entretenimiento digital interactivo, se
debe tomar una decisión al momento de producción, una de ellas es elegir el
género de esta aplicación.
La taxonomía de los juegos es muy diversa y no existe una clasificación exacta
o definitiva, por lo que es necesario tener una visión de cuáles pueden ser los más
comunes para el desarrollo. Es necesario considerar esta clasificación como un
punto de partida que puede determinar ciertos elementos adicionales para su
desarrollo (Crawford, 1984).
A continuación, se tomara una taxonomía general basada en la clasificación de
Crawford y varios autores.
1. Géneros Principales
25
1.1 Juegos de acción
Los juegos de acción son prácticamente el género más popular, se
caracterizan por su orientación al combate y situaciones de reacción
rápida.
1.1.1 Action-adventure games
Los juegos de acción y aventura, involucran situaciones de combate,
exploración, recolección de artículos y solución de rompecabezas. En
este género encontramos juegos como Adventure (1978), la serie The
Legend of Zelda (1986-Actual) entre otros.
1.1.2 First-person shooter games
Popularmente conocidos como FPS los first-person shooters hacen
particularmente énfasis en los disparos y el combate en una perspectiva
de juego en primera persona. La idea es provocar la sensación de que
el jugador es realmente quien participa en el juego. Estos juegos
requieren de un alto nivel de destreza y reflejos por parte de jugador. En
el encontramos juegos como Wolfstein 3D (1992), Doom (1993), Half
Life (1998) y Halo (2001) entre otros.
1.1.3 Third-person shooter games
Conocidos como TPS o 3PS son juegos que se centran en combate,
disparar y destruir con una perspectiva de tercera persona. En este
género se encuentras juegos como: Gears of War (2006), MDK (1997) y
Grand Theft Auto (1998).
1.1.4 Tactical Shooter Games
Los tactical shooters son juegos first person o third person shooter con
un contenido táctico y basado en el manejo de escuadrones de asalto.
Se basan en simular situaciones reales de combate militar, policial, antiterrorista y no consisten en dispararle a todo lo que se mueva. Entre
26
estos encontramos, juegos como la serie Rainbow Six (1998) de Tom
Clancy, Ghost Recon (2001), SWAT (1995) entre otros.
1.2 Peleas
Los juegos de peleas consisten tener el control de un personaje y golpear
a otros personajes para llegar a un fin específico.
1.2.1 Pelea Competitiva
Los jugadores participan en una lucha uno contra uno, hasta que uno
de los dos sea el ganador. Estos juegos tienen un alto nivel de
popularidad en los salones de arcade por su alto nivel de
competitividad. Entre ellos encontramos juegos como Street Fighter
(1990 - Actual), Tekken (1994) Soul Calibur (1998), Mortal Kombat
(1992), King of Fighters (1994).
1.2.2 Beat 'em up games
En este género los jugadores tienen la tarea de resolver a golpes varios
encuentros cuerpo a cuerpo con numerosos enemigos a lo largo de un
nivel. Deben ir avanzando hasta llegar a un destino específico. Entre
estos, encontramos: Double Dragon (1987), Final Fight (1989), Streets
of Rage (1991), Fighting Force (1997).
1.3 Role-playing games
Llamados popular mente juegos de Rol o por el acrónimo RPG se basan
en los juegos de Rol tradicionales de mesa como Dungeons and
Dragons, en el desarrollo del personaje controlado por el jugador y en la
forma en que este asume un rol en la historia. Los personajes van
evolucionando a través del tiempo de juego en conjunto con la historia.
Los RPG tienen un fuerte basamento en la toma de decisiones que
27
tienden a cambiar el rumbo de la historia. Juegos como Final Fantasy
(1987), Phantasy Star (1987), Baldur’s Gate (1998), Oblivion (2006) y
Shinning Force (1992).
1.4 Plataformas
Son juegos basados en trasladarse a lo largo de un nivel saltando de una
plataforma a otra hasta llegar a un objetivo. Es un de los géneros más
populares de todos aunque su popularidad ha disminuido desde el
crecimiento de los juegos en 3D. Los juegos de plataformas han logrado
evolucionar al 3D pero no con el mismo éxito que en 2D. En muchas
ocasiones los juegos de plataformas utilizan elementos de otros juegos
como por ejemplo los shooters o RPG. Entre estos encontramos Super
Mario Bros. (1985), Sonic The Hedgehog (1991), Crash Bandicoot (1996)
Mega Man (1987), Rayman (1995), Castlevania (1986).
1.5 Simulación
Los juegos de simulación tienden a manejar situaciones específicas de la
forma
más
real
posible.
Entre
sus
aplicaciones
más
básicas,
encontramos simuladores de vuelo y automovilismo. Juegos de gestión o
gerencia de distintos elementos como puede ser Sim City (1989) en el
que el jugador debe hacer de alcalde de una ciudad, Total Club Manager
(2002) se realiza la gestión del manager un equipo de futbol. En los
juegos de simulaciones existen tipos como los llamados God games o
juegos de Dios, donde simplemente el usuario juega a ser Dios y
controlar todos los aspectos de un ambiente entre estos encontramos
juegos como Black & White (2001) o Populous (1989). Los juegos de este
género toman mucha atención a detalles específicos y este muchas
veces es usado como un sub-género.
1.6 Sports
28
Los juegos de deportes tienen la finalidad de representar deportes de
actividad física, cumplen la necesidad del usuario tomando en cuenta los
detalles que hacen al deporte que se busca representar, emocionante en
la vida real. Los deportes tradicionales se basan en la representación de
aquellos deportes que son de culto popular como puede ser el Fútbol,
Beisbol, Tenis entre otros en estos se encuentran juegos como la serie
Fifa Soccer, Madden NFL, MLB the Show o Virtua Tennis. También
existen juegos orientados a representar deportes menos populares como
los son: Tony Hawk´s Pro Skater (1999) basado en montar patineta entre
otros.
1.7 Strategy
Los juegos de estrategia manejan un enfoque que requiere de un detalle
a la planificación en el manejo de distintos recursos para lograr un fin
específico. Estos juegos tienen como características, al recolección de
recursos, y producción de unidades para conformar un ejército para
combatir con un contrario. En estos encontramos juegos como Warcraft
(1994), Starcraft (1998), Age of Empire (1997) y Civilization (1991).
2. Sub-Géneros
Existen varios sub-géneros y muchos de ellos son dados por combinaciones de
varios géneros, por ejemplo: puede existir un juego de plataformas con acción y
aventura o juegos de acción y RPG. Sin embargo, es necesario mencionar
algún un subgénero aplicable a todos los géneros como lo es:
2.1 Massively Multiplayer Online games MMORPG
“son videojuegos que permiten a miles de jugadores introducirse en un
mundo virtual de forma simultánea a través de Internet, e interactuar
entre ellos. Puede tratarse de administrar una ciudad, un ejército para
ganar en montones de batallas, o más comúnmente crear un personaje,
29
del cual puedes elegir su raza, profesión, armas, etc., e ir aumentando
niveles y experiencia en peleas contra otros personajes.” (VGS, 2007).
Física para videojuegos
Diversos tipos de juegos están muy cerca de la simulación y es por ello que en
este ámbito resultan necesarios los principios físicos y los motores software que
los implementan y que permiten obtener un mayor realismo en la interacción.
Algunos tópicos fundamentales (adquiribles en cursos de ciencias básicas) son:
modelado de sistemas físicos, colisiones, sistemas de partículas, física del cuerpo
humano.
Actualmente existen entornos de desarrollo (Frameworks) para los efectos
dinámicos o física, entre los más utilizados se encuentran:

Havok

Open Dynamics Engine (ODE)

Newton Game Dynamics

Phyx

BOX2D

Librería Nape
Bases de datos para videojuegos
La industria de los juegos de videos está experimentando un gran cambio,
puesto que el terreno tradicional de los juegos de video se expande a nuevos tipos
de plataforma, técnicas de juegos y jugadores. Por ello, los desarrolladores y
marcas relacionadas a juegos de video tienen la oportunidad de aplicar técnicas
de análisis de información (Big data analytics) para poder capturar información
importante tanto del comportamiento del jugador, como de la estructura y reacción
del juego. (Chulis, 2012)
30
Muchos juegos de video, conservan estadísticas y registro de sus usuarios
(principalmente los juegos en línea), Esta información debe ser manejada en
bases de datos. En muchos casos los videojuegos utilizan este recurso para
manejar registros de comportamientos del usuario y posibles respuestas de los
NPC (Non Player Characters o Personajes no jugadores).
Programación gráfica
Los programadores gráficos, comúnmente, son los que tienen conocimientos
científicos bastantes elevados y su posición es muy respetada en la industria.
Estos deben tener un alto conocimiento de matemáticas, física, vectores y
trigonometría, y saberlos aplicar de manera de llevar a la realidad el concepto
creado por el diseñador. Los mundos y objetos creados por estos “Artistas” son
con los que interactúan los usuarios.
Además deben emplear técnicas de optimización de procesos, mediante los
cuales se mejoran los motores de gráficos. Algunas áreas de enfoque en la
programación gráfica son: construcción de motores gráficos, generación de
texturas, iluminación, animación de personajes y/u objetos, gestión de escenarios.
Técnicas de programación para tecnologías específicas
Son las que no se incluyen por lo general en los estudios de Informática
convencionales, pero son absolutamente necesarias en el caso de un
desarrollador de videojuegos. Algunas pueden ser: programación para audio,
control de dispositivos de entrada/salida, programación basada en guiones
(scripts), dispositivos móviles.
Sistemas en Red
Actualmente existe un auge de los juegos de video en red. Si el diseño del
proyecto tiene planteado realizar un juego de este estilo, es fundamental para el
diseñador/desarrollador conocer modelos, protocolos, arquitecturas y tecnologías
asociados con aplicaciones en red y distribuidas.
31
Actionscript
Actionscript es un lenguaje de programación orientado a objetos desarrollado
por Macromedia Inc. Desarrollado y usado principalmente para el desarrollo de
páginas web y aplicaciones para ejecutarse en la plataforma de Adobe Flash
Player.
Una de las utilidades de Actionscript 3 es el desarrollo de sistemas para
computadoras personales y para aplicaciones destinadas a ser portable
(tecnología Mobile). El lenguaje en si es de software libre queriendo decir que el
uso de este lenguaje para desarrollar cualquier tipo de aplicación es libre de costo.
Este es el lenguaje en que se desarrollara la aplicación de entretenimiento
digital propuesta en el proyecto, ya que, al integrarlo en el adobe flash player,
permitirá su exportación a diversas áreas de interés (celulares inteligentes,
computadoras personales, redes sociales).
Starling
Starling es un motor de juego basado en la estructura interna de ActionScript 3
que se distingue por procesar las imágenes directamente por el GPU (Graphics
Processing Unit) y es una aplicación de software libre.
Se utilizara el lenguaje de ActionScript 3 junto a Starling para tener mejor
rendimiento y calidad de imágenes para la aplicación que se desarrollara.
FlashDevelop
Es un ambiente integrado de desarrollo (IDE por sus siglas en inglés)
estructurado para la realización de aplicaciones web, aplicaciones para
computadoras personales y páginas web destinadas a Adobe Flash. Capaz de
correr y exportar aplicaciones en Adobe Flash Player para Microsoft Windows,
Mac OS X, Android o iOS.
32
Se utilizara esta herramienta como nuestro IDE para el desarrollo de nuestro
proyecto por su capacidad y facilidad de exportación y su sencillez de uso
MySQL
MySQL es un sistema de gestión de base de datos relacional, multihilo y
multiusuario. Es muy utilizado en aplicaciones web y plataformas Linux/Windows.
Bajo MySQL se estructurará todo el modelo de tablas y campos necesarios
para el almacenamiento de datos para la aplicación propuesta en este proyecto.
TexturePacker
TexturePacker es una interfaz gráfica de usuario y una herramienta diseñada
para la creación de Hojas de Sprites y Atlas de Sprites.
Las Hojas de Sprites son una combinación de numerosas pequeñas imágenes
o iconos creando así una sola imagen y Los Atlas de Sprites son aquellos que
contienen largas imágenes que a su vez se dividen en sub imágenes, una de sus
funciones es poder diferenciar directamente cada imagen que este suscrita dentro
de la Hoja de Sprite, para así poder adquirirla individualmente o un grupo de
imágenes.
Esta herramienta es de gran utilidad para el proyecto, puesto que se manejara
una numerosa cantidad de imágenes y mediante esta aplicación se podrá reducir y
ahorrar una gran cantidad de memoria lo cual permitirá que el ejecutable sea de
menor peso.
GitHub
Esta herramienta es un repositorio web que ofrece una interfaz gráfica (Vía
web y aplicación de Windows y Mac) la cual provee un control y manejo del código
fuente, tareas y traqueo de errores para un proyecto.
Se utilizara GitHub como herramienta para manejar las versiones de la
aplicación, manejo del código fuente, actualizaciones y respaldar el proyecto.
33
CAPITULO III
MARCO METODOLOGICO
Tipo de Investigación
Esta investigación contempla la elaboración de un sistema automatizado, al ser
un desarrollo de un sistema podemos ubicar este proyecto como un tipo de
investigación de proyecto factible, el cual consiste en investigar, elaborar y
desarrollar “(…) una propuesta de un modelo operativo viable y factible para
solucionar problemas, requerimientos o necesidades de organizaciones o grupos
sociales; puede referirse a la formación de políticas, programas, tecnologías,
métodos o procesos”. (USM, 2001, p.7).
Se ubica en esta tipología de investigación, puesto que, la finalidad del mismo
es el de desarrollar una aplicación de entretenimiento digital interactiva, que
permita incrementar la captura de datos de interacción del usuario para aumentar
la información y datos necesarios que permitan afinar el proceso de análisis
predictivo.
Diseño de la Investigación
Acotando a Cerda se tiene que una definición del Diseño de investigación seria
la del conjunto de decisiones, pasos, esquemas y actividades a realizar en el
curso de la investigación. (Cerda, 1991).
En el texto de UPEL (2005) se tiene que la investigación de campo, consiste en
el análisis sistemático de problemas en la realidad; con el propósito bien sea de
describirlos, interpretarlos, entender su naturaleza y factores constituyentes,
explicar sus causas y efectos, o predecir sus ocurrencias haciendo usos de los
métodos característicos de cualquiera de los paradigmas y enfoques de
investigación conocidos o en desarrollo. Los datos de interés son recogidos en
forma directa de la realidad; en este sentido se trata de investigaciones a partir de
datos originales o primarios. (UPEL, 2005)
34
Dicho esto, este trabajo de investigación se apoyará en el modelo de la
investigación de campo, ya que deberá recopilar información y manejar datos para
poder solucionar las necesidades que la empresa posee. De igual manera,
situamos este trabajo de investigación en el campo, de la perspectiva de
temporalidad, como transeccional. En la perspectiva de temporalidad, las
Transeccionales son investigaciones en un período de Tiempo. (Fernández C,
2002).
Para esto se creará un Backlog (o repositorio) con todas las funcionales
necesarias en la aplicación que satisfagan la necesidad de la empresa. En base a
este Backlog se programaran todos los User Stories que son las actividades a
realizar, definiendo así los próximos pasos y esquemas a seguir. Moldeando así
esta investigación de campo a la metodología que se usara en todo el proyecto
para su desarrollo la cual es Scrum.
Población
Se entiende por población un conjunto finito e infinito de personas, casos o
elementos que presentan características comunes. (Gabaldón, 2002)
Para nuestro sistema se harán análisis necesarios basados en 100 personas
mínimo, para poder hacer los análisis necesarios respecto a los resultados de este
sistema propuesto.
Dicho esto, la población seleccionada para esta investigación son aquellas que
cumplen con los siguientes perfiles:
1. Personas que residan en el territorio de Venezuela, en el estado de
Caracas.
2. Personas con gustos por la música, deportes, juegos, películas,
videojuegos, videojuegos de rompecabezas, y coleccionistas.
3. Mayores a 18 años de edad.
4. Personas cuyo idioma principal sean el español o inglés.
35
Muestra
La muestra, es una parte de la población, o sea, un número de individuos, un
objeto seleccionado científicamente, cada uno de los cuales es un elemento del
universo. La muestra, es obtenida con el fin de investigar, a partir del conocimiento
de sus características particulares, las propiedades de una población. (Gabaldón,
2002)
En nuestro caso tomaremos una muestra del 50% del alcance de la población
posterior a las pruebas e implementación del sistema propuesto.
Al igual encontramos que según Hurtado de Barrera (2000), existen 2 tipos de
muestreo generales:
1. Muestreo Probabilístico: Se determina de antemano la probabilidad que
tiene de ser seleccionado, cada uno de los elementos que integran la
población. Existen diferentes tipos:
a. Estratificado
b. Azar Simple
c. Azar Sistemático
d. Por Conglomerados
2. Muestreo No Probabilístico: Puede haber clara influencia de la persona o
personas que seleccionan la muestra o simplemente se realiza atendiendo
a razones de falta de tiempo y dinero para realizar un estudio completo.
Que posee diversos tipos:
a. Casual
b. Intencional
c. Autoselección
d. Por Cuota
36
El tipo de muestreo que se ajusta a este trabajo de investigación es el del
muestreo no probabilístico de tipo intencional; debido a que, aunque el sistema
automatizado este pautado para ser de acceso libre, la muestra para la empresa
son las personas que cumplen el perfil previamente denotado.
Técnicas e Instrumentos de Recolección de Información
Las entrevistas caracterizadas por ser no estructuradas, es decir de tipo
abierta, en muchos casos no requieren de una estructura formal o guion y
tampoco de una validación minuciosa, ya que no existe un instrumento donde
exista una serie de respuestas que el encuestado deba elegir (dependiendo de
cuál se adaptase más a su situación), se deban formular
preguntas
constantemente de una manera específica a lo largo de toda la muestra,
preguntas que deban ser respondidas en un orden determinado, entre otros.
Sin embargo los encuestadores deben seguir ciertos criterios para determinar
cuál es la información necesaria que deben obtener y dependiendo de la situación
y persona con la que se trate se desarrollara una estrategia que permita la
recolección de dicha información.
A continuación se presentan ciertos datos sobre la aplicación del instrumento y
la información que se quiere obtener de los entrevistados, de manera de adaptar
el producto de esta investigación a las necesidades de estas personas.
Lugar de realización: Empresa Predictvia C.A.
Momento de realización: 10/12/2013
Información a obtener: Información necesaria para poder realizar los
requerimientos apropiados que para la estructura, desarrollo y modelación del
proyecto a realizar.
37
Metodología de Desarrollo de Sistemas
La metodología utilizada para el desarrollo de este trabajo de investigación, es
la metodología creada por Ken Schwaber y Jeff Sutherland llamada “Scrum”,
debido a que es:

Ligero.

Fácil de entender.

Difícil de dominar.
Definición de Scrum
Scrum es un modelo de desarrollo ágil caracterizado por:

Adoptar una estrategia de desarrollo incremental, en lugar de la planificación y
ejecución completa del producto.

Basar la calidad del resultado más en el conocimiento tácito de las personas en
equipos auto-organizados, que en la calidad de los procesos empleados.

Solapamiento de las diferentes fases del desarrollo, en lugar de realizar una
tras otra en un ciclo secuencial o de cascada.
Características de Scrum
SCRUM es un modelo de referencia que define un conjunto de prácticas y
roles, y que puede tomarse como punto de partida para definir el proceso de
desarrollo que se ejecutará durante un proyecto. Los roles principales en Scrum
son el ScrumMaster, que mantiene los procesos y trabaja de forma similar al
director
de
proyecto,
el ProductOwner,
que
representa
a
los
stakeholders (interesados externos o internos), y el Team que incluye a los
desarrolladores. (Scrum Org, 2009)
Durante cada sprint, un periodo entre una y cuatro semanas (la magnitud es
definida por el equipo), el equipo crea un incremento de software potencialmente
38
entregable (utilizable). El conjunto de características que forma parte de cada
sprint viene del Product Backlog, que es un conjunto de requisitos de alto nivel
priorizados que definen el trabajo a realizar. Los elementos del Product
Backlog que forman parte del sprint se determinan durante la reunión de Sprint
Planning. Durante esta reunión, el Product Owner identifica los elementos
del Product Backlog que quiere ver completados y los hace del conocimiento del
equipo. Entonces, el equipo determina la cantidad de ese trabajo que puede
comprometerse a completar durante el siguiente sprint. 1 Durante el sprint, nadie
puede cambiar el Sprint Backlog, lo que significa que los requisitos están
congelados durante el sprint. (Scrum Org, 2009)
Roles del Scrum
Product Owner: Representa la voz del cliente. Se asegura de que el equipo
Scrum trabaje de forma adecuada desde la perspectiva del negocio. El Product
Owner escribe las historias de usuario, las prioriza, y las coloca en el Product
Backlog. (Scrum Methodology, 2010).
ScrumMaster (Facilitador): El Scrum es facilitado por un ScrumMaster, cuyo
trabajo primario es eliminar los obstáculos que impiden que el equipo alcance el
objetivo sprint. El ScrumMaster no es líder del equipo (Porque ellos se autoorganizan), sino que actúa como una protección entre el equipo y cualquier
influencia que le distraiga. El ScrumMaster se asegura que el proceso Scrum sea
utilizado como es debido. (Scrum Methodology, 2010).
Equipo de Desarrollo: El equipo que tiene la responsabilidad de entregar el
producto. Un pequeño equipo de 3 a 9 personas con las habilidades transversales
necesarias para realizar el trabajo (Análisis, diseño, desarrollo, pruebas,
documentación, entre otros). (Scrum Methodology, 2010).
Stakeholders (Clientes, Proveedores, Vendedores, entre otros): Se refiere
a la gente que hace posible el proyecto y para quienes el proyecto producirá el
39
beneficio acordado que justifica su producción. Sólo participan directamente
durante las revisiones del sprint. (Scrum Methodology, 2010).
Administradores (Managers): Es la gente que establece el ambiente para el
desarrollo del producto. (Scrum Methodology, 2010).
Sprint
El Sprint es el período en el cual se lleva a cabo el trabajo en sí. Es
recomendado que la duración de los Sprint sea constante y definida por el equipo
con base en su propia experiencia. Se puede comenzar con una duración de sprint
en particular (2 o 3 semanas) e ir ajustándolo con base en el ritmo del equipo,
aunque sin relajarlo demasiado. Al final de cada sprint, el equipo deberá presentar
los avances logrados, y el resultado obtenido es un producto potencialmente
entregable al cliente. Asimismo, se recomienda no agregar objetivos al sprint
o sprint backlog menos que la falta de estos objetivos amenace al éxito del
proyecto. La constancia permite la concentración y mejora la productividad del
equipo de trabajo. (Scrum Methodology, 2010).
Product Backlog
Es un documento de alto nivel para todo el proyecto. Contiene descripciones
genéricas de todos los requisitos, funcionalidades deseables, etc. priorizadas
según su retorno sobre la inversión (ROI). Es el qué va a ser construido. Es
abierto y solo puede ser modificado por el product owner. Contiene estimaciones
realizadas a grandes rasgos, tanto del valor para el negocio, como del esfuerzo de
desarrollo requerido. Esta estimación ayuda al product owner a ajustar la línea
temporal (KEV) y, de manera limitada, la prioridad de las diferentes tareas. Por
ejemplo, si dos características tienen el mismo valor de negocio la que requiera
menor tiempo de desarrollo tendrá probablemente más prioridad, debido a que
su ROI será más alto. (Scrum Methodology, 2010).
40
Sprint Backlog
El sprint backlog es un documento detallado donde se describe el cómo el
equipo va a implementar los requisitos durante el siguiente sprint. Las tareas se
dividen en horas pero ninguna tarea con una duración superior a 16 horas. Si una
tarea es mayor de 16 horas, deberá ser dividida en otras menores. Las tareas en
el sprint backlog nunca son asignadas, son tomadas por los miembros del equipo
del modo que les parezca oportuno. (Scrum Methodology, 2010).
41
CAPITULO IV
SISTEMA ACTUAL
Análisis e Interpretación de Resultados
En el siguiente tramo, se explicarán una serie de preguntas realizadas en una
entrevista al Gerente de producto e Ingeniero de datos de la Empresa, cuyo fin es
el recopilar la información necesaria referente a los procesos actuales de
recopilación de información, para detectar así las necesidades primordiales para la
elaboración del producto. Las preguntas fueron las siguientes:
1. Describa las herramientas que se han utilizado en el pasado para recopilar
los datos de los usuarios.
Esta pregunta se realizó para describir de una forma más detallada los
procesos previos de recopilación de datos de la empresa, para así tener un
mayor entendimiento de ellos.
Las herramientas que se han utilizado son:

La elaboración de una encuesta virtual: Esta encuesta realizada via web,
permite a los usuarios expresar sus afinidades con respecto a un objeto,
mediante votación. El usuario puede votar en una escala, del -3 (siendo la
menor afinidad hacia el objeto) al +3 (siendo mayor afinidad hacia el
objeto).

Una aplicación en la el usuario elegía entre dos actores de televisión, en la
cual el usuario expresa su afinidad en la selección de dichos personaje.
42
2. ¿Qué inconvenientes o problemas tiene o ha tenido la empresa para el
proceso de captura de datos de los usuarios?
La finalidad de esta pregunta es analizar las necesidades desde el punto de
vista del usuario, en el proceso de captura de datos en las herramientas
mencionadas anteriormente. Para así tener un mejor entendimiento en los
procesos necesarios para el desarrollo del sistema.

La necesidad de hacer la captura de datos de una manera más interactiva y
entretenida para el usuario.

La falta de consistencia de datos, referente a la frecuencia de usuarios en
las aplicaciones previas.
3. ¿Cuál es el proceso para medir el nivel de importancia y valor de un objeto
para el usuario?
Esta pregunta fue realizada para saber la estructura bajo la cual se realiza la
evaluación de la captura de datos, mediante los procesos realizado en
aplicaciones pasadas.

Mediante encuestas de afinidad y aplicaciones de selección de objetos, en
los cuales se realiza una votación, donde se evalúa la afinidad por puntajes.
43
A continuación, se puede observar en el siguiente capítulo el desarrollo de la
metodología ágil SCRUM, con el fin de obtener información necesaria para la
planificación en la elaboración del desarrollo del sistema propuesto.
Para ello se toma como base los objetivos específicos en el siguiente cuadro:
Cuadro n°01: Objetivos Específicos del sistema propuesto
ID Objetivos Especifico
1
Realizar el levantamiento de información de los requerimientos actuales de la
empresa Predictvia para la captura de datos.
2
Analizar los requerimientos dictados por la empresa para la selección de la
metodología a emplear.
3
Establecer las interfaces gráficas y modelo de base de datos.
4
Seleccionar las herramientas necesarias para la realización de la aplicación.
5
Establecer y desarrollar el algoritmo necesario para crear un sistema que sirva
de solución al problema general de la empresa.
6
Definir la estrategia de implantación de la aplicación y elegir en que medios se
distribuirán.
Fuente: serrada (2014)
Dados estos objetivos específicos, se elabora las Historias de Usuario (User
Stories) las cuales describen las siguientes actividades para el desarrollo del
sistema propuesto:
44
Cuadro n°02: Historias de Usuario 1
ID Iteración
ID obj.
Historia de Usuario
Puntos
Especifico
1
1
1
Como desarrollador, deseo conocer los
4
requerimientos de los procesos de la
empresa para así desarrollar el diseño de
la aplicación.
2
1
2
Como desarrollador, deseo estructurar y
2
denotar los requerimientos dados de las
entrevistas para poder seleccionar la
metodología necesaria para el sistema
3
1
3
Como programador, puedo generar el
2
modelo entidad - relación con los
requerimientos del sistema.
Fuente: serrada (2014)
Sprint/Iteración 1
Después de tener y analizar las Historias de usuario, procedemos a desglosar
las tareas del Sprint Backlog número uno, la cual tiene como duración de 1
semana:
45
Cuadro n°03: Sprint número 1
ID Descripción
1
Puntos
Identificar las especificaciones técnicas de los servidores de la 1
empresa.
2
Enumerar las herramientas utilizadas para la elaboración y 1
desarrollo de las aplicaciones de la empresa.
3
Investigar y analizar los estándares de programación utilizados en el 2
desarrollo tecnologico de la empresa.
4
Investigar y analizar los estándares de la Base de Datos de la 2
empresa.
5
Describir el proceso para recopilar información del usuario en la 2
empresa
Fuente: serrada (2014)
A continuación, dado las Historias de Usuario, se desglosa las tareas
específicas del Sprint Backlog, el cual sirve como soporte en los resultados
obtenidos por medios de los instrumentos de recolección de datos.
Elemento número 1 del Sprint Backlog 1
Descripción: Identificar las especificaciones técnicas de los servidores de la
empresa.
La empresa Predictvia maneja el desarrollo de sus aplicaciones y productos
bajo el siguiente servidor:
46

Alias: App Develop

Sistema Operativo: Ubuntu 12.04 LTS

Descripción: En este servidor se albergan la cantidad de data necesaria
para los procesos de desarrollo de la empresa Predictvia.
Elemento número 2 del Sprint Backlog 1
Descripción: Enumerar las herramientas utilizadas para la elaboración y
desarrollo de las aplicaciones de la empresa.
Las herramientas que posee y maneja la sección tecnológica de la empresa
son las siguientes:
1. Lenguaje de programación:
a. Flash / Action Script
b. PHP
2. Gestor de Base de Datos:
a. MySQL
Elemento número 3 del Sprint Backlog 1
Descripción: Investigar y analizar los estándares de programación utilizados en
el desarrollo tecnológico de la empresa.
En lo que concierne a los estándares que utiliza la empresa Predictvia, utilizan
un framework que maneja lenguajes de programación PHP, JavaScript, CSS y
HTML llamado Zend Framework. Zend utiliza una serie de modelos a seguir, los
cuales proveen de una estandarización funcional, para mejorar su uso:

Constantes: Deben estar escritas siempre en mayúsculas, pueden poseer
nombres compuestos con caracteres alfanuméricos.
47

Clases: En este caso, Zend Framework define los nombres de las clases
según la carpeta raíz en donde esté localizada, sustituyendo las barras “/”
de la ruta por barras bajas “_”. Ejemplo: Zend_DB_User.

Métodos: Estos solo deben empezar con letra minúscula, utilizando el
formato “camelCase”, el cual consiste en colocar la primera letra de la
segunda palabra (si posee alguna) en mayúscula.

Variable: En variables, los nombres poseen caracteres alfanuméricos a
excepción de las variables de tipo private o protected que deben empezar
con una barra baja “_”.
Elemento número 4 del Sprint Backlog 1
Descripción: Investigar y analizar los estándares de la Base de Datos de la
empresa.
Los estándares con los cuales la empresa se rige son los siguientes:

Nombre de la Base de Datos:
o Utilizar el mismo nombre que el sistema al que pertenece.
o Utilizar capitalización estilo PascalCase. Ejemplo: DbQuiniela.
DbAftermath.

Tablas:
o Se recomienda utilizar plural para facilitar el entendimiento de su
contenido.
48
o Utilizar prefijo para facilitar la identificación del mismo. Prefijo “tbl_”.
Ejemplo: tbl_usuarios, tbl_fechas.

Columnas:
o Las columnas que posean tablas primarias deberán ser identificadas
con el prefijo “pk_”.
o Las columnas que posean tablas foráneas deberán ser identificadas
con el prefijo “fk_”.
o Las columnas siguen un orden en específico: primero las claves
primarias, seguidas por las claves foráneas si existe alguna seguido
por el resto de las columnas.
Elemento número 5 del Sprint Backlog 1
Descripción: Describir el proceso para recopilar información del usuario en la
empresa
En lo que concierne a la recopilación de información, la empresa prosigue el
proceso tomando en cuenta los siguientes puntos claves:

Frecuencia de Data: Uno de los objetivos de la empresa es tener una
constancia en la data que los usuarios de sus aplicaciones proveen, que esté
constantemente actualizando de manera entretenida y a su vez asertiva. Esto
para tener un mejor resultado al usuario final.

Aplicaciones con entretenimiento: Que el usuario final pueda tener una
experiencia placentera y agradable, es uno de los pilares de la empresa en
consideración al desarrollo de sus aplicaciones. Esto debido a que el valor del
usuario en la información que se obtiene tiene mayor validez y mayor
importancia, ya que es proporcionada de una manera no obligatoria.
49

Frecuencia de Usuarios: La cantidad de usuarios que visitan o utilizan las
aplicaciones de la empresa es un dato muy importante en el momento de
estructurar la arquitectura del sistema. Este número es proporcionado por el
llamado por sus siglas en inglés “MAU” y “DAU”, los cuales significan Usuarios
Activos Mensuales (MAU) y Usuarios Activos Diarios (DAU). Según Shanti
Bergel en su publicación “Desing for Monetization: Hot to App THE Key Metric
In Social Apps”, podemos interpretar que teniendo en cuenta los MAU y los
DAU, podemos calcular que la división DAU entre MAU (DAU / MAU) nos
puede decir que tan bien se mantiene nuestra aplicación.
50
CAPITULO V
Sistema Propuesto
En el siguiente capítulo se describen todos los procedimientos realizados para
llevar a cabo el desarrollo y el diseño del sistema propuesto mediante a la
metodología ágil SCRUM.
Luego de desarrollar la Iteración número 1 del desarrollo, podemos tomar lo
requerimientos de los procesos de la empresa, y generar el nuevo Sprint Backlog
correspondiente a la segunda iteración que tendrá una duración estimada de una
semana.
Sprint/Iteración 2
Tabla n°04: Sprint Backlog 2
ID
Descripción
Puntos
1
Analizar los procesos de las aplicaciones actuales de la empresa.
(Encuesta Predictvia, Protagonista de Nuestra Tele).
5
2
Construir las Product Backlog basados en el análisis de los sistemas
Actuales.
3
Total 8
Fuente serrada (2014)
Elemento número 1 del Sprint Backlog 2
Descripción: Analizar los procesos de las aplicaciones actuales. (Encuesta
Predictvia, Protagonista de Nuestra Tele).
La empresa Predictvia posee dos aplicaciones con la finalidad de la
recopilación de información para el motor de predicción que ellos poseen, estos
son:

Protagonistas de Nuestra tele: En protagonistas de nuestra tele el jugador
es presentado con distintos participantes del show de televisión. La idea era
que el jugador debía elegir entre uno de dos actores y el sistema determina
cuáles son sus favoritos luego de comparar a todos contra todos.
51
Esta aplicación compara un elemento con otro (un protagonista con otro), y era
necesario hacer una comparación masiva para poder dar con la ponderación final
del elemento. Siendo esto muy elaborado y complejo para lograr obtener una
votación por un solo elemento de parte del usuario.

Encuesta Predictvia: Esta encuesta consta de una serie de: Marcas,
actores, lugares, objetos, gustos, los cuales se les denomina elementos.
Cada elemento denominado por la empresa es mostrado al usuario junto a
una tabla de votación denominada de la siguiente manera:
o
-3: Corresponde al voto más bajo equivalente a “Odiar” este
elemento.
o
-2: Corresponde al voto equivalente a “No me gusta” este elemento.
o
-1: Corresponde al voto equivalente a “No está bien” este elemento.
o
0: Corresponde al voto equivalente a “No me importa” este elemento.
o
1: Corresponde al voto equivalente a “Esta bien” este elemento.
o
2: Corresponde al voto equivalente a “Me gusta” este elemento.
o
3: Corresponde al voto equivalente a “Amo” este elemento.
Esta encuesta sufre de una alta tasa de deserción con más del 40%, esto
indica que hay un gran porcentaje de usuarios que no completan la encuesta,
haciendo que esta aplicación se vuelva ineficiente al momento de transferir la data
al motor de predictivo de la empresa.
Elemento número 2 del Sprint Backlog 2
Descripción: Construir las Product Backlog basados en el análisis de los
sistema Actuales.
Realizado previamente el análisis de las aplicaciones de los sistemas
actuales de la empresa, se debe definir el Product Backlog para la realización del
diseño y desarrollo del sistema propuesto. El presente sistema será el de una
aplicación de entretenimiento digital, con técnicas de gamificación que sirvan de
herramienta para la recopilación de información para el motor predictivo de la
empresa. A continuación la estructura del Product Backlog de este sistema:
52
Tabla n°05: Product Backlog
ID
Descripción
1
Generar el diseño de flujo de pantallas y escenarios necesarios para la
estructura del sistema.
2
Diseñar el modelo entidad relación de la base de datos que se ajuste a las
necesidades del sistema propuesto.
3
El jugador puede elegir una misión específica para rescatar un objeto por
ejemplo la Pizza porque le gusta mucho.
4
El jugador tiene una limitación de tiempo que le obliga regresar a la base con
los objetos que rescata antes de destruirse con por motivo de la radiación de
los cristales.
4
El jugador tiene una limitación de espacio de los objetos que puede cargar,
que ayuda a determinar un nivel de gusto por el objeto basado en el orden
prioridad a la hora de rescatarlos.
5
El Jugador puede destruir los objetos que no quiere indicando su disgusto por
el objeto.
6
El jugador administrará sus recursos para realizar tareas más complejas como
destruir enemigos y resolver acertijos solo por aquellos objetos que le
interesan.
Fuente: serrada (2014)
Sprint/Iteración 3
Tabla n°06: Sprint Backlog 3
ID
Descripción
Puntos
1
Diagramar e implementar las ventanas finales necesarias para el
funcionamiento del flujo del escenario de selección de niveles.
4
2
Diagramar e implementar las ventanas finales necesarias para el
funcionamiento del sistema de votaciones del sistema.
4
3
Diagramar e implementar las ventanas finales necesarias para el
funcionamiento del sistema de juego de la aplicacion.
4
4
Diagramar e implementar las ventanas finales necesarias para el
4
53
funcionamiento del flujo del escenario de historia del sistema.
Total 16
Fuente: serrada (2014)
Elemento número 1 del Sprint Backlog 3
Descripción: Diagramar e implementar las ventanas finales necesarias para el
funcionamiento del flujo del escenario de selección de niveles.
En esta Iteración se definen e integran todas las pantallas que componen al
flujo de escenario de selección de niveles, junto con la descripción de su
funcionalidad.
Gráfico n°02: Pantalla de Flujo de Selección de niveles
En el gráfico se puede observar que esta es la pantalla en la cual el usuario
tendrá la posibilidad de acceder a los distintos módulos que esta aplicación
presenta. Esta pantalla define un mapa o mundo en el cual el cliente se encuentra
para poder seleccionar una misión.
Dentro de esta misión, el motor de análisis predictivo de la Empresa podrá
definir elementos para que el usuario pueda ejercer acciones sobre este (recoger,
destruir o ignorar).
En esta pantalla se dispone a su vez de tres botones en el costado posterior
derecho, los cuales son:
54

Botón de laboratorio (imagen de los dos matraz de Erlenmeyer): La
funcionalidad de este botón es la de re direccionar al usuario a la escena
del “Laboratorio”, donde el usuario podrá ver los elementos que el rescato
de las misiones y poder votar por ellos si así lo desea.

Botón de herramientas (imagen de engranajes): La funcionalidad de este
botón es la de abrir el menú de opciones para que el usuario pueda
modificar aspectos del juego como el manejo de su sonido, como la opción
de poder repetir las instrucciones del tutorial del sistema.

Botón de Historias (Libro de historietas): La funcionalidad de este botón es
la de abrir un menú de selección de historias para que el usuario pueda
repetir el segmento de historias que el sistema posee y habilita a lo largo de
la aplicación.
Elemento número 2 del Sprint Backlog 3
Descripción: Diagramar e implementar las ventanas finales necesarias para el
funcionamiento del sistema de votaciones del sistema propuesto.
En esta Iteración se definen e integran todas las pantallas que componen el
sistema de votaciones del sistema.
Gráfico n°03: Pantalla de Sistema de votación 01
55
En esta pantalla se presentan los elementos con los cual el usuario tuvo
interacción en las misiones, ya sea para rescatarlo u obtenerlo, como también el
de destruirlo.
Esta es una de las más importantes partes de este sistema, ya que es el
núcleo de y razón de este sistema para la empresa. Dentro de esta pantalla el
usuario podrá hacer clic a cualquier elemento que esté a su disposición para poder
obtener información de él así como se muestra a continuación:
Gráfico n°04: Pantalla de Sistema de votación 02
Una vez que el usuario consulta la información de un elemento en la pantalla
anteriormente explicada, se le re direcciona a este gráfico n° , aquí se detalla el
elemento con su respectiva imagen, titulo, y un texto con una breve descripción de
lo que el elemento representa en el mundo real.
De la misma manera se encuentran 7 botones en la parte posterior izquierda
de esta pantalla. Estos botones representan la tabla de acciones de votaciones
que la empresa definió para la votación de estos elementos las cuales son
respectivamente de izquierda a derecha:





-3: Corresponde al voto más bajo equivalente a “Odiar” este elemento.
-2: Corresponde al voto equivalente a “No me gusta” este elemento.
-1: Corresponde al voto equivalente a “No está bien” este elemento.
0: Corresponde al voto equivalente a “No me importa” este elemento.
1: Corresponde al voto equivalente a “Esta bien” este elemento.
56


2: Corresponde al voto equivalente a “Me gusta” este elemento.
3: Corresponde al voto equivalente a “Amo” este elemento.
El usuario tendrá la opción de interactuar con cualquier botón de votación
que el desee, siendo esta data almacenada en la Base de datos del sistema, para
su posterior transmisión al motor de predicción que provee la empresa.
Esto es uno de las acciones con mayor importancia en todo el sistema,
pues es el que da respuesta directa a uno de los problemas de la Empresa con
respecto a la recopilación de datos.
Elemento número 3 del Sprint Backlog 3
Descripción: Diagramar e implementar las ventanas finales necesarias para el
funcionamiento del sistema de juego de la aplicación.
En esta Iteración se definen e integran todas las pantallas que componen el
sistema de juego de la aplicación. Este punto se refiere a la mayor parte de las
mecánicas de gamificación implementadas para el disfrute del usuario.
Gráfico n°05: Pantalla de Sistema de juego 01
Como podemos observar en el gráfico n° el usuario es representado por un
vehículo, el cual puede desplazarse dentro del mundo que seleccionó previamente
57
para la recolección de elementos que se encuentran esparcidos a lo largo del
mapa.
Podemos ver varios aspectos de esta pantalla, se explicara uno a uno:

En la parte superior izquierda, se encuentra un contador de “Bishcoins”,
este representa el sistema económico de la aplicación, la cual agrega un
valor equivalente al dinero dentro de la misma, con ella se podrá efectuar
compras por mejoras, habilidades o facilidades en la aplicación.

En la parte superior central, hay un medidor de puntos, seguido
posteriormente de un reloj, el cual nos limita de cuenta regresiva la cantidad
de tiempo que disponemos de completar dicha misión. El medidor de
puntos aumenta a medida que el usuario haga acciones dentro del juegos,
algunas de ellas sería el recoger un elemento, destruir un elemento, destruir
a un enemigo, entre otros.

Seguidamente tenemos un dos contadores: el primero que posee un trofeo
de imagen, es el contador de los elementos que se encuentran actualmente
en el mapa, a medida que el usuario va coleccionando o eliminando dichos
elementos el contador se actualizará. A su vez, el próximo contador que
presenta con una imagen de un cristal, se trata de una mecánica de
gamificación, en la cual el usuario tendrá que destruir en su totalidad los
cristales que se encuentran dentro del mapa, para poder así obtener más
puntos y completar un cien por ciento del mapa.

En la posición superior derecha, se encuentra un mapa, en el cual muestra
la posición del usuario y a su vez muestra dentro de ella los elementos,
cristales u otros objetivos de relevancia para el usuario en el sistema de
juego.

En la parte inferior derecha se encuentra el botón de almacenamiento de
elementos. En cada misión que el jugador decida ejecutar dispondrá
solamente de un espacio para guardar cuatro elementos por partida. Esta
es otra mecánica para que el usuario se vea en la necesidad de tener que
ejecutar la misión más de una vez. Con esto generamos más constancia de
parte del usuario, haciendo aún más valiosa la información que el nos va a
proveer.
58
Gráfico n°06: Pantalla de Sistema de juego 02
Esta pantalla se encuentra dentro de nuestro sistema de juego. Aparece al
momento en que el usuario interactúa con un doble clic al elemento dentro del
juego, posterior a esto el jugador selecciona la opción de información del
elemento, para así poder obtener una información más detallada del objeto dentro
del juego.
Gráfico n°07: Pantalla de Sistema de juego 03
59
Una vez completado el propósito u objetivo de la misión elegida, aparecerá
esta pantalla de resultados. Como podemos ver, se muestra al usuario los
elementos que rescato, los elementos que destruyó, el total de cristales
destruidos, y el puntaje total.
A su vez el usuario tiene la opción de poder salir y salvar la misión o de volver
a realizar la misión si así lo desee. Esta mecánica es para que el usuario pueda
superar el puntaje anterior, creando así una competitividad individual que genera
más frecuencia de uso.
Elemento número 4 del Sprint Backlog 3
Descripción: Diagramar e implementar las ventanas finales necesarias para el
funcionamiento del flujo del escenario de historia del sistema.
Gráfico n°08: Pantalla de flujo del escenario de historia 01
Esta sección de esta pantalla, contiene un módulo dentro del sistema en el cual
detalla una serie de imágenes en pantalla seguida de unos textos, los cuales
sirven al usuario de historia. Esta historia explica la temática que se encuentra
dentro de esta aplicación, la cual sirve de valor agregado para el usuario, pues se
envuelve en la temática de esta aplicación, teniendo como consecuencia obtener
un motivo “lógico” y con “sentido” que ayuda al incremento de usabilidad de esta
aplicación de un mismo usuario.
60
Gráfico n°09: Pantalla de flujo del escenario de historia 02
Sprint/Iteración 4
Tabla n°07: Sprint Backlog 4
ID
Descripción
Puntos
1
Elaborar las tablas necesarias en la base de datos para el
funcionamiento del módulo de Usuarios
4
2
Elaborar las tablas necesarias en la base de datos para el
funcionamiento del módulo de Votaciones
2
3
Elaborar las tablas necesarias en la base de datos para el
funcionamiento del módulo de Localización
2
4
Elaborar las tablas necesarias en la base de datos para el
funcionamiento del módulo de Elemento
8
Total 16
Fuente: serrada (2014)
A continuación se presenta el modelo de la base de datos en la gráfica n° 10,
el cual servirá de base esencial para todo el sistema propuesto
61
Grafica n°10: Modelo Entidad Relación de la Base de Datos
62
Elemento número 1 del Sprint Backlog 4
Descripción: Elaborar las tablas necesarias en la base de datos para el
funcionamiento del módulo de Usuarios
Para este módulo se encuentra presente un conjunto de tablas necesarias para
el funcionamiento del mismo.






tbl_user
tbl_user_megatiles
tbl_user_missions
tbl_user_trophies
tbl_user_vehicles
tbl_user_friends
Con la finalidad de explicar el funcionamiento de este módulo de base de
datos, se presenta su estructura, composición y funcionalidad de las tablas antes
mencionadas.
A. tbl_user
Cuadro n°08: Diccionario de Datos tbl_user
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
tcy_user_id
int
No
Si
u_facebook_id
Varchar
Si
Multiple
u_name
Varchar
No
No
u_tutorial_done DateTime
Si
No
u_created
DateTime
Si
No
u_last_update
TimeStamp
Si
No
u_bishcoins
Text
Si
No
u_picture
Text
Si
No
63
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada a cada
usuario que utilice la aplicación propuesta. En ella existen campos que ayudarán
al flujo de uso de la aplicación.
B. tbl_user_megatiles
Cuadro n°09: Diccionario de Datos tbl_user_megatiles
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
user_megatile_id Int
No
Si
um_user_id
Int
No
Multiple
um_megatile_id
Int
No
Multiple
um_cleared
Int
No
No
um_unlocked
Int
No
No
um_created
DateTime
Si
No
Si
No
um_last_updated TimeStamp
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada a cada
usuario junto a su respectivo “megatile”.
En este sistema, Megatile se define como el conjunto de misiones con
elementos definidos por el motor de predicción de la empresa que posee un
usuario. Este posee datos indispensables para el flujo del escenario de selección
de niveles, ya que determina la identificación, cantidad y estado del conjunto de
misiones que posee un usuario en específico.
C. tbl_user_missions
64
Cuadro n°10: Diccionario de Datos tbl_user_missions
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
user_mission_id
Int
No
Si
um_user_id
Int
No
Multiple
um_mission_id
Int
No
Multiple
um_identifier
Varchar
Si
No
um_json_map
MediumText
Si
No
um_finished
TinyInt
Si
No
um_active
um_active
No
No
um_source
Text
Si
No
um_n_pickups
Int
No
No
um_pickups
Text
Si
No
um_n_final_pickups
Int
No
No
um_final_pickups
Text
Si
No
um_created
DateTime
Si
No
um_last_updated
TimeStamp
No
No
um_score
Int
Si
No
um_stats
Text
Si
No
Si
No
um_json_mission_extras MediumText
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada a cada
usuario junto a su respectiva “misión”.
En este sistema, Misión se define como el espacio dentro del sistema de juego,
el cual está compuesto por un conjunto de elementos a rescatar, un conjunto de
enemigos de diferentes tipos, una estructura gráfica única para cada misión y una
65
cantidad de cristales por destruir los cuales conforman las mecánicas que
componen el núcleo central del módulo de sistema de juego para este proyecto.
D. tbl_user_trophies
Cuadro n°11: Diccionario de Datos tbl_user_trophies
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
user_trophy_id
Int
No
Si
ut_user_id
Int
No
Multiple
ut_object_id
Int
No
Multiple
ut_user_mission_id Int
No
No
ut_mission_id
Int
No
No
ut_created
DateTime
Si
No
um_last_updated
TimeStamp
Si
No
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada a cada
elemento que existe en todo el sistema propuesto.
A lo largo de este sistema se trata el término “Elemento”, este se define como
cualquier marca, sujeto, película, música u objeto que defina la empresa, el cual
puede ser ponderado con la tabla de acción de votos definida por Predictvia.
Esto implica, que cualquier necesidad de información que posea la empresa
respecto a un tema en específico, lo puede transformar en un elemento para este
sistema, y así obtener la información necesaria de parte de los usuarios que usen
el mismo.
Estos campos, almacenan la información de los Elementos que el usuario ha
obtenido o destruido a lo largo del desarrollo del sistema de juego que presenta
este proyecto.
66
E. tbl_user_vehicles
Cuadro n°12: Diccionario de Datos tbl_user_vehicles
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
user_vehicle_id
Int
No
Si
uv_user_id
Int
No
Multiple
uv_vehicle_id
Int
No
Multiple
uv_cryogel
Text
No
No
uv_fuel
Text
No
No
uv_damage
Text
No
No
uv_body
Text
No
No
uv_velocity
Text
No
No
uv_weapon
Text
No
No
uv_shield
Text
No
No
uv_bodiesBought Text
No
No
uv_shieldValue
No
No
Text
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada a la
mecánica de gamificación la cual permite al usuario cambiar el aspecto y atributos
del vehículo que es seleccionado para utilizar en cada misión dentro del sistema
de juego.
Contiene campos los cuales dan las especificaciones de dichos vehículos
relacionados con un usuario en particular.
67
F. tbl_user_friends
Cuadro n°13: Diccionario de Datos tbl_user_friends
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
user_friend_id
Int
No
Si
user_id
Int
No
No
friend_user_id
Int
Si
No
friend_facebook_id Varchar
Si
No
friend_name
Varchar
Si
No
is_registered
TinyInt
No
No
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada a la
integración social de esta aplicación.
El sistema propuesto tiene la capacidad de iniciar sesión a la red social
conocida como Facebook para poder invitar y agregar la lista de amigos del
usuario que utilice este sistema.
Los campos, señalados en esta tabla, almacenan la información para que el
usuario disponga de un módulo social el cual genera una mecánica de
gamificación de mucho valor conocida como competitividad social. La cual es uno
de los atributos más importantes para generar el aumento de usuarios activos para
este sistema, y así obtener mayor información para el motor de predicción de la
empresa Predictvia.
Elemento número 2 del Sprint Backlog 4
Descripción: Elaborar las tablas necesarias en la base de datos para el
funcionamiento del módulo de Votaciones.
Para este módulo se encuentra presente un conjunto de tablas necesarias para
el funcionamiento del mismo.
 tbl_votes
 tbl_trophy_types
68

tbl_trophies_vs_votes
Con la finalidad de explicar el funcionamiento de este módulo de base de
datos, se presenta su estructura, composición y funcionalidad de las tablas antes
mencionadas.
A. tbl_votes
Cuadro n°14: Diccionario de Datos tbl_votes
Nombre
vote_id
Tipo de Dato Permitir Nulo Clave Primaria
Int
v_vote_value Varchar
No
Si
Si
No
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada a las
votaciones que los usuarios pueden realizar para cada elemento que exista en el
sistema.
Está compuesto por dos campos: El campo con su identificador en específico,
y otro campo con la ponderación correspondiente a la tabla de acciones de
votaciones de la empresa.
B. tbl_trophy_types
Cuadro n°15: Diccionario de Datos tbl_trophy_types
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
trophy_type_id Int
No
Si
tt_trophy_type
No
No
Int
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada a los
elementos que estarán disponibles en el módulo del sistema determinado
“laboratorio” explicado anteriormente en las pantallas.
C. tbl_trophies_vs_votes
69
Cuadro n°16: Diccionario de Datos tbl_trophies_vs_votes
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
trophy_vs_vote_id Int
No
Si
tv_user_trophy_id
Int
No
No
tv_vote_id
Int
No
No
tv_scene_id
Int
No
No
tv_trophy_type_id
Int
Si
No
tv_created
DateTime
Si
No
tv_last_updated
TimeStamp
Si
No
Fuente: serrada (2014)
Esta tabla es una tabla generada por la relación entre la tabla “tbl_trophies” y la
tabla “tbl_votes” por motivos de normalización de estas. Funciona de intermediaria
entre las dos tablas.
Elemento número 3 del Sprint Backlog 4
Descripción: Elaborar las tablas necesarias en la base de datos para el
funcionamiento del módulo de Localización.
Para este módulo se encuentra presente un conjunto de tablas necesarias para
el funcionamiento del mismo.



tbl_languages
tbl_missions_vs_text_values
tbl_text_identifiers
Con la finalidad de explicar el funcionamiento de este módulo de base de
datos, se presenta su estructura, composición y funcionalidad de las tablas antes
mencionadas.
70
A. tbl_languages
Cuadro n°17: Diccionario de Datos tbl_languages
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
languages_id
Int
No
Si
language
Varchar
Si
No
language_acronym Varchar
Si
No
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada a la
localización del juego.
Esto quiere decir, que toda la data relacionada al manejo de la selección del
idioma del juego es almacenada en esta tabla. Esto debido a que el juego se
encuentra tanto en el idioma Inglés, como el idioma Español.
B. tbl_missions_vs_text_values
Cuadro n°18: Diccionario de Datos tbl_missions_vs_text_values
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
mission_vs_text_value_id Int
No
Si
fk_mission
Int
No
No
fk_text_identifier
Int
No
No
fk_text_value
Int
No
No
Fuente: serrada (2014)
Esta tabla es una tabla generada por la relación entre la tabla “tbl_missions”
y la tabla “tbl_text_values” por motivos de normalización de estas. Funciona de
intermediaria entre las dos tablas.
71
C. tbl_text_identifiers
Cuadro n°19: Diccionario de Datos tbl_text_identifiers
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
text_identifier_id Int
No
Si
ti_language_id
Int
No
No
ti_scene_id
Int
No
No
ti_name
Varchar
Si
No
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada al manejo de
los textos provenientes de los archivos de localización del sistema propuesto, para
ser desplegados en las diferentes escenas y pantallas que posee el sistema.
Elemento número 4 del Sprint Backlog 4
Descripción: Elaborar las tablas necesarias en la base de datos para el
funcionamiento del módulo de Elemento.
Para este módulo se encuentra presente un conjunto de tablas necesarias para
el funcionamiento del mismo.









tbl_categories
tbl_logins
tbl_megamaps
tbl_megatiles
tbl_object_media
tbl_object_sources
tbl_objects
tbl_objects_vs_categories
tbl_scenes
72
Con la finalidad de explicar el funcionamiento de este módulo de base de
datos, se presenta su estructura, composición y funcionalidad de las tablas antes
mencionadas.
A. tbl_categories
Cuadro n°20: Diccionario de Datos tbl_categories
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
category_id
Int
No
Si
c_name
Varchar
Si
No
Si
No
parent_category_id Int
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada a las
categorías presentes en el sistema de votación y el sistema de juego. Esto va
directamente relacionadas a su vez con las llamadas misiones en este sistema.
B. tbl_logins
Cuadro n°21: Diccionario de Datos tbl_logins
Nombre
l_user_id
Tipo de Dato Permitir Nulo Clave Primaria
Int
No
Si
l_last_login TimeStamp
No
No
l_operation Varchar
No
No
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada al inicio de
sesión realizado por los usuarios en este sistema propuesto.
Esto se utiliza para llevar un registro en los análisis del sistema de la empresa,
en cuanto a número de usuarios activos, y otros datos de interés para Predictvia.
73
C. tbl_megamaps
Cuadro n°22: Diccionario de Datos tbl_megamaps
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
megamap_id Int
No
Si
mm_width
Int
No
No
mm_height
Int
No
No
mm_name
Varchar
No
No
status
Int
No
No
mm_posX
Int
No
No
mm_posY
Int
No
No
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada al conjunto
de “Megatiles” que posea el mismo.
Los campos almacenan información de identificación y posicionamiento de
todo que puede poseer dentro el determinado “Megatiles” definido a continuación.
D. tbl_megatiles
Cuadro n°23: Diccionario de Datos tbl_megatiles
Nombre
megatile_id
Tipo de Dato Permitir Nulo Clave Primaria
Int
No
Si
mt_megamap_id TimeStamp
No
No
mt_name
No
No
Varchar
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada al conjunto
de atributos que posee el llamado “Megatile”
74
Dentro de este sistema un “Megatile” consiste en el conjunto de misiones que
posee un usuario en cierto tiempo determinado. Esto se evidencia en el sistema
de selección de misiones definido y mostrado anteriormente.
E. tbl_object_media
Cuadro n°24: Diccionario de Datos tbl_object_media
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
object_media_id
Int
No
Si
om_object_id
Int
No
No
om_type
Varchar
No
No
om_source_link
Text
No
No
om_pixels_width
Int
Si
No
om_pixels_height Int
Si
No
om_created
No
No
No
No
DateTime
om_last_updated TimeStamp
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada a las
imágenes que poseen los elementos dentro del sistema de juego y sistema de
votaciones.
El propósito de la misma es crear un vínculo entre la identificación del
elemento definido por la empresa y las imágenes correspondientes que identifican
a la misma.
75
F. tbl_object_sources
Cuadro n°25: Diccionario de Datos tbl_object_sources
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
object_source_id Int
No
Si
os_object_id
Int
No
No
os_summary
Varchar
Si
No
os_language_id
Text
No
No
os_created
DateTime
No
No
os_last_updated
TimeStamp
Si
No
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada a la
información que poseen los elementos dentro del sistema de juego y sistema de
votaciones.
El propósito de la misma es crear un vínculo entre la identificación del
elemento definido por la empresa y la información correspondientes que identifican
a la misma.
G. tbl_objects
Cuadro n°26: Diccionario de Datos tbl_objects
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
tcy_object_id
Int
No
Si
o_name
Int
No
No
o_created
DateTime
Si
No
No
No
o_last_updated TimeStamp
Fuente: serrada (2014)
76
Esta tabla tiene como función almacenar toda la data relacionada a la creacion
de un elemento nuevo de parte de la Empresa.
En esta tabla se almacena la información necesaria para definir un elemento
nuevo. Proceso el cual realiza la empresa Predictvia cuando desea agregar al
sistema un nuevo elemento.
H. tbl_objects_vs_categories
Cuadro n°27: Diccionario de Datos tbl_objects_vs_categories
Nombre
Tipo de Dato Permitir Nulo Clave Primaria
objects_vs_category_id Int
No
Si
ovc_object_id
Int
No
No
ovc_category_id
Int
No
No
Fuente: serrada (2014)
Esta tabla es una tabla generada por la relación entre la tabla “tbl_objects” y la
tabla “tbl_categories” por motivos de normalización de estas. Funciona de
intermediaria entre las dos tablas.
I. tbl_scenes
Cuadro n°28: Diccionario de Datos tbl_scenes
Nombre Tipo de Dato Permitir Nulo Clave Primaria
scene_id Int
No
Si
s_name
Si
No
Varchar
Fuente: serrada (2014)
Esta tabla tiene como función almacenar toda la data relacionada a los
diferentes tipos de escenarios o pantallas las cuales están a disposición del
usuario para acceder o interactuar. Como por ejemplo: La pantalla de inicio, la
pantalla de historia, la pantalla de laboratorio, la pantalla de selección de misión,
entre otros.
77
Desarrollo
Esta sección abordo el desarrollo de las actividades que se mostraran a
continuación del Product Backlog tomadas como resultado de la elaboración de la
metodología y diseño anteriormente elaboradas.
Debido a que el código fuente resultante de la elaboración del sistema
propuesto es muy extenso, en esta sección nos centraremos en mostrar el flujo de
las actividades mediante sus respectivos Sprints/Iteraciones como intervalos de
tiempo.
Sprint/Iteración 5
Cuadro n°29: Sprint Backlog 5
#
Responsable
Historia de Usuario
Puntos
1 Ismael
Serrada
Como programador
Puedo crear de un vehículo que tenga movilidad en
el sistema de juego.
4
2 Ismael
Serrada
Como programador
Puedo hacer que el vehículo pueda recoger y botar
un elemento.
2
3 Ismael
Serrada
Como programador
Puedo hacer un mensaje de alerta cuando el
vehículo esté lleno
2
4 Ismael
Serrada
Como programador
Puedo hacer que el vehículo cambie de Angulo.
2
78
Gráfico n°11: Burndown Chart del Sprint 5
Sprint/Iteración 6
Cuadro n°30: Sprint Backlog 6
#
Responsable
Historia de Usuario
Puntos
1 Ismael
Serrada
Como programador
Puedo generar un archivo externo con la estructura
de los mapas de las misiones
4
2 Ismael
Serrada
Como programador
Puedo cargar múltiples texturas para crear un mapa
4
3 Ismael
Serrada
Como programador
Puedo cargar animaciones para animar objetos que
estén en las misiones
2
4 Ismael
Serrada
Como programador
Puedo cargar un elemento de un punto A a un punto
B para activar un evento
4
5 Ismael
Serrada
Como programador
Puedo organizar y depurar el código fuente, para
optimizar el sistema
2
79
Gráfico n°12: Burndown Chart del Sprint 6
Sprint/Iteración 7
Cuadro n°31: Sprint Backlog 7
#
Responsable
Historia de Usuario
Puntos
1 Ismael
Serrada
Como programador
Puedo modificar la velocidad del vehículo para
mejorar su rendimiento.
2
2 Ismael
Serrada
Como programador
Puedo definir zonas de activación, para agregar
nuevas mecánicas de juego
4
3 Ismael
Serrada
Como programador
Puedo mostrar un número de elementos recogidos
para mostrar su progreso
2
4 Ismael
Serrada
Como programador
Puedo crear un boton de pausa y reanudar para
4
80
utilizarlos cuando sean necesarios.
Gráfico n°13 Burndown Chart del Sprint 7
Sprint/Iteración 8
Cuadro n°32: Sprint Backlog 8
#
Responsable
Historia de Usuario
1
Ismael
Serrada
Como programador
Puedo agregar un área prohibida en la selección de
misiones.
4
2
Ismael
Serrada
Como programador
Puedo salvar la data de las misiones en la Base de
datos, para poder cambiar su contenido
4
3
Ismael
Serrada
Como programador
Puedo crear cristales en las misiones, para que el
jugador pueda destruirlos
4
4
Ismael
Como programador
4
81
Puntos
Serrada
Puedo crear recursos de Agua y energía, para que el
jugador pueda tomarlas
Gráfico n°14: Burndown Chart del Sprint 8
Sprint/Iteración 9
Cuadro n°33: Sprint Backlog 9
#
Responsable
Historia de Usuario
Puntos
1 Ismael
Serrada
Como programador
Puedo hacer que el vehículo dispare a diferentes
niveles
2
2 Ismael
Serrada
Como programador
Puedo agregar un efecto de sonido cuando el
jugador le dispara a un cristal
2
3 Ismael
Serrada
Como programador
Puedo agregar sonido a los distintos escenarios del
sistema.
4
4 Ismael
Como programador
4
82
Serrada
Puedo crear objetos explosivos dentro de los mapas
Grafico n°15 Burndown Chart del Sprint 9
Pruebas
Las actividades que se realizaron durante todo este proceso de desarrollo
poseen un criterio de aceptación, razón por la cual, se realizó una prueba al final
de cada una de las Iteraciones correspondientes. Si esta no cumple con el criterio
de aceptación no puede finalizarse la actividad.
A continuación, se muestra el Product Backlog en donde se puede observar las
actividades relacionadas al desarrollo del sistema propuesto, al igual que su
respectivo criterio de aceptación y su resultado.
83
Cuadro n°34: Product Backlog resultante de la etapa de desarrollo
Sprint/
Actividad
Iteración
2
Analizar los procesos de las aplicaciones
actuales de la empresa. (Encuesta
Predictvia, Protagonista de Nuestra Tele).
2
Construir las Product Backlog basados en
el análisis de los sistemas Actuales.
3
Diagramar e implementar las ventanas
finales necesarias para el funcionamiento
del flujo del escenario de selección de
niveles.
3
Diagramar e implementar las ventanas
finales necesarias para el funcionamiento
del sistema de votaciones del sistema
propuesto
3
Diagramar e implementar las ventanas
finales necesarias para el funcionamiento
del sistema de juego de la aplicación.
3
Diagramar e implementar las ventanas
finales necesarias para el funcionamiento
del flujo del escenario de historia del
sistema.
Puntos
Criterio de Aceptación
Aceptada?
5
Realizar una descripción y análisis
de las herramientas
Si
3
Generar un Product Backlog inicial
para el sistema propuesto.
Implementar funcionalidad de
ventanas de selección de niveles.
Si
4
Implementar funcionalidad de
ventanas de sistema de
votaciones.
Si
4
Implementar funcionalidad de
ventanas de sistema de juego de
la aplicación.
Implementar funcionalidad de
ventanas necesarias para el
funcionamiento del flujo del
escenario de historia del sistema.
Si
4
4
84
Si
Si
Cuadro n°34: (cont) Product Backlog resultante de la etapa de desarrollo
Sprint/
Actividad
Iteración
4
Elaborar las tablas necesarias en la base
de datos para el funcionamiento del
módulo de Usuarios
4
Elaborar las tablas necesarias en la base
de datos para el funcionamiento del
módulo de Votaciones
4
Elaborar las tablas necesarias en la base
de datos para el funcionamiento del
módulo de Localización
4
Elaborar las tablas necesarias en la base
de datos para el funcionamiento del
módulo de Elemento
5
Como programador
Puedo crear de un vehículo que tenga
movilidad en el sistema de juego.
5
Como programador
Puedo hacer que el vehículo pueda
recoger y botar un elemento.
5
Como programador
Puedo hacer un mensaje de alerta cuando
el vehículo esté lleno
5
Como programador
Puedo hacer que el vehículo cambie de
ángulo.
Puntos
4
Criterio de Aceptación
Aceptada?
Modelo físico de la base de datos
con el diccionario de datos y
explicación del funcionamiento.
Modelo físico de la base de datos
con el diccionario de datos y
explicación del funcionamiento.
Modelo físico de la base de datos
con el diccionario de datos y
explicación del funcionamiento.
Modelo físico de la base de datos
con el diccionario de datos y
explicación del funcionamiento.
Poder mover el vehículo haciendo
clic.
Si
2
Permitir el poder recoger y soltar
un elemento
Si
2
Ver el mensaje de alerta de
manera eficiente y correcta.
Si
2
Cambio de ángulo cambiando las
caras del vehículo
correspondientes.
Si
2
2
8
4
85
Si
Si
Si
Si
Cuadro n°34:(cont) Product Backlog resultante de la etapa de desarrollo
Sprint/
Actividad
Iteración
6
Como programador
Puedo generar un archivo externo con la
estructura de los mapas de las misiones
6
Como programador
Puedo cargar múltiples texturas para crear
un mapa
6
Como programador
Puedo cargar animaciones para animar
objetos que estén en las misiones
6
Como programador
Puedo cargar un elemento de un punto A a
un punto B para activar un evento
6
Como programador
Puedo organizar y depurar el código fuente,
para optimizar el sistema
7
Como programador
Puedo modificar la velocidad del vehículo
para mejorar su rendimiento.
7
Como programador
Puedo definir zonas de activación, para
agregar nuevas mecánicas de juego
7
Como programador
Puedo mostrar un número de elementos
recogidos para mostrar su progreso
7
Como programador
Puedo crear un botón de pausa y reanudar
para utilizarlos cuando sean necesarios.
Puntos
Criterio de Aceptación
Aceptada?
4
Creación de un archivo JSON.
Si
4
Carga de texturas a diferentes
misiones del sistema.
Si
2
Carga de animaciones en las
diferentes misiones.
Si
4
Activaciones de eventos respecto
a mecánicas de juego.
Si
2
Optimización de código y
ejecución.
Si
2
Mejora de velocidad y rendimiento
del vehículo.
Si
4
Agregar mecánica de juego
mediante zonas de activación de
eventos.
Contador de elementos en el
sistema de juego.
Si
2
4
86
Botón de pausa en el sistema de
juego.
Si
Cuadro n°34: (cont) Product Backlog resultante de la etapa de desarrollo
Sprint/
Actividad
Iteración
8
Como programador
Puedo agregar un área prohibida en la
selección de misiones.
8
Como programador
Puedo salvar la data de las misiones en la
Base de datos, para poder cambiar su
contenido
8
Como programador
Puedo crear cristales en las misiones, para
que el jugador pueda destruirlos
8
Como programador
Puedo crear recursos de Agua y energía,
para que el jugador pueda tomarlas
9
Como programador
Puedo hacer que el vehículo dispare a
diferentes niveles
9
Como programador
Puedo agregar un efecto de sonido cuando
el jugador le dispara a un cristal
9
Como programador
Puedo agregar sonido a los distintos
escenarios del sistema.
9
Como programador
Puedo crear objetos explosivos dentro de los
mapas
Puntos
Criterio de Aceptación
Aceptada?
4
Crear área deshabitada en
selección de misiones.
Si
4
Conexión a tablas de base de dato
para salvar data.
Si
4
Implementación de mecánica de
destrucción de cristales.
Si
4
Implementación de mecánica.
Si
2
Mecánica de disparo de vehículo
Si
2
Implementación de efecto de
sonido de explosión.
Si
4
Implementación general de efectos
de sonido.
Si
4
Implementación de mecánica de
objetos explosivos.
Si
87
CONCLUSIONES
Se realizaron encuestas del tipo no estructuradas las cuales sirvieron de base
para el análisis de requerimiento para la empresa Predictvia. Las cuales dieron
como resultado la necesidad de generar mayor atracción en sus aplicaciones y así
poder generar información confiable para la empresa y generar una información
precisa para el posterior análisis predictivo.
Una vez analizados dichos requerimientos de la empresa se determinó el uso de
scrum para obtener una mejor visibilidad del proyecto dado los tiempos de entrega
tan exigentes para poder tener una retroalimentación constante de cada de hito
del desarrollo de proyecto. Lo cual permitió realizar diversos cambios de forma
dinámica. El uso de la metodología Scrum permitió la medición de la productividad
de los recursos de forma sencilla y al mismo tiempo la creación de un equipo
multifuncional y autónomo. La metodología seleccionada reconoce la reducción de
actividades burocráticas tales como excesos de documentaciones y reuniones,
teniendo un énfasis en la comunicación cara a cara. Dicho esto el proyecto tuvo la
capacidad de responder fácil al cambio y los problemas pudieron ser identificados
rápidamente.
Se evaluó la secuencia de uso de la aplicación y se determinó la arquitectura de la
interfaz gráfica, las herramientas a utilizar y el correcto flujo de información. Se
realizó un modelo entidad relación el cual sirvió para almacenar datos vitales para
este sistema tales como, la información del usuario, de los elementos de afinidad
que la empresa necesitaba recaudar para el análisis predictivo, y lo necesarios
para el desarrollo del sistema.
Se utilizó como engine de desarrollo Starling por su facilidad de uso, por su
portabilidad para las distintas plataformas (Móvil, Android, IOS, Web), por el
acceso a su documentación y por costos ya que es un framework gratuito, además
la experiencia de uso previo sobre.
Base de datos: Se mantuvo la utilización de MYSQL para la utilización de base de
datos ya que proporcionaban la facilidad de uso por experiencias de la empresa,
también su capacidad de conectividad con el engine anterior.
De igual manera se usó un repositorio por medio de GITHUB para poder compartir
el proyecto en los diferentes departamentos que fuese necesario, y también tener
un almacenamiento del mismo en la web.
88
Una vez elegida las herramientas, se crearon historias de usuario para determinar
todas las funcionalidades que posee el sistema, y se realizaron los algoritmos
necesarios para completar cada una de las funcionalidades.
Finalmente, una vez desarrollada y finalizada la aplicación se definió como
plataforma de publicación principal una versión de navegador web por medio de la
red social de Facebook, para luego poder hacer la publicación correspondiente en
plataformas móviles Android por medio de Google Play.
Como resultado en un periodo de seis meses de actividad se obtuvo un total de
usuarios de mil setenta y siete (1.077). A su vez se mantuvo un MAU (Monthly
Active Users) de doscientos setenta y nueve (279) usuarios, hasta un MAU
setecientos noventa y ocho (798) usuarios. Se crearon un total de ciento cinco
(105) objetos y se registraron un total de ocho mil doscientos cincuenta y ocho
(8.258) votos por objetos para un total de vente y cuatro (24) niveles creados.
Estos resultados superan el volumen de usuarios de las actividades anteriores en
más de un cincuenta por ciento (50%) en la cantidad de usuarios activos y en un
setenta y dos punto ocho por ciento (72.8%) la cantidad de votos obtenidos por
objetos, demostrando así que este tipo de aplicaciones gamificadas resultan
mucho más atractivas para los usuarios, por lo tanto, la empresa recopilo más
información para la herramienta de análisis predictivo.
89
BIBLIOGRAFÍA
Chulis, K. (2012, Agosto 24). Big data analytics for video, mobile, and social game
monetization. [En linea] Disponible en:
http://www.ibm.com/developerworks/ssa/industry/library/ba-big-datagaming/. [Consulta: Noviembre,2013]
Collier, P. (2011, Diciembre). Compulsion Loops in the Short, Medium and Longterm. Inglaterra. [En linea] Disponible en:
http://www.petecollier.com/?p=259. [Consulta: Octubre, 2013].
Crawford, C. (1984). The Art of Computer Game Design. Berkeley: McGrawHill/Osborne Media.
Huizinga, J. (1938). Homo Ludens: A study of the play-element in culture. Boston:
Beacon.
McConnell, S. (1996). Rapid Development. Microsoft Press.
Gamificacion S.L. (2013). Gamificación| La vida es un juego. Valencia, España.
[En linea] Disponible en: http://www.gamificacion.com/que-es-lagamificacion. [Consulta: Octubre,2013].
Tuutti, C. (2012, April 30). The Business of Federal Technology. [En linea]
Disponible en: http://fcw.com/articles/2012/04/30/gamification-tool-federalagencies.aspx. [Consulta: Noviembre,2013].
VGS. (2008, Abril 17). Video Games Sales. San Francisco, California, Estados
Unidos de Norte America. [En Linea] Disponible en:
http://vgsales.wikia.com/wiki/Video_game_industry.
[Consulta: Octubre, 2013].
Association, E. S. (2013). The Esa. [En Linea] Disponible en:
http://www.theesa.com/facts/pdfs/esa_ef_2013.pdf [Consulta: Junio, 2014].
USM (2001, Marzo 30). Proyecto Factible. [En linea] Disponible en:
http://proyectofactible6.blogspot.com/ [Consulta: Noviembre,2013].
90
UPEL (2005, Marzo 30). Manual de trabajos de Grado de Especializacion y
Maestría y Tésis Doctorales. [En linea] Disponible en:
http://neutron.ing.ucv.ve/NormasUPEL2006.pdf [Consulta: Diciembre,2013].
Hurtado de Barrera, J. (2000). Metodología de la Investigación Holística. Caracas:
Spypal.
Schwaber, K. Sutherland, J (1990). Improving the profession of Software
Development. [En linea] Disponible en: https://www.scrum.org/ [Consulta:
Enero,2014].
Cerda, H. (1991). Los elementos de la investigación. Bogota: El Buho.
Fernández, C. (2002). Metodología de la investigación. Mc Graw Hill.
Gabaldón, N. (2001). Como se elabora un proyecto de investigacion. [En Linea]
Disponible en:
http://dip.una.edu.ve/mae/metodologiaII/paginas/Belestrini,%20M%20Cap%
20VII%20U4.pdf [Consulta en: Noviembre, 2013].
Hurtado de Barrera (2000). Población y Muestra. [En Linea] Disponible en:
http://msctecnologiaeducativa3.blogspot.com/p/poblacion-ymuestra_19.html. [Consultado en: Diciembre, 2013].
Scrum Org (2009). Improving the profession of software Development. [En Linea]
Disponible en: https://www.scrum.org. [Consulta en: Octubre, 2013].
Scrum Methodology (2010). Learn Scrum: Scrum Methology. [En Linea]
Disponible en: http://scrummethodology.com/. [Consulta: Octubre, 2013].
91
ANEXOS
ANEXO A: Entrevista a Gerente de Producto e Ingeniero de datos de la
empresa Predictvia C.A
1. Describa las herramientas que se han utilizado en el pasado para recopilar los
usuarios.
___________________________________________________________
___________________________________________________________
___________________________________________________________
___________________________________________________________
___________________________________________________________
___________________________________________________________
2. Que inconvenientes o problemas tiene o ha tenido la empresa para el proceso
de captura de datos de los usuarios?
___________________________________________________________
___________________________________________________________
___________________________________________________________
___________________________________________________________
___________________________________________________________
___________________________________________________________
3. Cuál es el proceso para medir el nivel de importancia y valor de un objeto para
el usuario?
___________________________________________________________
___________________________________________________________
___________________________________________________________
92
Descargar