Managing Dynamic Reconfiguration in Component-Based Systems

  • Thais Batista
  • Ackbar Joolia
  • Geoff Coulson
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3527)


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.


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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice Hall, Englewood Cliffs (1996)zbMATHGoogle Scholar
  2. 2.
    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)CrossRefGoogle Scholar
  3. 3.
    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)Google Scholar
  4. 4.
    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)Google Scholar
  5. 5.
    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)Google Scholar
  6. 6.
    Zachariadis, S., Mascolo, C., Emmerich, W.: Satin: A Component Model for Mobile Self Organisation. In: Distributed Objects and Applications (DOA), pp. 1303–1321 (2004)Google Scholar
  7. 7.
    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)Google Scholar
  8. 8.
    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)zbMATHCrossRefGoogle Scholar
  9. 9.
    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)Google Scholar
  10. 10.
    Monroe, R.T.: Capturing Software Architecture Design Expertise with Armani. Technical Report CMU-CS-98-163, Carnegie Mellon UniversityGoogle Scholar
  11. 11.
    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)CrossRefGoogle Scholar
  12. 12.
    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)CrossRefGoogle Scholar
  13. 13.
    Ierusalimsky, R., Figueiredo, L.H., Celes, W.: Lua – an extensible extension language. Software: Practice and Experience 26(6), 635–652 (1996)CrossRefGoogle Scholar
  14. 14.
    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)Google Scholar
  15. 15.
    Wile, D.: Using Dynamic Acme. In: Proceedings of a Working Conference on Complex and Dynamic Systems Architecture, Brisbane, Australia (December 2001)Google Scholar
  16. 16.
    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)Google Scholar
  17. 17.
    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)CrossRefGoogle Scholar
  18. 18.
    Ramdane-Cherif, A., Levy, N.: An Approach for Dynamic Reconfigurable Software Architectures. In: Integrated Design and Process Technology, IDPT 2002 (June 2002)Google Scholar
  19. 19.
    Moreira, R., Blair, G., Carrapatoso, E.: FORMAware: Framework of Reflective Components for Managing Architecture Adaptation. In: 3rd. Int. Symposium DOA, Roma (2001)Google Scholar
  20. 20.
    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)CrossRefGoogle Scholar
  21. 21.
    Ommering, R., Linden, F., Kramer, J., Magee, J.: The Koala Component Model for Consumer Electronics Software. IEEE Computer 33(3), 78–85 (2000)Google Scholar
  22. 22.

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Thais Batista
    • 1
    • 2
  • Ackbar Joolia
    • 2
  • Geoff Coulson
    • 2
  1. 1.Computer Science DepartmentFederal University of Rio Grande do Norte (UFRN)NatalBrazil
  2. 2.Computing Department, InfoLab21Lancaster UniversityLancasterUK

Personalised recommendations