170 likes | 211 Views
Requirements Engineering: The KAOS Goal-Oriented Approach. UFCE4S-10-3 Lecture Four Stewart Green. Lecture Structure. KAOS: introduction KAOS: inputs and outputs KAOS: meta model KAOS: process KAOS: meeting scheduler example KAOS: decomposition of schedule meeting system goal
E N D
Requirements Engineering: The KAOS Goal-Oriented Approach UFCE4S-10-3 Lecture Four Stewart Green
Lecture Structure • KAOS: introduction • KAOS: inputs and outputs • KAOS: meta model • KAOS: process • KAOS: meeting scheduler example • KAOS: decomposition of schedule meeting system goal • KAOS: operationalising goals • KAOS: requirements model Requirements Engineering UFCE4S-10-3 Lecture Four
KAOS References • Goal-Oriented Requirements Engineering: A Guided Tour, A. van Lamsweerde, 5th International Symposium on Requirements Engineering, IEEE Computer Society Press, 2001 • Goal-directed Requirements Acquisition, A. Dardenne, A. van Lamsweerde and S. Fickas, Science of Computer Programming, 20, pp 3 – 50, 1993 • Goal-Oriented Approaches to Requirements Engineering, S. Green, (Lecture three handout-1) Requirements Engineering UFCE4S-10-3 Lecture Four
Formalising Requirements • Requirements expressed in English, perhaps augmented with diagrams, may be formalised. In other words, the goals may be re-expressed in a more formal language. Requirements Engineering UFCE4S-10-3 Lecture Four
KAOS: Knowledge Acquisition in Automated Specification • KAOS is one method for formalising goals into requirements • KAOS is a research project, but it is well documented, and has tool support from a tool called GRAIL • The aim of the KAOS approach is to derive a description of a system’s behaviour and an initial analysis of its structure through acquiring and formalising functional and non-functional goals for a composite system Requirements Engineering UFCE4S-10-3 Lecture Four
KAOS: Inputs and Outputs Requirements Engineering UFCE4S-10-3 Lecture Four
KAOS: Meta Model 1 Requirements Engineering UFCE4S-10-3 Lecture Four
KAOS Meta Model 2 • The meta model is like an ERA schema: here it characterises composite systems. • As such the meta model comprises: • Meta concepts: e.g. goal, constraint, agent, action • Meta relationships: e.g. constraint-operationalises-goal, agent-performs-action • Meta attributes: e.g. pre-condition is a meta attribute of the action meta concept • The meta model is traversed from goals to acquire meta objects Requirements Engineering UFCE4S-10-3 Lecture Four
KAOS: Process 1 Requirements Engineering UFCE4S-10-3 Lecture Four
KAOS Process 2 • During the KAOS process, instances of the meta objects are acquired as a requirements model is created. The highest-level goals are identified from the requirements. Goals are system objectives that cannot be met by a single agent. These are reduced to constraints (leaf goals) which can be met by a single agent. Reduction is achieved by goal decomposition. Requirements Engineering UFCE4S-10-3 Lecture Four
KAOS: The Meeting Scheduler Problem • See lecture handout for full details • Meetings are typically arranged in the following way. A meeting initiator asks all the potential meeting attendees for the following information: • A set of dates on which they cannot attend the meeting • A set of dates on which they would prefer the meeting to take place • The initiator asks active participants to provide special equipment requirements • A date conflict occurs when no satisfactory date can be found • The meeting scheduler must handle several meeting requests in parallel Requirements Engineering UFCE4S-10-3 Lecture Four
KAOS: Decomposition of Schedule Meeting System Goal Requirements Engineering UFCE4S-10-3 Lecture Four
KAOS: Stage One Process Outputs Requirements Engineering UFCE4S-10-3 Lecture Four
KAOS: Operationalising Goals 1 Requirements Engineering UFCE4S-10-3 Lecture Four
KAOS: Operationalising Goals 2 • The AttendeesPreferencesKnown system goal is operationalised into two constraints: • A Hard constraint: RequestForAttendeesPreferencesMade (such a constraint must not be violated) • This is satisfied by a MeetingScheduler agent with RequestAteendeesPreferences action • A Soft constraint: RequestForAttendeesPreferencesSatisfied • This is satisfied by Attendee agents with the SubmitPreferences action Requirements Engineering UFCE4S-10-3 Lecture Four
KAOS: Meeting Scheduler Requirements Model 1 Requirements Engineering UFCE4S-10-3 Lecture Four
KAOS Meeting Scheduler Requirements Model 2 • The requirements model shows for example: • How one system goal has been reduced to constraints • How these constraints are met by the actions of agents on objects • The objects involved: such as Preferences Request, Attendee, and AttendeePreferences Requirements Engineering UFCE4S-10-3 Lecture Four