Evaluating goal models within the goal-oriented requirement language
International Journal of Intelligent Systems
In this paper, we introduce the application of rigorous analysis procedures to goal models in order to provide several benefits beyond the initial act of modelling. Such analysis can allow modellers to assess the satisfaction of goals, facilitate evaluation of high-level design alternatives, help analysts decide on the high-level requirements and design of the system, test the sanity of a model, and support communication and learning. The analysis of goal models can be done in very different
... s depending on the nature of the model and the purpose of the analysis. In our work, we use the Goal-oriented Requirement Language (GRL), which is part of the User Requirements Notation (URN). URN, a new Recommendation of the International Telecommunications Union, provides the first standard goal-oriented language. Using GRL, we develop an approach to analysis that can be done by evaluating qualitative or quantitative satisfaction levels of the actors and intentional elements (e.g., goals and tasks) composing the model. Initial satisfaction levels for some of the intentional elements are provided in a strategy and then propagated to the other intentional elements of the model through the various links that connect them. The results allow for an assessment of the relative effectiveness of design alternatives at the requirements level. Although no specific propagation algorithm is imposed in the URN standard, different criteria for defining evaluation mechanisms are described. We provide three algorithms (quantitative, qualitative, and hybrid) as examples, which satisfy the constraints imposed by the standard. These algorithms have been implemented in the open-source jUCMNav tool, an Eclipse-based editor for URN models. The algorithms are presented and compared with the help of a telecommunication system example. Goal-oriented Requirement Language Overview of URN URN allows software and requirements engineers to discover and specify requirements for a proposed or an evolving system, and analyse such requirements for correctness and completeness. 11 URN combines the Goal-oriented Requirement Language (GRL) for † The definition of GRL, the criteria for characterizing analysis algorithms, and the three specific algorithms presented in this paper were developed by us over the years and are now included in ITU-T's Recommendation Z.151 respectively in clause 7, clause 11.