|
The constant changes we are undergoing in the technological
sphere, and the need of the UOC
to keep abreast of them, forced the technological strategy
team to consider during the year 2000 the need to reflect
on the UOC's technological model.
Hence, an overall analysis has been performed, together with
the GARTNER GROUP. Among other conclusions, the report suggested
that a rethinking of the technological model of development
was needed.
First of all, some proposals were made in order to find out
the methodology to use
for the developments, the language
and the architecture
of applications. Next, these were identified and a proposal
was put forward regarding which of the components made up
the basic core which is shared among UOC
applications, and a brief description of each was given.
At present, the new educational Intranet (i-Campus) has led
to the re-writing of 80% of the code. After the implementation
of the Intranet, the evolution of the technological model
will depend on the changes that may be necessary of the parts
that make up the new cluster of services.
Methodology of Development
Given the complexity of many of the applications being developed
by the UOC, the design
stage was crucial to development. Hence a special effort has
been necessary at this stage. There are various technical
teams working on and developing software at the UOC.
They have had to compile their solutions in order to provide
an integral service to the user. The fact that they share
methodology and design tools has facilitated this integration.
Among the objectives to be taken into consideration in any
software-construction project, re-use,
quality and productivity
are obvious ones. Object-oriented development facilitates
the attainment of those objectives; hence we propose the adoption
of a methodology which has facilitated object-oriented technology.
UML*
is a language for specifying, constructing and documenting
the items making up a software system. In addition, it allows
for the modelling of business, as well as of other systems.
In order to facilitate the incorporation of UML into the
work of the UOC, we launched
two activities: on the one hand, we included knowledge about
UML in the basic training programme for the UOC
development teams; on the other, we chose the specific tools
which will be made use of:
| |
 |
Rational Rose
for UML design |
| |
 |
Oracle's Designer
for the entity-relationship schemes |
Language of Development
When analysing the possibilities in development languages,
current trends and the market point firmly in the direction
of Java*.
This language has the advantage of allowing for an object-oriented
programming* while contributing with two further features:
on the one hand, the concept of virtual machine, making us
independent from server systems, and, on the other, its development
platform, which contributes with some parts which can be re-used
(entry/exit, network, graphics, safety, etc.).
Application Architecture
A robust and well-distributed architecture was needed in order
to provide Internet services in a flexible way. To support
this type of architectures, the market is currently offering
application
servers*, most of which are now converging into the Java
2 Enterprise Edition (J2EE), which supports servlets*
and Enterprise
Java-Beans * (EJB). EJB's component model, as proposed
by Sun and with the support of most software vendors, is now
the standard component model for Java, and will probably end
up simplifying in a big way the construction of business transactional
applications*.
As to which is the most advisable of the application servers
at present on the market, a decision was delayed until the
moment came to start to develop, so as to see the evolution
of products.
The basic aspects which were taken into account in the selection
of one of the current products were the following
| |
 |
Design and maturity of the
core of the applications server. |
| |
 |
Scalability. |
| |
 |
Error tolerance. |
| |
 |
Administration and monitoring. |
| |
 |
Adaptation to standards. |
| |
 |
Development tools. |
| |
 |
Integration into the tools
of third parties. |
| |
 |
Ability to connect with other
systems. |
| |
 |
Time to market. |
| |
 |
Support. |
| |
 |
Solidity. |
| |
 |
Cost. |
| |
 |
Contact with the supplier. |
Logic of Business Components
In this section we reviewed the various technological components
of the UOC services which needed to be shared among all services.
This collection of components of the first level of re-use
were sorted according to typology in the following diagram:
| |
Put the mouse
on every item to see the description.
|
|
|
|