ArticleslgStudy

computer science

Goal-oriented Requirements Language

Goal-oriented Requirements Language is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Goal-oriented Requirements Language rather than just read about it. In short: 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 GRL topics Concepts 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 conce…

Goal-oriented Requirements Language — main illustration
Goal-oriented Requirements Language — illustration

Key takeaways

  • Goal-oriented Requirements Language belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Goal-oriented Requirements Language to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Goal-oriented Requirements Language from memory before moving on to harder problems.

Reference excerpt

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

GRL topics

Concepts 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. 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

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

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.

GRL Tool Support 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.

See also Extended Enterprise Modeling Language i*

References

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

Illustrations

Goal-oriented Requirements Language: GRL relationships
GRL relationships

Worked examples

Example 1 — a first encounter with Goal-oriented Requirements Language

Start with the simplest possible case. Write down what Goal-oriented Requirements Language claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Goal-oriented Requirements Language before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Goal-oriented Requirements Language ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Goal-oriented Requirements Language

In research
Goal-oriented Requirements Language appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Goal-oriented Requirements Language in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Goal-oriented Requirements Language is common in secondary-school and first-year university syllabi. It links to neighbouring topics Software requirements, Specification languages, so understanding it makes those chapters shorter.
In everyday life
Look for Goal-oriented Requirements Language outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Goal-oriented Requirements Language in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Goal-oriented Requirements Language means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Goal-oriented Requirements Language out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Goal-oriented Requirements Language in simple terms?

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 GRL topics Concepts Goal-oriented Requirements Language (GRL) allows to exp…

Why does Goal-oriented Requirements Language matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Goal-oriented Requirements Language?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Goal-oriented Requirements Language.

Tags

  • Software requirements
  • Specification languages

Keep exploring