Página 1 de 4 Pontificia Universidad Javeriana Departamento de

Transcripción

Página 1 de 4 Pontificia Universidad Javeriana Departamento de
Pontificia Universidad Javeriana
Departamento de Ingeniería de Sistemas
Programación Orientada a Objetos
Proyecto 3
Sistema de Evaluaciones de materias.
El sistema gestiona las evaluaciones que presentan los estudiantes en una materia. Debe existir un
paquete de lógica y otro paquete de presentación. El siguiente diagrama de clases corresponde al
paquete de lógica:
Para este proyecto se solicita:
1. [10] La clase materia crea preguntas y la clase pregunta crea las opciones de dicha pregunta.
a. Se debe tener un archivo persistente de la materia, las preguntas y opciones, que se
debe cargar al iniciar el sistema en las clases respectivas.
b. Se debe implementar un método que imprima todas las preguntas y para cada
pregunta, todas las opciones con todos los atributos de cada clase.
2. [5] Crear un estudiante
a. Se debe solicitar desde el GUI el nombre y el código del estudiante
3. [15] Agregar una evaluación a un estudiante
Página 1 de 4
4.
5.
6.
7.
a. Se debe desplegar desde el GUI una lista con los códigos y nombres de los estudiantes
b. Se selecciona un estudiante de la lista anterior
c. Introducir el tipo de la evaluación: se debe mostrar una lista con los dos tipos de la
evaluación
d. Solicitar desde le GUI los atributos de la evaluación: número de la evaluación,
descriptivo de la evaluación (primer parcial, segundo parcial, primer proyecto, etc.); si es
un proyecto se solicitan la nota teórica y la nota de sustentación, de lo contrario se
inicializan dichos valores en 0.
e. Se crea la evaluación si no existe aún (el número identifica si la evaluación existe ó no) y
si no se supera el 100% en la suma de todas las evaluaciones del estudiante.
[20] Agregar ítem de una evaluación. El atributo “sobre” debe hacer referencia a una de las
preguntas que contiene la clase “Materia”.
a. Se debe desplegar desde el GUI una lista con los códigos y nombres de los estudiantes
b. Se selecciona un estudiante de la lista anterior
c. Se debe desplegar desde el GUI una lista con los números y descriptivos de las
evaluaciones que aplican para el estudiante seleccionado
d. Se selecciona una evaluación de la lista anterior
e. Se debe desplegar una lista con las preguntas de la clase materia que ya han sido
previamente cargadas
f. Se selecciona una pregunta de la lista anterior
g. Se solicita el valor de la respuesta del estudiante para dicha pregunta
[5] Remover Item de una evaluación:
a. Aplican los pasos a hasta el f del 4 (usted debería reutilizar código)
b. Se elimina el ítem y se despliega un mensaje de si fue posible ó no la eliminación.
[10] Modificar Item de una evaluación
a. Aplican los pasos a hasta el f del 4 (usted debería reutilizar código)
b. Se debe desplegar el valor actual de la respuesta de la pregunta seleccionada
c. Se solicita el nuevo valor de la respuesta del estudiante para dicha pregunta
d. Se actualiza el ítem y se despliega un mensaje de si fue posible ó no la actualización: Si
el valor de la respuesta está por fuera del rango permitido de opciones de la pregunta
no se podrá realizar la actualización.
[20] Calcular las definitivas de cada estudiante en el método CalcularNotasMateria de la clase
Materia. Para ello debe, Calcular la definitiva de un estudiante en el método CalcularDefinitiva
de la clase Estudiante
a. [10] Se debe implementar el método abstracto “calificar” de la clase abstracta
“Evaluacion”
i. La definitiva de una materia corresponde a la sumatoria de la calificación de
cada tipo de evaluación
1. Si el tipo de evaluación es un examen, la nota corresponde a la nota
teórica multiplicada por el porcentaje de la ponderación de la
evaluación.
a. La nota teórica de las evaluaciones de tipo examen corresponde
al valor total de puntos que se obtengan cuando contesta cada
ítem de la evaluación.
i. Un ítem tiene una pregunta y una respuesta del
estudiante, si dicha respuesta concuerda con el número
de opción correcto en la clase Opcion de la clase
Pregunta, se contabiliza el valor de la pregunta.
Página 2 de 4
2. Si el tipo de evaluación es un proyecto, la nota corresponde al promedio
entre la nota teórica y la nota de sustentación multiplicado por el
porcentaje de la ponderación de la evaluación.
a. La nota teórica y la nota de sustentación son asignadas por el
usuario.
b. [10] Se debe desplegar en una tabla los resultados de la calificación de cada estudiante,
la tabla debe llevar las siguientes columnas:
i. Nombre del estudiante
ii. Porcentaje total de evaluaciones presentadas
iii. Calificación definitiva del curso
iv. Si aprobó ó no aprobó (se pierde con un puntaje menor a 3.0).
8. [15] Implementar el método CalcularEstadisticasMateria de la clase Materia. Se debe:
a. Imprimir el número de evaluaciones que presentó cada estudiante
b. Imprimir el nombre y la nota del mejor y peor estudiante.
c. El número de estudiantes que perdieron y que pasaron la materia
d. Imprimir la nota media del grupo
1. Fecha
La entrega se hace a través del buzón de transferencia digital del sistema de aprendizaje UVirtual
(BlackBoard) a más tardar el día 30 de mayo de 2008 hasta las 23h59 p.m.
•
•
Entregas posteriores a esta fecha no serán tenidas en cuenta.
Si realiza varias entregas en el sistema, sólo se tendrá en cuenta la primera entrega.
2. Grupos
La entrega se realizará en grupos de trabajo de máximo 2 personas. Los grupos no podrán cambiar su
conformación y desde el comienzo dichos grupos estarán identificados plenamente.
3. Entregables
• Archivo .zip con el código fuente de las clases
• Archivo .jar con el código ejecutable del programa
4. Observaciones
• Se reducirán puntos por malas prácticas de programación:
o código “quemado”. Por ejemplo usar valores constantes en donde no se deba.
o No utilización de los criterios de asignación de responsabilidades a las clases
• El diagrama de clases y la implementación deben ser concordantes.
• Si no hay código, la nota corresponderá a 0.0
• SUSTENTACION INDIVIDUAL: en caso de no ser exitosa la sustentación, se reconocerá el 20% del
total obtenido.
• Si no se entrega el archivo .jar no se calificará la entrega.
Página 3 de 4
•
Cada clase deberá ser debidamente documentada y deberá aparecer el nombre completo de los
autores
5. Restricciones
•
•
•
La lógica y la presentación deben estar separadas.
o Se deben leer datos en la presentación y procesarlos en la lógica de negocio
o Toda la creación y procesamiento de objetos debe realizarse en la lógica pasando los
parámetros necesarios desde el GUI
Para las colecciones no use arreglos []
Solo se calificarán puntos que tengan la presentación y la lógica completas
Criterios de Evaluación
Criterio
Valor
Punto 1
Punto 2
Punto 3
Punto 4
Punto 5
Punto 6
Punto 7
Punto 8
Total
Obtenido
10
5
15
20
5
10
20
15
100
Página 4 de 4

Documentos relacionados