El documento describe la arquitectura del Campus Virtual de la Universidad Complutense de Madrid (UCM). Originalmente utilizaba una sola plataforma de aprendizaje en línea, pero ahora usa dos plataformas integradas. La arquitectura sigue un diseño multicapa y aplica patrones de diseño. El despliegue incluye aplicaciones para carga de datos, gestión e integración de plataformas. El objetivo es favorecer la mantenibilidad y evolución hacia arquitecturas orientadas a servicios e independientes de plataformas.
1. Arquitectura de un Campus
Virtual Multiplataforma
Antonio Navarro
Dpto. Ingeniería del Software e
Inteligencia Artificial
Universidad Complutense de Madrid
anavarro@fdi.ucm.es
eMadrid: Infraestructuras Corporativas para
1
e-learning
2. Índice
• Introducción
• Arquitectura software
• Diseño detallado
• Arquitectura de despliegue
• Conclusiones
• Trabajo futuro
eMadrid: Infraestructuras Corporativas para e-learning 2
3. Introducción
• Universidad Complutense de Madrid (UCM)
– Universidad presencial más grande de España
– Curso 2010-2011
• 84.000 alumnos
• 6.300 profesores
• 4.600 PAS
• 274 títulos oficiales
• 187 departamentos
eMadrid: Infraestructuras Corporativas para e-learning 3
4. Introducción
• En el curso 2003-2004 se puso en marcha el
Campus Virtual UCM (CV UCM)
– 3.500 estudiantes
– 200 profesores
– 90 cursos
• Actualmente (uso voluntario):
– 75.000 estudiantes (89% de la UCM)
– 4.200 profesores (67% de la UCM)
– 22.500 cursos
eMadrid: Infraestructuras Corporativas para e-learning 4
5. Introducción
• División de responsabilidades:
– Sistemas Informáticos UCM:
• Hardware
• Despliegue de los entornos de ejecución
• Despliegue plataformas e-learning
– Unidad de Apoyo Técnico y Docente (UATD CV)
• Selección de las plataformas e-learning
• Desarrollo y despliegue del software del CV
eMadrid: Infraestructuras Corporativas para e-learning 5
6. Introducción
• Originalmente el CV UCM
– Una plataforma e-learning: WebCT 4.0
– Una aplicación de carga de datos
– Una aplicación de gestión:
• Usuarios (e.g. cambiar contraseña)
• Cursos (e.g. fusión de asignaturas)
eMadrid: Infraestructuras Corporativas para e-learning 6
8. Introducción
• Actualmente:
– Dos plataformas e-learning: Moodle 1.9 y Sakai
2.8
– Una aplicación de carga de datos
– Una aplicación de gestión
• Usuarios
• Cursos
– Una aplicación que permite mostrar los cursos de
un usuario de manera integrada
– Validación: LDAP
eMadrid: Infraestructuras Corporativas para e-learning 8
9. Arquitectura original CV UCM (2008/2009-actualidad)
eMadrid: Infraestructuras Corporativas para e-learning 9
11. Introducción
• Esta presentación describe:
– La arquitectura software del CV UCM
– El diseño del CV UCM
– La arquitectura de despliegue del CV UCM
• Basada en: Navarro A., Cristóbal J. Fernández-
Chamizo C., Fernández-Valmayor A.
Architecture of Multiplatform Virtual Campus.
Sofware: Practice and Experience
DOI: 10.1002/spe.1130
eMadrid: Infraestructuras Corporativas para e-learning 11
12. Arquitectura Software CV UCM
• Aplicación de carga de datos
Aplicación carga de datos UCM CV
eMadrid: Infraestructuras Corporativas para e-learning 12
13. Arquitectura Software CV UCM
• Aplicación de gestión
Aplicación de gestión. Gestión de cursos
eMadrid: Infraestructuras Corporativas para e-learning 13
14. Arquitectura Software CV UCM
• Integración de plataformas
Aplicación de integración de plataformas
eMadrid: Infraestructuras Corporativas para e-learning 14
15. Diseño CV UCM
• El diseño sigue una arquitectura multicapa
• Catálogo de Alur, Crupi y Malks
(http://www.corej2eepatterns.com/)
• Catálogo con 21 patrones
• Hemos aplicado una arquitectura multicapa
simplificada
eMadrid: Infraestructuras Corporativas para e-learning 15
16. Diseño CV UCM
• Capa presentación
– Controller (mezcla de front y application controller
al estilo Struts)
• Capa de negocio
– Application Service
– Transfer
• Capa de integración
– DAO
– TransactionManager (parte de Domain Store)
eMadrid: Infraestructuras Corporativas para e-learning 16
17. Diseño CV UCM
• Integración de plataformas
Detalle clases aplicación integración plataformas
eMadrid: Infraestructuras Corporativas para e-learning 17
18. Diseño CV UCM
• Capa de recursos
– MySQL 5.1
– Más de 70 tablas
Espacio potencial
eMadrid: Infraestructuras Corporativas para e-learning 18
19. Despliegue CV UCM
• Aplicación de carga de datos
Despliegue aplicación carga de datos
eMadrid: Infraestructuras Corporativas para e-learning 19
20. Despliegue CV UCM
• Despliegue aplicación de gestión
Despliegue aplicación gestión. Gestión de cursos
eMadrid: Infraestructuras Corporativas para e-learning 20
22. Conclusiones
• Campus virtuales son complejas aplicaciones
• Hemos elegido esta arquitectura para
favorecer la mantenibilidad y evolución
• Problema la separación de responsabilidades
• Presencia incipiente de servicios web RESTful
• Fundamental: gestión de datos
– Separación de bases de datos
– Carga
– Transacciones
eMadrid: Infraestructuras Corporativas para e-learning 22
23. Trabajo futuro
• Campus virtual independiente de plataforma
• Incorporación del CV UCM en el entorno de la
UCM
• Uso de frameworks
• Arquitectura orientada a servicios
– SOAP
– RESTful
• Arquitectura dirigida por eventos
eMadrid: Infraestructuras Corporativas para e-learning 23
24. Arquitectura de un Campus
Virtual Multiplataforma
Antonio Navarro
Dpto. Ingeniería del Software e
Inteligencia Artificial
Universidad Complutense de Madrid
anavarro@fdi.ucm.es
eMadrid: Infraestructuras Corporativas para
24
e-learning