TY - JOUR
T1 - Design, implementation, and performance of an automatic configuration service for distributed component systems
AU - Kon, Fabio
AU - Marques, Jeferson Roberto
AU - Yamane, Tomonori
AU - Campbell, Roy H.
AU - Mickunas, M. Dennis
N1 - Copyright:
Copyright 2008 Elsevier B.V., All rights reserved.
PY - 2005/6
Y1 - 2005/6
N2 - 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, such as the ones found in modern distributed environments, this manual approach to dependency management can lead to disastrous results. Current systems rely heavily on manual configuration by users and system administrators. This is tolerable now, when users have to manage a few computers. But, in the near future, people will have to deal with thousands of computing devices and it will no longer be acceptable to require the user to configure each of them. This paper presents the results of our 6 year research (from 1998 to 2003) in the area of automatic configuration, describing an integrated architecture for managing dependencies in distributed component-based systems. The architecture supports automatic configuration and dynamic resource management in distributed heterogeneous environments. We describe a concrete implementation of this architecture, present experimental results, and compare our approach to other works in the area.
AB - 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, such as the ones found in modern distributed environments, this manual approach to dependency management can lead to disastrous results. Current systems rely heavily on manual configuration by users and system administrators. This is tolerable now, when users have to manage a few computers. But, in the near future, people will have to deal with thousands of computing devices and it will no longer be acceptable to require the user to configure each of them. This paper presents the results of our 6 year research (from 1998 to 2003) in the area of automatic configuration, describing an integrated architecture for managing dependencies in distributed component-based systems. The architecture supports automatic configuration and dynamic resource management in distributed heterogeneous environments. We describe a concrete implementation of this architecture, present experimental results, and compare our approach to other works in the area.
KW - Automatic configuration
KW - CORBA
KW - Component-based systems
KW - Dynamic configuration
UR - http://www.scopus.com/inward/record.url?scp=20444411927&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=20444411927&partnerID=8YFLogxK
U2 - 10.1002/spe.654
DO - 10.1002/spe.654
M3 - Article
AN - SCOPUS:20444411927
SN - 0038-0644
VL - 35
SP - 667
EP - 703
JO - Software - Practice and Experience
JF - Software - Practice and Experience
IS - 7
ER -