Goal-oriented Requirements Language 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.
They are called for intentional because they are used in models that primarily concerned with answering "why" question of requirements
Intentional elements
Intentional elements are: goal, soft goal, task, belief and resource.
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
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
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.
At present, GRL is supported by a general-purpose organization modelling tool - OME. OME provides support to various modelling frameworks by loading the framework and its functional modules dynamically.