Y a continuación les comento mi problema.
Estoy modelando una Base de Datos para una universidad. El alcance de la aplicación es jodidamente amplio por lo que lo he separado en módulos. Uno de esos módulos contempla todo el proceso del manejo de calificaciones.
Si me pongo estricto con las reglas de normalización, al final, la tabla de calificaciones debería almacenar una calificación (un valor) por registro, y mediante las claves externas se sabría a qué alumno pertenece, en que materia, que evaluación es, que periodo, que carrera, etc, etc,.
No lo represento con un ejemplo porque mi duda es más bien general sobre qué hacer en estos casos. Si creo la tabla a como se supone debe ser creada (aplicando normalización), esa tabla almacenaría demasiado valores, (calificacion X total de unidades X total de alumnos X total de grupos X total de carreras X total de peridos X todos los ciclos... etc).
La anterior base de datos (la que ya estaba cuando yo llegué) tenía una tabla de calificaciones para cada alumno, a manera de "boleta" es decir, no había normalización y los campos, por tanto eran repetitivos:
calif1_parcial1, calif2_parcial1... calif1_parcial3, califN_parcialN...
¿Cómo ven? ¿de cual forma me recomiendan modelar esa BD?
El manejador que utilizaré es SQLServer 2008.
Un saludo.