Return to search

Acquiring and Reasoning about Variability in Goal Models

One of the most essential parts of any software requirements analysis effort is the exploration of alternative ways by which stakeholder problems can be solved. Systematic modeling and analysis of requirements variability allows better decision making during the early requirements phase and substantiates design choices pertaining to the configurability aspect of the system-to-be. This thesis proposes the use of goal models for capturing and reasoning about requirements variability. The goal models we adopt consist of AND/OR decompositions of stakeholder goals and express alternative ways by which stakeholders may wish to achieve them. By capturing goal variability using such models, we propose a shift of focus from variability of the software design, to variability of the problem that the design is intended to solve. This way, we ensure that every important variation of the problem is identified and analyzed before variations of the solution are specified.

The thesis exploits opportunities that arise from this new viewpoint. Firstly, a variability-intensive goal decomposition process is proposed. The process is based on associating each high-level goal to a set of variability concerns that must be addressed through decomposition. We introduce a universal categorization of such concerns and also show how domain-specific variability concerns can be identified by annotating domain corpora. Concern-driven decomposition offers a structured way of thinking about problem variability, while systematizing its identification process. Further, an expressive LTL-based preference language is introduced to support leverage of large spaces of goal alternatives. The language allows the expression of preferences over behavioral and qualitative properties of solutions and a reasoning tool allows the identification of alternatives that satisfy these preferences. This way, individual stakeholders can get the solution that exactly fits their needs in a particular situation, through simply specifying desired high-level characteristics of these solutions. Finally, a framework for connecting alternatives at the goal level to alternative configurations of common desktop applications is presented. The framework shows how a vast number of configurations of a software application can be evaluated and ranked with respect to a small number of quality goals that are more intuitive to and comprehensible by end users.

Identiferoai:union.ndltd.org:TORONTO/oai:tspace.library.utoronto.ca:1807/16738
Date19 January 2009
CreatorsLiaskos, Sotirios
ContributorsMylopoulos, John
Source SetsUniversity of Toronto
Languageen_ca
Detected LanguageEnglish
TypeThesis
Format1303143 bytes, application/pdf

Page generated in 0.002 seconds