Actualmente el software tiene una arquitectura monolítica, es decir, consta
básicamente de un solo producto que ofrece toda la funcionalidad necesaria,
aunque dentro de este producto se pueden distinguir distintas unidades
funcionales que a continuación describimos.
Pretendemos, en la siguiente fase del proyecto, dividir el software en
varios productos independientes con un interfaz definido que les permita
comunicarse, de este modo dispondremos de diversos componentes reutilizables
fácilmente en otros proyectos.
Las unidades funcionales del sistema son:
- Calendario académico (esta es la única unidad actualmente implementada
como un producto independiente). Básicamente permite definir el comienzo y
final de un curso académico (o año laboral, etc..), días festivos, periodos
especiales (vacaciones, clases, exámenes, etc..) y provee un API para
realizar diversas consultas.
- Colecciones de asignaturas. Una asignatura reune información diversa:
la ficha (descripción, metodología, etc..), su horario, etc.. Una colección
de asignaturas proporciona interfaces para la edición de calendarios de
exámenes y horarios.
- Titulación. Una titulación contiene una colección de asignaturas,
normalmente organizadas por cursos, además de información general de la
titulación.
La razón de que las colecciones de asignaturas sean independientes se debe
a que en ocasiones se precisa tener ``sacos'' de asignaturas, por ejemplo
asignaturas de libre elección ofrecidas por un departamento a todas las
titulaciones de una universidad.
- Espacios físicos. Una colección de aulas, laboratorios y otros espacios
físicos, con interfaces web para gestionar su ocupación, realizar consultas y
hacer reservas, y un API ofreciendo servicios similares a otros módulos.
- Usuarios. Una colección de usuarios, cada usuario tiene un conjunto
de perfiles: estudiante, profesor, director de titulación, etc.., cada
perfil le permite realizar diferentes operaciones, por ejemplo un estudiante
puede realizar la reserva de los grupos de prácticas y un director de
titulación puede editar los horarios de la titulación que dirige.
El software en su conjunto puede ser utilizado en otras instituciones,
pero además, gracias a su arquitectura modular, sus componentes aislados
podrán reutilizarse en otras aplicaciones.
Siguiente: Desarrollos futuros
Superior: Un sistema de información
Anterior: Tecnología utilizada... y un
Download this document: [src.tar.gz][ps.gz][html.tar.gz][dvi.gz]
Congreso HispaLinux 2000