A Goal-Based Modeling Approach to Develop Requirements of an Adaptive System with Environmental Uncertainty

  • Betty H. C. Cheng
  • Pete Sawyer
  • Nelly Bencomo
  • Jon Whittle
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5795)


Dynamically adaptive systems (DASs) are intended to monitor the execution environment and then dynamically adapt their behavior in response to changing environmental conditions. The uncertainty of the execution environment is a major motivation for dynamic adaptation; it is impossible to know at development time all of the possible combinations of environmental conditions that will be encountered. To date, the work performed in requirements engineering for a DAS includes requirements monitoring and reasoning about the correctness of adaptations, where the DAS requirements are assumed to exist. This paper introduces a goal-based modeling approach to develop the requirements for a DAS, while explicitly factoring uncertainty into the process and resulting requirements. We introduce a variation of threat modeling to identify sources of uncertainty and demonstrate how the RELAX specification language can be used to specify more flexible requirements within a goal model to handle the uncertainty.


Requirements engineering goal models uncertainty dynamically adaptive systems 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    van Lamsweerde, A.: Requirements Engineering: From System Goals to UML Models to Software Specifications. John Wiley & Sons, Chichester (2009)Google Scholar
  2. 2.
    Schneier, B.: Attack Trees - Modeling security threats. Dr. Dobb’s Journal (1999)Google Scholar
  3. 3.
    Zhang, J., Cheng, B.H.C.: Model-based development of dynamically adaptive software. In: ICSE 2006: Proc. of the 28th Int. Conf. on Software engineering, pp. 371–380 (2006)Google Scholar
  4. 4.
    Goldsby, H., Sawyer, P., Bencomo, N., Hughes, D., Cheng, B.H.C.: Goal-based modeling of dynamically adaptive system requirements. In: 15th IEEE Int. Conf. on the Engineering of Computer Based Systems, ECBS (2008)Google Scholar
  5. 5.
    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 IEEE Int. Requirements Engineering Conf., RE 2009 (to appear, 2009)Google Scholar
  6. 6.
    Yijun, Y., Lapouchnian, A., Liaskos, S., Mylopoulos, J., Leite, J.: From Goals to High-Variability Software Design. In: An, A., Matwin, S., Raś, Z.W., Ślęzak, D. (eds.) Foundations of Intelligent Systems. LNCS (LNAI), vol. 4994, pp. 1–16. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  7. 7.
    Mylopoulos, J., Chung, L., Yu, E.: From object-oriented to goal-oriented requirements analysis. Commun. ACM 42(1), 31–37 (1999)CrossRefGoogle Scholar
  8. 8.
    Mead, N.: Identifying Security Requirements using the SQUARE Method. In: Integrating Security and Software Engineering: Advances and Future Visions, pp. 44–69. Idea Group, USA (2006)Google Scholar
  9. 9.
    den Braber, F., Dimitrakos, T., Gran, B.A., Lund, M.S., Stölen, K., Aagedal, J.O.: The coras methodology: model-based risk assessment using uml and up. In: UML and the unified process, pp. 332–357. IGI Publishing, Hershey (2003)CrossRefGoogle Scholar
  10. 10.
    Cheng, B.H.C., et al.: 08031 – software engineering for self-adaptive systems: A research road map. In: Cheng, B.H.C., de Lemos, R., Giese, H., Inverardi, P., Magee, J. (eds.) Software Engineering for Self-Adaptive Systems. Number 08031 in Dagstuhl Seminar Proceedings (2008)Google Scholar
  11. 11.
    Kramer, J., Magee, J.: Self-managed systems: an architectural challenge. In: Briand, L.C., Wolf, A.L. (eds.) FOSE, pp. 259–268 (2007)Google Scholar
  12. 12.
    Jing, X., Pinel, P., Pi, L., Aranega, V., Baron, C.: Modeling uncertain and imprecise information in process modeling with UML. In: COMAD, Computer Society of India, pp. 237–240 (2008)Google Scholar
  13. 13.
    Ma, Z.M., Yan, L.: Fuzzy XML data modeling with the UML and relational data models. Data Knowl. Eng. 63(3), 972–996 (2007)CrossRefGoogle Scholar
  14. 14.
    Uchitel, S., Kramer, J., Magee, J.: Behaviour model elaboration using partial labelled transition systems. In: ESEC/FSE-11, pp. 19–27 (2003)Google Scholar
  15. 15.
    Yu, E.S.K.: Towards modeling and reasoning support for early-phase requirements engineering. In: Proc. of 3rd IEEE Int. Symp. on Requirements Engineering, RE 1997 (1997)Google Scholar
  16. 16.
    Lapouchnian, A., Liaskos, S., Mylopoulos, J., Yu, Y.: Towards requirements-driven autonomic systems design. In: Workshop on the Design and Evolution of Autonomic Application Software, DEAS 2005 (2005)Google Scholar
  17. 17.
    Lapouchnian, A., Yu, Y., Liaskos, S., Mylopoulos, J.: Requirements-driven design of autonomic application software. In: Proc. of CASCON 2006 (2006)Google Scholar
  18. 18.
    Morandini, M., Penserini, L., Perini, A.: Modelling self-adaptivity: A goal-oriented approach. In: SASO 2008: Proc. of 2008 Second IEEE Int. Conf. on Self-Adaptive and Self-Organizing Systems, pp. 469–470 (2008)Google Scholar
  19. 19.
    Fickas, S., Feather, M.: Requirements monitoring in dynamic environments. In: 2nd IEEE Int. Symp. on Requirements Engineering, RE 1995 (1995)Google Scholar
  20. 20.
    Dingwall-Smith, A., Finkelstein, A.: Checking complex compositions of web services against policy constraints. In: MSVVEIS, pp. 94–103. INSTICC Press (2007)Google Scholar
  21. 21.
    Wang, Y., McIlraith, S.A., Yu, Y., Mylopoulos, J.: An automated approach to monitoring and diagnosing requirements. In: ASE, pp. 293–302. ACM, New York (2007)CrossRefGoogle Scholar
  22. 22.
    Letier, E., van Lamsweerde, A.: Reasoning about partial goal satisfaction for requirements and design engineering. In: Proc. of 12th ACM SIGSOFT Int. Symp. on Foundations of Software Engineering, pp. 53–62 (2004)Google Scholar
  23. 23.
    Morin, B., Fleurey, F., Bencomo, N., Jézéquel, J.M., Solberg, A., Dehlen, V., Blair, G.: An aspect-oriented and model-driven approach for managing dynamic variability. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 782–796. Springer, Heidelberg (2008)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Betty H. C. Cheng
    • 1
  • Pete Sawyer
    • 2
  • Nelly Bencomo
    • 2
  • Jon Whittle
    • 2
  1. 1.Department of Computer Science and EngineeringMichigan State University, East LansingMichiganUSA
  2. 2.Computing Department, InfoLab21Lancaster UniversityLA1 4WAUnited Kingdom

Personalised recommendations