usenix conference policies

Component technology promotes code-reuse by enabling the construction of
complex applications by assembling off-the-shelf components. However,
components depend on certain characteristics of the environment in which they
execute. They depend on other software components and on hardware resources.

In existing component architectures, the application developer is left with
the task of resolving those dependencies, i.e., making sure that each
component has access to all the resources it needs and that all the required
components are loaded. Nevertheless, according to encapsulation principles,
developers should not be aware of the component internals. Thus, it may be
difficult to find out what a component really needs. In complex systems, this
manual approach to dependency management can lead to disastrous results.

In this paper, we propose an integrated architecture for managing dependencies
in distributed component-based systems in an effective and uniform way. The
architecture supports automatic configuration and dynamic resource management
in distributed heterogeneous environments. We describe a concrete
implementation of this architecture and present experimental results.