Reconfiguration in the Enterprise JavaBean Component Model

Reconfiguration is the process of applying planned changes to the communication, interconnection, componentization, or functionality of a deployed system. It is a powerful tool for achieving a variety of desirable properties of large-scale, distributed systems, including evolvability, adaptability, survivability, and continuous availability. Current approaches to reconfiguration are inadequate: some allow one to describe a system's range of configurations for a relatively broad class of system architectures, but do not provide a mechanism for actually carrying out a reconfiguration; others provide a mechanism for carrying out certain kinds of limited reconfigurations, but assume a specialized system architecture in order to do so. This paper describes our attempt at devising a reconfiguration mechanism for use with the popular and widely available Enterprise JavaBean (EJB) component container model. We describe extensions to the basic services provided by EJB to support the mechanism, a prototype implementation, and a case study of its application to a representative component-based distributed system.

[1]  Jeff Magee,et al.  Dynamic Configuration for Distributed Systems , 1985, IEEE Transactions on Software Engineering.

[2]  Richard S. Hall,et al.  A cooperative approach to support software deployment using the Software Dock , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[3]  Judith Bishop,et al.  Configuring distributed systems in a Java-based environment , 2001, IEE Proc. Softw..

[4]  Richard S. Hall,et al.  Evaluating Software Deployment Languages and Schema , 1998 .

[5]  Richard S. Hall,et al.  An architecture for post-development configuration management in a wide-area network , 1997, Proceedings of 17th International Conference on Distributed Computing Systems.

[6]  Dennis Heimbigner,et al.  Post-Deployment Configuration Management , 1996, SCM.

[7]  Ed Bailey,et al.  Maximum RPM , 1997 .

[8]  Richard Monson-Haefel,et al.  Enterprise JavaBeans , 1999, Java series.

[9]  Jeff Magee,et al.  The Evolving Philosophers Problem: Dynamic Change Management , 1990, IEEE Trans. Software Eng..

[10]  Naranker Dulay,et al.  The Software Architect's Assistant-a visual environment for distributed programming , 1995, Proceedings of the Twenty-Eighth Annual Hawaii International Conference on System Sciences.