Abstract
We propose a meta-framework called ‘Plastik’ which i) supports the specification and creation of runtime component-framework-based software systems and ii) facilitates and manages the runtime reconfiguration of such systems while ensuring integrity across changes. The meta-framework is fundamentally an integration of an architecture description language (an extension of ACME/Armani) and a reflective component runtime (OpenCOM). Plastikgenerated component frameworks can be dynamically reconfigured either through programmed changes (which are foreseen at design time and specified at the ADL level); or through ad-hoc changes (which are unforeseen at design time but which are nevertheless constrained by invariants specified at the ADL level). We provide in the paper a case study that illustrates the operation and benefits of Plastik.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
Keywords
- Software Architecture
- Instance Level
- Architectural Description
- Architecture Description Language
- Architectural Constraint
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice Hall, Englewood Cliffs (1996)
Allen, R.J., Douence, R., Garlan, D.: Specifying and Analyzing Dynamic Software Architecture. In: Astesiano, E. (ed.) ETAPS 1998 and FASE 1998. LNCS, vol. 1382, p. 21. Springer, Heidelberg (1998)
van der Hoek, A., Heimbigner, D., Wolf, A.: Software Architecture, Configuration Management, and Configurable Distributed Systems: A Ménage a Trois. Technical Report CU-CS-849-98, University of Colorado (1998)
Fassino, J., Stefani, J.-B., Lawall, J., Muller, G.: THINK: A Software Framework for Component-based Operating Systems Kernels. In: USENIX 2002, Monterey, CA, USA, pp. 73–86 (2002)
Bruneton, E., Coupaye, T., Stefani, J.-B.: Recursive and Dynamic Software Composition with Sharing. In: Seventh International Workshop on Component-Oriented Programming (WCOP 2002), Malaga, Spain (2002)
Zachariadis, S., Mascolo, C., Emmerich, W.: Satin: A Component Model for Mobile Self Organisation. In: Distributed Objects and Applications (DOA), pp. 1303–1321 (2004)
Coulson, G., Blair, G.S., Grace, P., Joolia, A., Lee, K., Ueyama, J.: OpenCOM v2: A Component Model for Building Systems Software. In: Proceedings of IASTED Software Engineering and Applications (SEA 2004), Cambridge, MA, ESA (November 2004)
Yau, S., Karin, F.: An Adaptive Middleware for Context-Sensitive Communications for Real-Time Applications in Ubiquitous Computing Environments. Real-Time Systems 26(1), 29–61 (2004)
Garlan, D., Monroe, R., Wile, D.: ACME: Architectural Description of Component-based Systems. In: Leavens, G.T., Sitaraman, M. (eds.) Foundations of Component-based Systems, pp. 47–68. Cambridge University Press, Cambridge (2000)
Monroe, R.T.: Capturing Software Architecture Design Expertise with Armani. Technical Report CMU-CS-98-163, Carnegie Mellon University
Coulson, G., Blair, G.S., Hutchison, D., Joolia, A., Lee, K., Ueyama, J., Gomes, A.T., Ye, Y.: NETKIT: A Software Component-Based Approach to Programmable Networking. ACM SIGCOMM Computer Communications Review (CCR) 33(5), 55–66 (2003)
Coulson, G., Blair, G.S., Clarke, M., Parlavantzas, N.: The Design of a Highly Configurable and Reconfigurable Middleware Platform. ACM Distributed Computing Journal 15(2), 109–126 (2002)
Ierusalimsky, R., Figueiredo, L.H., Celes, W.: Lua – an extensible extension language. Software: Practice and Experience 26(6), 635–652 (1996)
Magee, J., Dulay, N., Eisenbach, S., Kramer, J.: Specifying Distributed Software Architectures. In: Botella, P., Schäfer, W. (eds.) ESEC 1995. LNCS, vol. 989, pp. 137–153. Springer, Heidelberg (1995)
Wile, D.: Using Dynamic Acme. In: Proceedings of a Working Conference on Complex and Dynamic Systems Architecture, Brisbane, Australia (December 2001)
Morrison, R., et al.: Support for Evolving Software Architectures in the ArchWare ADL. In: Proc. 4th Working IEEE/IFIP Conference on Software Architecture (WICSA), Oslo, Norway (2004)
Roshandel, R., van der Hoek, A., Mikic-Rakic, M., Medvidovic, N.: Mae – A System Model and Environment for Managing Architectural Evolution. ACM Transactions on Software Engineering and Methodology (TOSEM) 3(2), 240–276 (2004)
Ramdane-Cherif, A., Levy, N.: An Approach for Dynamic Reconfigurable Software Architectures. In: Integrated Design and Process Technology, IDPT 2002 (June 2002)
Moreira, R., Blair, G., Carrapatoso, E.: FORMAware: Framework of Reflective Components for Managing Architecture Adaptation. In: 3rd. Int. Symposium DOA, Roma (2001)
Falcarin, P., Alonso, G.: Software Architecture Evolution through Dynamic AOP. In: Oquendo, F., Warboys, B.C., Morrison, R. (eds.) EWSA 2004. LNCS, vol. 3047, pp. 57–73. Springer, Heidelberg (2004)
Ommering, R., Linden, F., Kramer, J., Magee, J.: The Koala Component Model for Consumer Electronics Software. IEEE Computer 33(3), 78–85 (2000)
ACME Home page (2005), http://www-2.cs.cmu.edu/acme/acme_downloads.html
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
Batista, T., Joolia, A., Coulson, G. (2005). Managing Dynamic Reconfiguration in Component-Based Systems . In: Morrison, R., Oquendo, F. (eds) Software Architecture. EWSA 2005. Lecture Notes in Computer Science, vol 3527. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11494713_1
Download citation
DOI: https://doi.org/10.1007/11494713_1
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-26275-6
Online ISBN: 978-3-540-32268-9
eBook Packages: Computer ScienceComputer Science (R0)