Planning in Self-Adaptive Systems by using Constraint Satisfaction Problem

Being self-adaptive is a subject which helps software in systems in order to respond to the surrounded changes that are not fully known while designing. Uncertainty over time is a challenge we face with when designing a dynamic adaptive system (DAS). Dynamic adaptive systems keep observing their environment and try to adapt their behavior to the changes made in the environment. Different techniques and strategies are used in requirements and decision-making models in Self-Adaptive Systems (SASs). Goal-achieving strategies have different effects on non-functional requirements (soft goals). The final decision on choosing the strategy is based on the realization time calculation, and on the total of more success possibilities in satisfying the non-functional requirements. In this paper, a new method is presented for decision making, using Constraint Satisfaction Problems (CSP). Evaluation results show the superior performance of the design phase, using the proposed method in performing time and the accuracy of decisions.

[1]  P ? ? ? ? ? ? ? % ? ? ? ? , 1991 .

[2]  Nelly Bencomo,et al.  Supporting Decision-Making for Self-Adaptive Systems: From Goal Models to Dynamic Decision Networks , 2013, REFSQ.

[3]  Nelly Bencomo,et al.  Towards requirements aware systems: Run-time resolution of design-time assumptions , 2011, 2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011).

[4]  John Mylopoulos,et al.  Non-Functional Requirements in Software Engineering , 2000, International Series in Software Engineering.

[5]  Alexei Lapouchnian,et al.  Exploiting Requirements Variability for Software Customization and Adaptation , 2011 .

[6]  Judea Pearl,et al.  Probabilistic reasoning in intelligent systems - networks of plausible inference , 1991, Morgan Kaufmann series in representation and reasoning.

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

[8]  Henry Hoffmann,et al.  A Comparison of Autonomic Decision Making Techniques , 2011 .

[9]  Heather Goldsby,et al.  Goal-Based Modeling of Dynamically Adaptive System Requirements , 2008, 15th Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems (ecbs 2008).

[10]  Peter Norvig,et al.  Artificial Intelligence: A Modern Approach , 1995 .

[11]  Axel van Lamsweerde,et al.  Reasoning about partial goal satisfaction for requirements and design engineering , 2004, SIGSOFT '04/FSE-12.

[12]  Eugene C. Freuder A Sufficient Condition for Backtrack-Free Search , 1982, JACM.

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

[14]  Bradley R. Schmerl,et al.  Software Engineering for Self-Adaptive Systems: A Second Research Roadmap , 2010, Software Engineering for Self-Adaptive Systems.