Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

Adaptation impact and environment models for architecture-based self-adaptive systems

Published: 01 October 2016 Publication History

Abstract

Self-adaptive systems have the ability to adapt their behavior to dynamic operating conditions. In reaction to changes in the environment, these systems determine the appropriate corrective actions based in part on information about which action will have the best impact on the system. Existing models used to describe the impact of adaptations are either unable to capture the underlying uncertainty and variability of such dynamic environments, or are not compositional and described at a level of abstraction too low to scale in terms of specification effort required for non-trivial systems. In this paper, we address these shortcomings by describing an approach to the specification of impact models based on architectural system descriptions, which at the same time allows us to represent both variability and uncertainty in the outcome of adaptations, hence improving the selection of the best corrective action. The core of our approach is a language equipped with a formal semantics defined in terms of Discrete Time Markov Chains that enables us to describe both the impact of adaptation tactics, as well as the assumptions about the environment. To validate our approach, we show how employing our language can improve the accuracy of predictions used for decision-making in the Rainbow framework for architecture-based self-adaptation.

References

[1]
R. Alur, T.A. Henzinger, O. Kupferman, Alternating-time temporal logic, J. ACM, 49 (Sept. 2002) 672-713.
[2]
A. Bianco, L.d. Alfaro, Model checking of probabilistic and nondeterministic systems, in: Proceedings of the 15th Conference on Foundations of Software Technology and Theoretical Computer Science, Springer-Verlag, 1995, pp. 499-513.
[3]
H. Boudali, P. Crouzen, B. Haverkort, M. Kuntz, M. Stoelinga, Architectural dependability evaluation with arcade, in: IEEE International Conference on Dependable Systems and Networks with FTCS and DCC, 2008, June 2008, pp. 512-521.
[4]
R. Calinescu, C. Ghezzi, M. Kwiatkowska, R. Mirandola, Self-adaptive software needs quantitative verification at runtime, Commun. ACM, 55 (Sept. 2012) 69-77.
[5]
R. Calinescu, M. Kwiatkowska, Using quantitative analysis to implement autonomic IT systems, in: Proceedings of the 31st International Conference on Software Engineering, IEEE Computer Society, Washington, DC, USA, 2009, pp. 100-110.
[6]
J. Cámara, A. Lopes, D. Garlan, B. Schmerl, Impact models for architecture-based self-adaptive systems, in: LNCS, vol. 7795, 2015, pp. 1-19.
[7]
T. Chen, V. Forejt, M. Kwiatkowska, D. Parker, A. Simaitis, Automatic verification of competitive stochastic systems, Form. Methods Syst. Des., 43 (2013) 61-92.
[8]
T. Chen, V. Forejt, M. Kwiatkowska, D. Parker, A. Simaitis, PRISM-games: a model checker for stochastic multi-player games, in: LNCS, vol. 7795, Springer-Verlag, Berlin, Heidelberg, 2013, pp. 185-191.
[9]
S.-W. Cheng, D. Garlan, Stitch: a language for architecture-based self-adaptation, J. Syst. Softw., 85 (2012) 2860-2875.
[10]
S.-W. Cheng, D. Garlan, B. Schmerl, Evaluating the effectiveness of the rainbow self-adaptive system, in: Proceedings of the 2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems, IEEE Computer Society, Washington, DC, USA, 2009, pp. 132-141.
[11]
S.-W. Cheng, D. Garlan, B.R. Schmerl, Raide for engineering architecture-based self-adaptive systems, in: ICSE Companion, 2009, pp. 435-436.
[12]
S.-W. Cheng, D. Garlan, B.R. Schmerl, J.a.P. Sousa, B. Spitnagel, P. Steenkiste, Using architectural style as a basis for system self-repair, in: Proceedings of the IFIP 17th World Computer Congress - TC2 Stream / 3rd IEEE/IFIP Conference on Software Architecture: System Design, Development and Maintenance, Kluwer, B.V., Deventer, The Netherlands, 2002, pp. 45-59.
[13]
R. Chiulli, Quantitative Analysis: An Introduction. Automation and Production Systems, Taylor & Francis, 1999.
[14]
A. David, P. Jensen, K.G. Larsen, M. Mikucionis, J.H. Taankvist, UPPAAL stratego, in: Lecture Notes in Computer Science, vol. 9035, Springer, Berlin/Heidelberg, 2015, pp. 206-211.
[15]
N. Esfahani, S. Malek, Uncertainty in self-adaptive software systems, in: Software Engineering for Self-Adaptive Systems 2, 2010, pp. 214-238.
[16]
A. Filieri, C. Ghezzi, A. Leva, M. Maggio, Self-adaptive software meets control theory: a preliminary approach supporting reliability requirements, in: Proc. of ASE 2011, IEEE, 2011, pp. 283-292.
[17]
V. Forejt, Automated verification techniques for probabilistic systems, in: LNCS, vol. 6659, Springer, 2011, pp. 53-113.
[18]
D. Garlan, S.-W. Cheng, A.-C. Huang, B. Schmerl, P. Steenkiste, Rainbow: architecture-based self-adaptation with reusable infrastructure, Computer, 37 (October 2004) 46-54.
[19]
D. Garlan, R.T. Monroe, D. Wile, Acme: an architecture description interchange language, in: CASCON, 1997, pp. 169-183.
[20]
A. Hartmanns, MODEST - a unified language for quantitative models, in: Proceedings of the 2012 Forum on Specification and Design Languages, IEEE, 2012, pp. 44-51.
[21]
J.E. Ingersoll, Theory of Financial Decision Making. Rowman & Littlefield Studies in Financial Economics, Rowman & Littlefield Publ., Savage (MD), 1987.
[22]
C. Klein, M. Maggio, K.-E. Arzen, F. Hernandez-Rodriguez, Brownout: building more robust cloud applications, in: Proceedings of the 36th International Conference on Software Engineering, ACM, New York, NY, USA, 2014, pp. 700-711.
[23]
M. Kwiatkowska, PRISM 4.0: verification of probabilistic real-time systems, in: LNCS, vol. 6806, Springer, 2011, pp. 585-591.
[24]
P. Leitner, W. Hummer, S. Dustdar, Cost-based optimization of service compositions, IEEE Trans. Serv. Comput., 6 (2013) 239-251.
[25]
J.R. Norris, Markov Chains, 1998.
[26]
OMG, Object constraint language V2.4. http://www.omg.org/spec/OCL/2.4
[27]
L. Rosa, L. Rodrigues, A. Lopes, M.A. Hiltunen, R.D. Schlichting, Self-management of adaptable component-based applications, IEEE Trans. Softw. Eng., 39 (2013) 403-421.
[28]
D. Sykes, D. Corapi, J. Magee, J. Kramer, A. Russo, K. Inoue, Learning revised models for planning in adaptive systems, in: Proceedings of the 2013 International Conference on Software Engineering, IEEE Press, Piscataway, NJ, USA, 2013, pp. 63-71.

Cited By

View all
  • (2024)Decision Making for Self-Adaptation Based on Partially Observable Satisfaction of Non-Functional RequirementsACM Transactions on Autonomous and Adaptive Systems10.1145/364388919:2(1-44)Online publication date: 20-Apr-2024
  • (2022)Run-time adaptation of quality attributes for automated planningProceedings of the 17th Symposium on Software Engineering for Adaptive and Self-Managing Systems10.1145/3524844.3528063(98-105)Online publication date: 18-May-2022
  • (2022)Decision-making under uncertainty: be aware of your prioritiesSoftware and Systems Modeling (SoSyM)10.1007/s10270-021-00956-021:6(2213-2242)Online publication date: 1-Dec-2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Science of Computer Programming
Science of Computer Programming  Volume 127, Issue C
October 2016
131 pages

Publisher

Elsevier North-Holland, Inc.

United States

Publication History

Published: 01 October 2016

Author Tags

  1. Environment model
  2. Impact model
  3. Self-adaptive systems
  4. Uncertainty
  5. Variability

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 01 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Decision Making for Self-Adaptation Based on Partially Observable Satisfaction of Non-Functional RequirementsACM Transactions on Autonomous and Adaptive Systems10.1145/364388919:2(1-44)Online publication date: 20-Apr-2024
  • (2022)Run-time adaptation of quality attributes for automated planningProceedings of the 17th Symposium on Software Engineering for Adaptive and Self-Managing Systems10.1145/3524844.3528063(98-105)Online publication date: 18-May-2022
  • (2022)Decision-making under uncertainty: be aware of your prioritiesSoftware and Systems Modeling (SoSyM)10.1007/s10270-021-00956-021:6(2213-2242)Online publication date: 1-Dec-2022
  • (2022)A negotiation support system for defining utility functions for multi-stakeholder self-adaptive systemsRequirements Engineering10.1007/s00766-021-00368-y28:1(3-22)Online publication date: 11-Jan-2022
  • (2021)Towards priority-awareness in autonomous intelligent systemsProceedings of the 36th Annual ACM Symposium on Applied Computing10.1145/3412841.3442007(1328-1337)Online publication date: 22-Mar-2021
  • (2021)Self-adaptive Machine Learning Systems: Research Challenges and OpportunitiesSoftware Architecture10.1007/978-3-031-15116-3_7(133-155)Online publication date: 13-Sep-2021
  • (2020)Software architecture and task plan co-adaptation for mobile service robotsProceedings of the IEEE/ACM 15th International Symposium on Software Engineering for Adaptive and Self-Managing Systems10.1145/3387939.3391591(125-136)Online publication date: 29-Jun-2020
  • (2020)EasyModel: A Refinement-Based Modeling and Verification Approach for Self-Adaptive SoftwareJournal of Computer Science and Technology10.1007/s11390-020-0499-x35:5(1016-1046)Online publication date: 1-Oct-2020
  • (2019)Pragmatic Sensory Data Semantics With Service-Oriented ComputingJournal of Organizational and End User Computing10.4018/JOEUC.201904010231:2(22-36)Online publication date: 1-Apr-2019
  • (2019)Self-accounting in architecture-based self-adaptationProceedings of the 13th European Conference on Software Architecture - Volume 210.1145/3344948.3344957(14-17)Online publication date: 9-Sep-2019
  • Show More Cited By

View Options

View options

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media