Sistema de “tutorías virtuales” en la U.V. basado en Linux

Linux Expo 2000

-Madrid-

Pedro Morillo Tena (UV-I.Robótica)

Marcos Fernández (UV-I.Robótica)

Índice Presentación :

- Motivación y objetivos

- Consideraciones generales

- Requisitos Usuario. Especificaciones

- Análisis Sistema

- Diseño Sistema. Cliente/Servidor

- Implementaciones. Cgi, Applet, RMI, ...

- Resultados

- Conclusiones y Trabajo Futuro

Motivaciones

- Universidad Virtual

- Imposibilidad de accesos a campus
  - Geográficos
  - Laborales
  - Ambientales
- Secretaría Virtual + Gestor Videoconferencia +Tutorías Virtuales

- Problemática de la U.V.:
  - Campus Distribuidos
  - N.P.E.

- Java como lenguaje en Internet

Requisitos Usuario. Especificación Sistema

Requisitos de usuario: Procedimiento encuestas

.Aplicación corriendo sobre Internet

- Visualización con navegadores típicos actuales

- Sin necesidad de lanzamientos de plug-ins adicionales

- No lanzamiento de cookies

- Al menos en computadores con conexión RTB

Funcionalidad ejemplo:

Asignatura: Gestión de Bases de Datos
Fecha: 23/4/98
Usuario: Silvia Quesada Sesmero
Identificador pregunta: 21
Pregunta: ¿Es Postgress una base de datos orientada a objeto?
Respuesta:
Realmente no, pese a que incorpore ciertos mecanismos que le ofrezcan una apariencia de orientación a objetos hemos de catalogarla
como Base de Datos Relacional Extendida.

Comentario 1 - Jose Serrano -

Pero, nosotros en prácticas hemos trabajado heredando tablas y hemos hechos referencias a OID’s. ¿Cómo es eso?

Comentario 2 - J.J Relaño –

Es por eso que sigue siendo relacional, aun continua con la idea de tabla y no admite notación “punto” como Poet o Versant.

Objetivos principales

- Puesta en marcha de un SGTV en UV

- Verificación-comparativa servidores de grandes aplicaciones multiusuario en red: Linux-Irix.

- Ilustración, V/I, de los 3 mecanismos principales de implementación en Java.

- Estudio de la división de los E.P. de aplicaciones Java en subsistemas distribuidos en red.

- Verificar el “performance” de JDBC.

Conceptos y Consideraciones

Cliente-Servidor, Arquitectura de sistema

- Paradigma real de SSDD

- Aparece Servidor Objetos

- Descarga a Cliente/Servidor y Red

- Liberación tipo almacén físico

- Mejor logística, seguridad (por bajos bloqueos) y eficiencia

Arquitectura a Banda (tiers):

Clientes+Servidores(Obj. +Inf.)

1-tier

- Más antiguo (‘80)

- Toda carga en servidor

- Terminales “tontos”

- Mala escalabilidad

2-tier

- Nacimiento real C/S

- >Repartición de carga

- Bloqueos.

- No SSDD

3-tier

Especificaciones del sistema

- Consulta al SGTV

- Búsqueda temas publicados
  - Búsqueda exhaustiva
  - Búsqueda por ítems

- Realización de comentarios

- Visualización profesores guardia

- Consulta al SGTV

- Respuesta a preguntas por e-mail

- Borrado respuestas descatalogadas

- Búsqueda temas publicados
  - Búsqueda exhaustiva
  - Búsqueda por ítems

- Realización de comentarios

- Aplicación C/S sobre TCP/IP siguiendo protocolo http

- Cualquier tipo de cliente (PC laboratorio, casa, Ws,..)

- Sin restricciones a priori para el servidor

- 2 tipos de usuarios

- Interfaz de entrada común para todo tipo de usuario

Materiales y Métodos

- Dependencia de la disponiblidad
  - P350 y 64 MB RAM con Linux Red Hat 5.1 y servidor Apache.
  - PMMX 250 y 128 MB RAM con WNT 4.0 Server y servidor IIS.
  - Silicon Graphics O2 con 64 Mb y servidor Netscape Fastrack 2.13.
- Elección motivos:
  - Novedad académica
  - Coste
  - Licencias de uso
  - Portabilidad hacia el proyecto piloto

Sistema y servidores

Gestor Base de Datos

- Elección MiniSQL 2.0 de Hughes Technologies
  - Coste 0 en desarrollo
  - Empleo de ANSI-SQL
  - Seguridad Look-up host

- Soporte de hasta 214 usuarios

- Alta portabilidad por fuentes

- Drivers ODBC y JDBC conexión

Análisis y Diseño

Decisiones

- Organización de subsistemas en secuencias

Disposición híbrida

partición vertical y

horizontal

1/2

Análisis OMT. Rumbaugh:

- Modelo de objetos
- Modelo dinámico
- Modelo funcional

- Distribución en estrella
  - Presencia de core
  - Existen subsistema inherentemente
    concurrentes
  - Pese a ello, no consideración de hilos

Diapositiva PPT

- Modelo entidad-relación:

Decisiones

2/2

Análisis y Diseño

Base de datos relacional

Implementación 1. Cgi´s

- Configuración servidor web
  - Tipología y scripts
  - Directorio de ejecución
  - Directorio de acceso restringido
    - REMOTE_USER

- Envío de mail siguiendo protocolo SMTP

- Forms de html. POST
  - Variables
  - Codificación URL
  - Procesamiento

- Modo trabajo base de datos

Requisitos desarrollo:

1/2

Implementación 1. Cgi´s

Esquema de funcionamiento:

2/2

Implementación 2. Applet

Requisitos desarrollo:

- Balance de cargas
  - Navegador cliente.
    <APPLET CODE= nombre_de_clases.class></APPLET>
  - Funcionalidad del servidor web minimalista
    - Servidor en escucha por puerto 1114

- Metodología de aplicación basada en paneles y cards

- Empleo de AWT 1.1

- Modo de trabajo de Base de Datos

1/2

Implementación 2. Applet

Esquema de funcionamiento

2/2

Implementación 3 . RMI

- Elección del subsistema de seguridad. Jcript()

- Sistemas distribuidos
  - Componentes
  - RMI y CORBA

- Proceso y metodología

Resultados

Resultados temporales (servicios):

1/4

Tiempos de operaciones (ms) “cgi” vs “applet”

Tiempos (ms) de accesos remotos

Linux Red Hat 5.1

Linux Red Hat

Apache 1.3.1

Apache 1.3.1

Resultados

2/4

Tiempos de operaciones (ms.)

Resultados temporales (servidores):

Comparativa-migración servidor aplicaciones

Implementación 1:

Resultados

- Servicio de SGTV en la Universidad de Valencia.

- Dirigido a : Conjunto restringido de asignaturas de titulaciones:

Ingeniería Informática Ingeniería Técnica en Telecomunicaciones.

- Servidor: Pentium 550 Mhz, 128 MB SDRAM

- Oferta de implementaciones.

3/4

Vista implementacion 1(“Cgi-Linux”)

Vista implementacion 2(“Applet-Linux”)

Proyecto Piloto:

Resultados

4/4

Tabla de acceso a implementaciones

Tiempos (ms) de accesos remotos

Número de cuentas abiertas: 206

- Alummos: 189

- Profesores: 17

Asignaturas: 19

P: nº preguntas

R: nº respuestas

C: nº comentarios

Consultas al servidor:

Conclusiones finales

- Puesta en marcha de un SGTV en la UV para 99-00

- Implementación sistema atendiendo a 3 esquemas C/S

- Configuración exitosa de un servidor web para ejecución cgi con java

- Desarrollo aplicación usuario multiventana con AWT 1.1

- Extrapolación resultados para V/I

- Demostrar parcialización en subsistemas distribuidos

- Dotar de seguridad Linux-UNIX (DES) a un applet

- Mostrar idoneidad BdD relacional e interfaz JDBC a bajo coste (POSIX)

Trabajo futuro

- Ampliación del SGTV:
  - Fase 2: Plan de estudios Campus Ciencias.
  - Fase 3: Resto plan de estudios de la UV.

- Modificar el esquema de entorno distribuido para tareas críticas. C++ - Corba.

- Migración del esquema físico hacia BdD orientadas a objetos.

- Búsqueda, del posible punto inflexión en la ganancia del entorno distribuido.