Asynchronous, Hierarchical, and Scalable Deployment of Component-Based Applications

The deployment of distributed component-based applications is a complex task. Proposed solutions are often centralized, which excludes their use for the deployment of large-scale applications. Besides, these solutions do often not take into account the functional constraints, i.e. the dependences between component activations. Finally, most of them are not fault-tolerant. In this paper, we propose a deployment application that deals with these three problems. It is hierarchical, which is a necessary feature to guarantee scalability. Moreover, it is designed as a distributed workflow decomposed into tasks executing asynchronously, which allows an “as soon as possible” activation of deployed components. Finally, the proposed deployment application is fault-tolerant. This is achieved by the use of persistent agents with atomic execution. This deployment application has been tested and performance measurements show that it is scalable.

[1]  Gul A. Agha,et al.  ACTORS - a model of concurrent computation in distributed systems , 1985, MIT Press series in artificial intelligence.

[2]  Guy Bernard,et al.  Component search service and deployment of distributed applications , 2001, Proceedings 3rd International Symposium on Distributed Objects and Applications.

[3]  Michel Riveill,et al.  Distributed application configuration , 1996, Proceedings of 16th International Conference on Distributed Computing Systems.

[4]  Reaz Hoque Corba 3 , 1998 .

[5]  Thierry Coupaye,et al.  Recursive and Dynamic Software Composition with Sharing , 2002 .

[6]  Richard N. Taylor,et al.  A Classification and Comparison Framework for Software Architecture Description Languages , 2000, IEEE Trans. Software Eng..

[7]  David Garlan,et al.  Specifying Dynamism in Software Architectures , 1997 .

[8]  Emmanuel Cecchet,et al.  The Role of Software Architecture in Configuring Middleware: The ScalAgent Experience , 2003, OPODIS.

[9]  Dennis Heimbigner,et al.  Reconfiguration in the Enterprise JavaBean Component Model , 2002, Component Deployment.

[10]  W. Emmerich,et al.  Distributed component technologies and their software engineering implications , 2002, Proceedings of the 24th International Conference on Software Engineering. ICSE 2002.

[11]  Mary Shaw,et al.  Abstractions for Software Architecture and Tools to Support Them , 1995, IEEE Trans. Software Eng..

[12]  Walter Mann,et al.  Correction to "Specification and Analysis of System Architecture Using Rapide" , 1995, IEEE Trans. Software Eng..

[13]  하수철,et al.  [서평]「Component Software」 - Beyond Object-Oriented Programming - , 2000 .

[14]  Denis Caromel,et al.  Interactive and descriptor-based deployment of object-oriented grid applications , 2002, Proceedings 11th IEEE International Symposium on High Performance Distributed Computing.

[15]  Richard N. Taylor,et al.  A language and environment for architecture-based software development and evolution , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[16]  Valérie Issarny,et al.  Achieving middleware customization in a configuration-based development environment: experience with the Aster prototype , 1998, Proceedings. Fourth International Conference on Configurable Distributed Systems (Cat. No.98EX159).

[17]  Petr Tuma,et al.  Distributed Component System Based on Architecture Description: The SOFA Experience , 2002, OTM.

[18]  Luc Bellissard,et al.  An agent platform for reliable asynchronous distributed programming , 1999, Proceedings of the 18th IEEE Symposium on Reliable Distributed Systems.

[19]  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).

[20]  Richard S. Hall,et al.  A Characterization Framework for Software Deployment Technologies , 1998 .