Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2025113.2025147acmconferencesArticle/Chapter ViewAbstractPublication PagesfseConference Proceedingsconference-collections
research-article

Taming uncertainty in self-adaptive software

Published: 09 September 2011 Publication History

Abstract

Self-adaptation endows a software system with the ability to satisfy certain objectives by automatically modifying its behavior. While many promising approaches for the construction of self-adaptive software systems have been developed, the majority of them ignore the uncertainty underlying the adaptation decisions. This has been one of the key obstacles to wide-spread adoption of self-adaption techniques in risk-averse real-world settings. In this paper, we describe an approach, called POssIbilistic SElf-aDaptation (POISED), for tackling the challenge posed by uncertainty in making adaptation decisions. POISED builds on possibility theory to assess both the positive and negative consequences of uncertainty. It makes adaptation decisions that result in the best range of potential behavior. We demonstrate POISED's application to the problem of improving a software system's quality of service via runtime reconfiguration of its customizable software components. We have extensively evaluated POISED using a prototype of a robotic software system.

References

[1]
Cheng, B.H., Sawyer, P., Bencomo, N. and Whittle, J. 2009. A Goal-Based Modeling Approach to Develop Requirements of an Adaptive System with Environmental Uncertainty. Int'l Conf. on Model Driven Engineering Languages and Systems (Denver, Colorado, Oct. 2009), 468--483.
[2]
Cheng, B. et al. 2009. Software Engineering for Self-Adaptive Systems: A Research Roadmap. Software Engineering for Self-Adaptive Systems, LNCS Hot Topics. 1--26.
[3]
Cheng, S.W. and Garlan, D. 2007. Handling uncertainty in autonomic systems. Int'l Workshop. on Living with Uncertainty (Atlanta, Georgia, Nov. 2007).
[4]
Chuang, S.-N. and Chan, A.T.S. 2008. Dynamic QoS Adaptation for Mobile Middleware. IEEE Transactions on Software Engineering. 34, 6 (Dec. 2008), 738--752.
[5]
Coletti, G. and Scozzafava, R. 2004. Conditional probability, fuzzy sets, and possibility: a unifying view. Fuzzy Sets and Systems. 144, 1 (May. 2004), 227--249.
[6]
Cooray, D., Malek, S., Roshandel, R. and Kilgore, D. 2010. RESISTing Reliability Degradation through Proactive Reconfiguration. Int'l Conf. on Automated Software Engineering (Antwerp, Belgium, Sep. 2010).
[7]
Dubois, D. and Prade, H. 2001. Possibility Theory, Probability Theory and Multiple-Valued Logics: A Clarification. Annals of Mathematics and Artificial Intelligence. 32, (Aug. 2001), 35--66.
[8]
Edwards, G., Malek, S. and Medvidovic, N. 2007. Scenario-Driven Dynamic Analysis of Distributed Architectures. Int'l Conf. on Fundamental Approaches to Software Engineering (Braga, Portugal, Mar. 2007), 125--139.
[9]
Elkhodary, A., Esfahani, N. and Malek, S. 2010. FUSION: A Framework for Engineering Self-Tuning Self-Adaptive Software Systems. Int'l Symp. on the Foundations of Software Engineering (Santa Fe, New Mexico, Nov. 2010), 7--16.
[10]
Garlan, D. 2010. Software Engineering in an Uncertain World. FSE/SDP Wrkshp. on the Future of Software Engineering Research (Santa Fe, New Mexico, Nov. 2010).
[11]
Garlan, D., Cheng, S.W., Huang, A.C., Schmerl, B. and Steenkiste, P. 2004. Rainbow: Architecture-Based Self-Adaptation with Reusable Infrastructure. IEEE Computer. 37, 10 (Oct. 2004), 46--54.
[12]
Ghezzi, C. and Tamburrelli, G. 2009. Predicting Performance Properties for Open Systems with KAMI. Int'l Conf on the Quality of Software Architectures (East Stroudsburg, Pensylvania, Jun. 2009), 70--85.
[13]
Gibbons, J.D. and Chakraborti, S. 2003. Nonparametric Statistical Inference (4th Edition). CRC Press.
[14]
Inuiguchi, M. and Ramík, J. 2000. Possibilistic linear programming: a brief review of fuzzy mathematical programming and a comparison with stochastic programming in portfolio selection problem. Fuzzy Sets Syst. 111, 1 (Apr. 2000), 3--28.
[15]
Koenker, R. 2005. Quantile regression. Cambridge University Press.
[16]
Kramer, J. and Magee, J. 2007. Self-Managed Systems: an Architectural Challenge. Int'l Conf. on Software Engineering (Minneapolis, Minnesota, May. 2007), 259--268.
[17]
Lai, Y.-J. and Hwang, C.-L. 1992. A new approach to some possibilistic linear programming problems. Fuzzy Sets Syst. 49, 2 (Jul. 1992), 121--133.
[18]
Malek, S., Edwards, G., Brun, Y., Tajalli, H., Garcia, J., Krka, I., Medvidovic, N., Mikic-Rakic, M. and Sukhatme, G.S. 2010. An architecture-driven software mobility framework. Journal of Systems and Software. 83, 6 (Jun. 2010), 972--989.
[19]
Malek, S., Mikic-Rakic, M. and Medvidovic, N. 2005. A Style-Aware Architectural Middleware for Resource-Constrained, Distributed Systems. IEEE Trans. Softw. Eng. 31, 3 (Mar. 2005), 256--272.
[20]
Menasce, D.A., Dowdy, L.W. and Almeida, V.A.F. 2004. Performance by Design: Computer Capacity Planning By Example. Prentice Hall PTR.
[21]
Menascé, D.A., Sousa, J.P., Malek, S. and Gomaa, H. 2010. QoS Architectural Patterns for Self-Architecting Software Systems. Int'l Conf. on Autonomic Computing (Washington, DC, Jun. 2010).
[22]
NEOS Server for Optimization: http://www-neos.mcs.anl.gov/. Accessed: 2010-08-17.
[23]
Poladian, V., Garlan, D., Shaw, M., Satyanarayanan, M., Schmerl, B. and Sousa, J. 2007. Leveraging Resource Prediction for Anticipatory Dynamic Configuration. Int'l Conf. on Self-Adaptive and Self-Organizing Systems (Boston, Massachusetts, Jul. 2007), 214--223.
[24]
Poladian, V., Sousa, J.P., Garlan, D. and Shaw, M. 2004. Dynamic Configuration of Resource-Aware Services. Int'l Conf. on Software Engineering (Scotland, UK, May. 2004).
[25]
Seo, C., Malek, S. and Medvidovic, N. 2008. Component-Level Energy Consumption Estimation for Distributed Java-Based Software Systems. Int'l Symp. on Component Based Software Engineering (Karlsruhe, Germany, Oct. 2008).
[26]
Stochastic Programming Community Home Page: http://www.stoprog.org/index.html?spintroduction.html. Accessed: 2011-02-03.
[27]
Walsh, W.E., Tesauro, G., Kephart, J.O. and Das, R. 2004. Utility Functions in Autonomic Systems. Int'l Conf. on Autonomic Computing (New York, New York, May. 2004).
[28]
Whittle, J., Sawyer, P., Bencomo, N., Cheng, B.H.C. and Bruel, J.-M. 2009. RELAX: Incorporating Uncertainty into the Specification of Self-Adaptive Systems. Int'l Requirements Engineering Conf. (Atlanta, Georgia, Sep. 2009), 79--88.
[29]
Zadeh, L.A. 1965. Fuzzy sets. Information and control. 8, 3 (Jun. 1965), 338--353.
[30]
Zadeh, L.A. 1999. Fuzzy sets as a basis for a theory of possibility. Fuzzy Sets Syst. 100, (Jun. 1999), 9--34.
[31]
Zimmermann, H.-J. 1978. Fuzzy programming and linear programming with several objective functions. Fuzzy Sets and Systems. 1, 1 (Jan. 1978), 45--55.
[32]
Zimmermann, H.-J. 2001. Fuzzy Set Theory and its Applications (4th Edition). Springer.

Cited By

View all
  • (2024)Active Monitoring Mechanism for Control-Based Self-Adaptive SystemsProceedings of the ACM on Software Engineering10.1145/36607891:FSE(1841-1864)Online publication date: 12-Jul-2024
  • (2024)Formal Synthesis of Uncertainty Reduction ControllersProceedings of the 19th International Symposium on Software Engineering for Adaptive and Self-Managing Systems10.1145/3643915.3644095(2-13)Online publication date: 15-Apr-2024
  • (2024)Taming uncertainty with MDE: an historical perspectiveSoftware and Systems Modeling10.1007/s10270-024-01227-4Online publication date: 28-Oct-2024
  • Show More Cited By

Index Terms

  1. Taming uncertainty in self-adaptive software

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    ESEC/FSE '11: Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
    September 2011
    548 pages
    ISBN:9781450304436
    DOI:10.1145/2025113
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 09 September 2011

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. self-adaptation
    2. software architecture
    3. uncertainty

    Qualifiers

    • Research-article

    Conference

    ESEC/FSE'11
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 17 of 128 submissions, 13%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)30
    • Downloads (Last 6 weeks)2
    Reflects downloads up to 08 Feb 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Active Monitoring Mechanism for Control-Based Self-Adaptive SystemsProceedings of the ACM on Software Engineering10.1145/36607891:FSE(1841-1864)Online publication date: 12-Jul-2024
    • (2024)Formal Synthesis of Uncertainty Reduction ControllersProceedings of the 19th International Symposium on Software Engineering for Adaptive and Self-Managing Systems10.1145/3643915.3644095(2-13)Online publication date: 15-Apr-2024
    • (2024)Taming uncertainty with MDE: an historical perspectiveSoftware and Systems Modeling10.1007/s10270-024-01227-4Online publication date: 28-Oct-2024
    • (2023)ActivFORMS: A Formally Founded Model-based Approach to Engineer Self-adaptive SystemsACM Transactions on Software Engineering and Methodology10.1145/352258532:1(1-48)Online publication date: 13-Feb-2023
    • (2023)Modelling Uncertainty for Requirements: The Case of Surprises2023 IEEE 31st International Requirements Engineering Conference Workshops (REW)10.1109/REW57809.2023.00055(287-296)Online publication date: Sep-2023
    • (2023)Lightweight Approaches to DNN Regression Error Reduction: An Uncertainty Alignment PerspectiveProceedings of the 45th International Conference on Software Engineering10.1109/ICSE48619.2023.00106(1187-1199)Online publication date: 14-May-2023
    • (2023)Handling uncertainty in self-adaptive systems: an ontology-based reinforcement learning modelJournal of Reliable Intelligent Environments10.1007/s40860-022-00198-x10:1(19-44)Online publication date: 6-Jan-2023
    • (2023)Model‐checking‐driven explorative testing of CRDT designs and implementationsJournal of Software: Evolution and Process10.1002/smr.2555Online publication date: 15-Mar-2023
    • (2022)Do Performance Aspirations Matter for Guiding Software Configuration Tuning? An Empirical Investigation under Dual Performance ObjectivesACM Transactions on Software Engineering and Methodology10.1145/357185332:3(1-41)Online publication date: 24-Nov-2022
    • (2022)Are elevator software robust against uncertainties? results and experiences from an industrial case studyProceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3540250.3558955(1331-1342)Online publication date: 7-Nov-2022
    • Show More Cited By

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media