|
El cambio constante que estamos viviendo en el ámbito
de la tecnología y la necesidad de la UOC
de mantenerse al día conllevaron, durante el año
2000, una nueva reflexión sobre el modelo
tecnológico de la UOC por parte del equipo de
estrategia tecnológica.
De ahí que se realizara un análisis global
del tema y que, conjuntamente con el Grupo Gartner, se indicara,
entre otras conclusiones, el interés de hacer un replanteamiento
del modelo tecnológico de desarrollos.
Para ello, se hicieron propuestas sobre cuál debía
ser la metodología
utilizada por los desarrollos, el lenguaje
y la arquitectura de
las aplicaciones. También se identificaron y propusieron
los componentes que forman el núcleo básico
compartido entre las aplicaciones de la UOC.
Actualmente, la nueva intranet educativa (i-Campus), ha comportado
escribir de nuevo el 80% del código. Después
de la implementación, la evolución del modelo
tecnológico irá en función de los cambios
necesarios en las piezas que forman el nuevo grupo (cluster)
de servicios.
Metodología de desarrollo
Dada la complejidad de muchas de las aplicaciones que se desarrollan
en la UOC, la etapa de
diseño fue muy importante para su desarrollo. De ahí
que fuera necesario hacer un esfuerzo especial en esa etapa
concreta. En la UOC hay
diferentes equipos de técnicos que desarrollan software
y que han unido sus soluciones para dar un servicio integral
al usuario. El hecho de compartir la metodología y
las herramientas de diseño facilitó su integración.
En cualquier proyecto de construcción de software
se deben tener en cuenta diferentes objetivos: la reutilización,
la calidad y la productividad.
El desarrollo orientado a objetos facilita la consecución
de esos objetivos, de ahí que se propusiera la adopción
de una metodología que facilite la tecnología
orientada a objetos.
El UML* es un
lenguaje para especificar, construir y documentar los artefactos
que componen un sistema de software y que permite además
el modelado de negocio y de otros sistemas.
Para facilitar la incorporación de UML al trabajo
de la UOC se iniciaron
dos acciones. Por un lado, se incluyeron los conocimientos
de UML en la formación básica de los técnicos
de los equipos de desarrollo de la UOC
y, por otro, se eligieron las herramientas concretas que se
utilizarán para ello:
| |
 |
Rational Rose
para el diseño UML. |
| |
 |
Designer d'Oracle
para los esquemas entidad-relación. |
Lenguaje de desarrollo
Al analizar las posibilidades de los lenguajes de desarrollo
dentro del mercado, las tendencias actuales marcan una neta
inclinación hacia Java*.
Éste tiene las ventajas de permitir una programación
orientada a objetos* a la vez que aporta dos valores más:
el concepto de máquina virtual, que nos independiza
de los sistemas servidores, y su plataforma de desarrollo,
que aporta partes susceptibles de ser reaprovechadas (entrada/salida,
red, gráficos, seguridad, etc.).
Arquitectura de las aplicaciones
La necesidad de lograr una arquitectura robusta y distribuida
para dar servicios en Internet de forma flexible es una evidencia.
Actualmente, para soportar este tipo de arquitecturas, el
mercado nos ofrece los servidores
de aplicaciones*. En la actualidad la mayor parte de los
servidores de aplicaciones están convergiendo hacia
al modelo de Java 2 Enterprise Edition (J2EE) que soporta
servlets*
y Enterprise
Java-Beans* (EJB). El modelo de componentes de EJBs, propuesto
por Sun, y con el apoyo de la mayoría de vendedores
de software, es ya el modelo estándar de componentes
para Java, y probablemente conseguirá simplificar en
gran medida la construcción de aplicaciones
transaccionales* empresariales.
En el momento de elegir cuál de los servidores de
aplicaciones existentes en el mercado es más aconsejable,
los aspectos básicos que marcaron la selección
de uno de los productos actuales fueron los siguientes:
| |
 |
Diseño y madurez del
núcleo del servidor de aplicaciones. |
| |
 |
Escalabilidad. |
| |
 |
Tolerancia a errores. |
| |
 |
Administración y monitorización. |
| |
 |
Seguimiento de estándares. |
| |
 |
Herramientas de desarrollo. |
| |
 |
Integración con herramientas
de terceros. |
| |
 |
Conectividad con otros sistemas. |
| |
 |
Tiempo de acceso al mercado. |
| |
 |
Apoyo. |
| |
 |
Solidez. |
| |
 |
Coste. |
| |
 |
Contacto con el proveedor. |
Lógica de componentes de
negocio
En este punto se analizaron los diferentes componentes tecnológicos
de los servicios de la UOC
que se tienen que compartir entre todos los servicios.
El conjunto de componentes de primer nivel de reutilización
está ordenado según su tipología en el
siguiente gráfico:
| |
Pasa el ratón
por encima de cada componente para ver su descripción.
|
|
|
|