Skip to main content

Relaxing Claims: Coping with Uncertainty While Evaluating Assumptions at Run Time

  • Conference paper
Model Driven Engineering Languages and Systems (MODELS 2012)

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

Abstract

Self-adaptation enables software systems to respond to changing environmental contexts that may not be fully understood at design time. Designing a dynamically adaptive system (DAS) to cope with this uncertainty is challenging, as it is impractical during requirements analysis and design time to anticipate every environmental condition that the DAS may encounter. Previously, the RELAX language was proposed to make requirements more tolerant to environmental uncertainty, and Claims were applied as markers of uncertainty that document how design assumptions affect goals. This paper integrates these two techniques in order to assess the validity of Claims at run time while tolerating minor and unanticipated environmental conditions that can trigger adaptations. We apply the proposed approach to the dynamic reconfiguration of a remote data mirroring network that must diffuse data while minimizing costs and exposure to data loss. Results show RELAXing Claims enables a DAS to reduce adaptation costs.

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Ali, R., Dalpiaz, F., Giorgini, P.: A goal-based framework for contextual requirements modeling and analysis. Requir. Eng. 15, 439–458 (2010)

    Article  Google Scholar 

  2. Baresi, L., Pasquale, L., Spoletini, P.: Fuzzy goals for requirements-driven adaptation. In: Proceedings of the 18th IEEE International Requirements Engineering Conference, pp. 125–134. IEEE, Sydney (2010)

    Chapter  Google Scholar 

  3. Chen, B., Peng, X., Yu, Y., Zhao, W.: Are your sites down? requirements-driven self-tuning for the survivability of web systems. In: 19th International Conference on Requirements Engineering (2011)

    Google Scholar 

  4. Cheng, B.H.C., Sawyer, P., Bencomo, N., Whittle, J.: A Goal-Based Modeling Approach to Develop Requirements of an Adaptive System with Environmental Uncertainty. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 468–483. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  5. Chung, L., Nixon, B., Yu, E., Mylopoulos, J.: Non-Functional Requirements in Software Engineering. Kluwer Academic Publishers (2000)

    Google Scholar 

  6. DeLoach, S.A., Miller, M.: A goal model for adaptive complex systems. International Journal of Computational Intelligence: Theory and Practice 5(2) (2010)

    Google Scholar 

  7. Feather, M.S., Fickas, S., van Lamsweerde, A., Ponsard, C.: Reconciling system requirements and runtime behavior. In: Proc. of the 8th Int. Workshop on Software Specification and Design, Washington, DC, USA, pp. 50–59 (1998)

    Google Scholar 

  8. Fickas, S., Feather, M.S.: Requirements monitoring in dynamic environments. In: Proc. of the Second IEEE Int. Symp. on Requirements Eng., Washington, DC, USA, pp. 140–147 (1995)

    Google Scholar 

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

    Chapter  Google Scholar 

  10. Jackson, M., Zave, P.: Deriving specifications from requirements: an example. In: Proceedings of the 17th International Conference on Software Engineering, pp. 15–24. ACM, Seattle (1995)

    Google Scholar 

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

    Google Scholar 

  12. 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 

  13. Kramer, J., Magee, J.: The evolving philosophers problem: Dynamic change management. IEEE Trans. on Soft. Eng. 16(11), 1293–1306 (1990)

    Article  Google Scholar 

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

    Google Scholar 

  15. van Lamsweerde, A., Letier, E.: Handling obstacles in goal-oriented requirements engineering. IEEE Tran. on Soft. Eng. 26(10), 978–1005 (2000)

    Article  Google Scholar 

  16. Lapouchnian, A.: Exploiting Requirements Variability for Software Customization and Adaptation. Ph.D. thesis, University of Toronto (2011)

    Google Scholar 

  17. Letier, E., van Lamsweerde, A.: Reasoning about partial goal satisfaction for requirements and design engineering. In: Proc. of the 12th ACM SIGSOFT Int. Symp. on Foundations of Software Eng., pp. 53–62. ACM, Newport Beach (2004)

    Chapter  Google Scholar 

  18. Ramirez, A.J., Cheng, B.H.C.: Cheng: Adaptive monitoring of software requirements. In: Proceedings of the IEEE Workshop on Requirements at Run Time, pp. 41–50. RE@RunTime, Sydney, Australia (September 2010)

    Google Scholar 

  19. 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, New Zealand, pp. 501–516 (2011)

    Google Scholar 

  20. Robinson, W.N.: Monitoring software requirements using instrumented code. In: HICSS 2002: Proceedings of the 35th Annual Hawaii International Conference on System Sciences, pp. 276–285. IEEE Computer Society, Hawaii (2002)

    Google Scholar 

  21. Salifu, M., Yu, Y., Nuseibeh, B.: Specifying monitoring and switching problems in context. In: IEEE Int. Requirements Engineering Conference, pp. 211–220 (October 2007)

    Google Scholar 

  22. Sawyer, P., Bencomo, N., Letier, E., Finkelstein, A.: Requirements-aware systems: A research agenda for re self-adaptive systems. In: Proceedings of the 18th IEEE International Requirements Engineering Conference, Sydney, Australia, pp. 95–103 (September 2010)

    Google Scholar 

  23. Serrano, M., Serrano, M., Sampaio, J.C., Leite, P.: Dealing with softgoals at runtime: A fuzzy logic approach. In: Proceedings of the 2nd International Workshop on Requirements at Run Time, Trento, Italy, pp. 23–31 (August 2011)

    Google Scholar 

  24. Silva Souza, V.E., Lapouchnian, A., Robinson, W.N., Mylopoulos, J.: Awareness requirements for adaptive systems. Tech. rep., University of Trento (2010)

    Google Scholar 

  25. Tarjan, R.: Depth-first search and linear graph algorithms. In: Proceedings of the 12th Annual Symposium on Switching and Automata Theory, pp. 114–121 (October 1971)

    Google Scholar 

  26. Villegas, N.M., Müller, H.A., Tamura, G., Duchien, L., Casallas, R.: A framework for evaluating quality-driven self-adaptive software systems. In: Proceedings of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, Waikiki, Honolulu, HI, USA, pp. 80–89 (May 2011)

    Google Scholar 

  27. 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, New York (2004)

    Chapter  Google Scholar 

  28. Welsh, K., Sawyer, P., Bencomo, N.: Towards requirements aware systems: Run-time resolution of design-time assumptions. In: Proc. of the 26th IEEE/ACM Int. Conf. on Automated Software Engineering, Lawrence, Kansas, USA, pp. 560–563 (November 2011)

    Google Scholar 

  29. Welsh, K., Sawyer, P.: Understanding the Scope of Uncertainty in Dynamically Adaptive Systems. In: Wieringa, R., Persson, A. (eds.) REFSQ 2010. LNCS, vol. 6182, pp. 2–16. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  30. Whittle, J., Sawyer, P., Bencomo, N., Cheng, B.H.C., Bruel, J.M.: RELAX: Incorporating uncertainty into the specification of self-adaptive systems. In: Proc. of the 17th Int. Requirements Eng. Conf (RE 2009), Atlanta, Georgia, USA, pp. 79–88 (September 2009)

    Google Scholar 

  31. Yu, E.S.: Towards modeling and reasoning support for early-phase requirements engineering. In: Proc. of the Third IEEE Int. Symposium on Requirements Eng., Annapolis, MD, USA, pp. 226–235 (January 1997)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ramirez, A.J., Cheng, B.H.C., Bencomo, N., Sawyer, P. (2012). Relaxing Claims: Coping with Uncertainty While Evaluating Assumptions at Run Time. In: France, R.B., Kazmeier, J., Breu, R., Atkinson, C. (eds) Model Driven Engineering Languages and Systems. MODELS 2012. Lecture Notes in Computer Science, vol 7590. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-33666-9_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-33666-9_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-33665-2

  • Online ISBN: 978-3-642-33666-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics