Skip to main content

Automated Optimization of Weighted Non-functional Objectives in Self-adaptive Systems

  • Conference paper
  • First Online:
Search-Based Software Engineering (SSBSE 2018)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 11036))

Included in the following conference series:

Abstract

A self-adaptive system (SAS) can reconfigure at run time in response to adverse combinations of system and environmental conditions in order to continuously satisfy its requirements. Moreover, SASs are subject to cross-cutting non-functional requirements (NFRs), such as performance, security, and usability, that collectively characterize how functional requirements (FRs) are to be satisfied. In many cases, the trigger for adapting an SAS may be due to a violation of one or more NFRs. For a given NFR, different combinations of hierarchically-organized FRs may yield varying degrees of satisfaction (i.e., satisficement). This paper presents Providentia, a search-based technique to optimize NFR satisficement when subjected to various sources of uncertainty (e.g., environment, interactions between system elements, etc.). Providentia searches for optimal combinations of FRs that, when considered with different subgoal decompositions and/or differential weights, provide optimal satisficement of NFR objectives. Experimental results suggest that using an SAS goal model enhanced with search-based optimization significantly improves system performance when compared with manually- and randomly-generated weights and subgoals.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 59.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 74.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    This work does not use the KAOS formal refinement infrastructure.

  2. 2.

    For this paper, we select a threshold of 0.4 to signify requirement non-satisfaction based on empirical evidence.

  3. 3.

    The Wilcoxon-Mann-Whitney U-test was performed for all presented statistics.

References

  1. Arcuri, A., Briand, L.: A practical guide for using statistical tests to assess randomized algorithms in software engineering. In: Proceedings of the 33rd International Conference on Software Engineering, ICSE 2011, pp. 1–10. ACM (2011)

    Google Scholar 

  2. Baresi, L., Pasquale, L., Spoletini, P.: Fuzzy goals for requirements-driven adaptation. In: 18th IEEE International Requirements Engineering Conference (RE), 27 September 2010-1 October 2010, pp. 125–134 (2010)

    Google Scholar 

  3. Bencomo, N., Belaggoun, A.: A world full of surprises: Bayesian theory of surprise to quantify degrees of uncertainty. In: Companion Proceedings of the 36th International Conference on Software Engineering, pp. 460–463. ACM (2014)

    Google Scholar 

  4. Cailliau, A., van Lamsweerde, A.: Runtime monitoring and resolution of probabilistic obstacles to system goals. In: Proceedings of the 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, pp. 1–11. IEEE Press (2017)

    Google Scholar 

  5. Chung, L., Nixon, B., Yu, E., Mylopoulos, J.: Non-functional requirements. Softw. Eng. (2000)

    Google Scholar 

  6. Chung, L., Nixon, B.A., Yu, E., Mylopoulos, J.: Non-functional Requirements in Software Engineering. Springer, Heidelberg (2012). https://doi.org/10.1007/978-1-4615-5269-7

    Book  MATH  Google Scholar 

  7. Dalpiaz, F., Borgida, A., Horkoff, J., Mylopoulos, J.: Runtime goal models: keynote. In: 2013 IEEE Seventh International Conference on Research Challenges in Information Science (RCIS), pp. 1–11. IEEE (2013)

    Google Scholar 

  8. Dardenne, A., Van Lamsweerde, A., Fickas, S.: Goal-directed requirements acquisition. Sci. Comput. Program. 20(1), 3–50 (1993)

    Article  MATH  Google Scholar 

  9. deGrandis, P., Valetto, G.: Elicitation and utilization of application-level utility functions. In: Proceedings of the 6th International Conference on Autonomic Computing, ICAC 2009, pp. 107–116. ACM (2009)

    Google Scholar 

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

    Article  Google Scholar 

  11. Giorgini, P., Mylopoulos, J., Sebastiani, R.: Goal-oriented requirements analysis and reasoning in the tropos methodology. Eng. Appl. Artif. Intell. 18(2), 159–171 (2005)

    Article  Google Scholar 

  12. Holland, J.H.: Adaptation in Natural and Artificial Systems. MIT Press, Cambridge (1992)

    Google Scholar 

  13. Ji, M., Veitch, A., Wilkes, J.: Seneca: Remote mirroring done write. In: USENIX 2003 Annual Technical Conference, pp. 253–268. USENIX Association, Berkeley, June 2003

    Google Scholar 

  14. Keeton, K., Santos, C., Beyer, D., Chase, J., Wilkes, J.: Designing for disasters. In: Proceedings of the 3rd USENIX Conference on File and Storage Technologies, pp. 59–62. USENIX Association, Berkeley (2004)

    Google Scholar 

  15. Kephart, J., Chess, D.: The vision of autonomic computing. Computer 36(1), 41–50 (2003)

    Article  MathSciNet  Google Scholar 

  16. Kobayashi, N., Morisaki, S., Atsumi, N., Yamamoto, S.: Quantitative non functional requirements evaluation using softgoal weight. J. Internet Serv. Inf. Secur. 6(1), 37–46 (2016)

    Google Scholar 

  17. van Lamsweerde, A.: Requirements Engineering: From System Goals to UML Models to Software Specifications. Wiley, Hoboken (2009)

    Google Scholar 

  18. Letier, E., van Lamsweerde, A.: Reasoning about partial goal satisfaction for requirements and design engineering. In: Proceedings of the 12th ACM SIGSOFT Twelfth International Symposium on Foundations of Software Engineering, pp. 53–62 (2004)

    Google Scholar 

  19. McKinley, P., Sadjadi, S., Kasten, E., Cheng, B.H.C.: Composing adaptive software. Computer 37(7), 56–64 (2004)

    Article  Google Scholar 

  20. Mylopoulos, J., Chung, L., Nixon, B.: Representing and using nonfunctional requirements: a process-oriented approach. IEEE Trans. Softw. Eng. 18(6), 483–497 (1992)

    Article  Google Scholar 

  21. Nagel, B., Gerth, C., Post, J., Engels, G.: Kaos4SOA-extending KAOS models with temporal and logical dependencies. In: CAiSE Forum, pp. 9–16 (2013)

    Google Scholar 

  22. Paucar, L.H.G., Bencomo, N.: The reassessment of preferences of non-functional requirements for better informed decision-making in self-adaptation. In: IEEE International Requirements Engineering Conference Workshops (REW), pp. 32–38. IEEE (2016)

    Google Scholar 

  23. Qureshi, N.A., Perini, A.: Engineering adaptive requirements. In: 2009 ICSE Workshop on Software Engineering for Adaptive and Self-managing Systems, pp. 126–131, May 2009

    Google Scholar 

  24. Ramirez, A.J., Cheng, B.H.C.: Automatically deriving utility functions for monitoring software requirements. In: Proceedings of the 2011 International Conference on Model Driven Engineering Languages and Systems Conference, Wellington , pp. 501–516 (2011)

    Google Scholar 

  25. Ramirez, A.J., Fredericks, E.M., Jensen, A.C., Cheng, B.H.C.: Automatically RELAXing a goal model to cope with uncertainty. In: Fraser, G., Teixeira de Souza, J. (eds.) SSBSE 2012. LNCS, vol. 7515, pp. 198–212. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-33119-0_15

    Chapter  Google Scholar 

  26. Ramirez, A.J., Knoester, D.B., Cheng, B.H.C., McKinley, P.K.: Applying genetic algorithms to decision making in autonomic computing systems. In: Proceedings of the 6th International Conference on Autonomic Computing, pp. 97–106 (2009)

    Google Scholar 

  27. Salehie, M., Tahvildari, L.: Towards a goal-driven approach to action selection in self-adaptive software. Softw.: Pract. Exp. 42(2), 211–233 (2012)

    Google Scholar 

  28. Supakkul, S., Hill, T., Chung, L., Tun, T.T., do Prado Leite, J.C.S.: An NFR pattern approach to dealing with NFRS. In: 2010 18th IEEE International Requirements Engineering Conference (RE), pp. 179–188. IEEE (2010)

    Google Scholar 

  29. Sykes, D., Heaven, W., Magee, J., Kramer, J.: Exploiting non-functional preferences in architectural adaptation for self-managed systems. In: Proceedings of the 2010 ACM Symposium on Applied Computing, pp. 431–438. ACM (2010)

    Google Scholar 

  30. Walsh, W.E., Tesauro, G., Kephart, J.O., Das, R.: Utility functions in autonomic systems. In: Proceedings of the First IEEE International Conference on Autonomic Computing, pp. 70–77. IEEE Computer Society (2004)

    Google Scholar 

  31. Whittle, J., Sawyer, P., Bencomo, N., Cheng, B.H.C., Bruel, J.: Relax: Incorporating uncertainty into the specification of self-adaptive systems. In: 17th IEEE International Requirements Engineering Conference (RE 2009), pp. 79–88 (2009)

    Google Scholar 

  32. Yamamoto, S.: An approach for evaluating softgoals using weight. In: Khalil, I., Neuhold, E., Tjoa, A.M., Da Xu, L., You, I. (eds.) CONFENIS/ICT-EurAsia -2015. LNCS, vol. 9357, pp. 203–212. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-24315-3_20

    Chapter  Google Scholar 

  33. Yang, Z., Jin, Z., Li, Z.: Achieving adaptation for adaptive systems via runtime verification: a model-driven approach. arXiv preprint arXiv:1704.00869 (2017)

  34. Yrjönen, A., Merilinna, J.: Extending the NFR framework with measurable nonfunctional requirements. In: NFPinDSML@ MoDELS (2009)

    Google Scholar 

  35. Yu, E.S.K.: Towards modelling and reasoning support for early-phase requirements engineering. In: Proceedings of the Third IEEE International Symposium on Requirements Engineering, pp. 226–235 (1997)

    Google Scholar 

  36. Yu, E.: Social Modeling for Requirements Engineering. MIT, Cambridge (2011)

    Google Scholar 

Download references

Acknowledgements

This work has been supported in part by grants from the NSF (CNS-1657061, CNS-1305358, and DBI-0939454), the Michigan Space Grant Consortium, the Comcast Innovation Fund, Oakland University, Ford Motor Company, General Motors Research, the Air Force Research Laboratory (AFRL) under agreement number FA8750-16-2-0284, and Michigan State University through the Institute for Cyber-Enabled Research. The U.S. Government is authorized to reproduce and distribute reprints for Governmental purposes notwithstanding any copyright notation thereon. The views and conclusions contained herein are those of the authors and do not necessarily represent the opinions of the sponsors.

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Kate M. Bowers , Erik M. Fredericks or Betty H. C. Cheng .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Bowers, K.M., Fredericks, E.M., Cheng, B.H.C. (2018). Automated Optimization of Weighted Non-functional Objectives in Self-adaptive Systems. In: Colanzi, T., McMinn, P. (eds) Search-Based Software Engineering. SSBSE 2018. Lecture Notes in Computer Science(), vol 11036. Springer, Cham. https://doi.org/10.1007/978-3-319-99241-9_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-99241-9_9

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-99240-2

  • Online ISBN: 978-3-319-99241-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics