goal-oriented requirements engineering (gore) “goal-oriented requirements engineering is concerned...
TRANSCRIPT
![Page 1: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/1.jpg)
Goal-Oriented Requirements Engineering
(GORE)“Goal-oriented requirements engineering is
concerned with the use of goals for eliciting, elaborating, structuring, specifying, analyzing, negotiating, documenting, and modifying requirements.” (van Lamsweerde 2001)
• Goals can be viewed as the earliest/highest-level requirements artefacts
• Can form the organizing locus for all subsequent RE activities
![Page 2: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/2.jpg)
GORE: Key issues
• Goal modeling• Obtaining downstream artefacts from goal models
• Maintaining consistency of goal models
• Incorporating NFRs into goal models
• Using goals as requirements rationale
![Page 3: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/3.jpg)
A goal graph
![Page 4: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/4.jpg)
KAOS: Outline
• KAOS: Knowledge Acquisition in autOmated Specification
• A comprehensive GORE framework• Four models:
– Goal model– Object model– Agent model– Operation model
• Constructs:– Graphical and a textual syntax– Defined using the real-time temporal logic
![Page 5: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/5.jpg)
KAOS Ontology (1/3)• Objects: Can be: entity (autonomous object), relationship (subordinate object), event (instantaneous object)
• Actions/Operations: – Input/output relations over objects– Operation application defines a state transition– Have pre-conditions, post-conditions and trigger conditions
– Distinguish between:• Domain pre-, post-conditions (domain specific, defined by the domain)
• Required pre-, post-condition (application-specific, required to achieve goals)
![Page 6: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/6.jpg)
KAOS Ontology (2/3)
• Agents: Processors of operations – An agent performs an operation allocated to it
– Monitors an object whose states can be observed by it
– Controls an object whose states can be controlled by it
• Goals: Related to other goals via AND-refinement or OR-refinement links
![Page 7: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/7.jpg)
KAOS Ontology (3/3)• Requisite: A goal that can be formulated in terms of states controllable by an agent– Goals end up via a sequence of AND/OR refinements as requisites assigned to agents
– Requisites are AND/OR operationalized by operations and objects (may require strengthening of pre-, post- and trigger conditions)
– Alternative means of assignment of requisites to agents captured by responsibility links
– Actual assignment of a requisite to an agent captured by performance link
• Requirement: Requisite assigned to a software agent• Assumption: Requisite assigned to an environment agent
• Scenario: Sequence of operation applications by relevant agent (additional details ommitted)
![Page 8: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/8.jpg)
KAOS: Operation/Agent Model
![Page 9: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/9.jpg)
KAOS: Real-time Temporal Logic
• Assumes linear time
![Page 10: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/10.jpg)
KAOS: Real-time Temporal Logic
As opposed to branching time
Now
![Page 11: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/11.jpg)
KAOS: Real-time Temporal Logic
(H, i) |= Pdenotes that a history H (a linear time structure, assumed to be discrete), satisfies assertion P at time point i
![Page 12: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/12.jpg)
KAOS: Real-time Temporal Logic
• Temporal operators
![Page 13: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/13.jpg)
KAOS: Real-time Temporal Logic
![Page 14: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/14.jpg)
KAOS: Real-time Temporal Logic
![Page 15: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/15.jpg)
KAOS: Goal Representation
![Page 16: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/16.jpg)
KAOS: Goal Representation
![Page 17: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/17.jpg)
KAOS: Agent/Relationship Representation
![Page 18: Goal-Oriented Requirements Engineering (GORE) “Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring,](https://reader037.vdocuments.site/reader037/viewer/2022102808/56649d205503460f949f5400/html5/thumbnails/18.jpg)
KAOS: Agent/Relationship Representation