UNIVERSIDAD TECNOLÓGICA EQUINOCCIAL
FACULTAD DE CIENCIAS DE LA INGENIERÍA E
INDUSTRIAS
CARRERA DE INGENIERÍA INFORMÁTICA Y
CIENCIAS DE LA COMPUTACIÓN
APLICATIVO MÓVIL DE MENSAJERÍA Y NOTIFICACIONES
SOBRE LA PLATAFORMA LEARNING MANAGEMENT
SYSTEM CHAMILO.
TRABAJO PREVIO A LA OBTENCIÓN DEL TÍTULO
DE INGENIERO EN INFORMÁTICA Y CIENCIAS DE LA COMPUTACIÓN
JONATHAN DARIO BAQUERO ALMEIDA
DIRECTOR: ING. CIRO SAGUAY
Quito, Septiembre 2017
DERECHOS DE AUTOR
© Universidad Tecnológica Equinoccial. 2017
Reservados todos los derechos de reproducción
FORMULARIO DE REGISTRO BIBLIOGRÁFICO
PROYECTO DE TITULACIÓN
DATOS DE CONTACTO
CÉDULA DE IDENTIDAD: 172163555-3
APELLIDO Y NOMBRES: BAQUERO ALMEIDA JONATHAN DARIO
DIRECCIÓN: MACHALA N70-10 Y PURUHANTA
EMAIL: [email protected]
TELÉFONO FIJO: 02 496328
TELÉFONO MOVIL: 0987125476
DATOS DE LA OBRA
TITULO: APLICATIVO MÓVIL DE MENSAJERÍA Y
NOTIFICACIONES SOBRE LA
PLATAFORMA LEARNING MANAGEMENT
SYSTEM CHAMILO.
AUTOR O AUTORES: BAQUERO ALMEIDA JONATHAN DARIO
FECHA DE ENTREGA DEL PROYECTO
DE TITULACIÓN:
SEPTIEMBRE 2017
DIRECTOR DEL PROYECTO DE
TITULACIÓN:
ING. CIRO SAGUAY
PROGRAMA PREGRADO POSGRADO
TITULO POR EL QUE OPTA: INGENIERO EN INFORMÁTICA Y
CIENCIAS DE LA COMPUTACIÓN
RESUMEN: Mínimo 250 palabras El proyecto planteado surgió de la necesidad
de que los usuarios que manejan la
plataforma LMS Chamilo posean un servicio
hacia sus dispositivos móviles sobre
notificaciones de eventos que se realizan en
diferentes cursos por parte de su profesor o
tutor asignado. Por esta razón se desarrolló
una aplicación móvil de notificaciones y
mensajería para que la plataforma en un
futuro no quede obsoleta o pierda calidad,
usabilidad, utilidad e interés, y ayude en el
proceso de enseñanza-aprendizaje del
X
usuario. Por lo tanto, el prototipo de la
aplicación tiene una funcionalidad que es la
siguiente: se conecta a la base de datos
MySQL por Web Services para la validación
de la universidad y del usuario, y a su vez se
conecta con Firebase que nos provee los
servicios de notificaciones y mensajería. Una
vez iniciada la aplicación, Firebase provee de
un ID al dispositivo móvil que se lo guarda en
la base de datos de la plataforma LMS. Al
momento de que un profesor realiza una
actividad, se envían notificaciones a sus
estudiantes. Por otro lado, el sistema de
mensajería usa el servicio de la base de
datos en tiempo real y toda agregación de
nuevos mensajes se actualiza
instantáneamente en cualquier dispositivo
móvil. Para el desarrollo del prototipo de la
aplicación móvil se usó la metodología
Mobile-D, ya que la característica principal es
intentar obtener pequeños ciclos de
desarrollo de forma rápida en dispositivos
pequeños. Con el fin de conocer sobre la
funcionalidad de la aplicación se realizaron
pruebas al prototipo, cuyos resultados
muestran que se encuentra dentro del umbral
de aceptación, pero aun así necesita que se
le aumente algunas funciones para que de un
mejor funcionamiento y usabilidad al usuario.
Por otro lado, se presentó una implicación,
en la que la aplicación no será fácilmente
descargable de una tienda de aplicaciones
ya que esta se conecta a Firebase y necesita
que se cree una cuenta personal de este
servicio y se actualice un archivo de
configuración que se descarga al crear dicha
cuenta.
PALABRAS CLAVES: Aplicación Móvil de Mensajería y
Notificaciones, LMS Chamilo, Firebase.
ABSTRACT:
The proposed project originated from the
need of users, that manage the platform LMS
Chamilo, to have service towards their mobile
devices based on notifications of events that
are performed on different courses by their
assigned teacher or tutor. This is the reason
that a mobile application was developed with
notifications and messaging so that in the
future the platform would not stay obsolete or
lose quality, usability, utility and interest, and
at the same time help in the teaching-learning
process of the user. For the meantime, the
prototype of the application has a
functionality that is the following: it connects
to the database MySQL by Web Services for
the validation of the university and the user,
and at the same time it connects with
Firebase which provides us with notifications
and messaging services. Once the
application is started, Firebase will provide an
ID to the mobile device and the ID is saved in
the database of the platform LMS. At the
moment that a professor performs an activity,
notifications would be sent to their students.
On the other hand, the messaging system
uses the real time database services and
every addition of new messages is instantly
updated on any mobile device. The
methodology Mobile-D was used for the
development of the prototype of the mobile
application, since the main characteristic is to
try to obtain small development cycles quickly
in small devices. In order to know about the
functionality of the application, tests were
performed on the prototype whose results
show that it is within the threshold of
i
ÍNDICE DE CONTENIDOS
PÁGINA
RESUMEN ................................................................................................... viii
ABSTRACT .................................................................................................... ix
1. INTRODUCCIÓN .................................................................................... 1
2. MARCO TEÓRICO ................................................................................. 3
2.1 SITUACIÓN ACTUAL ....................................................................... 3
2.2 ANÁLISIS DE CARACTERISITCAS DE LMS CHAMILO.................. 4
2.2.1 RESULTADOS SOBRE LA PLATAFORMA LMS CHAMILO ..... 4
2.3 ESTADO DEL ARTE DE M-LEARNING ........................................... 5
2.3.1 SISTEMAS ORIENTADOS AL SEGUIMIENTO DE
APRENDIZAJE ....................................................................................... 5
2.3.2 SISTEMAS ORIENTADOS A PERSONALIZAR EL
APRENDIZAJE ....................................................................................... 6
2.3.3 ANÁLISIS DE LOS SISTEMAS M-LEARNING .......................... 6
2.4 SISTEMAS OPERATIVOS MÓVILES............................................... 7
2.4.1 ANÁLISIS DE LOS SISTEMAS OPERATIVOS MÓVILES ......... 7
2.5 FIREBASE ........................................................................................ 8
2.5.1 FUNCIONES .............................................................................. 8
2.5.1.1 Cloud Messaging ................................................................. 8
2.5.1.2 Realtime DataBase .............................................................. 8
2.6 METODOLOGÍAS ÁGILES ............................................................... 9
2.6.1 EXTREME PROGRAMMING (XP) ............................................. 9
2.6.2 SCRUM ...................................................................................... 9
2.6.3 MOBILE-D .................................................................................. 9
2.6.4 SELECCIÓN DE LA METODOLOGÍA DE DESARROLLO ...... 10
2.6.4.1 Ciclo de Vida de Mobile-D ................................................. 11
3. METODOLOGÍA ................................................................................... 14
3.1 EXPLORACIÓN .............................................................................. 14
3.1.1 ESTABLECIMIENTO DE INTERESADOS ............................... 14
3.1.2 DEFINICIÓN DEL ALCANCE ................................................... 14
3.1.3 ESTABLECIMIENTO DEL PROYECTO ................................... 15
ii
3.2 INICIACIÓN .................................................................................... 15
3.2.1 PUESTA EN MARCHA DEL PROYECTO ............................... 15
3.2.2 PLANIFICACIÓN INICIAL ........................................................ 15
3.3 PRODUCCIÓN ............................................................................... 15
3.3.1 DÍA DE LANZAMIENTO ........................................................... 16
3.3.2 DÍA DE LA PANIFICACIÓN ..................................................... 16
3.3.3 DÍA DE TRABAJO .................................................................... 16
3.4 ESTABILIZACIÓN .......................................................................... 16
3.5 PRUEBAS DEL SISTEMA .............................................................. 17
4. RESULTADOS Y DISCUSIÓN ............................................................. 18
4.1 EXPLORACIÓN .............................................................................. 18
4.1.1 ESTABLECER INTERESADOS ............................................... 18
4.1.2 DEFINICIÓN DEL ALCANCE ................................................... 18
4.1.2.1 Alcance del Proyecto ......................................................... 18
4.1.2.2 Alcance del Producto ......................................................... 19
4.1.3 ESTABLECIMIENTO DEL PROYECTO ................................... 19
4.2 INICIACIÓN .................................................................................... 20
4.2.1 RECOLECCIÓN DE REQUISITOS .......................................... 20
4.2.1.1 Requisitos Físicos .............................................................. 20
4.2.1.2 Requisitos de Software ...................................................... 20
4.2.1.3 Requisitos Funcionales de la Aplicación Móvil .................. 21
4.2.1.4 Requisitos no Funcionales de la Aplicación Móvil ............. 21
4.2.1.5 Requisitos Cognitivos ........................................................ 21
4.2.2 ANÁLISIS DE REQUISITOS .................................................... 22
4.2.3 PLANIFICACIÓN DE FASES ................................................... 22
4.3 PRODUCCIÓN ............................................................................... 23
4.3.1 MÓDULO DE CHAMILO .......................................................... 23
4.3.1.1 Instalación de XAMPP ....................................................... 24
4.3.1.2 Instalación de LMS Chamilo .............................................. 24
4.3.1.3 Creación de Cursos y Usuarios en la Plataforma LMS ...... 24
4.3.1.4 Selección de Actividades para Notificaciones.................... 25
4.3.2 MÓDULO DE VALIDACIÓN ..................................................... 26
iii
4.3.2.1 Diseño de Interfaces .......................................................... 26
4.3.2.2 Desarrollo de Ventanas Principales en la Aplicación Móvil 27
4.3.2.3 Web Services para Conexión entre App y Plataforma ....... 28
4.3.2.4 Validación de Universidad y Usuario en la App Móvil ........ 30
4.3.3 MÓDULO DE CONFIGURACIÓN CON FIREBASE ................. 31
4.3.3.1 Creación de una Cuenta Firebase ..................................... 31
4.3.3.2 Creación de un Proyecto en Firebase ............................... 31
4.3.4 MÓDULO DE CONEXIÓN CON FIREBASE ............................ 32
4.3.4.1 Integración de la App en el Proyecto Firebase .................. 32
4.3.5 MÓDULO DE NOTIFICACIONES ............................................ 32
4.3.5.1 Modificación en la Base de Datos de LMS Chamilo .......... 33
4.3.5.2 Creación de Archivos de Notificaciones en LMS Chamilo . 33
4.3.5.3 Refactorización de Archivos en LMS Chamilo ................... 35
4.3.5.4 Codificación en la Aplicación Móvil .................................... 36
4.3.5.5 Funciones en las Notificaciones ........................................ 38
4.3.6 MÓDULO DE MENSAJES ....................................................... 39
4.3.6.1 Configuración de la Base de Datos en Firebase................ 39
4.3.6.2 Codificación en la Aplicación Móvil .................................... 39
4.3.6.3 Notificaciones en Mensajes ............................................... 41
4.3.6.4 Funciones en Mensajes ..................................................... 42
4.4 ESTABILIZACIÓN .......................................................................... 43
4.5 PRUEBAS DEL SISTEMA INTEGRADO ........................................ 43
4.6 DISCUSIÓN .................................................................................... 44
5. CONCLUSIONES Y RECOMENDACIONES ........................................ 47
5.1 CONCLUSIONES ........................................................................... 47
5.2 RECOMENDACIONES ................................................................... 48
BIBLIOGRAFÍA ............................................................................................ 49
ANEXOS ...................................................................................................... 53
iv
ÍNDICE DE TABLAS
PÁGINA
Tabla 1. Resultados Evaluación LMS Chamilo .............................................. 5
Tabla 2. Comparativa de Metodologías ....................................................... 10
Tabla 3. Cronograma de Actividades del Proyecto ...................................... 19
Tabla 4. Presupuesto que se usó para el proyecto ...................................... 20
Tabla 5. Planificación por Fases Iterativas. ................................................. 23
Tabla 6. Lista de Actividades a Notificar ...................................................... 26
Tabla 7. Lista de Modificaciones por Contenido .......................................... 35
Tabla 8. Características y Subcaracterísticas de evaluación de la calidad .. 43
Tabla 9. Criterio de Evaluación .................................................................... 44
Tabla 10. Promedio de las Evaluaciones ..................................................... 44
v
ÍNDICE DE FIGURAS
PÁGINA
Figura 1. Cursos de Prueba en la Plataforma Chamilo ................................ 24
Figura 2. Usuarios de Prueba ...................................................................... 24
Figura 3. Estudiantes curso Algoritmos y Programación ............................. 25
Figura 4. Estudiantes curso Base de Datos ................................................. 25
Figura 5. Bosquejo de las Interfaces de Validación ..................................... 27
Figura 6. Pantalla de Inicio de la Aplicación Móvil ....................................... 27
Figura 7. Archivo de configuración Config.php ............................................ 28
Figura 8. Archivo de conexión DbConnect.php ............................................ 28
Figura 9. Función para Recuperar el Nombre de la Universidad ................. 29
Figura 10. Diagrama de Secuencia: Peticiones desde la Aplicación ........... 29
Figura 11. Validación de Universidad .......................................................... 30
Figura 12. Validación de Usuario ................................................................. 31
Figura 13. Creación de Proyecto en Firebase.............................................. 31
Figura 14. Configuración en GRADLE ......................................................... 32
Figura 15. Método para guardar TOKEN .................................................... 33
Figura 16. Clase Push ................................................................................. 33
Figura 17. Clave de Servidor Firebase ........................................................ 34
Figura 18. Funciones para Envío de Notificaciones ..................................... 34
Figura 19. Servicios Iniciados en el AndrodiManifest.xml ............................ 36
Figura 20. Clase que pide el TOKEN .......................................................... 36
Figura 21. Clase que Recibe las Notificaciones ........................................... 37
Figura 22. Notificaciones en la App Móvil .................................................... 37
Figura 23. Función OnClick sobre la Notificación ........................................ 38
Figura 24. Función de Borrar Notificaciones ................................................ 38
Figura 25. Reglas de la Base de Datos en Firebase .................................... 39
Figura 26. Inserción de Usuarios en la Base de Datos de Firebase ............ 40
Figura 27. Generación del ID del Contendor ............................................... 40
Figura 28. Inserción de Mensajes en la Base de Datos de Firebase ........... 41
Figura 29. Vista del Chat ............................................................................. 41
Figura 30. Notificación de Mensajes ............................................................ 42
Figura 31. Buscador de Usuarios ................................................................. 42
Figura 32. Asistente de Instalación de Xampp ............................................. 54
Figura 33. Componentes Mínimos de Instalación en Xampp ....................... 55
Figura 34. Panel de Control Xampp iniciado dos servicios. ......................... 55
Figura 35. Ventana de Inicio de Xampp ....................................................... 56
Figura 36. Iniciación de phpMyAdmin desde el Panel de Control. ............... 57
Figura 37. Adición de un Nuevo Usuario en Xampp .................................... 57
Figura 38. Resultado de Agregar un Usuario y Base de Datos en Xampp .. 58
vi
Figura 39. Ubicación de la Plataforma en Xampp ........................................ 58
Figura 40. Asistente de Instalación de Chamilo. .......................................... 59
Figura 41. Cambios Efectuados en la Configuración ................................... 59
Figura 42. Información para Conexión con la Base de Datos ...................... 60
Figura 43. Configuración de la Plataforma ................................................... 60
Figura 44. Inicio de la Plataforma Instalada Correctamente ........................ 61
Figura 45. Encuesta de la versión 4.4.2 al Usuario N°1 ............................... 62
Figura 46. Encuesta de la versión 4.4.2 al Usuario N°2 ............................... 63
Figura 47. Encuesta de la versión 4.1.2 al Usuario N°1 ............................... 64
Figura 48. Encuesta de la versión 4.1.2 al Usuario N°2 ............................... 65
vii
ÍNDICE DE ANEXOS
PÁGINA
Anexo 1. Instalación de Xampp ................................................................... 54
Anexo 2. Instalación de LMS Chamilo ......................................................... 57
Anexo 3. Evaluación de la Aplicación(Teléfono Android versión 4.4.2) ....... 62
Anexo 4. Evaluación de la Aplicación(Teléfono Android versión 4.1.2) ....... 64
viii
RESUMEN
El proyecto planteado surgió de la necesidad de que los usuarios que manejan
la plataforma LMS Chamilo posean un servicio hacia sus dispositivos móviles
sobre notificaciones de eventos que se realizan en diferentes cursos por parte
de su profesor o tutor asignado. Por esta razón se desarrolló una aplicación
móvil de notificaciones y mensajería para que la plataforma en un futuro no
quede obsoleta o pierda calidad, usabilidad, utilidad e interés, y ayude en el
proceso de enseñanza-aprendizaje del usuario. Por lo tanto, el prototipo de la
aplicación tiene una funcionalidad que es la siguiente: se conecta a la base
de datos MySQL por Web Services para la validación de la universidad y del
usuario, y a su vez se conecta con Firebase que nos provee los servicios de
notificaciones y mensajería. Una vez iniciada la aplicación, Firebase provee
de un ID al dispositivo móvil que se lo guarda en la base de datos de la
plataforma LMS. Al momento de que un profesor realiza una actividad, se
envían notificaciones a sus estudiantes. Por otro lado, el sistema de
mensajería usa el servicio de la base de datos en tiempo real y toda
agregación de nuevos mensajes se actualiza instantáneamente en cualquier
dispositivo móvil. Para el desarrollo del prototipo de la aplicación móvil se usó
la metodología Mobile-D, ya que la característica principal es intentar obtener
pequeños ciclos de desarrollo de forma rápida en dispositivos pequeños. Con
el fin de conocer sobre la funcionalidad de la aplicación se realizaron pruebas
al prototipo, cuyos resultados muestran que se encuentra dentro del umbral
de aceptación, pero aun así necesita que se le aumente algunas funciones
para que de un mejor funcionamiento y usabilidad al usuario. Por otro lado, se
presentó una implicación, en la que la aplicación no será fácilmente
descargable de una tienda de aplicaciones ya que esta se conecta a Firebase
y necesita que se cree una cuenta personal de este servicio y se actualice un
archivo de configuración que se descarga al crear dicha cuenta.
Palabras clave: Aplicación Móvil de Mensajería y Notificaciones, LMS
Chamilo, Firebase.
ix
ABSTRACT
The proposed project originated from the need of users, that manage the
platform LMS Chamilo, to have service towards their mobile devices based on
notifications of events that are performed on different courses by their
assigned teacher or tutor. This is the reason that a mobile application was
developed with notifications and messaging so that in the future the platform
would not stay obsolete or lose quality, usability, utility and interest, and at the
same time help in the teaching-learning process of the user. For the meantime,
the prototype of the application has a functionality that is the following: it
connects to the database MySQL by Web Services for the validation of the
university and the user, and at the same time it connects with Firebase which
provides us with notifications and messaging services. Once the application is
started, Firebase will provide an ID to the mobile device and the ID is saved in
the database of the platform LMS. At the moment that a professor performs an
activity, notifications would be sent to their students. On the other hand, the
messaging system uses the real time database services and every addition of
new messages is instantly updated on any mobile device. The methodology
Mobile-D was used for the development of the prototype of the mobile
application, since the main characteristic is to try to obtain small development
cycles quickly in small devices. In order to know about the functionality of the
application, tests were performed on the prototype whose results show that it
is within the threshold of acceptance, but still needs some functions to be
added so that there is a better functioning and usability to the user. On the
other hand, an implication was presented, in which the application will not be
easily downloadable from an application store since it connects to Firebase
and needs to create a personal account of this service and update a
configuration file that will happen once you create this account.
Keywords: Mobile notifications and messages application, LMS Chamilo,
Firebase.
1
1. INTRODUCCIÓN
En la actualidad, el proceso de enseñanza-aprendizaje ha ido evolucionando
junto a la tecnología; uno de esos resultados se ve en la aparición del e-
learning, el cual es un proceso de enseñanza-aprendizaje que se da por
medios electrónicos, en especial el internet que se presenta por medio de
diversas herramientas como Blogs y plataformas virtuales.
Los Learning Management System (LMS) son sistemas que se instala en un
servidor para poder administrar y controlar las actividades evaluando el
estudio individual y luego presentar los resultados para supervisar el
desempeño en dicho proceso (Watson, 2012). Un ejemplo de plataforma LMS
es Chamilo la cual es el centro de estudio del presente trabajo, que se
posiciona entre una de las plataformas de aprendizaje de código libre más
usadas en universidades y academias de Europa y Latinoamérica (“Chamilo
portals around the world”, 2016).
La plataforma Chamilo presenta una limitación, ya que no posee un servicio
hacia los dispositivos móviles de los estudiantes sobre notificaciones de
eventos que se realizan en los diferentes cursos por parte del tutor o profesor
asignado.
La tecnología evoluciona rápidamente y ahora con la llegada de los
dispositivos móviles, la mayoría de los usuarios de plataformas LMS ya no
acceden desde una computadora personal, sino desde un dispositivo móvil.
En cuanto a las estadísticas, los dispositivos móviles más usados son los que
poseen un sistema operativo Android, ya que tiene un mayor porcentaje de
interes tanto en desarrolladores como en usuarios, y se destaca en poseer
una alta cuota de mercado a diferencia de otros sistemas operativos
(Balaguera, 2015).
El objetivo general del proyecto es desarrollar una aplicación móvil sobre el
sistema operativo Android de mensajería instantánea y notificación de eventos
que se realicen sobre la plataforma LMS Chamilo.
2
Para conseguir el objetivo general plateado anteriormente, como primer paso
se van a configurar y administrar la plataforma LMS Chamilo, como siguiente
paso desarrollar WebServices para la conexión cliente-servidor con la
aplicación móvil, para continuar programar los servicios de mensajería y
notificaciones en la aplicación móvil, y por último crear un ambiente de
pruebas para verificar la funcionalidad de la aplicación.
3
2. MARCO TEÓRICO
Para sustentar el desarrollo de una aplicación móvil se hace necesario
conocer aspectos básicos sobre la plataforma de ejecución, así como
aplicaciones similares. En el presente capítulo, se recogen investigaciones y
análisis comparativos relacionados con el tema de desarrollo.
2.1 SITUACIÓN ACTUAL
En la actualidad muchos centros educativos usan plataformas virtuales (LMS)
para ayudar en un mejor proceso de enseñanza-aprendizaje. Con su ayuda,
se pueden realizar actividades en las que los profesores o tutores y los
estudiantes no necesitan estar presentes en el mismo lugar. El proceso
educativo puede adaptarse en cualquier sitio equipado con computadoras y
una conexión a Internet (Cavus, 2010). Un ejemplo de este tipo de sistemas
de enseñanza-aprendizaje es LMS Chamilo que es una plataforma de código
libre siendo una de las plataformas más usada después de Moodlle (Muñoz,
Cañadulce, & Molano, 2015), y en la actualidad la comunidad pasiva de
Chamilo está integrada por 13.978.500 usuarios, más de 972.361 cursos, 34
idiomas y más de 175 países (Martínez & Zumeta, 2013).
Actualmente, se incorporaron a este panorama las tecnologías móviles dando
lugar a lo que se ha denominado como aprendizaje móvil (m-learning). El m-
learning puede verse como la unión entre el e-learning y el cómputo móvil
caracterizado por: permitir la personalización y adaptación del aprendizaje
hacia el estudiante, favorecer el aprendizaje colaborativo y exploratorio e
indirectamente contribuir a mejorar sus capacidades para leer, escribir y
calcular (Castro et al., 2016).
Los sistemas operativos móviles son los sistemas que se desarrollan para que
sean ejecutados en cualquier gama de dispositivos móviles como, por
ejemplo: Smartphone, tabletas, smartwatch. Se ejecutan desde diversos
sistemas operativos entre los más utilizados que son Android, IOS, Windows
Phone, donde se destaca Android, de Google (Fénnema, Palavecino, Herrera,
& Najar Ruíz, 2015).
4
Firebase es una plataforma para el desarrollo de aplicaciones web y móviles
que facilita la conexión de nuestras aplicaciones entre sí, es compatible con
aplicaciones ya sea web o móviles de sistema operativo Android o iOS, la
utilizan diversas aplicaciones de marcas reconocidas como The New York
Times, Duolingo, Shazam, Trivago, entre otras (“Firebase”, 2012).
2.2 ANÁLISIS DE CARACTERISITCAS DE LMS CHAMILO
LMS Chamilo es una plataforma de código libre con licencia GNU/GPLv3
sustentada por la Asociación Chamilo. Aunque sus orígenes son desde al año
2000, que surge un proyecto con el nombre de Claroline, después la
plataforma se origina en enero de 2010 bajo el nombre Chamilo 1.8.6.2., como
sucesora directa de Dokeos 1.8.6.1 (Martínez & Zumeta, 2013).
La Universidad de Boyacá realizó un estudio comparativo de las plataformas
de código libre más usadas que son Moodle, Atutor, Claroline, Chamilo y la
plataforma de la Universidad de Boyacá. En las evaluaciones realizadas se
estudió diversos factores y con su valor mínimo esperado del 70% de la
calificación total para que la plataforma cumpla con los mínimos
requerimientos de una institución para un proceso de enseñanza adecuado
entre docente y estudiante (Muñoz et al., 2015).
2.2.1 RESULTADOS SOBRE LA PLATAFORMA LMS CHAMILO
Los resultados de las evaluaciones realizadas a las plataformas dicen que la
plataforma LMS Chamilo se posiciona en penúltimo lugar de las cinco
plataformas evaluadas, con una puntuación de 29.1 sobre 50 el cual no supera
el umbral de aceptación de 35 puntos para que se la asignara para soportar
la relación enseñanza-aprendizaje (Muñoz et al., 2015).
La Tabla 1 muestra los resultados de la evaluación a la plataforma LMS
Chamilo, en los cuales presenta falencias en las herramientas que ofrece, el
aprendizaje efectivo, la evaluación continua, la evaluación formativa, la
accesibilidad, la interoperabilidad y portabilidad, entre otros. En la evaluación,
la plataforma LMS Chamilo ocupa el segundo lugar del factor de usabilidad,
5
esto la hace candidata para estudios futuros relacionados con la inmersión de
nuevos usuarios a entornos virtuales de aprendizaje (Muñoz et al., 2015).
Tabla 1. Resultados Evaluación LMS Chamilo
Factores Porcentaje Evaluado(%)
Inclusión 54.51
Evaluación formativa 46.88
Evaluación continua 42.22
Aprendizaje efectivo 44.63
Accesibilidad 45.83
Usabilidad 67.06
Herramientas 35.86
Durabilidad 87.50
Empaquetamiento 62.50
Confiabilidad 98.33
Funcionalidad 83.75
Eficiencia 100
Reutilización 100
Interoperabilidad y Portabilidad 28.57
2.3 ESTADO DEL ARTE DE M-LEARNING
Diversos trabajos se han realizado con el fin de ayudar al estudiante de alguna
manera usando el m-learning. Estos trabajos se pueden clasificar en dos
grupos. En el primer grupo clasificamos a los trabajos que proponen sistemas
enfocados al seguimiento del aprendizaje. En el segundo grupo clasificamos
a los trabajos que proponen sistemas orientados a la personalización del
aprendizaje principalmente (Castro et al., 2016). A continuación, presentamos
una descripción de estos sistemas.
2.3.1 SISTEMAS ORIENTADOS AL SEGUIMIENTO DE APRENDIZAJE
Un ejemplo es la aplicación móvil Mobl21 que proporciona los siguientes
servicios: revisión, reforzamiento, material de aprendizaje, quizes, guías de
estudio, entregas programadas, SMS y voz, seguimiento de estudiantes,
resultados y uso (“Mobile Learning Made Easy”, 2016). Otro sistema que se
propone en un congreso en Chile de una aplicación en el que un profesor
desde su móvil envía preguntas vía móvil a los estudiantes para que ellos las
contesten o las desarrollen, luego despliega los resultados en diagramas
estadísticos donde los estudiantes pueden visualizar sus calificaciones
(Moraga & González, 2007). Por otra parte, Blackboard Mobile ofrece acceso
6
a cursos, contenidos y envió de notificaciones de actividades calificadas en
dispositivos móviles (“Mobile Learning (mlearning) Solutions | Blackboard”,
2016). Por último, Moodle Mobile ofrece acceso a cursos, contenidos y envió
de notificaciones de actividades, mensajería en dispositivos móviles (“Moodle
descargas: Moodle Mobile”, 2017).
2.3.2 SISTEMAS ORIENTADOS A PERSONALIZAR EL APRENDIZAJE
M2Learn puede ser utilizada para actividades fuera de clase donde los
estudiantes tienen que escribir sus opiniones, debatir sobre temas, o contestar
a preguntas formuladas de manera colaborativa en diferentes lugares
geográfico, también pueden realizar quizes sensibles al contexto, medios de
comunicación, objetos de aprendizaje, evaluación, interacción con un blog de
Moodle, recolección de datos del GPS (Martín et al., 2010). Otro sistema
propuesto en (Minguillón, Mor, Santanach, & Ortiz, 2005) analiza las
decisiones del usuario para detectar su comportamiento y presentarle objetos
de aprendizaje. Por otro lado, un sistema de recomendación basado en
contenido propuesto en (Ruiz-Iniesta, Jiménez-Díaz, & Gómez-Albarrán,
2010) lleva a cabo la personalización del aprendizaje en programación
mediante objetos de aprendizaje y perfil del estudiante.
2.3.3 ANÁLISIS DE LOS SISTEMAS M-LEARNING
En general los sistemas propuestos, carecen de los siguientes servicios: a)
notificaciones del vencimiento de actividades propuestas por el profesor a
través de mensajes de texto (SMS) y publicaciones en redes sociales tales
como Facebook y Twitter, o que lleguen directamente al teléfono por medio
de una aplicación; b) avisos de nuevas actividades propuestas por el profesor
a los estudiantes a través de SMS y publicaciones en Facebook y Twitter, o
que lleguen directamente al teléfono por medio de una aplicación; y c)
servicios que sugieran la descarga de objetos de aprendizaje móviles con
base en el estilo de aprendizaje y contexto particular de cada estudiante
(actividad física) (Castro et al., 2016).
7
Existen ya numerosas plataformas LMS que poseen una aplicación móvil
como acabamos de ver Blackboard una plataforma de código privado, Moodle
una plataforma de código libre para ayudar con el proceso de
aprendizaje(Heredia & Sánchez, 2015), pero así mismo hay otras que no
poseen este servicio y pueden hacer que vayan perdiendo usabilidad como
es el caso de Chamilo, siendo una de la segunda plataforma con más uso
pero que no posee dicho servicio.
2.4 SISTEMAS OPERATIVOS MÓVILES
Los sistemas operativos móviles se desarrollan para que después de iniciado
el dispositivo móvil se encargue de gestionar todos los recursos del sistema
informático, tanto de hardware como el software. Los dispositivos móviles
presentan la ventaja de que pueden ser utilizados en cualquier momento y en
cualquier lugar, son recursos limitados en cuanto a capacidad de
procesamiento, memoria, tamaño de pantalla, entre otros aspectos (Fénnema
et al., 2015).
Los sistemas móviles han logrado unir una serie de características que los
hacen útiles en el campo de la accesibilidad; sin embargo, a pesar de los
avances que se han realizado, los usuarios con limitaciones muchas veces no
conocen con certeza las características que ofrecen estas plataformas, lo cual
hace que tomen decisiones que están poco o nada de acuerdo a sus
necesidades (Morales Reyes, Gómez Yopasa, & Camargo Vega, 2016).
2.4.1 ANÁLISIS DE LOS SISTEMAS OPERATIVOS MÓVILES
Por lo anterior, se seleccionaron los sistemas operativos con mayor influencia
en el mercado y con un número importante de desarrolladores interesados en
participar de las “App Stores”, Los resultados muestran que Android ha
encabezado el interés de los desarrolladores con un 77% junto con IOS que
posee el 66%, mientras que BlackBerry posee un 34% frente a un 37% de
Windows phone (Balaguera, 2015).
Además, el sistema operativo Android cumple con más características
orientadas a la discapacidad visual que cualquier otro sistema operativo,
8
mientras que un IOS tiene solo el 80% de las características que posee
Android y Windows Phone solamente cumple con el 50% de las características
que tiene Android. En cuanto a características para de accesibilidad
orientadas a discapacidad auditiva que son tener subtítulos, alertas visibles y
vibratorias, Android y IOS cumplen con estas características mientras que
Windows Phone solo cuenta con alertas visibles, vibratorias y carece
subtítulos de ayuda(Morales Reyes et al., 2016).
2.5 FIREBASE
Firebase es una plataforma para el desarrollo de aplicaciones web y móviles
que ayudan en la conexión de nuestras aplicaciones entre sí, esta herramienta
ofrece servicio en diferentes plataformas como Android, iOS, y aplicaciones
web(Amado & Leonardo, 2017).
Es una plataforma cuyo objetivo es poder constituir el Backend de cualquier
aplicación, proporcionando para ello una API que permite obtener y guardar
datos en tiempo real en esta plataforma (Hernández Sansalvador, 2017).
2.5.1 FUNCIONES
Firebase tiene funciones que puedes combinar y adaptar según las
funcionalidades que se desee tener en la aplicación. A continuación, se
muestra las funciones que se usó para el desarrollo del prototipo de la
aplicación móvil.
2.5.1.1 Cloud Messaging
Establece una conexión confiable para el envío de mensajes el cual puede ser
personalizado a un dispositivo, a un grupo de dispositivos, o con algún tema
en especial, a esto se le activa el tema de las notificaciones (“Firebase”, 2012).
2.5.1.2 Realtime DataBase
Firebase posee una base de datos NoSQL que se aloja en la nube para
albergar toda la información que necesite la aplicación, cuenta con una
función extra que además de almacenar, ésta sincroniza en tiempo real a
9
todos los dispositivos conectados facilitando la obtención de los datos a todos
los usuarios (“Firebase”, 2012).
2.6 METODOLOGÍAS ÁGILES
Las metodologías ágiles se basan en valores y principios establecidos en el
manifiesto ágil (“Manifesto for Agile Software Development”, 2011), y están
basados en un desarrollo iterativo que se centra más en capturar mejor los
requisitos cambiantes y la gestión de los riesgos, dividiendo el proyecto en
iteraciones de diferente longitud, cada una de ellas generando un producto
completo y entregable (Balaguera, 2015).
En la actualidad, existen varias metodologías ágiles, entre las más notables y
aplicables se encuentran Extreme Programming (XP) y Scrum, junto con éstas
también se tiene Mobile-D, que procuran responder a los principios del
manifiesto ágil. A continuación, se señala una breve descripción de cada una
de ellas.
2.6.1 EXTREME PROGRAMMING (XP)
XP es una metodología para equipos de desarrollo que pueden tener un
tamaño pequeño o mediano (de dos a diez programadores) de desarrollo de
software, que se enfrenta directamente a la imprecisión y a los cambios
rápidos de los requerimientos del proyecto (Balaguera, 2015).
2.6.2 SCRUM
Scrum es un marco de trabajo iterativo e incremental que se centra en la
entrega de un producto final que es desarrollado por un equipo de auto-
organización en incrementos (llamados “sprints”), y en el caso del software,
se refiere a que el código se ha Integrado, probado y puede ser
potencialmente productivo (Balaguera, 2015) .
2.6.3 MOBILE-D
Es una metodología ágil debe ser utilizada por un equipo de no más de diez
desarrolladores, trabajando en conjunto para suministrar un producto listo en
un plazo máximo de diez semanas, y se orienta en superar las dificultades
10
implicadas en el desarrollo de aplicaciones móviles en un tiempo corto
(Balaguera, 2015).
2.6.4 SELECCIÓN DE LA METODOLOGÍA DE DESARROLLO
Para poder realizar la aplicación de mensajería y notificación de eventos es
importante usar la metodología ágil que se centre en los requerimientos
específicos que el desarrollo de aplicaciones móviles necesita.
La Tabla 2 muestra el análisis comparativo entre las metodologías propuestas,
indicando sus respectivas ventajas y desventajas.
Tabla 2. Comparativa de Metodologías
METODOLOGÍA VENTAJAS DESVENTAJAS
XP
Prueba detenidamente todos los aspectos del software, lo que produce un software de calidad.
Impone un desarrollo basado en el código, no en el diseño.
Fomenta la comunicación entre los clientes y los desarrolladores.
No es recomendable emplearlo en proyectos a largo plazo.
Menor taza de errores. Altas comisiones en caso de fallar.
Scrum
Promueve una acelerada corrección de errores.
Demasiadas Reuniones para poco avance, reuniones repetitivas por el mismo tema, hace que se pierda el interés en el proyecto.
Se involucra desde un principio y se da un rol a todos los interesados.
Si una persona renuncia o hay algún cambio es complicado remplazar ese rol.
Cada persona sabe que es lo que tiene que hacer.
La falta de tiempos límite permite que el usuario continúe solicitando cambios.
Mobile-D
Promueve detección y corrección de errores de manera temprana.
Hace énfasis en la refactorización del software, el tiempo, el proceso de implementación.
Entrega resultados de manera rápida.
Promueve el trabajo en equipo.
No sirve para grupos de desarrollos grandes y segmentados.
Diseñada para el desarrollo de aplicaciones móviles.
Promueve la entrega de prototipos de calidad en corto tiempo.
11
Considerando estas premisas y después de analizar las varias opciones de
metodologías, se ha encontrado que la mejor alternativa es utilizar Mobile-D,
por las varias ventajas que presenta frente a las demás.
2.6.4.1 Ciclo de Vida de Mobile-D
La metodología Mobile-D se basa en la programación extrema (prácticas de
desarrollo), metodologías de Crystal (escalabilidad de métodos) y Rational
Unified Process (cobertura de ciclo de vida)(Abrahamsson et al., 2004).
Mobile-D consta de cinco fases: exploración, iniciación, producción,
estabilización y prueba del sistema. Cada una de estas fases tiene un número
de etapas, tareas y prácticas asociadas (Balaguera, 2015).
Exploración
La fase de exploración es importante para establecer las bases para la
aplicación móvil en relación con el desarrollo de software, lo que pide primero
es definir un plan de cuáles serán los interesados del proyecto, también definir
el alcance tanto del proyecto como del producto en sí y por último un
cronograma de actividades que se va a realizar en el proyecto (“Electronics -
AGILE - Agile Software Technologies”, 2012).
Establecimiento de interesados
El propósito de esta etapa es identificar y establecer los grupos de
interés que serán necesarios en diversas tareas (“Electronics -AGILE
- Agile Software Technologies”, 2012).
Definición del alcance
El propósito de esta etapa es definir los objetivos para el proyecto con
respecto a los contenidos del proyecto (“Electronics -AGILE - Agile
Software Technologies”, 2012).
Establecimiento del Proyecto
El propósito de esta etapa es definir la línea de base para el proyecto,
esta es una tarea importante de esta etapa (“Electronics -AGILE - Agile
Software Technologies”, 2012).
12
Iniciación
En esta fase los desarrolladores preparan e identifican todos los recursos
necesarios que se van a necesitar para el desarrollo de la aplicación y una
vez analizados se hace un plan de iteraciones que se va a ejecutar en la etapa
de producción (“Electronics -AGILE - Agile Software Technologies”, 2012).
Puesta en marcha del proyecto
El propósito de esta etapa es la configuración de los recursos físicos y
técnicos para el proyecto, así capacitar al equipo de proyecto como es
necesario (“Electronics -AGILE - Agile Software Technologies”, 2012).
Planificación inicial
El propósito del modelo de planificación inicial es obtener una buena
comprensión general del producto a desarrollar, para preparar y
perfeccionar los planes para las próximas fases del proyecto
(“Electronics -AGILE - Agile Software Technologies”, 2012).
Producción
En esta fase se dedica al desarrollo según el plan iterativo que se realice en
la etapa de iniciación, desglosándolo en un plan diario de más tareas que se
debe realizar hasta terminarlo, se debe a su vez planear tareas diarias donde
entran los conocimientos y recursos que se deben tener, así como la parte del
diseño y el desarrollo en sí y por último unas pruebas de aceptación para
determinar que cada iteración se vaya ajustando con los requerimientos
iniciales que propone el cliente (“Electronics -AGILE - Agile Software
Technologies”, 2012).
Día de la planificación
El propósito es seleccionar y planificar el contenido de trabajo
(“Electronics -AGILE - Agile Software Technologies”, 2012).
Día de trabajo
El propósito de esta etapa es la implementación de la funcionalidad del
sistema previsto durante el día de planificación (“Electronics -AGILE -
Agile Software Technologies”, 2012).
13
Día de Lanzamiento
El propósito de esta etapa es hacer una versión totalmente funcional
del sistema bajo desarrollo (“Electronics -AGILE - Agile Software
Technologies”, 2012).
Estabilización
En esta fase se integra todas las tareas iterativas que se vayan a desarrollar
en la etapa de producción, asegurando la funcionalidad implementada y la
calidad de la aplicación móvil desarrollada y se implementa la parte de la
documentación de todos los procesos ejecutados diariamente por cada
iteración (“Electronics -AGILE - Agile Software Technologies”, 2012).
Pruebas del Sistema
Esta fase se la hace al final de toda la integración, esta es aparte de las
pruebas modulares realizadas, se comprueba que todas las funciones
desarrolladas se acoplen al sistema integrado y corregir los defectos
encontrados (“Electronics -AGILE - Agile Software Technologies”, 2012).
14
3. METODOLOGÍA
A continuación, se nombran los métodos, herramientas y metodología que se
utilizaron para la elaboración del proyecto.
El método de investigación que se utilizó es Analítico-Sintético ya que este
estudia los fenómenos descomponiéndolos en partes o módulos que se las
analiza en forma individual y luego se las integra para evaluarlas en su
totalidad.
Las herramientas que se utilizaron para el desarrollo e implementación del
proyecto son: una laptop, un Smartphone con Sistema Operativo Android, la
plataforma LMS Chamilo, Android Studio donde se programó la aplicación
móvil y Xampp que sirve para alojar la plataforma.
La metodología empleada para el desarrollo del prototipo de la aplicación
móvil es Mobile-D, la misma que está conformada por las siguientes fases.
3.1 EXPLORACIÓN
En esta etapa se elaboró un plan el cual contiene a los interesados del
producto final, además se definió el alcance tanto del proyecto como del
producto final lo que va o no hacer, y como último punto, se definió un cuadro
de cronograma con sus respectivas asignaciones por semana y actividades
realizadas para dar como objetivo la aplicación móvil.
3.1.1 ESTABLECIMIENTO DE INTERESADOS
Para esta etapa se identificó a las personas interesadas en el desarrollo del
proyecto que son: la comunidad Learning Management System Chamilo y sus
usuarios. Esto se realizó mediante una investigación y tras haber analizado el
estudio comparativo entre las plataformas LMS.
3.1.2 DEFINICIÓN DEL ALCANCE
En esta etapa se definió el alcance del proyecto y del producto, para esto se
tomó en cuenta la problemática planteada junto con el objetivo general el cual
15
es desarrollar una aplicación móvil de mensajería y notificación de eventos
que realice el profesor o tutor en un curso de la plataforma LMS Chamilo.
3.1.3 ESTABLECIMIENTO DEL PROYECTO
En esta etapa se definió la línea de base para el proyecto tanto de costos
como de tiempo. Esto se realizó tras un análisis para obtener el costo de los
recursos necesarios y una estimación de tiempo por actividades para el
desarrollo de la aplicación.
3.2 INICIACIÓN
En esta etapa se obtuvo todos los requisitos tanto técnicos y físicos como es
el equipo a utilizar y el conocimiento en el manejo de las herramientas que se
utilizó y temas en específico para el desarrollo, por otro lado, se analizó los
requerimientos mínimos que debe tener un dispositivo móvil para que la
aplicación de un buen funcionamiento y a su vez se hizo un plan para el
desarrollo iterativo.
3.2.1 PUESTA EN MARCHA DEL PROYECTO
En esta etapa se analizó los recursos físicos y técnicos para el proyecto, a su
vez los requisitos funcionales y no funcionales del proyecto y los requisitos
cognitivos que se debe tener para poder desarrollar el proyecto.
3.2.2 PLANIFICACIÓN INICIAL
En esta etapa se realizó un análisis en base a todos los requerimientos
recolectados y se dividió el proyecto en varios módulos. Luego se determinó
las iteraciones por cada módulo con su respectiva descripción de lo que se
tiene que realizar en cada uno, hasta terminar en las últimas fases, donde se
integró el producto con sus respectivas pruebas.
3.3 PRODUCCIÓN
En esta fase se desarrolló el plan iterativo realizado en la etapa de iniciación,
se repite iterativamente hasta implementar todas las funcionalidades,
desglosándolo en un plan de tareas que se deben realizar diariamente, a su
vez se determinó los conocimientos y recursos necesarios para cada iteración,
16
y por último se realizó la fase de diseño y el desarrollo con sus respectivas
pruebas de aceptación.
3.3.1 DÍA DE LANZAMIENTO
En esta etapa se realizó una versión totalmente funcional del sistema una vez
terminado el desarrollo del módulo, esto se hizo para confirmar que todas las
actividades de la iteración fueron realizadas correctamente y garantizar la
funcionalidad del módulo. Cuando no se obtuvo el resultado esperado se
realizó una nueva actividad que realiza la gestión de cambios apropiados a la
aplicación móvil.
3.3.2 DÍA DE LA PANIFICACIÓN
En esta etapa se llevó a cabo la planificación de actividades diarias mediante
iteraciones que se tuvo para cumplir con el desarrollo de todos los módulos
identificados anteriormente, a su vez se determinó los conocimientos y
recursos necesarios para el desarrollo de cada iteración de fase.
3.3.3 DÍA DE TRABAJO
En esta etapa se realizó la implementación de la funcionalidad del sistema
previsto durante el día de planificación. Al momento del desarrollo se centró
en la funcionalidad de prioridad más alta, realizando integraciones de forma
continua con el nuevo código.
3.4 ESTABILIZACIÓN
En esta parte se realizaron tareas similares a las que debían desplegar en la
fase de producción, aunque en este caso todo el esfuerzo se dirige a la
integración de todas las fases de iteración de la etapa de producción
respectivamente asegurando la funcionalidad implementada y la calidad de la
aplicación móvil desarrollada, a su vez la configuración de la plataforma LMS
Chamilo y el proyecto en Firebase, y en conjunto se desarrolló la
documentación.
17
3.5 PRUEBAS DEL SISTEMA
En esta última fase del ciclo de vida se realizó una prueba al final de diferentes
características según la ISO/IEC 9126 que fueron: funcionalidad, fiabilidad,
utilidad y eficiencia de la aplicación móvil en diferentes dispositivos y
validando las diferentes versiones aptas para su funcionamiento, y a su vez
se hizo pruebas de otra plataforma instalada y de diferentes proyectos de
Firebase.
18
4. RESULTADOS Y DISCUSIÓN
A continuación, se muestran los resultados obtenidos en cada etapa del ciclo
de vida que se realizó con la metodología Mobile-D.
4.1 EXPLORACIÓN
En esta etapa se elaboró un plan el cual contiene a los interesados del
producto final, además se definió el alcance del proyecto, y como último punto,
se definió un cuadro de cronograma.
4.1.1 ESTABLECER INTERESADOS
En esta etapa se identificó a los interesados directos que tuvo el proyecto:
La comunidad Learning Management System Chamilo, ya que le dará
una nueva función a su sistema de aprendizaje para un futuro aumento
de usabilidad en la misma.
La comunidad educativa que use la plataforma Chamilo en especial el
rol del estudiante, que por medio de esta ayudará su proceso de
aprendizaje.
4.1.2 DEFINICIÓN DEL ALCANCE
En esta parte se definió el alcance tanto del proyecto como del producto final
lo que va hacer.
4.1.2.1 Alcance del Proyecto
Configurar y administrar todas las funcionalidades de una plataforma
Learning Management System Chamilo.
Desarrollar Web Services para la conexión cliente-servidor entre el
LMS, Firebase y la aplicación móvil.
Desarrollar una aplicación móvil sobre el sistema operativo Android de
chat y notificación de eventos que se realice sobre la plataforma
Learning Management System Chamilo.
Crear un ambiente de pruebas para verificar la funcionalidad de la
aplicación y que esta sea útil y de ayuda para el usuario.
19
4.1.2.2 Alcance del Producto
La aplicación validará a la institución educativa o de capacitación que
utilice la plataforma Learning Management System Chamilo mediante
su URL.
Tendrá una ventana de ingreso para validar los datos del estudiante que
estudie en dicha institución educativa o de capacitación, y así pueda
obtener el servicio de notificaciones y chat.
La aplicación tendrá una bandeja de entrada de notificaciones, la cual
se irá llenando según el tutor o profesor realice distintas actividades
sobre el curso en el cual se encuentra registrado el usuario.
Las notificaciones tendrán una breve descripción de la actividad que
realizó el tutor o el profesor en el curso.
La aplicación tendrá un sistema de mensajería instantánea para que los
usuarios puedan comunicarse entre sí.
La aplicación podrá responder a los mensajes recibidos.
4.1.3 ESTABLECIMIENTO DEL PROYECTO
En esta parte se desarrolló un cronograma como se puede observar en la
Tabla 3 para asimilar las actividades que se realizó durante todo el proyecto
el cual se desglosa en más actividades en las siguientes etapas de
planificación del ciclo de vida.
Tabla 3. Cronograma de Actividades del Proyecto
Cronograma
Actividad/Semana 1 2 3 4 5 6
Revisión Bibliográfica X X X X X X
Planificación del proyecto, actividades, requerimientos y
especificaciones.
X
Instalación, Configuración y Manejo del LMS
X
Desarrollo del Proyecto X X X
Pruebas X X X X X
Implementación y Documentación
X
20
A su vez como lo indica la Tabla 4 se analizó un determinado presupuesto
que sirvió para llevar a cabo correctamente el proyecto sin ningún
inconveniente.
Tabla 4. Presupuesto que se usó para el proyecto
RUBRO US$
Papelería 80
1 celulares S.O Android 150
TOTAL 230
4.2 INICIACIÓN
En esta fase se identificó todos los recursos necesarios que se van a necesitar
para el desarrollo de la aplicación y una vez analizados se hace un plan de
iteraciones que se va a ejecutar en la etapa de producción.
4.2.1 RECOLECCIÓN DE REQUISITOS
Se recogió varios requisitos importantes para el efectivo desarrollo de todo el
proyecto.
4.2.1.1 Requisitos Físicos
Una laptop que haga función de servidor:
o Procesador i3 mínimo.
o 8GB de RAM mínimo.
o 4 GB de espacio libre mínimo en disco o superior.
2 celulares para correr la aplicación:
o Sistema Operativo Android.
o Versión 4.1 Api 16 o mayores.
4.2.1.2 Requisitos de Software
Xampp Server 7.1.7.
Editor de código para programar archivos PHP.
Cuenta en Firebase (gratuita).
Postman para las pruebas de los Web Services.
Android Studio.
Learning Management System Chamilo versión 1.11.2
21
4.2.1.3 Requisitos Funcionales de la Aplicación Móvil
La aplicación validará a la universidad o instituto que utilice la
plataforma Learning Management System Chamilo mediante su URL.
Tendrá una ventana de ingreso para validar los datos del usuario que
estudie en dicha universidad o instituto, y así pueda obtener el servicio
de notificaciones y chat.
La aplicación solo estará dirigida al rol de estudiantes.
La aplicación tendrá una bandeja de entrada de notificaciones, la cual
se irá llenando según el tutor o profesor realice distintas actividades
sobre el curso en el cual se encuentra registrado el usuario.
Las notificaciones tendrán una breve descripción de la actividad que
realizó el tutor o el profesor en el curso.
La aplicación tendrá un sistema de mensajería instantánea para que
los usuarios puedan comunicarse entre sí.
La aplicación podrá responder a los mensajes recibidos.
4.2.1.4 Requisitos no Funcionales de la Aplicación Móvil
La aplicación recibirá notificaciones y mensajes cuando se encuentre
cerrada o ejecutándose en segundo plano.
La aplicación debe estar disponible y accesible las 24 horas al día, 7
días a la semana.
La aplicación móvil debe correr en todos los teléfonos o tablets de
Sistema Operativo Android con versiones mayores a 4.1.
La aplicación móvil necesita conexión a Internet para funcionar.
4.2.1.5 Requisitos Cognitivos
Conocer todo sobre Base de datos Mysql.
Conocer sobre la instalación, configuración y manejo de la plataforma
Learning Management System Chamilo.
Conocer sobre el desarrollo de Web Services en PHP.
Conocer sobre vincular aplicaciones a Firebase.
Conocer sobre el manejo de Android Studio.
22
4.2.2 ANÁLISIS DE REQUISITOS
En base a todos los requerimientos recolectados se realizó un análisis y se
dividió el proyecto en varios módulos, los cuales son los siguientes:
1. Módulo Chamilo:
Instalación.
Configuración.
Creación de Cursos.
Manejo del Contenido del Curso.
Selección de Actividades para Notificaciones.
2. Módulo de Validación:
Primera Vista de la Aplicación.
Programación de la Aplicación.
Web Services para conectar con la plataforma.
3. Módulo de Configuración de Firebase:
Crear Cuenta de Firebase.
Crear un Proyecto en Firebase.
4. Módulo de Conexión con Firebase.
Conexión de la plataforma con Firebase para las Notificaciones.
Conexión de la Aplicación con Firebase
5. Módulo de Notificaciones:
Cambios y Programación en la plataforma.
Programación en la Aplicación.
6. Módulo de Mensajería
Cambios y Programación en la plataforma.
Programación en la Aplicación.
4.2.3 PLANIFICACIÓN DE FASES
En esta etapa lo que se hizo fue identificar los módulos en cada fase de la
metodología como lo muestra la Tabla 5, y así determinar las iteraciones por
cada módulo con su respectiva descripción, hasta terminar en las últimas
fases, donde se integró el producto con sus respectivas pruebas.
23
Tabla 5. Planificación por Fases Iterativas.
FASE ITERACIÓN DESCRIPCIÓN
Exploración
Iniciación Iteración 0
Requerimientos del proyecto, establecimiento del proyecto en conjunto
con el plan de fases
Producción
Iteración módulo Chamilo
Implementación del módulo Chamilo mediante su
instalación, configuración y creación de un curso.
Iteración módulo de
Validación
Implementación del módulo de Validación de la
aplicación móvil con sus vistas principales y
desarrollo de Web Services para la conexión de la
aplicación con la Plataforma y la verificación de
información.
Iteración módulo de configuración Firebase
Crear una cuenta de Firebase y configurar este
servicio.
Iteración módulo de
conexión con Firebase
Conectar la plataforma LMS y la aplicación móvil y
habilitar los servicios de notificaciones y mensajería.
Iteración de módulo de notificaciones
Refactorización en la plataforma y codificación en
la aplicación móvil.
Iteración de módulo de mensajes
Refactorización en la plataforma y codificación en
la aplicación móvil.
Estabilización Iteración de Integración Se unen todos los módulos
correctamente.
Pruebas del Sistema Iteración de pruebas del
sistema
Se realizan las pruebas pertinentes para el buen
funcionamiento del sistema integrado.
4.3 PRODUCCIÓN
En esta fase se desarrolló el plan iterativo realizado en la etapa de iniciación.
4.3.1 MÓDULO DE CHAMILO
Para iniciar la etapa de producción se comenzó con el primer módulo que es
el de instalar la plataforma, configurarla y se creó un curso donde se
seleccionó las actividades posibles para enviar notificaciones.
24
4.3.1.1 Instalación de XAMPP
El proceso de instalación que se siguió en este paso se encuentra explicado
en el Anexo 1.
4.3.1.2 Instalación de LMS Chamilo
El proceso de instalación que se siguió en este paso se encuentra explicado
en al Anexo 2.
4.3.1.3 Creación de Cursos y Usuarios en la Plataforma LMS
En esta etapa se procedió a crear dos cursos de prueba como lo muestra la
Figura 1.
Figura 1. Cursos de Prueba en la Plataforma Chamilo
Como siguiente paso se insertó cuatro usuarios un profesor y tres estudiantes
como lo muestra la Figura 2, con su respectivo usuario y contraseña, esto se
lo realizó ingresando a la plataforma con la cuenta de administrador que
creamos en la instalación de la plataforma.
Figura 2. Usuarios de Prueba
25
Después de eso se le asignó los dos cursos al profesor y se ingresó a dos
estudiantes en cada curso que se creó anteriormente como lo indican la Figura
3 y 4, dependiendo de la configuración del curso al momento de crearlo, se
puede añadir más estudiantes ya sea por el profesor o tutor encargado del
curso o a su vez por el administrador de la plataforma Chamilo.
Figura 3. Estudiantes curso Algoritmos y Programación
Figura 4. Estudiantes curso Base de Datos
4.3.1.4 Selección de Actividades para Notificaciones.
Para esta etapa se procedió a ingresar a un curso para realizar un análisis de
todas las actividades que realiza el profesor en la plataforma con el fin de
elegir las indicadas que tengan correlación entre el estudiante y el profesor o
tutor para así notificar. La Tabla 6 indica los contenidos que se eligió con sus
respectivas actividades para notificar al estudiante en el momento que el
profesor o tutor las ejecute.
26
Tabla 6. Lista de Actividades a Notificar
Contenido Actividades
Descripción del Curso Actualización y Eliminación de la Descripción del curso.
Documentos Creación, Modificación y
Eliminación de Directorios y Documentos.
Lecciones Creación y Eliminación de
Lecciones.
Enlaces Creación, Modificación y Eliminación de Enlaces.
Ejercicios Creación, Modificación,
Eliminación, Habilitación e Inhabilitación de Ejercicios.
Anuncios Creación y Modificación de
Anuncios.
Evaluaciones Actualización de Evaluaciones.
Programación Didáctica Actualización de
Programación Didáctica.
Agenda Creación y Modificación de
Eventos.
Foros Creación, Modificación,
Eliminación y Comentar el Foro.
Compartir Documentos Envío de Documentos.
Encuestas Envío de Encuestas.
Tareas Creación, Modificación,
Eliminación y Calificación de Tareas.
4.3.2 MÓDULO DE VALIDACIÓN
En la implementación del módulo de Iniciación comenzó con el desarrollo de
la aplicación móvil y sus vistas principales, y el desarrollo de Web Services
para la conexión de la aplicación con la Plataforma y la verificación de
información.
4.3.2.1 Diseño de Interfaces
La Figura 5 muestra los bosquejos que se realizó de las interfaces de
validación de la universidad y la de usuario, que sirvieron para la siguiente
etapa de codificación en Android Studio.
27
Figura 5. Bosquejo de las Interfaces de Validación
4.3.2.2 Desarrollo de Ventanas Principales en la Aplicación Móvil
Lo primero que se hizo fue hacer una ventana principal donde se programó
un Splash Screen, a su vez se desarrolló una confirmación de que el teléfono
móvil tenga conexión a wifi o datos móviles como lo muestra la Figura 6, en el
caso de que no haya ninguna de las dos conexiones la aplicación se cerrará
hasta que haya una conexión ya que la aplicación necesita internet para la
conexión con los Web Services.
Figura 6. Pantalla de Inicio de la Aplicación Móvil
28
4.3.2.3 Web Services para Conexión entre App y Plataforma
En este paso se creó una carpeta dentro del directorio main y archivos php de
configuración. La Figura 7 muestra el archivo Config.php que requiere el
archivo de configuración de la plataforma LMS donde tiene todos los
parámetros de conexión a la base de datos, después se creó el archivo
DbConnect.php como se muestra la Figura 8, que se necesita para métodos
posteriores.
Figura 7. Archivo de configuración Config.php
Figura 8. Archivo de conexión DbConnect.php
Para el siguiente paso se creó el archivo DbOperation.php en el cual se
desarrolló la función getNameUni(), verificar() y otros métodos más. En la
función getNameUni() ingresa un parámetro que nos ayudará a extraer el
nombre de la universidad de la base de datos como lo muestra la Figura 9.
29
Figura 9. Función para Recuperar el Nombre de la Universidad
Como siguiente paso se creó dos Web Services, en donde el primer Web
Service recibe un método de solicitud por POST de la aplicación móvil que
envía un parámetro que busca en la base de datos el nombre de la universidad
y este le responde en formato Json como muestra el diagrama de secuencias
de la Figura 10, esta respuesta se interpreta por la aplicación conociendo la
universidad a la cual estará conectada. Por otro lado, el segundo Web Service
recibe como parámetros el usuario y la contraseña para validar el ingreso a la
aplicación y de respuesta reciben el nombre el usuario y su ID.
PETICIÓN PARA AUTENTIFICACIÓN
BASE DE DATOSWEB SERVICEAPLICACIÓN
Web Service Cliente Verificar BDD MySQL
1 Envía Parámetros y Petición
2 Envía Petición
DbOperation
3 Ejecuta SQL
Retorna Resultado
4
5 Procesa Resultado
6
Respuesta a la Petición
7
Retorna Respuesta JSON
Figura 10. Diagrama de Secuencia: Peticiones desde la Aplicación
30
4.3.2.4 Validación de Universidad y Usuario en la App Móvil
Como siguiente paso se creó una vista en la aplicación móvil donde nos pide
registrar el URL de la plataforma Learning Management System Chamilo, el
botón CONECTAR envía una solicitud al Web Service creado anteriormente
obteniendo el nombre de la universidad, caso contrario el Web Service envía
un mensaje de error de conexión. Para mostrar el mensaje que nos devuelve
el Web Service, luego se creó una ventana que nos muestra dicha respuesta
y un botón de SIGUIENTE Y GUARDAR en caso que la respuesta sea el
nombre de una universidad como lo muestra la Figura 11.
Figura 11. Validación de Universidad
Al pulsar el botón SIGUIENTE Y GUARDAR guarda el URL en una base de
datos en el dispositivo móvil, así ya no tiene que pedir esa información cada
vez que se inicie la App. Por otro lado, se despliega una ventana que tiene un
formulario de validación de usuario como muestra la Figura 12, la cual envía
los parámetros al Web Service, donde se valida y retorna el nombre del
usuario y el ID y a su vez los guarda en la base de datos creada en el
dispositivo móvil para que no vuelva a pedir esta información, en el caso de
que no sea válido nos retorna un mensaje de error que dice “NO SE OBTUVO
EL REGISTRO”, que no permite acceder a la bandeja de entrada de la app.
31
Figura 12. Validación de Usuario
4.3.3 MÓDULO DE CONFIGURACIÓN CON FIREBASE
4.3.3.1 Creación de una Cuenta Firebase
Para crear una cuenta en el servicio Firebase solo hay que dirigirse a su
página oficial https://firebase.google.com/, luego buscar la sección para
acceder, de ahí nos pidió tener una cuenta de GMAIL, y se creó una cuenta
para las pruebas.
4.3.3.2 Creación de un Proyecto en Firebase
Como siguiente paso se procedió a crear un proyecto como muestra la Figura
13, en el cual Firebase nos otorgó todos los servicios, almacenamiento de
información y configuraciones para la conexión de Firebase con la Aplicación
Móvil.
Figura 13. Creación de Proyecto en Firebase
32
4.3.4 MÓDULO DE CONEXIÓN CON FIREBASE
En este módulo se realizó la respectiva configuración para integrar la App al
proyecto creado en Firebase.
4.3.4.1 Integración de la App en el Proyecto Firebase
Una vez ya creado el proyeto como siguiente paso se procedió a registrar la
app, en donde ingresaremos el ApplicationId o nombre de paquete. Luego se
descargó un archivo de configuración que Firebase nos pide descargar y
agregar en la app de nombre google-services.json. Para terminar, se realizó
una configuración en el archivo GRADLE en Android Studio que nos pide
Firebase como muestra la Figura 14, el momento que se haga la respectiva
configuración la aplicación ya se encuentra conectada.
Figura 14. Configuración en GRADLE
4.3.5 MÓDULO DE NOTIFICACIONES
En este módulo se desarrolló la parte de notificaciones que se ejecutarán
desde la plataforma según la actividad que realice el profesor y esta se le
notifique al teléfono móvil de sus estudiantes inscritos en el curso
correspondiente.
33
4.3.5.1 Modificación en la Base de Datos de LMS Chamilo
Las notificaciones se envían a través del servicio de que nos ofrece Firebase
a un dispositivo, la forma de reconocer el dispositivo se lo hace mediante un
TOKEN, así que se realizó una modificación a la tabla del usuario aumentando
un atributo llamado token mediante la siguiente sentencia alter TABLE user
ADD token text y se guardó el TOKEN en la base de datos por cada usuario.
A partir de eso se creó una función que guarda el TOKEN como muestra la
Figura 15, para que se ejecute en la parte que el Web Service verifica el
usuario y la contraseña, una vez verificados guarda el TOKEN que envía el
dispositivo.
.
Figura 15. Método para guardar TOKEN
4.3.5.2 Creación de Archivos de Notificaciones en LMS Chamilo
En la Figura 16 se muestra la clase Push que se creó, de esta forma es como
están estructuradas las notificaciones.
Figura 16. Clase Push
34
Para continuar se creó una clase llamada Firebase que envía todos los
campos de la notificación en formato Json a los TOKEN, para eso se necesita
saber con cual servidor comunicarse para enviar las notificaciones, entonces
se debió ir a Firebase, luego a la configuración del proyecto y por último a la
parte de Mensajería en la Nube y se debe copiar la clave del servidor a nuestro
archivo Config.php como lo muestra la Figura 17, así sabrá con que proyecto
comunicarse.
Figura 17. Clave de Servidor Firebase
Luego, se programó una clase que contiene a dos funciones Enviar () y
Enviarestu (), en donde las dos funciones reciben un título, un mensaje y el
TOKEN de los dispositivos para enviar las notificaciones ya sea a todo el curso
o a un solo dispositivo como muestra la Figura 18.
Figura 18. Funciones para Envío de Notificaciones
35
4.3.5.3 Refactorización de Archivos en LMS Chamilo
Para este último paso se identificó los archivos de la lista de componentes que
se analizó en la selección de actividades y se fue añadiendo la nueva línea de
comando donde envía las notificaciones, la Tabla 7 indica los archivos
modificados, las líneas en que fueron modificados y que métodos se usó para
la notificación.
Tabla 7. Lista de Modificaciones por Contenido
Contenido Archivos Modificados Líneas en que se
Modificó Función de
Envío
Inscripción al Curso
suscribe_user.php 60,120,437 Enviarestu()
Descripción del Curso
course_description_controller.php 119, 217, 271 Enviar()
Documentos
create_document.php 586
Enviar()
edit_document.php 228
document.php 274,1256, 1332
record_audio_rtc.ajax.php 73
document.ajax.php 97
upload.php 210
Lecciones lp_controller.php 585,849 Enviar()
Enlaces link.php 104,113 ,126, 139, 153, 164, 171, 178,
185 Enviar()
Ejercicios exercise.php 205, 223,247, 270
Enviar() exercise_admin.php 162, 165
Anuncios announcements.php 522,565 Enviarestu()
Evaluaciones
gradebook_add_result.php 48
Enviar(), Enviarestu()
gradebook_add_link.php 133
gradebook_view_result 48, 86, 488
gradebook_edit_reult.php 40, 300, 356, 415,
500
Programación Didáctica
themtic_controller.php 334 Enviar()
Agenda agenda.php 164, 275 Enviar(),
Enviarestu()
Foros forumfuction.inc.php 738, 775, 879,
2558, 3552 Enviar()
Compartir Documentos
dropbox_functions.inc.php 1003 Enviarestu()
Encuestas survey_invite.php 277 Enviarestu()
Tareas
work.php 188
Enviar(), Enviarestu()
edit_work.php 108
work.lib.php 829
edit.php 273
36
4.3.5.4 Codificación en la Aplicación Móvil
Para que la Aplicación móvil comience a recibir notificaciones primero debe
generar un TOKEN que se enviará por el Web Service para que se registre en
la base de datos de la plataforma LMS Chamilo. Firebase en su página oficial
nos da los respectivos pasos para la configuración del servicio de mensajería
y de notificaciones.
Como primer paso se programó los servicios en el archivo
AndrodiManifest.xml de Android como muestra la Figura 19. El primer servicio
nos ayudará para la generación y actualización de TOKEN en el dispositivo,
mientras que el segundo servicio nos ayudará para recibir las notificaciones
en primer o segundo plano.
Figura 19. Servicios Iniciados en el AndrodiManifest.xml
Luego de este paso solo tenemos que crear una clase que se extienda del
servicio FirebaseInstanceIdService y de ahí se pide el TOKEN como lo
muestra la Figura 20, así ya la aplicación tiene un ID único al cual le llegará
las notificaciones, el mismo que enviaremos por el Web Service a la
plataforma LMS Chamilo, para que la plataforma sepa a que TOKEN enviar
las notificaciones.
Figura 20. Clase que pide el TOKEN
37
Luego se creó una clase que recibe las notificaciones al dispositivo móvil del
estudiante, esta clase se extiende de FirebaseMessagingService, ya que el
servidor de Firebase lo envía como mensaje y la clase lo pasa a formato Json
y llama al método sendPushNotification() que envía una notificación diseñada
al dispositivo móvil del estudiante como muestra la Figura 21.
Figura 21. Clase que Recibe las Notificaciones
Las notificaciones entran al teléfono y se las guarda en la base de datos para
luego mostraras en una lista como bandeja de notificaciones como muestra la
Figura 22.
Figura 22. Notificaciones en la App Móvil
38
4.3.5.5 Funciones en las Notificaciones
Una función que se programó en la bandeja de notificaciones es que al
aplastar la notificación nos muestra la descripción de la misma y dos botones
como muestra la Figura 23, en el cual el botón Volver regresa a la bandeja y
el otro botón abre el navegador y le redirige a la página de la plataforma para
que el usuario vaya a ver la actividad que ha realizado el profesor o tutor.
Figura 23. Función OnClick sobre la Notificación
Otra función que se programó fue la de poder eliminar las notificaciones en
la lista para que estas no se vayan acumulando como muestra la Figura 24.
Figura 24. Función de Borrar Notificaciones
39
4.3.6 MÓDULO DE MENSAJES
En este módulo se desarrolló la parte de mensajería la cual se va a necesitar
la base de datos de tiempo real que nos ofrece el servicio de Firebase, esto
nos ayudará para cualquier actualización que haya en los mensajes, el
servicio nos actualizará automáticamente en la aplicación, para eso se
configuró unos parámetros y se desarrolló varias vistas.
4.3.6.1 Configuración de la Base de Datos en Firebase
La única configuración que se realizó en la base de datos fue cambiar las
reglas de seguridad como lo muestra la Figura 25, la cual dice que para
escribir o leer en la base de datos no necesita estar autentificado, ya que se
deberá hacer una autentificación y registro por cada usuario en Firebase, ya
que no se lo hace porque ya existe un registro en la plataforma LMS Chamilo.
Figura 25. Reglas de la Base de Datos en Firebase
4.3.6.2 Codificación en la Aplicación Móvil
El primer paso que se realizó fue que al momento de validar los datos se
registre el id del usuario, el nombre y un estado de conexión como lo muestra
la Figura 26, al momento de llamar a la instancia de la base de datos de
Firebase, se crea un nodo raíz llamado usuarios, en el cual se prepara para
insertar o actualizar en el caso de que ya existiera un registro similar en
formato Json.
40
Figura 26. Inserción de Usuarios en la Base de Datos de Firebase
Luego se programó una vista donde muestra una lista de todos los usuarios
registrados en la base de datos de Firebase en la Aplicación Móvil y de
antemano creando un método como muestra la Figura 27 que le dé un ID a
cada chat en la lista que va a representar como el ID de un contendor de los
mensajes que se generen al enviar y recibir.
Figura 27. Generación del ID del Contendor
Al momento de tener ya un ID o referencia del contenedor se procedió a
programar la vista del chat, en la que al momento de pulsar el botón enviar
graba en la base de datos el mensaje, el ID de quien le envía y el ID de quien
lo recibe dentro del ID del contenedor como lo muestra la Figura 28.
41
Figura 28. Inserción de Mensajes en la Base de Datos de Firebase
Se hizo una prueba con dos usuarios del mismo curso enviando mensajes de
texto como se muestra en la Figura 29, en el cual la actualización en el chat
del otro usuario es instantánea por la funcionalidad de la base de datos en
tiempo real.
Figura 29. Vista del Chat
4.3.6.3 Notificaciones en Mensajes
En la Figura 30 se realizó un evento en el que cada vez que se presione el
botón enviar dentro de un chat haya un Web Service que se conecte a la
plataforma y busque el TOKEN del receptor del mensaje y le notifique cada
vez que le envíen un mensaje al dispositivo móvil. Para eso se creó un método
42
en el archivo de sendSinglePush.php que envía la notificación al receptor del
mensaje, informándole que recibió un nuevo mensaje y el nombre del emisor.
Figura 30. Notificación de Mensajes
4.3.6.4 Funciones en Mensajes
La única funcionalidad que se le añadió al mensaje fue de poner un buscador
de usuarios en la lista de contactos como muestra la Figura 31, ya que aquí
van a estar todos los estudiantes de la plataforma y se hace dificultoso ir
buscando uno por uno.
Figura 31. Buscador de Usuarios
43
4.4 ESTABILIZACIÓN
En esta parte se integró todas las fases de iteración de la etapa de producción
respectivamente asegurando la funcionalidad implementada en cada módulo
visto anteriormente y la calidad de la aplicación móvil desarrollada, y en
conjunto se desarrolló la documentación.
4.5 PRUEBAS DEL SISTEMA INTEGRADO
En la Tabla 8 se muestran las características y subcaracterísticas que se han
elegido para evaluar la calidad del prototipo de la aplicación móvil según la
ISO/IEC 9126.
Tabla 8. Características y Subcaracterísticas de evaluación de la calidad
CARÁCTERÍSTICA SUBCARACTERÍSTICA PREGUNTA
Funcionalidad
Adecuación ¿Puede el software desempeñar las tareas requeridas?
Exactitud ¿El resultado es el esperado?
Interoperabilidad ¿El sistema puede interactuar con otro?
Seguridad de acceso ¿El sistema impide el acceso no autorizado?
Fiabilidad
Tolerancia a los fallos ¿El software es capaz de manejar errores?
Capacidad de recuperación
¿Puede el software reasumir el funcionamiento y restaurar datos perdidos después de la falla?
Utilidad
Capacidad para ser entendido
¿El usuario comprende fácilmente como usar el sistema?
Capacidad para ser operado
¿El usuario puede utilizar el sistema sin mucho esfuerzo?
Capacidad de atracción ¿La interfaz se ve bien?
Eficiencia
Comportamiento del tiempo
¿Qué tan rápido responde el sistema?
Utilización de recursos ¿El sistema utiliza los recursos de manera eficiente?
En la Tabla 9 se muestra el criterio de evaluación de la aplicación para evaluar
los requisitos en función de las características y subcaracterísticas elegidas
anteriormente de la ISO/IEC 9126, a su vez se eligió un umbral de aceptación
de 4 sobre 5 para dar a la aplicación como aceptada.
44
Tabla 9. Criterio de Evaluación
PESO DETALLE DESCRIPCIÓN
5 Excelente Cuando el requisito cumple más de lo que espera(X>100%)
4 Muy
bueno Cuando el requisito cumple con las expectativas en su totalidad(X=100%)
3 Bueno Cuando el requisito cumple en la mayor parte de las expectativas pero no en su totalidad(50%<X<100%)
2 Regular Cuando el requisito cumple en mínima parte las expectativas(0%<X<=50%)
1 Malo Cuando el requisito no cumple con los requerimientos acordados(X=0%)
Para la evaluación del prototipo de la aplicación móvil se tomó en cuenta los
requisitos funcionales que se estableció en la etapa de Iniciación de la
metodología Mobile-D.
En el Anexo 3 se observa la evaluación realizada a dos usuarios del aplicativo
móvil en un teléfono con sistema operativo Android y versión 4.4.2 y en el
Anexo 4 se observa la evaluación en un teléfono móvil de sistema operativo
Android versión 4.1.2.
En la Tabla 10 se observa los resultados de los promedios de las diferentes
evaluaciones obtenidas hacia dos usuarios, con esto se observa que la
aplicación supera el umbral de aceptación, pero aun así necesita que se le
aumente algunas funciones para que de un mejor funcionamiento y usabilidad
al usuario.
Tabla 10. Promedio de las Evaluaciones
EVALUADOR PROMEDIO
Versión 4.4.2 Versión 4.1.2
Usuario(Estudiante) 4.10 4.07
Usuario(Estudiante) 4.21 4.10
4.6 DISCUSIÓN
Después de observar todos los resultados tras las pruebas y practicas
realizadas, solo queda en cuestión una pregunta, ¿Cómo hacemos para que
la aplicación sirva con todas las plataformas de LMS Chamilo?, después de
varias investigaciones y análisis se determinó una forma factible para poder
45
integrar la app a la plataforma LMS Chamilo, en la cual consta que en la
próxima actualización que haga la plataforma tendrá que integrar los cambios
pertinentes que son los siguientes:
En primer lugar la creación de Web Services que se mencionó en la sección
4.3.2, luego las modificaciones a la base de datos y refactorización de código
en los archivos descritos, después la configuración de los servicios para
notificaciones y mensajería, ya que estos son externos a la plataforma no se
puede subir la aplicación móvil a una tienda de aplicaciones sin tener el
respectivo archivo de configuración que lo da el servicio de Firebase, ya que
cada servicio que otorga debe estar vinculado a una cuenta de GMAIL y un
proyecto creado dentro de la misma cuenta, la solución a este problema es
que el LMS además de tener en un repositorio el código de la plataforma
también tenga cargado el código de la app móvil para su descarga y
configuración en la cual se menciona en la sección 4.3.3 y 4.3.4 que es la
creación de un proyecto en Firebase y la descarga del archivo de
configuración, por último solo se tendría que abrir el proyecto en Android
Studio, cambiar el archivo de configuración por el nuevo que haya descargado
desde el servicio de Firebase creado con una cuenta propia de la universidad
y recompilar el proyecto para que reconozca el nuevo archivo de configuración
y al final generar un instalador APK de la aplicación móvil y cargar ese
instalador en la plataforma LMS Chamilo a que todos los estudiantes lo
puedan descargar a su vez crear en la plataforma una página donde pida los
respectivos datos para la conexión de la plataforma LMS hacia Firebase, el
cual solo es el FIREBASE_API_KEY que provee el mismo servicio de
Firebase y así ya estaría perfectamente configurado para que la aplicación
móvil entre en funcionamiento.
Existe diversos trabajos realizados con el fin de ayudar al estudiante de alguna
manera usando el m-learning, y en general la mayor parte de sistemas
propuestos, con base en el análisis del estado del arte realizado en este
trabajo, carecen de los siguientes servicios: a) Avisos de nuevas actividades
propuestas por el profesor a los estudiantes a través de SMS y publicaciones
46
en Facebook y Twitter, o que lleguen directamente al teléfono por medio de
una aplicación; b) Recordatorio del vencimiento de actividades propuestas por
el profesor a través de mensajes. Mientras que Blackboard Mobile si cuenta
con un sistema de notificaciones de nuevos eventos, pero carece de un
sistema de mensajería y cabe recalcar que el uso de su plataforma LMS no
es libre, así que tiene un costo implementar este sistema. Además, Moodle
Mobile cuenta con más servicios de los que cuenta nuestro sistema y a más
de ser una plataforma LMS libre, es la más usada por las comunidades
educativas (Muñoz et al., 2015). Por otro lado, las contribuciones que este
sistema aporta a la plataforma LMS Chamilo son: a) Recibir notificaciones
instantáneas de mensajes y otros eventos; b) Uso de Mensajería Instantánea.
Esto hará que la plataforma en un futuro aumente su calid usabilidad, utilidad
e interés, y ayude en el proceso de enseñanza-aprendizaje del usuario en
complemento de la ya existente versión web.
47
5. CONCLUSIONES Y RECOMENDACIONES
En este capítulo se describen las conclusiones y recomendaciones que se
obtuvieron del desarrollo del presente trabajo y los posibles trabajos futuros.
5.1 CONCLUSIONES
El uso de los servicios de Firebase, para poder comunicarse la
plataforma LMS Chamilo con la aplicación móvil nos facilitó bastante
ya que de otra manera se hubiesen tenido que programar los métodos
para los servicios de notificaciones y mensajería, y el desarrollo se
hubiese extendido aún más, esto dio como resultado una óptima
comunicación entre la plataforma y la aplicación.
El uso de la librería externa de Android, VOLLEY, para poder
comunicarse con el Web Service de validación de la universidad y del
usuario, sirvió de ayuda ya que minimiza código, tiene mejores
implantaciones de métodos de respuesta y un procesamiento
concurrente de peticiones, esto dio un óptimo resultado comunicación
entre la plataforma y la aplicación.
Al haber usado la metodología Mobile-D, se pudieron implementar las
correcciones y mejoras en el software sobre el proceso de desarrollo
en cada módulo, sin tener que hacer grandes cambios en toda su
estructura, más bien agregando algunas mejoras y haciendo cambios
menores por cada módulo.
Durante el desarrollo de este proyecto se ha ido adquiriendo
conocimiento de cómo usar la plataforma LMS y a su vez los servicios
que presta Firebase, también se ha adquirido conocimiento sobre el
ciclo de vida ya que sirvió de mucha ayuda desde los análisis hasta las
pruebas.
48
5.2 RECOMENDACIONES
El usuario debe tener una conexión a internet, sea por wifi o por red
móvil para poder hacer uso de todas las funciones en la aplicación ya
que prácticamente toda su funcionalidad está basada en envío y
recepción de mensajes y notificaciones a través de Firebase y la
plataforma LMS Chamilo.
El usuario debe tener la aplicación en un solo dispositivo ya que si
ingresa en otro dispositivo solo llegará las notificaciones a uno porque
se registra en la base de datos el TOKEN de un solo dispositivo móvil
y no de varios.
Se recomienda que para que los servicios de Firebase funcionen
correctamente el dispositivo móvil debe tener registrado con una
cuenta de GMAIL para que se active el google play services.
Se recomienda el uso de la Metodología Mobile-D para el diseño de
aplicaciones móviles ya que está orientada a este tipo de desarrollo
muy rápido para equipos muy pequeños.
Se recomienda instalar la aplicación de sistemas operativos Android de
versión 4.1 en adelante ya que fue compilada en esas versiones.
Se recomienda investigar para futuros estudios como sería el proceso
de actualización para que las plataformas haga los cambios
pertinentes.
Se recomienda implementar para trabajos futuros las mismas
funcionalidades para más versiones, ya sea de teléfono móvil o Tablet
y gracias a los Web Services creados y el servicio de Firebase
desarrollarla para otros sistemas operativos.
49
BIBLIOGRAFÍA
Abrahamsson, P., Hanhineva, A., Hulkko, H., Ihme, T., Jäälinoja, J., Korkala,
M., … Salo, O. (2004). Mobile-D: An Agile Approach for Mobile
Application Development. En Companion to the 19th Annual ACM
SIGPLAN Conference on Object-oriented Programming Systems,
Languages, and Applications (pp. 174–175). New York, NY, USA:
ACM. https://doi.org/10.1145/1028664.1028736
Amado, A., & Leonardo, N. (2017). Sistema para el análisis de la oscilación
postural anteroposterior. Recuperado a partir de
http://repository.javeriana.edu.co/handle/10554/21440
Balaguera, Y. D. A. (2015). Metodologías ágiles en el desarrollo de
aplicaciones para dispositivos móviles. Estado actual. Revista de
Tecnología, 12(2).
Castro, G. G., Dominguez, E. L., Velazquez, Y. H., Matla, M. Y. R., Toledo,
C. B. E., & Hernandez, S. E. P. (2016). MobiLearn: Context-Aware
Mobile Learning System. IEEE Latin America Transactions, 14(2),
958–964. https://doi.org/10.1109/TLA.2016.7437246
Cavus, N. (2010). The evaluation of Learning Management Systems using an
artificial intelligence fuzzy logic algorithm. Advances in Engineering
Software, 41(2), 248–254.
https://doi.org/10.1016/j.advengsoft.2009.07.009
Chamilo portals around the world. (2016). Recuperado el 21 de diciembre de
2016, a partir de https://version.chamilo.org/community.php
50
Electronics -AGILE - Agile Software Technologies. (2012). Recuperado el 28
de agosto de 2017, a partir de http://agile.vtt.fi/mobiled.html
Fénnema, M. C., Palavecino, R., Herrera, S. I., & Najar Ruíz, P. J. (2015).
Métodos, técnicas y herramientas para optimizar la calidad de los
sistemas móviles. Presentado en XVII Workshop de Investigadores en
Ciencias de la Computación (Salta, 2015). Recuperado a partir de
http://hdl.handle.net/10915/45815
Firebase. (2012). Recuperado el 29 de agosto de 2017, a partir de
https://firebase.google.com/?hl=es-419
Heredia, J. E. A., & Sánchez, V. G. (2015). Revisión de opciones para el uso
de la plataforma Moodle en dispositivos Móviles. Revista de
Educación a Distancia, 0(37). Recuperado a partir de
http://revistas.um.es/red/article/view/234031
Hernández Sansalvador, J. (2017). SearchMe. Recuperado a partir de
http://rua.ua.es/dspace/handle/10045/68117
Manifesto for Agile Software Development. (2011). Recuperado el 4 de
octubre de 2017, a partir de http://agilemanifesto.org/
Martín, S., Díaz, G., García, I. P., San Cristóbal, E., Latorre, M., Gil, R., …
Castro, M. (2010). M2Learn: Framework Abierto para el Desarrollo de
Aplicaciones para el Aprendizaje Móvil y Ubicuo. IEEE-RITA, 5(4),
138–145.
Martínez, P. P., & Zumeta, A. C. (2013). Los LMS como herramienta
colaborativa en educación. (Congreso Internacional Latina de
51
Comunicación Social, Ed.). La Laguna, Tenerife: Sociedad Latina de
Comunicación Social.
Minguillón, J., Mor, E., Santanach, F., & Ortiz, L. G. (2005).
PERSONALIZACIÓN DEL PROCESO DE APRENDIZAJE USANDO
LEARNING OBJECTS REUTILIZABLES. Revista de Educación a
Distancia, 0(0). Recuperado a partir de
http://revistas.um.es/red/article/view/24491
Mobile Learning Made Easy. (2016). Recuperado el 21 de diciembre de
2016, a partir de http://www.mobl21.com/workflow/
Mobile Learning (mlearning) Solutions | Blackboard. (2016). Recuperado el
21 de diciembre de 2016, a partir de
http://www.blackboard.com/mobile-learning/index.aspx
Moodle descargas: Moodle Mobile. (2017). Recuperado el 27 de septiembre
de 2017, a partir de https://download.moodle.org/mobile/
Moraga, B. M., & González, A. J. (2007). Evaluación y Seguimiento del
Aprendizaje en Salas de Clases Utilizando Dispositivos Móviles. En
presentado en el XXI Congreso Chileno de Educación en Ingeniería.
Recuperado a partir de
http://www.profesores.elo.utfsm.cl/~agv/publications/2007/EducacionI
ngenieria/bruno-mundaca_FINAL_ENVIADO.pdf
Morales Reyes, Y. E., Gómez Yopasa, J. D., & Camargo Vega, J. J. (2016).
Evaluación comparativa de accesibilidad para sistemas Android, iOS y
Windows Phone. Revista Virtual Universidad Católica del Norte, 0(48),
295–315.
52
Muñoz, J. Y. A., Cañadulce, E. M. R., & Molano, I. L. C. (2015). Estudio
comparativo de sistemas de gestión del aprendizaje: Moodle, ATutor,
Claroline, Chamilo y Universidad de Boyacá. Revista Academia y
Virtualidad, 8(1), 54–65.
Ruiz-Iniesta, A., Jiménez-Díaz, G., & Gómez-Albarrán, M. (2010).
Personalización en Recomendadores Basados en Contenido y su
Aplicación a Repositorios de Objetos de Aprendizaje. IEEE-RITA,
5(1), 31–38.
Watson, S. L. (2012). An Argument for Clarity: What are Learning
Management Systems, What are They Not, and What Should They
Become? William R. Watson Indiana University-Purdue University
Indianapolis.
53
ANEXOS
54
Anexo 1
Instalación de Xampp
Como primer paso se instaló el software Xampp que sirvió para alojar la
plataforma Learning Management System Chamilo, a continuación, se explica
los pasos que se siguió en este proceso:
1. Se ejecutó el instalador y se inició el asistente de instalación como se
ve en la Figura 32, para continuar, se pulsa en Next.
Figura 32. Asistente de Instalación de Xampp
2. Se seleccionó los componentes mínimos de instalación de servicios
que nos ofrece Xampp como nos muestra la Figura 33, para continuar,
se pulsa en Next.
55
Figura 33. Componentes Mínimos de Instalación en Xampp
3. Después de dar Next en varios pasos y esperar que se instale
correctamente, se inició los servicios de Apache y MySQl desde el
panel de control como muestra la Figura 34.
Figura 34. Panel de Control Xampp iniciado dos servicios.
4. Se abrió el navegador y se colocó http://localhost y nos indicó que se
instaló correctamente como nos muestra la Figura 35.
56
Figura 35. Ventana de Inicio de Xampp
57
Anexo 2
Instalación de LMS Chamilo
Antes de Instalar la plataforma Learning Management System Chamilo se
creó un usuario y una base de datos donde se encuentra almacenada toda la
información de la plataforma, para eso se hizo varios pasos que se explican a
continuación:
1. Se abrió el phpMyAdmin dese el botón Admin desde el servicio de
MySQL como se observa en la Figura 36.
Figura 36. Iniciación de phpMyAdmin desde el Panel de Control.
2. Se procedió a crear un nuevo usuario y base de datos en la parte que
dice Agregar cuenta de usuario como se muestra en la Figura 37.
Figura 37. Adición de un Nuevo Usuario en Xampp
58
3. En la Figura 38 se muestra el resultado de haber creado un usuario
con nombre chamilo y clave chamilo, y a su vez se creó la base de
datos donde se va a almacenar la información de todo el LMS con el
nombre de chamilo.
Figura 38. Resultado de Agregar un Usuario y Base de Datos en Xampp
Para continuar se procedió a instalar la plataforma Learning Management
System Chamilo, la cual nos descargamos de su página oficial, a
continuación, se explica los pasos que se tomó para dicho proceso:
1. Se descargó un archivo .rar con la versión 1.11.2 de la página oficial y
se procedió a descomprimirlo en la dirección C:\xampp\htdocs, una
vez realizado eso se cambió el nombre de la carpeta a “chamilo” como
se muestra en la Figura 39.
Figura 39. Ubicación de la Plataforma en Xampp
59
2. Luego se escribió en el navegador http://localhost/chamilo y nos
redirigió a la página de instalación como se muestra en la figura 40.
Figura 40. Asistente de Instalación de Chamilo.
3. Se siguió el proceso de instalación, hasta que pidió unos cambios que
se debió configurar en un archivo de configuración del XAMPP que fue
el php.ini, la Figura 41 muestra los resultados que se cambió en los
parámetros post_max_size=10M y upload_max_filesize=10M.
Figura 41. Cambios Efectuados en la Configuración
4. La Figura 42 se muestra la parte donde se ingresó la información con
nombre de usuario, la clave y el nombre de la base de datos que se
obtuvieron de la etapa de crear un usuario y base de datos en XAMPP.
60
Figura 42. Información para Conexión con la Base de Datos
5. En la Figura 43 muestra la configuración que se hizo de varios datos
como el nombre de la universidad y para crear un usuario
administrador con nombre jonybaq y contraseña jonybaq.
Figura 43. Configuración de la Plataforma
6. Se siguió los últimos pasos de la instalación hasta esperar que termine
y aparezca un botón que nos redirija al Inicio de la plataforma como se
puede ver en la Figura 44.
61
Figura 44. Inicio de la Plataforma Instalada Correctamente
62
Anexo 3
Evaluación de la Aplicación Móvil (Teléfono Android versión
4.4.2)
La Figura 45 muestra la encuesta realizada al primer usuario de la aplicación
en el teléfono móvil Android versión 4.4.2 con su respectiva evaluación.
Figura 45. Encuesta de la versión 4.4.2 al Usuario N°1
1 2 3 4 5
Adecuación ¿Puede el software desempeñar las tareas requeridas? X
Interoperabilidad ¿El sistema puede interactuar con otro? X
Seguridad de acceso ¿El sistema impide el acceso no autorizado? X
Tolerancia a los fallos ¿El software es capaz de manejar errores? X
Capacidad de recuperación¿Puede el software reasumir el funcionamiento y restaurar datos
perdidos después de la falla?X
Capacidad para ser entendido ¿El usuario comprende fácilmente como usar el sistema? X
Capacidad de atracción ¿La interfaz se ve bien? X
Eficiencia Comportamiento del tiempo ¿Qué tan rápido responde el sistema? X
Adecuación ¿Puede el software desempeñar las tareas requeridas? X
Exactitud ¿El resultado es el esperado? X
Interoperabilidad ¿El sistema puede interactuar con otro? X
Tolerancia a los fallos ¿El software es capaz de manejar errores? X
Capacidad de recuperación¿Puede el software reasumir el funcionamiento y restaurar datos
perdidos después de la falla?X
Capacidad para ser entendido ¿El usuario comprende fácilmente como usar el sistema? X
Capacidad para ser operado ¿El usuario puede utilizar el sistema sin mucho esfuerzo? X
Capacidad de atracción ¿La interfaz se ve bien? X
Comportamiento del tiempo ¿Qué tan rápido responde el sistema? X
Utilización de recursos ¿El sistema utiliza los recursos de manera eficiente? X
Adecuación ¿Puede el software desempeñar las tareas requeridas? X
Exactitud ¿El resultado es el esperado? X
Interoperabilidad ¿El sistema puede interactuar con otro? X
Tolerancia a los fallos ¿El software es capaz de manejar errores? X
Capacidad de recuperación¿Puede el software reasumir el funcionamiento y restaurar datos
perdidos después de la falla?X
Capacidad para ser entendido ¿El usuario comprende fácilmente como usar el sistema? X
Capacidad para ser operado ¿El usuario puede utilizar el sistema sin mucho esfuerzo? X
Capacidad de atracción ¿La interfaz se ve bien? X
Comportamiento del tiempo ¿Qué tan rápido responde el sistema? X
Utilización de recursos ¿El sistema utiliza los recursos de manera eficiente? X
SUMA 1 0 9 60 45
PROMEDIO
OBSERVACIONES
En la validación de usuario cuando no hay mucho intensidad de internet el Web Service devuelve un mensaje vacio
Se esperaba que al momento de aplastar la notificación esta lleve a la bandeja directamente
No se desarrollo controles a los errores que pasen en la mensajeria en cuanto a envio o recepción de mensajes
Mensajes
Funcionalidad
Fiabilidad
Utilidad
Eficiencia
4,107142857
REQUISITOEVALUACIÓN
La presente encuesta evalua la calidad del prototipo del SISTEMA DE NOTIFICACIONES Y MENSAJERÍA PARA DISPOSITIVOS MÓVILES
donde: (1-Malo) indica cuando el requisito no cumple con los requerimientos acordados(X=0%), (2-Regular) Cuando el requisito cumple en
mínima parte las expectativas(0%<X<=50%),(3-Bueno) Cuando el requisito cumple en la mayor parte de las expectativas pero no en su
totalidad(50%<X<100%),(4-Muy Bueno) Cuando el requisito cumple con las expectativas en su totalidad(X=100%) y (5-Excelente)Cuando el
requisito cumple más de lo que espera(X>100%), se solicita que conteste a las preguntas de manera objetiva, recuerde que esta
información es de uso académico
Teléfono móvil S.O Android version 4.4.2
Validación de
Universidad y
Usuario
Notificaciones
Funcionalidad
Fiabilidad
Utilidad
Eficiencia
Funcionalidad
Fiabilidad
Utilidad
PREGUNTASUBCARACTERÍSTICACARÁCTERÍSTICA
63
La Figura 46 muestra la encuesta realizada al segundo usuario de la
aplicación en el teléfono móvil Android versión 4.4.2 con su respectiva
evaluación.
Figura 46. Encuesta de la versión 4.4.2 al Usuario N°2
1 2 3 4 5
Adecuación ¿Puede el software desempeñar las tareas requeridas? X
Interoperabilidad ¿El sistema puede interactuar con otro? X
Seguridad de acceso ¿El sistema impide el acceso no autorizado? X
Tolerancia a los fallos ¿El software es capaz de manejar errores? X
Capacidad de recuperación¿Puede el software reasumir el funcionamiento y restaurar datos
perdidos después de la falla?X
Capacidad para ser entendido ¿El usuario comprende fácilmente como usar el sistema? X
Capacidad de atracción ¿La interfaz se ve bien? X
Eficiencia Comportamiento del tiempo ¿Qué tan rápido responde el sistema? X
Adecuación ¿Puede el software desempeñar las tareas requeridas? X
Exactitud ¿El resultado es el esperado? X
Interoperabilidad ¿El sistema puede interactuar con otro? X
Tolerancia a los fallos ¿El software es capaz de manejar errores? X
Capacidad de recuperación¿Puede el software reasumir el funcionamiento y restaurar datos
perdidos después de la falla?X
Capacidad para ser entendido ¿El usuario comprende fácilmente como usar el sistema? X
Capacidad para ser operado ¿El usuario puede utilizar el sistema sin mucho esfuerzo? X
Capacidad de atracción ¿La interfaz se ve bien? X
Comportamiento del tiempo ¿Qué tan rápido responde el sistema? X
Utilización de recursos ¿El sistema utiliza los recursos de manera eficiente? X
Adecuación ¿Puede el software desempeñar las tareas requeridas? X
Exactitud ¿El resultado es el esperado? X
Interoperabilidad ¿El sistema puede interactuar con otro? X
Tolerancia a los fallos ¿El software es capaz de manejar errores? X
Capacidad de recuperación¿Puede el software reasumir el funcionamiento y restaurar datos
perdidos después de la falla?X
Capacidad para ser entendido ¿El usuario comprende fácilmente como usar el sistema? X
Capacidad para ser operado ¿El usuario puede utilizar el sistema sin mucho esfuerzo? X
Capacidad de atracción ¿La interfaz se ve bien? X
Comportamiento del tiempo ¿Qué tan rápido responde el sistema? X
Utilización de recursos ¿El sistema utiliza los recursos de manera eficiente? X
SUMA 1 0 3 64 50
PROMEDIO
OBSERVACIONES
En la validación de usuario cuando no hay mucho intensidad de internet el Web Service devuelve un mensaje vacio
Se deberia poner un botón que muestre la contraseña
No haymensajes de error en la mensajeria en cuanto a envio o recepción de mensajes
Mensajes
Funcionalidad
Fiabilidad
Utilidad
Eficiencia
4,214285714
REQUISITOEVALUACIÓN
La presente encuesta evalua la calidad del prototipo del SISTEMA DE NOTIFICACIONES Y MENSAJERÍA PARA DISPOSITIVOS MÓVILES
donde: (1-Malo) indica cuando el requisito no cumple con los requerimientos acordados(X=0%), (2-Regular) Cuando el requisito cumple en
mínima parte las expectativas(0%<X<=50%),(3-Bueno) Cuando el requisito cumple en la mayor parte de las expectativas pero no en su
totalidad(50%<X<100%),(4-Muy Bueno) Cuando el requisito cumple con las expectativas en su totalidad(X=100%) y (5-Excelente)Cuando el
requisito cumple más de lo que espera(X>100%), se solicita que conteste a las preguntas de manera objetiva, recuerde que esta
información es de uso académico
Teléfono móvil S.O Android version 4.4.2
Validación de
Universidad y
Usuario
Notificaciones
Funcionalidad
Fiabilidad
Utilidad
Eficiencia
Funcionalidad
Fiabilidad
Utilidad
PREGUNTASUBCARACTERÍSTICACARÁCTERÍSTICA
64
Anexo 4
Evaluación de la Aplicación Móvil (Teléfono Android versión
4.1.2)
La Figura 47 muestra la encuesta realizada al primer usuario de la aplicación
en el teléfono móvil Android versión 4.1.2 con su respectiva evaluación.
Figura 47. Encuesta de la versión 4.1.2 al Usuario N°1
1 2 3 4 5
Adecuación ¿Puede el software desempeñar las tareas requeridas? X
Interoperabilidad ¿El sistema puede interactuar con otro? X
Seguridad de acceso ¿El sistema impide el acceso no autorizado? X
Tolerancia a los fallos ¿El software es capaz de manejar errores? X
Capacidad de recuperación¿Puede el software reasumir el funcionamiento y restaurar datos
perdidos después de la falla?X
Capacidad para ser entendido ¿El usuario comprende fácilmente como usar el sistema? X
Capacidad de atracción ¿La interfaz se ve bien? X
Eficiencia Comportamiento del tiempo ¿Qué tan rápido responde el sistema? X
Adecuación ¿Puede el software desempeñar las tareas requeridas? X
Exactitud ¿El resultado es el esperado? X
Interoperabilidad ¿El sistema puede interactuar con otro? X
Tolerancia a los fallos ¿El software es capaz de manejar errores? X
Capacidad de recuperación¿Puede el software reasumir el funcionamiento y restaurar datos
perdidos después de la falla?X
Capacidad para ser entendido ¿El usuario comprende fácilmente como usar el sistema? X
Capacidad para ser operado ¿El usuario puede utilizar el sistema sin mucho esfuerzo? X
Capacidad de atracción ¿La interfaz se ve bien? X
Comportamiento del tiempo ¿Qué tan rápido responde el sistema? X
Utilización de recursos ¿El sistema utiliza los recursos de manera eficiente? X
Adecuación ¿Puede el software desempeñar las tareas requeridas? X
Exactitud ¿El resultado es el esperado? X
Interoperabilidad ¿El sistema puede interactuar con otro? X
Tolerancia a los fallos ¿El software es capaz de manejar errores? X
Capacidad de recuperación¿Puede el software reasumir el funcionamiento y restaurar datos
perdidos después de la falla?X
Capacidad para ser entendido ¿El usuario comprende fácilmente como usar el sistema? X
Capacidad para ser operado ¿El usuario puede utilizar el sistema sin mucho esfuerzo? X
Capacidad de atracción ¿La interfaz se ve bien? X
Comportamiento del tiempo ¿Qué tan rápido responde el sistema? X
Utilización de recursos ¿El sistema utiliza los recursos de manera eficiente? X
SUMA 1 0 12 56 45
PROMEDIO
OBSERVACIONES
En la validación de usuario cuando no hay mucho intensidad de internet el Web Service devuelve un mensaje vacio
Se esperaba que al momento de aplastar la notificación esta lleve a la bandeja directamente
No se desarrollo controles a los errores que pasen en la mensajeria en cuanto a envio o recepción de mensajes
Al cambio de versión baja las palabras no aparecen centradas y los EditText salen de color negro
Mensajes
Funcionalidad
Fiabilidad
Utilidad
Eficiencia
4,071428571
REQUISITOEVALUACIÓN
La presente encuesta evalua la calidad del prototipo del SISTEMA DE NOTIFICACIONES Y MENSAJERÍA PARA DISPOSITIVOS MÓVILES
donde: (1-Malo) indica cuando el requisito no cumple con los requerimientos acordados(X=0%), (2-Regular) Cuando el requisito cumple en
mínima parte las expectativas(0%<X<=50%),(3-Bueno) Cuando el requisito cumple en la mayor parte de las expectativas pero no en su
totalidad(50%<X<100%),(4-Muy Bueno) Cuando el requisito cumple con las expectativas en su totalidad(X=100%) y (5-Excelente)Cuando el
requisito cumple más de lo que espera(X>100%), se solicita que conteste a las preguntas de manera objetiva, recuerde que esta
información es de uso académico
Teléfono móvil S.O Android version 4.1.2
Validación de
Universidad y
Usuario
Notificaciones
Funcionalidad
Fiabilidad
Utilidad
Eficiencia
Funcionalidad
Fiabilidad
Utilidad
PREGUNTASUBCARACTERÍSTICACARÁCTERÍSTICA
65
La Figura 48 muestra la encuesta realizada al segundo usuario de la
aplicación en el teléfono móvil Android versión 4.1.2 con su respectiva
evaluación.
Figura 48. Encuesta de la versión 4.1.2 al Usuario N°2
1 2 3 4 5
Adecuación ¿Puede el software desempeñar las tareas requeridas? X
Interoperabilidad ¿El sistema puede interactuar con otro? X
Seguridad de acceso ¿El sistema impide el acceso no autorizado? X
Tolerancia a los fallos ¿El software es capaz de manejar errores? X
Capacidad de recuperación¿Puede el software reasumir el funcionamiento y restaurar datos
perdidos después de la falla?X
Capacidad para ser entendido ¿El usuario comprende fácilmente como usar el sistema? X
Capacidad de atracción ¿La interfaz se ve bien? X
Eficiencia Comportamiento del tiempo ¿Qué tan rápido responde el sistema? X
Adecuación ¿Puede el software desempeñar las tareas requeridas? X
Exactitud ¿El resultado es el esperado? X
Interoperabilidad ¿El sistema puede interactuar con otro? X
Tolerancia a los fallos ¿El software es capaz de manejar errores? X
Capacidad de recuperación¿Puede el software reasumir el funcionamiento y restaurar datos
perdidos después de la falla?X
Capacidad para ser entendido ¿El usuario comprende fácilmente como usar el sistema? X
Capacidad para ser operado ¿El usuario puede utilizar el sistema sin mucho esfuerzo? X
Capacidad de atracción ¿La interfaz se ve bien? X
Comportamiento del tiempo ¿Qué tan rápido responde el sistema? X
Utilización de recursos ¿El sistema utiliza los recursos de manera eficiente? X
Adecuación ¿Puede el software desempeñar las tareas requeridas? X
Exactitud ¿El resultado es el esperado? X
Interoperabilidad ¿El sistema puede interactuar con otro? X
Tolerancia a los fallos ¿El software es capaz de manejar errores? X
Capacidad de recuperación¿Puede el software reasumir el funcionamiento y restaurar datos
perdidos después de la falla?X
Capacidad para ser entendido ¿El usuario comprende fácilmente como usar el sistema? X
Capacidad para ser operado ¿El usuario puede utilizar el sistema sin mucho esfuerzo? X
Capacidad de atracción ¿La interfaz se ve bien? X
Comportamiento del tiempo ¿Qué tan rápido responde el sistema? X
Utilización de recursos ¿El sistema utiliza los recursos de manera eficiente? X
SUMA 1 0 9 60 45
PROMEDIO
OBSERVACIONES
En la validación de usuario cuando no hay mucho intensidad de internet el Web Service devuelve un mensaje vacio
Se deberia poner un botón que muestre la contraseña
Diferentes colores en la interfaz y texto no centrado
No hay mensajes de error en la mensajeria en cuanto a envio o recepción de mensajes
Mensajes
Funcionalidad
Fiabilidad
Utilidad
Eficiencia
4,107142857
REQUISITOEVALUACIÓN
La presente encuesta evalua la calidad del prototipo del SISTEMA DE NOTIFICACIONES Y MENSAJERÍA PARA DISPOSITIVOS MÓVILES
donde: (1-Malo) indica cuando el requisito no cumple con los requerimientos acordados(X=0%), (2-Regular) Cuando el requisito cumple en
mínima parte las expectativas(0%<X<=50%),(3-Bueno) Cuando el requisito cumple en la mayor parte de las expectativas pero no en su
totalidad(50%<X<100%),(4-Muy Bueno) Cuando el requisito cumple con las expectativas en su totalidad(X=100%) y (5-Excelente)Cuando el
requisito cumple más de lo que espera(X>100%), se solicita que conteste a las preguntas de manera objetiva, recuerde que esta
información es de uso académico
Teléfono móvil S.O Android version 4.1.2
Validación de
Universidad y
Usuario
Notificaciones
Funcionalidad
Fiabilidad
Utilidad
Eficiencia
Funcionalidad
Fiabilidad
Utilidad
PREGUNTASUBCARACTERÍSTICACARÁCTERÍSTICA
Top Related