Download Diapositiva 1 - Repositorio ESPOL

Document related concepts
no text concepts found
Transcript
ESCUELA SUPERIOR POLITÉCNICA DEL LITORAL
FACULTAD DE INGENIERÍA EN ELECTRICIDAD Y COMPUTACIÓN
PROYECTO DE GRADUACIÓN
“MÓDULO WEB PARA LA CALIFICACIÓN AUTOMATIZADA
DE TAREAS DE PROGRAMACIÓN”
PRESENTADA POR:
DANNY OMAR PINOS SOLANO
WALTER IVAN UZCA SORNOZA
AGENDA:
•
•
•
•
•
•
•
•
•
Definición del Problema
Objetivos de la Tesis
Investigación realizada
Modelo de evaluación
Implementación de la aplicación
Video de la aplicación
Evaluación de la aplicación
Conclusiones y Recomendaciones
Preguntas
Definición del Problema
• Metodología de calificación de tareas de
programación.
• Número de estudiantes por cada paralelo.
Objetivos de la Tesis
• Automatizar el proceso de calificación de tareas
de programación.
• Implementar un sistema que se encargue de la
automatización.
• Verificar la usabilidad del sistema.
Investigación
• Modelo de desarrollo.
• JAVA, C#, C++.
• Interfaz.
• Métodos de calificación.
• Archivos por lotes.
Modelo de Evaluación
• Publicación de tareas.
•
•
•
•
•
Compilación de archivo ejemplo.
Generación de plantilla del archivo de casos de prueba.
Compilación del archivo de casos de prueba.
Validación del archivo de casos de prueba.
Calificación del archivo de ejemplo.
• Respuesta de tareas.
• Compilación del archivo de respuesta.
• Compilación del archivo de casos de prueba.
• Calificación del archivo de respuesta.
Procesos de publicación y respuesta
• Compilación de archivo ejemplo ó de respuesta
y generación de plantilla de archivo de casos de
prueba.
Archivo de ejemplo se guarda en servidor
Archivo Ejemplo ó
Respuesta del
estudiante
BD
Solicita datos
lenguaje
Recibe Información
lenguaje
Envia archivos y
requerimiento
Devuelve resultados
Invoca a este archivo
Ejecuta
Server (Pagina
.java)
Finaliza
Proceso .bat
Ejecuta
SCAT_Operaciones
Lenguaje
Llama a compilar ejemplo ó
respuesta
INTERNET
Envía petición y
archivo ejemplo
Visualiza resultados
Navegador
Cuando finaliza lee los
archivos para verificar
errores
Generan
archivos .txt
Archivos .txt (contienen resultados
del proceso y/o archivo plantilla de
casos de prueba)
Repositorio de
archivos
funcionales
Procesos de publicación y respuesta
• Compilación del archivo de casos de prueba.
Archivo de casos de prueba se guarda en servidor
Archivo Casos de
Prueba
Archivo de Ejemplo
BD
Solicita datos
lenguaje
Envia archivos y
requerimiento
Devuelve resultados
Recibe Información
lenguaje
Invoca estos archivos
Ejecuta
Server (Pagina
.java)
Finaliza
Proceso .bat
Ejecuta
SCAT_Operaciones
Lenguaje
Llama a compilar casos de prueba
INTERNET
Envía petición y
archivo de
Casos de prueba
Visualiza resultados
Navegador
Cuando finaliza
lee los archivos para
verificar errores
Generan
archivos .txt
Archivos .txt (contienen resultados
del proceso)
Repositorio de
archivos
funcionales
Procesos de publicación y respuesta
• Calificación del archivo ejemplo ó archivo de
respuesta.
Archivo Casos de
Prueba
Archivo de Ejemplo
Interface SCAT
BD
Solicita datos
lenguaje
Recibe Información
lenguaje
Envia requerimiento
Devuelve resultados
Invoca estos archivos
Ejecuta
Server (Pagina
.java)
Finaliza
Proceso .bat
Ejecuta
SCAT_Operaciones
Lenguaje
Llama a compilar casos de prueba
INTERNET
Envía petición
Visualiza resultados
Navegador
Cuando finaliza
lee los archivos para
verificar errores
Generan
archivos .txt
Archivos .txt (contienen resultados
y calificación de la tarea)
Repositorio de
archivos
funcionales
Implementación de la aplicación
• Web 2.0
• AJAX (JavaScript y XML asíncronos)
• Aplicaciones interactivas
• Basado en estándares
• Usabilidad
• JSF
• Arquitectura MVC
• Simplicidad
• Multiplataforma
Video de la aplicación
Video
Evaluación de la aplicación
• Objetivo: Apreciar la usabilidad de nuestra
aplicación. Evaluar atributos tales como:
• Operabilidad.
• Control de usuario.
• Diseño de interfaz.
• Cuestionario.
• 10 estudiantes.
Evaluación – Resultados
• Operabilidad:
• Acciones básicas fáciles de encontrar.
• Navegar dentro de la aplicación fue sencillo.
• Control de Usuario:
• Aplicación fácil de usar.
• Interfaz adecuada pero no la más óptima.
• Diseño de Interfaz:
• Aceptabilidad de alrededor del 70% en relación al tipo de letra,
íconos utilizados y distribución de la información.
Conclusiones
•
Puede ser utilizado como un sistema de interacción entre el
alumno y el profesor, para publicar tareas de programación y
que sean calificadas en línea cuando el estudiante conteste su
tarea.
•
Se logró automatizar el proceso de calificación gracias a las
aplicaciones distribuidas y a los conceptos que se aplican en los
lenguajes de programación de alto nivel.
•
Concepto de polimorfismo fue muy importante, a partir de esto
se diseño un archivo el cual contiene a los principales métodos
para poder calificar las tareas de programación.
•
El uso de archivos por lotes fue muy útil para la ejecución de
procesos, en nuestro caso para los procesos de compilación y
calificación.
•
Se implementó la solución para el proceso de calificación de
tareas, se pueden seguir adicionando lenguajes, siempre y
cuando estos cumplan con un concepto similar al polimorfismo.
Recomendaciones
•
Debido a que este es un sistema de interacción entre alumno y
profesor se lo podría utilizar en otros colegios o universidades.
•
Mantener el concepto de cliente de servidor para utilizar las
ventajas de fácil mantenimiento y menos costos al momento de
hacer una actualización a la aplicación.
•
Seguir explotando los conceptos que nos ofrecen los lenguajes
de alto nivel para seguir automatizando procesos y liberar carga
a los actores de los diferentes sistemas creados y a los nuevos
que puedan aparecer.
•
Se podría diseñar un módulo para que verifique la posibilidad de
copia entre las tareas entregadas por los estudiantes.
Preguntas
Muchas Gracias por su atención.
¿Preguntas?