Goal-oriented Requirements Language

Summary

Goal-oriented Requirements Language (GRL), an i*-based modeling language used in systems development, is designed to support goal-oriented modeling and reasoning about requirements especially the non-functional requirements [1]

GRL topics edit

Concepts edit

Goal-oriented Requirements Language (GRL) allows to express conflict between goals and helps to make decisions that resolve conflicts. There are three main categories of concepts in GRL:

  • intentional elements,
  • intentional relationships and
  • actors.[2]

They are called for intentional because they are used in models that primarily concerned with answering "why" question of requirements (for ex. why certain choices for behavior or structure were made, what alternatives exist and what is the reason for choosing of certain alternative.)

Intentional elements edit

 
GRL Notation

Intentional elements are: goal, soft goal, task, belief and resource.

  • Goal is condition or situation that can be achieved or not. Goal is used to define the functional requirements of the system. In GRL notation goal is represented by a rounded rectangle with the goal name inside.
  • Task is used to represent different ways of how to accomplish goal. In GRL notation task is represented by hexagon with the task name inside.
  • Softgoal is used to define non-functional requirements. It’s usually a quality attribute of one of the intentional elements. In GRL notation softgoal is represented by irregular curvilinear shape with the softgoal name inside.
  • Resource is a physical or informational object that is available for use in the task. Resource is represented in GRL as a rectangle.
  • Belief is used to represent assumptions and relevant conditions. This construct is represented as ellipse in GRL notation.

Relationships edit

 
GRL relationships

Intentional relationships are: means-ends, decomposition, contribution, correlation and dependency.

  • Means-ends relationship shows how the goal can be achieved. For example, it can be used to connect task to a goal.
  • Decomposition relationship is used to show the sub-components of a task.
  • Contribution relationship describes how one element influence another one. Often a weighted means-ends relationship for brevity. +ve and -ve contribution allows for defeasible reasoning by way of Defenders and Defeaters.
  • Correlation relationship describes side effects of existence of one element to others.
  • Dependency relationship describe interdependences between agents.

Actors edit

  • Actor is an active object that carries out actions to achieve the goal. In GRL notation actor is represented as a circle with the actor name inside.
  • Agent is a concrete actor, such as a human individual or machine.
  • Role can be taken to be an behavioral aspect assigned to either an Actor or an Agent.

GRL Tool Support edit

At present, GRL is supported by a general-purpose organization modelling tool - OME (Organization Modeling Environment). OME provides support to various modelling frameworks by loading the framework and its functional modules dynamically.[3]

See also edit

References edit

  1. ^ Lin Liu, Eric Yu (2003). "Designing information systems in social context: a goal and scenario modelling approach" in: Information Systems, Volume 29, Number 2, April 2004, pp. 187-203(17)
  2. ^ GRL web site, University of Toronto, http://www.cs.toronto.edu/km/GRL/
  3. ^ GRL Tool Support University of Toronto, CANADA. Accessed 15 dec 2008.

External links edit

  • GRL - Goal-oriented Requirement Language University of Toronto, CANADA
  • [1]
  • [2]
  • [3]