Towards Quantitative Trade-off Analysis in Goal Models with Multiple Obstacles using Constraint Programming

Christophe Ponsard, Robert Darimont


Goal Models capture system goals and their decomposition into operational requirements assigned to human, hardware or software agents. This refinement process supports alternatives both when refining goals processes but also when reasoning and refining obstacles to goals. This leads to large design space to explore in order to select a specific solution fulfilling a set of set of non-functional requirements (e.g. reliability, security, performance) or business goals (e.g. costs, satisfaction). This paper investigates how optimisation techniques can be used to efficiently explore the design space where multiple objectives have to be met simultaneously. This works extends previous work by allowing one not only to select a single alternative but also to combine different alternatives together to produce a more robust design. In order to explore the potentially very large design space, we show how to translate a model with many goals and obstacle alternatives, expressed in the KAOS notation, into a constraint programming (CP) problem. The OscaR.CP engine is then used to compute a set of Pareto-optimal solutions regarding the targeted evaluation objectives. Our method is implemented as a tool plugin of a requirements engineering platform and is benchmarked on a security case study close to attack trees.


Paper Citation