Towards a Requirements Modeling Language for Self-Adaptive Systems

  • Nauman A. Qureshi
  • Ivan J. Jureta
  • Anna Perini
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7195)


[Context and motivation] Self-adaptive systems (SAS) monitor and adapt to changing end-user requirements, operating context conditions, and resource availability. Specifying requirements for such dynamic systems is not trivial. Most of the research on self-adaptive systems (SAS) focuses on finding solutions to the requirements that SAS is built for. However, elicitation and representation of requirements for SAS has received less attention at early stages of requirements engineering (RE). [Question/problem] How to represent requirements for SAS in a way which can be read by non-engineering stakeholders? [Principal ideas/results] A requirements modeling language with a diagrammatic syntax to be used to elicit and represent requirements for SAS and perform analysis based on our recently proposed core ontology to perform RE for SAS. [Contribution] A modeling language, called Adaptive RML, for the representation of early requirements for Self-adaptive systems (SAS). The language has graphical primitives in line with classical goal modeling languages and is formalized via a mapping to Techne. Early validation is performed by modeling the same case study in an established goal modeling language and in Adaptive RML. The results suggest that context and resource concepts, as well as relegation and influence relations should be part of graphical modeling languages used to make early requirements models for SAS and to perform analysis over them.


Requirements Engineering Requirements Modeling Self-Adaptive Systems 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Cheng, B.H.C., de Lemos, R., Giese, H., Inverardi, P., Magee, J., Andersson, J., Becker, B., Bencomo, N., Brun, Y., Cukic, B., Di Marzo Serugendo, G., Dustdar, S., Finkelstein, A., Gacek, C., Geihs, K., Grassi, V., Karsai, G., Kienle, H.M., Kramer, J., Litoiu, M., Malek, S., Mirandola, R., Müller, H.A., Park, S., Shaw, M., Tichy, M., Tivoli, M., Weyns, D., Whittle, J.: Software Engineering for Self-Adaptive Systems: A Research Roadmap. In: Cheng, B.H.C., de Lemos, R., Giese, H., Inverardi, P., Magee, J. (eds.) Self-Adaptive Systems. LNCS, vol. 5525, pp. 1–26. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  2. 2.
    Penserini, L., Perini, A., Susi, A., Mylopoulos, J.: High variability design for software agents: Extending Tropos. TAAS 2(4) (2007)Google Scholar
  3. 3.
    Morandini, M., Penserini, L., Perini, A.: Towards goal-oriented development of self-adaptive systems. In: ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems (SEAMS 2008), pp. 9–16 (2008)Google Scholar
  4. 4.
    Whittle, J., Sawyer, P., Bencomo, N., Cheng, B.H.C., Bruel, J.-M.: RELAX: Incorporating Uncertainty into the Specification of Self-Adaptive Systems. In: 17th IEEE Int. Requirements Eng. Conf., Atlanta, pp. 79–88 (2009)Google Scholar
  5. 5.
    Dardenne, A., van Lamsweerde, A., Fickas, S.: Goal-directed requirements acquisition. Sci. Comput. Program. 20(1-2), 3–50 (1993)CrossRefzbMATHGoogle Scholar
  6. 6.
    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)CrossRefGoogle Scholar
  7. 7.
    Qureshi, N.A., Perini, A.: Engineering adaptive requirements. In: ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems (SEAMS 2009), pp. 126–131 (2009)Google Scholar
  8. 8.
    Baresi, L., Pasquale, L., Spoletini, P.: Fuzzy goals for requirements-driven adaptation. In: 18th IEEE Int. Requirements Eng. Conf., pp. 125–134 (2010)Google Scholar
  9. 9.
    Qureshi, N.A., Perini, A.: Requirements engineering for adaptive service based applications. In: 18th IEEE Int. Requirements Eng. Conf., pp. 108–111 (2010)Google Scholar
  10. 10.
    Sawyer, P., Bencomo, N., Whittle, J., Letier, E., Finkelstein, A.: Requirements-aware systems a research agenda for re for self-adaptive systems. In: 18th IEEE Int. Requirements Eng. Conf., pp. 95–103 (2010)Google Scholar
  11. 11.
    Qureshi, N.A., Jureta, I., Perini, A.: Requirements Engineering for Self-Adaptive Systems: Core Ontology and Problem Statement. In: Mouratidis, H., Rolland, C. (eds.) CAiSE 2011. LNCS, vol. 6741, pp. 33–47. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  12. 12.
    Jureta, I.J., Mylopoulos, J., Faulkner, S.: Revisiting the core ontology and problem in requirements engineering. In: 16th IEEE Int. Requirements Eng. Conf., pp. 71–80 (2008)Google Scholar
  13. 13.
    Jureta, I.J., Borgida, A., Ernst, N.A., Mylopoulos, J.: Techne: Towards a new generation of requirements modeling languages with goals, preferences, and inconsistency handling. In: 18th IEEE Int. Requirements Eng. Conf., pp. 115–124 (2010)Google Scholar
  14. 14.
    Yu, E.: Towards modeling and reasoning support for early requirements engineering. In: Proc. 3rd IEEE Int. Symp. on Requirements Eng., pp. 226–235 (1997)Google Scholar
  15. 15.
    Ali, R., Dalpiaz, F., Giorgini, P.: A Goal Modeling Framework for Self-contextualizable Software. In: Halpin, T., Krogstie, J., Nurcan, S., Proper, E., Schmidt, R., Soffer, P., Ukor, R. (eds.) BPMDS 2009 and EMMSAD 2009. LNBIP, vol. 29, pp. 326–338. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  16. 16.
    Marchetto, A., Nguyen, C.D., Di Francescomarino, C., Qureshi, N.A., Perini, A., Tonella, P.: A design methodology for real services. In: Proceedings of the 2nd International Workshop on Principles of Engineering Service-Oriented Systems, PESOS 2010, pp. 15–21. ACM (2010)Google Scholar
  17. 17.
    Moody, D.L., Heymans, P., Matulevicius, R.: Improving the effectiveness of visual representations in requirements engineering: An evaluation of i* visual syntax. In: 17th IEEE Int. Requirements Eng. Conf., pp. 171–180 (2009)Google Scholar
  18. 18.
    Salifu, M., Yu, Y., Nuseibeh, B.: Specifying monitoring and switching problems in context. In: 15th IEEE Int. Requirements Eng. Conf., pp. 211–220 (2007)Google Scholar
  19. 19.
    Finkelstein, A., Savigni, A.: A framework for requirements engineering for context-aware services. In: Proc. of 1st International Workshop From Software Requirements to Architectures (STRAW 2001), pp. 200–201 (2001)Google Scholar
  20. 20.
    Dey, A.K.: Understanding and using context. Personal Ubiquitous Comput. 5(1), 4–7 (2001)CrossRefGoogle Scholar
  21. 21.
    Dalpiaz, F., Giorgini, P., Mylopoulos, J.: An Architecture for Requirements-Driven Self-reconfiguration. In: van Eck, P., Gordijn, J., Wieringa, R. (eds.) CAiSE 2009. LNCS, vol. 5565, pp. 246–260. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  22. 22.
    Fickas, S., Feather, M.S.: Requirements monitoring in dynamic environments. In: RE 1995: Proceedings of the Second IEEE Intl. Symp. on Reqs. Eng., p. 140. IEEE CS (1995)Google Scholar
  23. 23.
    Feather, M.S., Fickas, S., Lamsweerde, A.V., Ponsard, C.: Reconciling system requirements and runtime behavior. In: IWSSD 1998: Proceedings of the 9th International Workshop on Software Specification and Design, p. 50. IEEE CS (1998)Google Scholar
  24. 24.
    Robinson, W.: A Roadmap for Comprehensive Requirements Monitoring. Computer 43(5), 64–72 (2009)CrossRefGoogle Scholar
  25. 25.
    Kramer, J., Magee, J.: Self-managed systems: an architectural challenge. In: Future of Software Engineering, FOSE 2007, pp. 259–268 (May 2007)Google Scholar
  26. 26.
    Qureshi, N.A., Perini, A., Ernst, N.A., Mylopoulos, J.: Towards a continuous requirements engineering framework for self-adaptive systems. In: RE 2010 Workshops, First International Workshop on Requirements@Run.Time (RE@RunTime), pp. 9–16 (2010)Google Scholar
  27. 27.
    Qureshi, N.A., Perini, A.: Continuous adaptive requirements engineering: An architecture for self-adaptive service-based applications. In: First IEEE International Workshop on Requirements@Run.Time (RE@RunTime), pp. 17–24 (2010)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Nauman A. Qureshi
    • 1
  • Ivan J. Jureta
    • 2
  • Anna Perini
    • 1
  1. 1.Software Engineering Research GroupFondazione Bruno Kessler - CITTrentoItaly
  2. 2.FNRS & Louvain School of ManagementUniversity of NamurBelgium

Personalised recommendations