Gracias por tu respuesta huesos52
Y cómo harías (específicamente), la representación de que un profesor podría ser un coordinador y un director de área? O cómo manejarías que un estudiante puede ser personero o monitor?
Pienso que representar todos esos roles y/o tipos en tablas apartes me generaría complejidad a la hora de realizar las consultas y a la hora de generar reportes de un curso o de un área.
Dices que con postgres se podría hacer. Tienes un ejemplo? En dado caso, estudiaría la posibilidad de crear la DB con ese motor. Por ahora ando mirando en MySql.
[offtopic]
La verdad es que el trabajo me tiene refull, por lo que no he vuelto con la misma intensidad de antes

Y más ahora que es final de año, el sector educativo es un caos.
[/offtopic]