Skip to main content
Log in

Modeling run-time adaptation at the system architecture level in dynamic service-oriented environments

  • Special Issue Paper
  • Published:
Service Oriented Computing and Applications Aims and scope Submit manuscript

Abstract

Today, software systems are more and more executed in dynamic, virtualized environments. These environments host diverse applications of different parties, sharing the underlying resources. The goal of this resource sharing is to utilize resources efficiently while ensuring that quality-of-service requirements are continuously satisfied. In such scenarios, complex adaptations to changes in the system environment are still largely performed manually by humans. Over the past decade, autonomic self-adaptation techniques aiming to minimize human intervention have become increasingly popular. However, given that adaptation processes are usually highly system-specific, it is a challenge to abstract from system details, enabling the reuse of adaptation strategies. In this paper, we present S/T/A, a modeling language to describe system adaptation processes at the system architecture level in a generic, human-understandable and reusable way. We apply our approach to multiple different realistic contexts (dynamic resource allocation, run-time adaptation planning, etc.). The results show how a holistic model-based approach can close the gap between complex manual adaptations and their autonomous execution.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13

Similar content being viewed by others

Notes

  1. SPECjEnterprise2010 is a trademark of the Standard Performance Evaluation Corp. (SPEC). The SPECjEnterprise2010 results or findings in this publication have not been reviewed or accepted by SPEC; therefore, no comparison nor performance inference can be made against any published SPEC result. The official Web site for SPECjEnterprise2010 is located at http://www.spec.org/jEnterprise2010.

  2. http://www.palladio-simulator.org/.

References

  1. Agrawal A, Karsai G, Shi F (2003) A UML-based graph transformation approach for implementing domain-specific model transformations. J Softw Syst Model 1–19

  2. Becker S, Koziolek H, Reussner R (2009) The Palladio component model for model-driven performance prediction. J Syst Softw 82(1):3–22

    Google Scholar 

  3. Brosig F, Huber N, Kounev S (2012) Modeling parameter and context dependencies in online architecture-Level Performance Models. In: International symposium on component based software engineering (CBSE), ACM, pp 3–12

  4. Cheng B et al. (2009) Software engineering for self-adaptive systems: a research roadmap. Softw Eng Self-Adaptive Syst 1–26

  5. Cheng SW, Garlan D (2012) Stitch: a language for architecture-based self-adaptation. J Syst Softw 85(12):2860–2875

    Article  Google Scholar 

  6. Cheng SW, Garlan D, Schmerl B (2006) Architecture-based self-adaptation in the presence of multiple objectives. In: International workshop software engineering for adaptive and self-managing systems (SEAMS), ACM, pp 2–8

  7. da Silva C, de Lemos R (2009) Using dynamic workflows for coordinating self-adaptation of software systems. In: Software engineering for adaptive and self-managing systems (SEAMS). IEEE, pp 86–95

  8. de Lemos R, Giese H, Müller H, Shaw M (2011) Software engineering for self-adaptive systems: a second research roadmap. In: Software engineering for self-adaptive systems, no. 10431 in dagstuhl seminar proceedings

  9. Esfahani N, Malek S, Sousa J, Gomaa H, Menascé D (2009) A modeling language for activity-oriented composition of service-oriented software systems. In: International conference on model driven engineering languages and systems (MODELS), ACM, pp 591–605

  10. Fischer T, Niere J, Torunski L, Zündorf A (2000) Story diagrams: a new graph rewrite language based on the unified modeling language and java. Theory Appl Graph Transform, pp 296–309

  11. Frey S, van Hoorn A, Jung R, Hasselbring W, Kiel B (2011) MAMBA: A measurement architecture for model-based analysis. Technical report, University of Kiel, Germany

  12. Garlan D, Cheng S, Huang A, Schmerl B, Steenkiste P (2004) Rainbow: architecture-based self-adaptation with reusable infrastructure. Computer 37(10):46–54

    Article  Google Scholar 

  13. Huber N, Brosig F, Kounev S (2011) Model-based self-adaptive resource allocation in virtualized environments. In: International symposium on software engineering for adaptive and self-managing systems (SEAMS), ACM, pp 90–99

  14. Huber N, Brosig F, Kounev S (2012a) Modeling dynamic virtualized resource landscapes. In: International conference on the quality of software architectures (QoSA), ACM, pp 81–90

  15. Huber N, van Hoorn A, Koziolek A, Brosig F, Kounev S (2012b) S/T/A: meta-modeling run-time adaptation in component-based system architectures. In: International conference on e-business engineering (ICEBE), IEEE, pp 70–77

  16. Kephart J, Walsh W (2004) An artificial intelligence perspective on autonomic computing policies. In: International workshop on policies for distributed systems and networks. IEEE, pp 3–12

  17. Kounev S, Brosig F, Huber N (2012) Descartes meta-model (DMM). Technical report, Karlsruhe Institute of Technology (KIT), http://www.descartes-research.net/metamodel/, to be published

  18. Koziolek A, Reussner R (2011) Towards a generic quality optimisation framework for component-based system models. In: International symposium on component-based software engineering (CBSE), ACM, pp 103–108

  19. Koziolek H (2010) Performance evaluation of component-based software systems: a survey. Perform Eval 67(8):634–658

    Article  Google Scholar 

  20. Kramer J, Magee J (2007) Self-managed systems: an architectural challenge. In: Future of software engineering (FOSE), pp 259–268

  21. Martens A, Koziolek H, Becker S, Reussner RH (2010) Automatically improve software models for performance, reliability and cost using genetic algorithms. In: International conference on performance engineering (ICPE), ACM, pp 105–116

  22. Maswar F, Chaudron MRV, Radovanovic I, Bondarev E (2007) Improving architectural quality properties through model transformations. In: Software engineering research and practice. CSREA Press, pp 687–693

  23. OASIS (2007) WS-BPEL Version 2.0. http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.html

  24. Object Management Group (2012) Structured Metrics Meta-Model (SMM). http://www.omg.org/spec/SMM/1.0/

  25. Oreizy P et al (1999) An architecture-based approach to self-adaptive software. Intell Syst Appl, IEEE 14(3):54–62

    Article  Google Scholar 

  26. S/T/A Framework and Meta-Model (2013) http://www.descartes-research.net/tools/

  27. van der Aalst W, ter Hofstede A (2005) YAWL: yet another workflow language. Inf Syst 30(4):245–275

    Article  Google Scholar 

  28. van Hoorn A (2013) Online capacity management for increased resource efficiency of component-based software systems. PhD thesis, University of Kiel, Germany, work in progress

  29. van Hoorn A, Waller J, Hasselbring W (2012) Kieker: a framework for application performance monitoring and dynamic software analysis. In: International conference on performance engineering (ICPE), ACM, pp 247–248

  30. von Massow R, van Hoorn A, Hasselbring W (2011) Performance simulation of runtime reconfigurable component-based software architectures. In: European conference on software architecture (ECSA). Springer, pp 43–58

  31. Vogel T, Giese H (2012) Requirements and assessment of languages and frameworks for adaptation models. In: International conference on models in software engineering (MODELS). Springer, pp 167–182

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Nikolaus Huber.

Additional information

This work was partly funded by the German Research Foundation (DFG) under Grant No. KO 34456-1.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Huber, N., van Hoorn, A., Koziolek, A. et al. Modeling run-time adaptation at the system architecture level in dynamic service-oriented environments. SOCA 8, 73–89 (2014). https://doi.org/10.1007/s11761-013-0144-4

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11761-013-0144-4

Keywords

Navigation