Dependence management is probably the most crucial problem to be resolved before operating systems and middleware are able to provide automatic configuration of component-based applications and services. Only then will we be able to remove the burden of system configuration from users and administrators.
In this thesis, we presented an integrated architecture for managing dependencies in component-based distributed systems. Our experience with the architecture has been very fruitful, encouraging further enhancements. Future work in our and other research groups will show whether the architecture is suitable for complex, distributed, component-based systems developed by other programmers.
The novel architecture presented in this thesis provided the first three original contributions listed below. The deployment of the architecture in two example applications provided the two additional contributions.
Within the next few years, we will witness great changes in our everyday computing environments, including higher degrees of dynamism, composability, mobility, heterogeneity, and interactions among heterogeneous computing devices connected to global networks. Probably, the major change will be that computers will no longer be heavy boxes on our desks, but instead, will be everywhere, at home, at the supermarket, at the hospital, on the street, from our glasses to soda cans. One of the few things that are clear at this moment is that conventional middleware and operating system architectures are inadequate to support these highly dynamic, heterogeneous environments of the future. We believe that the contributions presented on this thesis constitute a few small bricks that will help the construction of the big building of next century's software technology.
Above all, we scientists must not forget that, while the amazing technology of
the
century will certainly improve the quality of life of the top 20%
wealthiest people, we live in a planet where the large majority of the
population live in deep poverty. This is a political problem that cannot be
solved by science and technology alone; but scientists must not forget that
and always have in mind that our role in society is much more than improving
systems performance.