On Runtime Requirements Adaptation Problem for Self-Adaptive Systems

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.

[1]  Eric Yu,et al.  Modeling Strategic Relationships for Process Reengineering , 1995, Social Modeling for Requirements Engineering.

[2]  Neil A. Ernst,et al.  Towards a continuous requirements engineering framework for self-adaptive systems , 2010, 2010 First International Workshop on Requirements@Run.Time.

[3]  Anna Perini,et al.  Continuous adaptive requirements engineering: An architecture for self-adaptive service-based applications , 2010, 2010 First International Workshop on Requirements@Run.Time.

[4]  Anna Perini,et al.  Requirements Engineering for Adaptive Service Based Applications , 2010, 2010 18th IEEE International Requirements Engineering Conference.

[5]  Neil A. Ernst,et al.  Techne: Towards a New Generation of Requirements Modeling Languages with Goals, Preferences, and Inconsistency Handling , 2010, 2010 18th IEEE International Requirements Engineering Conference.

[6]  Luciano Baresi,et al.  Fuzzy Goals for Requirements-Driven Adaptation , 2010, 2010 18th IEEE International Requirements Engineering Conference.

[7]  John Mylopoulos,et al.  Integrating Preferences into Goal Models for Requirements Engineering , 2010, 2010 18th IEEE International Requirements Engineering Conference.

[8]  Nelly Bencomo,et al.  RELAX: a language to address uncertainty in self-adaptive systems requirement , 2010, Requirements Engineering.

[9]  Anna Perini,et al.  A design methodology for real services , 2010, PESOS '10.

[10]  Nelly Bencomo,et al.  Requirements-Aware Systems , 2010 .

[11]  Nelly Bencomo,et al.  A Goal-Based Modeling Approach to Develop Requirements of an Adaptive System with Environmental Uncertainty , 2009, MoDELS.

[12]  Nelly Bencomo,et al.  RELAX: Incorporating Uncertainty into the Specification of Self-Adaptive Systems , 2009, 2009 17th IEEE International Requirements Engineering Conference.

[13]  Mary Shaw,et al.  Software Engineering for Self-Adaptive Systems: A Research Roadmap , 2009, Software Engineering for Self-Adaptive Systems.

[14]  Mary Shaw,et al.  Engineering Self-Adaptive Systems through Feedback Loops , 2009, Software Engineering for Self-Adaptive Systems.

[15]  Raian Ali,et al.  A Goal Modeling Framework for Self-contextualizable Software , 2009, BMMDS/EMMSAD.

[16]  John Mylopoulos,et al.  An Architecture for Requirements-Driven Self-reconfiguration , 2009, CAiSE.

[17]  Anna Perini,et al.  Engineering adaptive requirements , 2009, 2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems.

[18]  Raian Ali,et al.  Location-Based Software Modeling and Analysis: Tropos-Based Approach , 2008, ER.

[19]  John Mylopoulos,et al.  Revisiting the Core Ontology and Problem in Requirements Engineering , 2008, 2008 16th IEEE International Requirements Engineering Conference.

[20]  Anna Perini,et al.  Towards goal-oriented development of self-adaptive systems , 2008, SEAMS '08.

[21]  Bashar Nuseibeh,et al.  Specifying Monitoring and Switching Problems in Context , 2007, 15th IEEE International Requirements Engineering Conference (RE 2007).

[22]  John Mylopoulos,et al.  High variability design for software agents: Extending Tropos , 2007, TAAS.

[23]  Wassiou Sitou,et al.  Towards Requirements Engineering for Context Adaptive Systems , 2007, 31st Annual International Computer Software and Applications Conference (COMPSAC 2007).

[24]  Jeff Magee,et al.  Self-Managed Systems: an Architectural Challenge , 2007, Future of Software Engineering (FOSE '07).

[25]  Yijun Yu,et al.  On Goal-based Variability Acquisition and Analysis , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[26]  Rogério de Lemos,et al.  Proceedings of the 7th International Symposium on Software Engineering for Adaptive and Self-Managing Systems , 2012, ICSE 2012.

[27]  Fausto Giunchiglia,et al.  Tropos: An Agent-Oriented Software Development Methodology , 2004, Autonomous Agents and Multi-Agent Systems.

[28]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[29]  Anind K. Dey,et al.  Understanding and Using Context , 2001, Personal and Ubiquitous Computing.

[30]  A. van Lamsweerde Goal-oriented requirements engineering: a guided tour , 2001, Proceedings Fifth IEEE International Symposium on Requirements Engineering.

[31]  Anthony Finkelstein,et al.  A framework for requirements engineering for context-aware services , 2001, ICSE 2001.

[32]  M.S. Feather,et al.  Reconciling system requirements and runtime behavior , 1998, Proceedings Ninth International Workshop on Software Specification and Design.

[33]  John McCarthy,et al.  Notes on Formalizing Context , 1993, IJCAI.