Requirements-Driven Qualitative Adaptation

Coping with run-time uncertainty pose an ever-present threat to the fulfillment of requirements for most software systems (embedded, robotic, socio-technical, etc.). This is particularly true for large-scale, cooperative information systems. Adaptation mechanisms constitute a general solution to this problem, consisting of a feedback loop that monitors the environment and compensates for deviating system behavior. In our research, we apply a requirements engineering perspective to the problem of designing adaptive systems, focusing on developing a qualitative software-centric, feedback loop mechanism as the architecture that operationalizes adaptivity. In this paper, we propose a framework that provides qualitative adaptation to target systems based on information from their requirements models. The key characteristc of this framework is extensibility, allowing for it to cope with qualitative information about the impact of control (input) variables on indicators (output variables) in different levels of precision. Our proposal is evaluated with a variant of the London Ambulance System case study.

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

[2]  Yijun Yu,et al.  Self-Tuning of Software Systems Through Goal-based Feedback Loop Control , 2010, 2010 18th IEEE International Requirements Engineering Conference.

[3]  Ji Zhang,et al.  The Four Levels of Requirements Engineering for and in Dynamic Adaptive Systems , 2005 .

[4]  Yixin Diao,et al.  Feedback Control of Computing Systems , 2004 .

[5]  WangZhikui,et al.  What does control theory bring to systems research , 2009 .

[6]  E. Silva Souza An Experiment on the Development of an Adaptive System based on the LAS-CAD — Incomplete Version 1 , 2012 .

[7]  Rogério de Lemos,et al.  Software Engineering for Self-Adaptive Systems [outcome of a Dagstuhl Seminar] , 2009, Software Engineering for Self-Adaptive Systems.

[8]  Carlo Ghezzi,et al.  Reliability-driven dynamic binding via feedback control , 2012, 2012 7th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS).

[9]  John Mylopoulos,et al.  System Identification for Adaptive Software Systems: A Requirements Engineering Perspective , 2011, ER.

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

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

[12]  Emmanuel Letier,et al.  Simulating and optimising design decisions in quantitative goal models , 2011, 2011 IEEE 19th International Requirements Engineering Conference.

[13]  Ladan Tahvildari,et al.  Towards a goal‐driven approach to action selection in self‐adaptive software , 2012, Softw. Pract. Exp..

[14]  Tok Wang Ling,et al.  Conceptual Modeling - ER 2011, 30th International Conference, ER 2011, Brussels, Belgium, October 31 - November 3, 2011. Proceedings , 2011, ER.

[15]  Eric S. K. Yu,et al.  Requirements trade-offs analysis in the absence of quantitative measures: a heuristic method , 2011, SAC.

[16]  Tim Menzies,et al.  Qualitative Modeling for Requirements Engineering , 2006, 2006 30th Annual IEEE/NASA Software Engineering Workshop.

[17]  Carlo Ghezzi,et al.  Self-adaptive software meets control theory: A preliminary approach supporting reliability requirements , 2011, 2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011).

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

[19]  Peter Struss,et al.  Qualitative Reasoning , 1997, The Computer Science and Engineering Handbook.

[20]  John Mylopoulos,et al.  Awareness requirements for adaptive systems , 2011, SEAMS '11.

[21]  Malik Jahan Khan,et al.  Enabling Self-Configuration in Autonomic Systems Using Case-Based Reasoning with Improved Efficiency , 2008, Fourth International Conference on Autonomic and Autonomous Systems (ICAS'08).

[22]  John Mylopoulos,et al.  Representing and reasoning about preferences in requirements engineering , 2011, Requirements Engineering.

[23]  John Mylopoulos,et al.  Adaptive socio-technical systems: a requirements-based approach , 2011, Requirements Engineering.

[24]  John Mylopoulos,et al.  (Requirement) evolution requirements for adaptive systems , 2012, 2012 7th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS).

[25]  Alan R. Hevner,et al.  Design Science in Information Systems Research , 2004, MIS Q..

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

[27]  John Mylopoulos,et al.  Self-Repair through Reconfiguration: A Requirements Engineering Approach , 2009, 2009 IEEE/ACM International Conference on Automated Software Engineering.

[28]  Anthony G. Cohn,et al.  Qualitative Reasoning , 1987, Advanced Topics in Artificial Intelligence.

[29]  Akihiko Ohsuga,et al.  gocc: a configuration compiler for self-adaptive systems using goal-oriented requirements description , 2011, SEAMS '11.

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