Download sustentacion Tesis Pinos
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?