Requirements Engineering for Self-Adaptive Systems: Core Ontology and Problem Statement

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


The vision for self-adaptive systems (SAS) is that they should continuously adapt their behavior at runtime in response to changing user’s requirements, operating contexts, and resource availability. Realizing this vision requires that we understand precisely how the various steps in the engineering of SAS depart from the established body of knowledge in information systems engineering. We focus in this paper on the requirements engineering for SAS. We argue that SAS need to have an internal representation of the requirements problem that they are solving for their users. We formally define a minimal set of concepts and relations needed to formulate the requirements problem, its solutions, the changes in its formulation that arise from changes in the operating context, requirements, and resource availability. We thereby precisely define the runtime requirements adaptation problem that a SAS should be engineered to solve.


Requirements Engineering Runtime Adaptation Problem Self-Adaptive Systems 


  1. 1.
    Ali, R., Dalpiaz, F., Giorgini, P.: Location-based software modeling and analysis: Tropos-based approach. In: Li, Q., Spaccapietra, S., Yu, E., Olivé, A. (eds.) ER 2008. LNCS, vol. 5231, pp. 169–182. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  2. 2.
    Baresi, L., Pasquale, L., Spoletini, P.: Fuzzy goals for requirements-driven adaptation. In: 18th IEEE Int. Requirements Eng. Conf., Sydney, Australia, pp. 125–134 (2010)Google Scholar
  3. 3.
    Brun, Y., Serugendo, G.D.M., Gacek, C., Giese, H.M., Kienle, H., Litoiu, M., Müller, H.A., Pezzè, M., Shaw, M.: Engineering self-adaptive systems through feedback loops. Software Engineering for Self-Adaptive Systems 5525, 48–70 (2009)CrossRefGoogle Scholar
  4. 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)CrossRefGoogle Scholar
  5. 5.
    Cheng, B.H., de Lemos, R., Giese, H., Inverardi, P., Magee, 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.) Software Engineering for Self-Adaptive Systems. LNCS, vol. 5525, pp. 1–26. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  6. 6.
    Dey, A.K.: Understanding and using context. Personal Ubiquitous Comput. 5(1), 4–7 (2001)MathSciNetCrossRefGoogle Scholar
  7. 7.
    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
  8. 8.
    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., Sydney, Australia, pp. 115–124 (2010)Google Scholar
  9. 9.
    Kramer, J., Magee, J.: Self-managed systems: an architectural challenge. In: Future of Software Engineering, 2007. FOSE 2007, pp. 259–268 (May 2007)Google Scholar
  10. 10.
    Liaskos, S., Lapouchnian, A., Yu, Y., Yu, E., Mylopoulos, J.: On goal-based variability acquisition and analysis. In: 14th IEEE Int. Requirements Eng. Conf., pp. 79–88 (2006)Google Scholar
  11. 11.
    Liaskos, S., McIlraith, S.A., Mylopoulos, J.: Integrating preferences into goal models for requirements engineering. In: 18th IEEE Int. Requirements Eng. Conf., Sydney, Australia, pp. 135–144 (2010)Google Scholar
  12. 12.
    McCarthy, J.: Notes on formalizing context. In: Proceedings of the 13th International Joint Conference on Artifical Intelligence, vol. 1, pp. 555–560. Morgan Kaufmann Publishers Inc., San Francisco (1993)Google Scholar
  13. 13.
    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. ACM, New York (2008)Google Scholar
  14. 14.
    Penserini, L., Perini, A., Susi, A., Mylopoulos, J.: High variability design for software agents: Extending Tropos. TAAS 2(4) (2007)Google Scholar
  15. 15.
    Qureshi, N.A., Jureta, I., Perini, A.: On runtime requirements adaptation problem for self-adaptive systems, SE Research Group Technical Report (TR-FBK-SE-2010-1), FBK, Trento, Italy (2010),
  16. 16.
    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. IEEE Computer Society, Washington, DC, USA (2009)CrossRefGoogle Scholar
  17. 17.
    Qureshi, N.A., Perini, A.: Continuous adaptive requirements engineering: An architecture for self-adaptive service-based applications. In: First Int. Workshop on Requirements@Run.Time (RE@RunTime), Sydney, Australia, pp. 17–24 (2010)Google Scholar
  18. 18.
    Qureshi, N.A., Perini, A.: Requirements engineering for adaptive service based applications. In: 18th IEEE Int. Requirements Eng. Conf., Sydney, Australia, pp. 108–111 (2010)Google Scholar
  19. 19.
    Qureshi, N.A., Perini, A., Ernst, N.A., Mylopoulos, J.: Towards a continuous requirements engineering framework for self-adaptive systems. In: First Int. Workshop on Requirements@Run.Time (RE@RunTime), held at (RE 2010), Sydney, Australia, pp. 9–16 (2010)Google Scholar
  20. 20.
    M., Salifu, Yu, Y., Nuseibeh, B.: Specifying monitoring and switching problems in context. In: 15th IEEE Int. Requirements Eng. Conf., pp. 211–220 (2007)Google Scholar
  21. 21.
    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., Sydney, Australia, pp. 95–103 (2010)Google Scholar
  22. 22.
    Souza, V.E.S., Lapouchnian, A., Robinson, W.N., Mylopoulos, J.: Awareness requirements for adaptive systems, technical Report DISI-10-049, DISI, Universit‘a di Trento, Italy (2010)Google Scholar
  23. 23.
    Whittle, J., Sawyer, P., Bencomo, N., Cheng, B.H., 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
  24. 24.
    Zave, P., Jackson, M.: Four dark corners of requirements engineering. ACM Trans. Softw. Eng. Methodol. 6(1), 1–30 (1997)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

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

Personalised recommendations