AlchemistJ: A Framework for Self-adaptive Software

  • Dongsun Kim
  • Sooyong Park
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3824)


The major goal of self-adaptive software is to provide a mechanism that allows a software system to dynamically change its architectural configuration during run-time to cope with requirement changes and unexpected conditions. Software which needs to handle dynamically changing internal and external environment is one of the areas in which self-adaptive software may do an important role in improving the reliability and performance of software systems. There are three main capabilities that are necessary to support self-adaptive software: the ability to monitor and recognize internal/external situations that affect behavior of the software system; the ability to determine when and what to reconfigure in the software system to handle the situations; and the ability to dynamically change the software architecture during run-time to make the reconfiguration effective. In this paper, we describe a software framework to support such capabilities to realize self-adaptive software and its experiment results.


Software Architecture Target Strategy Embed Software Adaptive Software 10th IEEE International Workshop 
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.
    Allen, R.J., Douence, R., Garlan, D.: Specifying dynamism in software architectures. In: Proceedings of the Workshop on Foundations of Component-Based Software Engineering (1997)Google Scholar
  2. 2.
    Dashofy, E.M., van der Hoek, A., Taylor, R.N.: Towards architecture-based self-healing systems. In: Proceedings of the First Workshop on Self-Healing Systems (2002)Google Scholar
  3. 3.
    Dixon, K.R., Pham, T.Q., Khosla, P.K.: Port-based adaptable agent architecture. In: Robertson, P., Shrobe, H.E., Laddaga, R. (eds.) IWSAS 2000. LNCS, vol. 1936, p. 181. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  4. 4.
    Garlan, D., Cheng, S.-W., Huang, A.C., Schmerl, B., Steenkiste, P.: Rainbow: Architecture-based self-adaptation with reusable infrastructure. IEEE Computer 37(10), 46–54 (2004)Google Scholar
  5. 5.
    Garlan, D., Schmerl, B., Chang, J.: Using gauges for architecture-based monitoring and adaptation. In: The Working Conference on Complex and Dynamic Systems Architecture (2001)Google Scholar
  6. 6.
    Gorlick, M.M., Razouk, R.R.: Using weaves for software construction and analysis. In: Proceedings of the 13th International Conference on Software Engineering (1991)Google Scholar
  7. 7.
    Hillman, J., Warren, I.: Meta-adaptation in autonomic systems. In: 10th IEEE International Workshop on Future Trends of Distributed Computing Systems (2004)Google Scholar
  8. 8.
    Hillman, J., Warren, I.: An open framework for dynamic reconfiguration. In: 26th International Conference on Software Engineering (2004)Google Scholar
  9. 9.
    Kim, T.-H., Shin, Y.-G.: Role-based decomposition for improving concurrency in distributed object-oriented software development environments. In: 23rd International Computer Software and Applications Conference (1999)Google Scholar
  10. 10.
    Laddaga, R.: Active software. In: Robertson, P., Shrobe, H.E., Laddaga, R. (eds.) IWSAS 2000. LNCS, vol. 1936, pp. 11–26. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  11. 11.
    Oreizy, P.: Issues in the runtime modification of software architectures. Technical report, Department of Information and Computer Science, University of California, Irvine (1996)Google Scholar
  12. 12.
    Oreizy, P., Gorlick, M.M., Taylor, R.N., Heimbingner, D., Johnson, G., Medvidovid, N., Quilici, A., Rosenblum, D.S., Wolf, A.L.: An architecture-based approach to self-adaptive software. IEEE Intelligent Systems 14(3), 54–62 (1999)CrossRefGoogle Scholar
  13. 13.
    Sutton, R.S., Barto, A.G.: Reinforcement Learning: An Introduction. MIT Press, Cambridge (1998)Google Scholar
  14. 14.
    Watkins, C.J.C.H.: Learning from Delayed Rewards. PhD thesis, Cambridge University (1989)Google Scholar
  15. 15.
    Watkins, C.J.C.H., Dayan, P.: Technical note: Q-learning. Machine Learning 8(3-4), 279–292 (1992)zbMATHCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Dongsun Kim
    • 1
  • Sooyong Park
    • 1
  1. 1.Department of Computer Science and Interdisciplinary, Program of Integrated BiotechnologySogang UniversitySeoulRepublic of Korea

Personalised recommendations