Continuous adaptive requirements engineering: An architecture for self-adaptive service-based applications

Engineering self-adaptive service-based applications significantly challenges the role of requirements engineering (RE). Such systems need to cope with the evolving requirements at runtime by monitoring the changes in users' preferences and in the environment, evaluating the changes and enacting a suitable behavior ensuring an acceptable level of quality for their users. This calls for continuous reappraisal of their requirements specification enabling them to reason for them at run-time. Recently, we proposed a novel framework for Continuous Adaptive RE (CARE) supporting self-adaptive service-based applications and on conceptual tools needed to realize RE at run-time. In this position paper, we focus on a conceptual architecture for the CARE framework, and illustrate how it can work using scenarios from travel domain. Potential impact of our work and useful integration with recent studies are discussed, highlighting open points for future research.

[1]  Stephen Fickas,et al.  Goal-Directed Requirements Acquisition , 1993, Sci. Comput. Program..

[2]  Martin S. Feather,et al.  Requirements monitoring in dynamic environments , 1995, Proceedings of 1995 IEEE International Symposium on Requirements Engineering (RE'95).

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

[4]  G. D. Michelis,et al.  From User Participation to User Seduction in the Design of Innovative User-Centered Systems , 2000, COOP.

[5]  Bashar Nuseibeh,et al.  Requirements engineering: a roadmap , 2000, ICSE '00.

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

[7]  Luciano Baresi,et al.  Smart monitors for composed services , 2004, ICSOC '04.

[8]  Bradley R. Schmerl,et al.  Rainbow: architecture-based self-adaptation with reusable infrastructure , 2004, International Conference on Autonomic Computing, 2004. Proceedings..

[9]  Neil A. M. Maiden,et al.  Servicing Your Requirements , 2006, IEEE Software.

[10]  Stéphane Faulkner,et al.  Dynamic Requirements Specification for Adaptable and Open Service-Oriented Systems , 2007, ICSOC.

[11]  Luciano Baresi,et al.  Dynamo and Self-Healing BPEL Compositions , 2007, 29th International Conference on Software Engineering (ICSE'07 Companion).

[12]  Carlo Ghezzi,et al.  A journey to highly dynamic, self-adaptive service-based applications , 2008, Automated Software Engineering.

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

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

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

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

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

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

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

[20]  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.

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

[22]  Nelly Bencomo,et al.  Requirements reflection: requirements as runtime entities , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[23]  Luciano Baresi,et al.  Live goals for adaptive service compositions , 2010, SEAMS '10.

[24]  Anna Perini,et al.  Analyzing Interoperability Requirements for Adaptive Service-Based Applications: A Goal-Oriented Approach , 2010, 2010 IEEE 34th Annual Computer Software and Applications Conference Workshops.

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

[26]  William N. Robinson A Roadmap for Comprehensive Requirements Modeling , 2010, Computer.

[27]  Neil A. M. Maiden,et al.  End-user requirements blogging with iRequire , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

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

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

[30]  Neil A. Ernst,et al.  Reasoning with Optional and Preferred Requirements , 2010, ER.