170 likes | 225 Views
Explore the KAOS goal-oriented approach in requirements engineering, formalizing requirements, knowledge acquisition, and process flow. Learn about the meta model, decomposition of system goals, and operationalizing goals using practical examples. Discover how the Meeting Scheduler Problem is addressed within the KAOS framework.
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