Abstract
After a component based system is developed, it has to be deployed into a target environment. As the system becomes much larger and more complex and the environment becomes open and dynamic, the deployment comes to be a difficult, tiring, error-prone and time-consuming task. This paper proposes an architecture based approach to deploying large-scale component based systems into open and dynamic environments in a systematic and semi-automatic manner. It does four contributions to facilitate the deployment: Firstly, a supporting tool is developed to visualize the software architecture of the system to be deployed to help deployers understand the structure, functions and desired qualities of the system. Secondly, the tool can automatically generate the deployment information from the architecture description produced in the phase of design and this will relieve deployers of inputting hundreds or thousands of deployment elements manually. Thirdly, the tool can monitor the up-to-date resource consumptions of the machines and support to partition one system into several subsystems and deploy the subsystems onto multiple machines simultaneously. Fourthly, a set of principles are proposed for guiding the deployment with the tool. The approach, especially the tool and principles are demonstrated on J2EE (Java 2 Platform Enterprise Edition).
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Dearle, A., Kirby, G.N.C., McCarthy, A.J.: A Framework for Constraint-Based Deployment and Autonomic Management of Distributed Applications. In: International Conference on Autonomic Computing (ICAC 2004), New York, USA (2004)
van Deursen, A.: Software Architecture Recovery and Modeling: [WCRE 2001 discussion forum report]. ACM SIGAPP Applied Computing Review 10(1), 4–7 (2002)
Brown, A.W., Wallnau, K.C.: The Current State of CBSE. IEEE Software 15(5), 37–46 (1998)
Szyperski, C.: Component Software: Beyond Object-Oriented Programming. Addison-Wesley, Reading (1997)
Clarke, D., Richmond, M., Nobel, J.: Saving the World from Bad Beans: Deployment-time Confinement Checking. In: Object-Oriented Programming, Systems, Languages & Applications, pp. 374–387 (2003)
Garlan, D.: Software Architecture: A Roadmap, The Future of Software Engineering 2000. In: Proceedings of 22nd International Conference on Software Engineering, pp. 91–101. ACM Press, New York (2000)
Perry, D., Wolf, A.: Foundations for the Study of Software Architecture. ACM SIGSOFT Software Engineering Notes 17(4), 40–52 (1992)
Huang, G., Mei, H., Wang, Q.X.: Towards Software Architecture at Runtime. ACM SIGSOFT Software Engineering Notes 28(2) (March 2003)
Huang, G., Wang, M., Ma, L., Lan, L., Liu, T., Mei, H.: Towards Architecture Model based Deployment for Dynamic Grid Services. In: Proceedings of IEEE International Conference on E-Commerce Technology for Dynamic E-Business (CEC-EAST), pp. 14–21 (2004)
Mei, H., Huang, G.: PKUAS: An Architecture-based Reflective Component Operating Platform. In: 10th IEEE International Workshop on Future Trends of Distributed Computing Systems, Suzhou, China, May 2004, pp. 26–28 (2004) (invited paper)
Mei, H., Chang, J.C., Yang, F.Q.: Software Component Composition based on ADL and Middleware. Science in China(F) 44(2), 136–151 (2001)
HP Labs: SmartFrog, http://www.hpl.hp.com/research/smartfrog
Foster, I., Kesselman, C., Nick, J.M., Tuecke, S.: The Physiology of the Grid: An Open Grid Services Architecture for Distributed Systems Integration (June 2002)
Foster, I., Kesselman, C., Tuecke, S.: The Anatomy of the Grid: Enabling Scalable Virtual Organizations. International Journal of High Performance Computing Applications 15(3), 200–222 (2001)
Kephart, J.O., Chess, D.M.: The Vision of Autonomic Computing. IEEE Computer, 41–50 (January 2003)
Rutherford, M., Anderson, K., Carzaniga, A., Heimbigner, D., Wolf, A.: Reconfiguration in the Enterprise JavaBean Component Model. In: 1st International Working Conference on Component Deployment, Berlin, pp. 67–81 (2002)
Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall, Englewood Cliffs (1996)
Rakic, M.M., Malek, S., Beckman, N., Medvidovic, N.: A Tailorable Environment for Assessing the Quality of Deployment Architectures in Highly Distributed Settings. In: 2nd International Working Conference on Component Deployment, Edinburgh, UK, pp. 1–17 (2004)
OMG: Model Driven Architecture, http://www.omg.org/mda
OMG: OMG Unified Modeling Language Specification, Version 1.5, formal (2001), http://www.omg.org/uml
Kruchten, P.: The 4+1 view model of architecture. IEEE Software 12(6), 42–50 (1995)
Sun Microsystems. Java 2 Platform Enterprise Edition Specification, Version 1.3, Proposed Final Draft 4 (2001), http://java.sun.com/j2ee
Sun Microsystems: Enterprise JavaBeans Spec. Version 2.1 (2002)
Sun Microsystems: Java 2 Platform Enterprise Edition Management Specification, v1.0 (2002)
Sun Microsystems: Java Pet Store Sample Application, http://java.sun.com/developer/releases/petstore
Sun Microsystems: Java Smart Ticket Sample Application, http://java.sun.com/developer/releases/smarticket
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lan, L. et al. (2005). Architecture Based Deployment of Large-Scale Component Based Systems: The Tool and Principles. In: Heineman, G.T., Crnkovic, I., Schmidt, H.W., Stafford, J.A., Szyperski, C., Wallnau, K. (eds) Component-Based Software Engineering. CBSE 2005. Lecture Notes in Computer Science, vol 3489. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11424529_9
Download citation
DOI: https://doi.org/10.1007/11424529_9
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-25877-3
Online ISBN: 978-3-540-32049-4
eBook Packages: Computer ScienceComputer Science (R0)