Experiments will be achieved within the
ProActive framework, a 100% Java and Open Source library
offering crucial features for hierarchical components:
o creation of remote active objects,
o asynchronous calls with transparent futures, and wait-by-necessity,
o mobility of active objects with automatic forwarding of request and reply.
Note that asynchronous communication is a decisive feature if we want components to actually compose;
synchronous interactions would lead to overly coupled components, prone to frequent deadlocks.
Wait-by-necessity (see a description here),
will provide automatic and data-flow synchronization between the components being composed.
Mobility will elegantly furnish a model and a mean for dynamic re-deployment of components on the Grid.
The ProActive
library is itself extensible by the programmers, making the system open for adaptations and
research experimentations.
To get an idea of a graphical tool for monitoring and steering distributed and Grid applications, see the
IC2D: Interactive Control and Debugging of Distribution
environment.
ProActive is part of an
open source software community created at the end of 1999:
The ObjectWeb Consortium.
Interaction with the activity of the consortium is expected
(sharing of principles and code base, meeting at the European level, etc.).
This work will also contribute to a major international effort to define and develop a
broadly based Integrated Grid Architecture: the Global Grid Forum (GGF).
To summarize, the general objective of this research will be to:
propose, define and, experiment flexible and safe mechanisms
to build and use hierarchical components for the Grid.
Defined within an active object framework, a component will be one or several active objects
equipped with a standard description. Then, tools will allow to compose components in a hierarchical manner, and
to deploy and monitor such a set of stuctured active objects on Grid environments.
Note that the proposed research is not without connections to a current hype: Web Services.
Indeed, a Web Services can just be:
o the instantiation of
o a grounded component (no dependencies to fill in),
o from which a WSDL (Web Services Description Language)
interface description is available.
So one indirect outcome might be the capability to automatically generate
a Web Service (WSDL description + instantiation) from some of the components.
Towards Seamless Computing and Metacomputing in Java
D. Caromel, W. Klauser, J. Vayssiere,
pp. 1043--1061 in Concurrency Practice and
Experience,
September-November 1998, 10(11--13), Editor
Geoffrey C. Fox, Published by Wiley & Sons.
Available here
ObjectWeb Consortium
ObjectWeb is an open source software community created at the end of 1999.
Its goal is to develop innovative middleware components available under an open source license.
These components can be used to build distributed platforms that can be adapted to
specific application requirements.
Component Software: Beyond Object-Oriented Programming
Clemens Szyperski
" ... the technical foundations of this evolving technology and its
importance in the software market place. ..."
The Globus project
The Globus Project is developing fundamental technologies needed to build computational grids.