Runtime Adaptation of Applications Through Dynamic Recomposition of Components

  • Arun Mukhija
  • Martin Glinz
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3432)


Software applications executing in highly dynamic environments are faced with the challenge of frequent and usually unpredictable changes in their execution environment. In order to cope with this challenge effectively, the applications need to adapt to these changes dynamically. CASA (Contract-based Adaptive Software Architecture) provides a framework for enabling dynamic adaptation of applications, in response to changes in their execution environment. One of the principle adaptation mechanisms employed in the CASA framework is dynamic recomposition of application components. In this paper, we discuss implementation issues related to the approach for dynamic recomposition of application components in CASA.


Dynamic Adaptation Reachable State Execution Environment Class Instance Adaptation Policy 
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.
  2. 2.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)Google Scholar
  3. 3.
    Gupta, D., Jalote, P., Barua, G.: A Formal Framework for On-line Software Version Change. IEEE Transactions on Software Engineering 22(2) (1996)Google Scholar
  4. 4.
    Gygax, A.: Studying the Effect of Size and Complexity of Components on the Performance of CASA. Internship Report, IFI, University of Zurich (2004),
  5. 5.
    Hjalmtysson, G., Gray, R.: Dynamic C++ Classes: A lightweight mechanism to update code in a running program. In: Proc. of USENIX Annual Technical Conference (1998)Google Scholar
  6. 6.
    Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C.V., Loingtier, J.M., Irwin, J.: Aspect-Oriented Programming. In: Proc. of 11th European Conference on Object-Oriented Programming (1997)Google Scholar
  7. 7.
    Liu, H., Parashar, M., Hariri, S.: A Component Based Programming Framework for Autonomic Applications. In: Proc. of 1st International Conference on Autonomic Computing (2004)Google Scholar
  8. 8.
    Malabarba, S., Pandey, R., Gragg, J., Barr, E., Barnes, J.F.: Runtime Support for Type-Safe Dynamic Java Classes. In: Proc. of 14th European Conference on Object- Oriented Programming (2000)Google Scholar
  9. 9.
    Meyer, B.: Applying “Design by Contract”. IEEE Computer 25(10) (1992)Google Scholar
  10. 10.
    Mukhija, A., Glinz, M.: A Framework for Dynamically Adaptive Applications in a Self-organized Mobile Network Environment. In: Proc. of ICDCS 2004 Workshop on Distributed Auto-adaptive and Reconfigurable Systems (2004)Google Scholar
  11. 11.
    Noble, B.D., Satyanarayanan, M., Narayanan, D., Tilton, J.E., Flinn, J., Walker, K.R.: Agile Application-Aware Adaptation for Mobility. In: Proc. of 16th ACM Symposium on Operating Systems Principles (1997)Google Scholar
  12. 12.
    Oreizy, P., Medvidovic, N., Taylor, R.N.: Architecture-Based Runtime Software Evolution. In: Proc. of 20th International Conference on Software Engineering (1998)Google Scholar
  13. 13.
    Popovici, A., Gross, T., Alonso, G.: Dynamic Weaving for Aspect-Oriented Programming. In: Proc. of 1st International Conference on Aspect-Oriented Software Development (2002)Google Scholar
  14. 14.
    Rasche, A., Polze, A.: Configuration and Dynamic Reconfiguration of Component-based Applications with Microsoft.NET. In: Proc. of 6th IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (2003)Google Scholar
  15. 15.
    Zinky, J.A., Bakken, D.E., Schantz, R.E.: Architectural Support for Quality of Service for CORBA Objects. Theory and Practice of Object Systems 3(1) (1997)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Arun Mukhija
    • 1
  • Martin Glinz
    • 1
  1. 1.Institut für InformatikUniversity of ZurichSwitzerland

Personalised recommendations