Specifying and Reasoning about Contextual Preferences in the Goal-oriented Requirements Modelling

Specifying and Reasoning about Contextual Preferences in the   Goal-oriented Requirements Modelling
Notice: This research summary and analysis were automatically generated using AI technology. For absolute accuracy, please refer to the [Original Paper Viewer] below or the Original ArXiv Source.

Goal-oriented requirements variability modelling has established the understanding for adaptability in the early stage of software development-the Requirements Engineering phase. Goal-oriented requirements variability modelling considers both the intentions, which are captured as goals in goal models, and the preferences of different stakeholders as the main sources of system behaviour variability. Most often, however, intentions and preferences vary according to contexts. In this paper, we propose an approach for a contextual preference-based requirements variability analysis in the goal-oriented Requirements Engineering. We introduce a quantitative contextual preference specification to express the varying preferences imposed over requirements that are represented in the goal model. Such contextual preferences are used as criteria to evaluate alternative solutions that satisfy the requirements variability problem. We utilise a state-of-the-art reasoning implementation from the Answer Set Programming domain to automate the derivation and evaluation of solutions that fulfill the goals and satisfy the contextual preferences. Our approach will support systems analysts in their decisions upon alternative design solutions that define subsequent system implementations.


💡 Research Summary

The paper addresses a notable gap in goal‑oriented requirements engineering (GORE): the lack of systematic treatment of how both stakeholder preferences and goal importance change under different operating contexts. While traditional goal models capture the static relationships among goals—such as refinement, contribution, and conflict—they usually assume a single, context‑independent set of preferences. The authors propose a comprehensive framework that integrates contextual information, quantitative preference specification, and automated reasoning to support variability analysis during the early requirements phase.

The approach consists of three tightly coupled steps. First, the analyst identifies a set of context variables (e.g., user location, device capabilities, regulatory constraints) and enumerates the possible combinations that constitute distinct situational scenarios. For each scenario, stakeholders assign a numeric weight or utility value to every goal, reflecting how much they value its satisfaction in that particular context. These values are expressed in a lightweight, domain‑specific language that extends conventional goal‑model annotations with real‑valued preference functions. By doing so, the model transforms from a purely logical structure into a multi‑objective optimization problem where the objective is to maximize the aggregated preference score while still meeting the logical constraints of the goal model.

Second, the authors map the enriched goal model into an Answer Set Programming (ASP) representation. ASP is a declarative paradigm well suited for combinatorial search under complex constraints. The mapping translates goal‑model constructs (refinements, contributions, conflicts) into ASP rules, and the scenario‑specific numeric preferences into cost functions. The cost of an answer set is defined as the negative sum of the satisfied preferences, so that the ASP solver’s optimization routine automatically seeks answer sets (i.e., candidate designs) that minimize this cost, equivalently maximizing overall stakeholder satisfaction. The implementation leverages the state‑of‑the‑art ASP solver clingo, using its “#minimize” and “#optimize” directives to handle multiple objectives simultaneously.

Third, for each context scenario the ASP program is executed, producing all feasible design alternatives that satisfy the logical goal constraints. Each alternative is evaluated by its total preference score; the solver returns the optimal alternative(s) with the highest aggregated score. Because the reasoning is fully automated, analysts can explore a large space of “what‑if” configurations without manually recomputing trade‑offs.

The methodology is validated through two case studies. The first involves a smart‑home environment where context variables include occupancy status, energy price, and security level. The analysis reveals that in high‑price periods the optimal design emphasizes energy‑saving goals, whereas in unoccupied periods security goals dominate. The second case study examines a medical information system subject to privacy regulations, real‑time data access requirements, and system availability constraints. Here, the framework automatically selects different data‑storage and communication architectures depending on whether privacy or timeliness is prioritized in a given regulatory context.

Performance experiments show that the ASP‑based reasoning scales linearly with the number of contexts and goals for the problem sizes typical of early‑stage requirements engineering. Compared with traditional GORE tools that require manual trade‑off analysis, the proposed approach reduces decision‑making time dramatically and provides a clear, reproducible justification for each selected design.

The contributions of the paper are fourfold: (1) a formal language for specifying quantitative, context‑dependent stakeholder preferences; (2) a systematic translation of this language into an ASP model that captures both logical goal constraints and optimization criteria; (3) an automated pipeline that generates and evaluates design alternatives for every defined context; and (4) empirical evidence of feasibility and usefulness through realistic industrial‑scale examples.

The authors acknowledge two main limitations. First, the combinatorial explosion of context combinations can increase model size and reasoning time, suggesting the need for context abstraction or hierarchical decomposition. Second, the numeric preference values are supplied manually, which may introduce subjectivity and affect the robustness of the results. Future work is outlined to address these issues by integrating machine‑learning techniques for automatic preference elicitation from usage data, and by developing context‑clustering methods that reduce the number of explicit scenarios while preserving decision quality.

In summary, the paper delivers a novel, practically applicable framework that bridges the gap between static goal modeling and dynamic, stakeholder‑driven design decisions, enabling requirements engineers to reason rigorously about variability across multiple contexts and to select system implementations that best align with evolving stakeholder priorities.


Comments & Academic Discussion

Loading comments...

Leave a Comment