Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of...

58
Requirements Elicitation and Analysis Lectur e 3

Transcript of Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of...

Page 1: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

Requirements Elicitation and

Analysis

Lecture 3

Page 2: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

LEARNING OUTCOMES

To describe the processes of requirements elicitation and analysis.

To distinguish number of requirements elicitation and requirements analysis techniques.

To discuss the usage of prototypes in the RE process.

Page 3: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

REQUIREMENTS ELICITATION

Elicitation refers to activities involved in discovering and gathering the requirements of the system

System developers and engineers work with customers and end-users to understand the problem to be solved, the services and the performance of the system, hardware constraints and so on

Elicitation also requires careful analysis of the involved organization, Its application domain and environment Its business processes and activities

Page 4: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

Requirements analysis and negotiation are processes which are closely linked with requirements elicitation

The aim of Requirements Analysis and Negotiation is to establish an agreed set of requirements which are complete and consistent

These requirements should be unambiguous so that they can be the basis for system development

Page 5: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

REQUIREMENTS ELICITATION The term suggest that the process is a

simple knowledge transfer process where req engineers elicit and document existing customer knowledge

In reality, the process is much more complex It is not a process of ‘fishing’ for

requirements The author prefer the term requirements

discovery or trawling to reflect the uncertainties and difficulties

Page 6: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

DAVIS (1993) Avoids the term elicitation and equates this

discovery process to a process of problem analysis and understanding.

Problem analysis is defined as the activity that encompasses learning about the problem to be solved (often through brainstorming and/or questioning), understanding the needs of potential users, trying to find out who the user really is and understanding all the constraints on the solution

But this implies that the activity is only concerned with understanding the details of a specific problem which requires some kind of systems solution

Page 7: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

DIMENSIONS OF REQUIREMENTS ELICITATION

Applicationdomain

Stakeholderneeds andconstraints

Problem to besolved

Businesscontext

Page 8: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

ELICITATION ACTIVITIES

Application domain understanding Application domain knowledge is knowledge of the

general area where the system is applied. Problem understanding

The details of the specific customer problem where the system will be applied must be understood.

Business understanding You must understand how systems interact and

contribute to overall business goals. Understanding the needs and constraints of system

stakeholders You must understand, in detail, the specific needs of

people who require system support in their work.

Page 9: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

EFFECTIVE REQUIREMENTS ELICITATION

Is very important because if the customer’s real requirements are not discovered, they are unlikely to be satisfied with the final system

Requirements engineers faced some problems in req elicitation inherent to the multi-dimensional nature of req elicitation

Page 10: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

Application domain knowledge is not collected neatly in one place – Variety of sources and involve specialist

terminology People who understand the problem to be

solved are often too busy solving the problem without any new system Can’t spend time and not convinced of the need

for a new system Organisational issues and political factors

may influence the system requirements Higher management staff

Stakeholders often don’t really know what they want from the computer system except in the most general terms Have problem to articulate, make unrealistic

demands, different reqs

Page 11: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

OTHER POSSIBLE ISSUES

The fact that the economic and business environment is constantly changing

The people consulted at some stage in the process may change jobs

Structured methods or static process are not very useful

It is advisable to grasp the overall understanding of the app domain and the problem to be solved from several perspective/people

Page 12: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

ELICITATION AND ANALYSIS PROCESS

Page 13: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

Requirements elicitation and analysis is often performed simultaneously

Elicitation and analysis is closely linked Typically req engineer and stakeholders negotiate to agree

on the requirements to be included into req. document. Req analysis and negotiation are concerned with the high-level

statement of requirements elicited from stakeholders In some organisations, these requirements will then be

developed in more detail as a system specification or model. Developing these models often reveals further contradictions

and incompleteness in the requirements The elicitation, analysis and negotiation phases may have to

be reactivated to discover more information to resolve the problems which have been discovered

Page 14: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

ELICITATION, ANALYSIS AND NEGOTIATION

Requirements elicitation Requirements

analysis

Requirements negotiation

Draft statement of requirements

Requirements document

Requirements problems

Missing req, req conflicts, ambiguous req, overlapping req, and unrealistics req are normally discovered

Req conflicts and req seems too ambitious are negotiated and modified ambiguous

Page 15: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

REQUIREMENTS ELICITATION PROCESS

There are many possible requirements elicitation processes and different organisations use different processes.

A very general elicitation process model which covers many of these different processes is given next

Page 16: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

THE REQUIREMENTS ELICITATION PROCESS

Businessgoals

Systemconstraints

Problem to besolved

Establish objectives Understand background

Organisationalstructure

Applicationdomain

Existingsystems

Stakeholderidentification

Goalprioritisation

Domainknowledge

filtering

Organise knowledge

Stakeholderrequirements

Collect requirements

Domainrequirements

Organisationalrequirements

Page 17: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

FOUR CRITICAL ACTIVITIES

Objective setting The organisational objectives should be established

including general goals of the business, an outline description of the problem to be solved, why the system is necessary and the constraints on the system.

Background knowledge acquisition Background information about the system includes

information about the organisation where the system is to be installed, the application domain of the system and information about existing systems

Knowledge organisation The large amount of knowledge which has been collected

in the previous stage must be organised and collated. Stakeholder requirements collection

System stakeholders are consulted to discover their requirements.

Page 18: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

The reality of requirements elicitation tends to be much messier

The activities are mixed up with each other In many case, the critical early activity of

establishing objectives are not carried out This results in significant analysis problems Conflicts and overlaps are almost inevitable

in the draft document To resolve, here a general req analysis

Page 19: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

REQUIREMENTS ANALYSIS AND NEGOTIATION

Necessitychecking

Consistency andcompleteness

checking

Feasibilitychecking

Unnecessaryrequirements

Conflicting andincomplete

requirements

Infeasiblerequirements

Requirementsdiscussion

Requirementsprioritisation

Requirementsagreement

Requirements analysis

Requirements negotiation

Page 20: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

ANALYSIS CHECKS

Necessity checking The need for the requirement is analysed. In some cases,

requirements may be proposed which don’t contribute to the business goals of the organisation or to the specific problem to be addressed by the system.

Consistency and completeness checking The requirements are cross-checked for consistency and

completeness. Consistency means that no requirements should be contradictory; completeness means that no services or constraints which are needed have been missed out.

Feasibility checking The requirements are checked to ensure that they are

feasible in the context of the budget and schedule available for the system development.

Page 21: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

The result is set of requirements Whether a requirement is necessary or

feasible is a matter of opinion and different engineers may disagree on this

Conflict have to be resolved by discussing which of the conflicts requirements must be changed and the extent of the changes to be made

Page 22: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

REQUIREMENTS NEGOTIATION

Requirements discussion Requirements which have been highlighted as

problematical are discussed and the stakeholders involved present their views about the requirements.

Requirements prioritisation Disputed requirements are prioritised to identify

critical requirements and to help the decision making process.

Requirements agreement Solutions to the requirements problems are

identified and a compromise set of requirements are agreed. Generally, this will involve making changes to some of the requirements.

Page 23: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

ELICITATION TECHNIQUES

Page 24: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

Technique you applied Mini projects Latihan Ilmiah

Technique you know

Page 25: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

ELICITATION TECHNIQUES

Specific techniques which may be used to collect knowledge about system requirements

This knowledge must be structured Partitioning - aggregating related knowledge Abstraction - recognising generalities Projection - organising according to perspective

Elicitation problems Not enough time for elicitation Inadequate preparation by engineers Stakeholders are unconvinced of the need for a

new system

Page 26: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

SPECIFIC ELICITATION TECHNIQUES

Interviews Scenarios Soft systems methods Observations and social analysis Requirements reuse

Page 27: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

INTERVIEWS

The requirements engineer or analyst discusses the system with different stakeholders and builds up an understanding of their requirements.

Types of interview Closed interviews. The requirements

engineer looks for answers to a pre-defined set of questions

Open interviews There is no predefined agenda and the requirements engineer discusses, in an open-ended way, what stakeholders want from the system.

Page 28: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

INTERVIEWING ESSENTIALS

Interviewers must be open-minded and should not approach the interview with pre-conceived notions about what is required

Stakeholders must be given a starting point for discussion. This can be a question, a requirements proposal or an existing system

Interviewers must be aware of organisational politics - many real requirements may not be discussed because of their political implications

Page 29: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

SCENARIOS Scenarios are stories which explain how a system

might be used. They should include a description of the system state before

entering the scenario the normal flow of events in the scenario exceptions to the normal flow of events information about concurrent activities a description of the system state at the end of

the scenario Scenarios are examples of interaction sessions

which describe how a user interacts with a system Discovering scenarios exposes possible system

interactions and reveals system facilities which may be required

Page 30: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

LIBRARY SCENARIO - DOCUMENT ORDERING

Log on to EDDIS system Issue order document command Enter reference number of the

required document Select a delivery option Log out from EDDIS

This sequence of events can be illustrated in a diagram

Page 31: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

LIBRARY SCENARIO

Select orderdocument

Login to

EDDIS

Invalid id orpassword

Login retryPermission denied

Incorrectreference

Input doc.reference

User id

Passwd

Operational terminal

Input documentreference

Confirmdelivery details Logout from

EDDIS

Order accepted

Login OK

Document reference OK

Delivery confirmed

Exceptions

Exceptions

Enter help system

Enter help system

Exceptions

Timeout

Auto-logout

Exceptions

Page 32: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

SCENARIOS AND OOD

Scenarios are an inherent part of some object-oriented development methods

The term use-case (i.e. a specific case of system usage) is sometimes used to refer to a scenario

There are different views on the relationship between use-cases and scenarios: A use-case is a scenario A scenario is a collection of use-cases.

Therefore, each exceptional interaction is represented as a separate use-case

Page 33: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

SOFT SYSTEMS METHODS

These produce informal models of a socio-technical system.

They consider the system, the people and the organisation

Not techniques for detailed requirements elicitation. Rather, they are ways of understanding a problem and its organisational context

Software Systems Methodology (SSM) is probably the best known of these methods

The essence of SSM is its recognition that systems are embedded in a wider human and organisational context

Page 34: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

STAGES OF SSM

Problem situation assessment Problem situation description Abstract system definition from

selected viewpoints Conceptual system modelling Model/real-world comparison Change identification Recommendations for action

Page 35: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

OBSERVATION AND SOCIAL ANALYSIS

People often find it hard to describe what they do because it is so natural to them. Sometimes, the best way to understand it is to observe them at work

Ethnography is a technique from the social sciences which has proved to be valuable in understanding actual work processes

Actual work processes often differ from formal, prescribed processes

An ethnographer spends some time observing people at work and building up a picture of how work is done

Page 36: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

ETHNOGRAPHY GUIDELINES

Assume that people are good at doing their job and look for non-standard ways of working

Spend time getting to know the people and establish a trust relationship

Keep detailed notes of all work practices. Analyse them and draw conclusions from them Combine observation with open-ended interviewing Organise regular de-briefing session where the

ethnographer talks with people outside the process Combine ethnography with other elicitation

techniques

Page 37: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

ETHNOGRAPHY IN ELICITATION

Ethnographicanalysis

Debriefingmeetings

Focusedethnography

Systemprotoyping

Systemprototype

Userexperiments

Page 38: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

ETHNOGRAPHIC PERSPECTIVES The work setting viewpoint

This describes the context and the physical location of the work and how people use objects to carry out tasks. Therefore, in a study of a help desk (say), this would describe the objects which the helper had to hand and how these were organised.

Social and organisational perspectives This tries to bring out the day-to-day experience of work as

seen by different people who are involved. Each individual typically sees the work in a different ways and this viewpoint tries to organise and integrate all of these perceptions.

The workflow viewpoint This viewpoint presents the work from a series of work

activities with information flowing from one activity to another.

Page 39: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

REQUIREMENTS REUSE

Reuse involves taking the requirements which have been developed for one system and using them in a different system

Requirements reuse saves time and effort as reused requirements have already been analysed and validated in other systems

Currently, requirements reuse is an informal process but more systematic reuse could lead to larger cost savings

Page 40: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

REUSE POSSIBILITIES

Where the requirement is concerned with providing application domain information.

Where the requirement is concerned with the style of information presentation. Reuse leads to a consistency of style across applications.

Where the requirement reflects company policies such as security policies.

Page 41: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

PROTOTYPING

A prototype is an initial version of a system which may be used for experimentation

Prototypes are valuable for requirements elicitation because users can experiment with the system and point out its strengths and weaknesses. They have something concrete to criticise

Rapid development of prototypes is essential so that they are available early in the elicitation process

Page 42: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

PROTOTYPING BENEFITS

The prototype allows users to experiment and discover what they really need to support their work

Establishes feasibility and usefulness before high development costs are incurred

Essential for developing the ‘look and feel’ of a user interface

Can be used for system testing and the development of documentation

Forces a detailed study of the requirements which reveals inconsistencies and omissions

Page 43: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

TYPES OF PROTOTYPING

Throw-away prototyping intended to help elicit and develop the system requirements. The requirements which should be prototyped are those which

cause most difficulties to customers and which are the hardest to understand. Requirements which are well-understood need not be implemented by the prototype.

Evolutionary prototyping intended to deliver a workable system quickly to the customer. Therefore, the requirements which should be supported by the

initial versions of this prototype are those which are well-understood and which can deliver useful end-user functionality. It is only after extensive use that poorly understood requirements should be implemented.

Page 44: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

PROTOTYPING COSTS AND PROBLEMS

Training costs - prototype development may require the use of special purpose tools

Development costs - depend on the type of prototype being developed

Extended development schedules - developing a prototype may extend the schedule although the prototyping time may be recovered because rework is avoided

Incompleteness - it may not be possible to prototype critical system requirements

Page 45: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

APPROACHES TO PROTOTYPING

Paper prototyping a paper mock-up of the system is

developed and used for system experiments

‘Wizard of Oz’ prototyping a person simulates the responses of the

system in response to some user inputs Executable prototyping

a fourth generation language or other rapid development environment is used to develop an executable prototype

Page 46: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

EXECUTABLE PROTOTYPE DEVELOPMENT

Fourth generation languages based around database systems

Visual programming languages such as Visual Basic or ObjectWorks

Internet-based prototyping solutions based on World Wide Web browsers and languages such as Java

Page 47: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

OTHER TECHNIQUES

Lect 4

Page 48: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

REQUIREMENTS ANALYSIS

Page 49: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

REQUIREMENTS ANALYSIS

The goal of analysis is to discover problems, incompleteness and inconsistencies in the elicited requirements. These are then fed back to the stakeholders to resolve them through the negotiation process

Analysis is interleaved with elicitation as problems are discovered when the requirements are elicited

A problem checklist may be used to support analysis. Each requirement may be assessed against the checklist

Page 50: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

ANALYSIS CHECKLISTS

Premature design Does the requirement include premature design or

implementation information? Combined requirements

Does the description of a requirement describe a single requirement or could it be broken down into several different requirements?

Unnecessary requirements Is the requirement ‘gold plating’? That is, is the

requirement a cosmetic addition to the system which is not really necessary.

Use of non-standard hardware Does the requirement mean that non-standard

hardware or software must be used? To make this decision, you need to know the computer platform requirements.

Page 51: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

ANALYSIS CHECKLISTS Conformance with business goals

Is the requirement consistent with the business goals defined in the introduction to the requirements document?

Requirements ambiguity Is the requirement ambiguous i.e. could it be read in

different ways by different people? What are the possible interpretations of the requirement?

Requirements realism Is the requirement realistic given the technology

which will be used to implement the system? Requirements testability

Is the requirement testable, that is, is it stated in such a way that test engineers can derive a test which can show if the system meets that requirement?

Page 52: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

REQUIREMENTS INTERACTIONS

A very important objective of requirements analysis is to discover the interactions between requirements and to highlight requirements conflicts and overlaps

A requirements interaction matrix shows how requirements interact with each other. Requirements are listed along the rows and columns of the matrix For requirements which conflict, fill in a 1 For requirements which overlap, fill in a

1000 For requirements which are independent,

fill in a 0

Page 53: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

INTERACTION MATRICES

Requirement R1 R2 R3 R4 R5 R6R1 0 0 1000 0 1 1R2 0 0 0 0 0 0R3 1000 0 0 1000 0 1000R4 0 0 1000 0 1 1R5 1 0 0 1 0 0R6 1 0 1000 1 0 0

Page 54: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

REQUIREMENTS NEGOTIATION

Page 55: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

REQUIREMENTS NEGOTIATION

Disagreements about requirements are inevitable when a system has many stakeholders. Conflicts are not ‘failures’ but reflect different stakeholder needs and priorities

Requirements negotiation is the process of discussing requirements conflicts and reaching a compromise that all stakeholders can agree to

In planning a requirements engineering process, it is important to leave enough time for negotiation. Finding an acceptable compromise can be time-consuming

Page 56: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

NEGOTIATION MEETINGS

An information stage where the nature of the problems associated with a requirement is explained.

A discussion stage where the stakeholders involved discuss how these problems might be resolved. All stakeholders with an interest in the

requirement should be given the opportunity to comment. Priorities may be assigned to requirements at this stage.

A resolution stage where actions concerning the requirement are agreed. These actions might be to delete the

requirement, to suggest specific modifications to the requirement or to elicit further information about the requirement.

Page 57: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

KEY POINTS Requirements elicitation involves

understanding the application domain, the specific problem to be solved, the organisational needs and constraints and the specific facilities needed by system stakeholders.

The processes of requirements elicitation, analysis and negotiation are iterative, interleaved processes which must usually be repeated several times.

There are various techniques of requirements elicitation which may be used including interviewing, scenarios, soft systems methods, prototyping and participant observation.

Page 58: Requirements Elicitation and Analysis Lecture 3. L EARNING OUTCOMES To describe the processes of requirements elicitation and analysis. To distinguish.

KEY POINTS

Prototypes are effective for requirements elicitation because stakeholders have something which they can experiment with to find their real requirements.

Checklists are particularly useful as a way of organising the requirements validation process. They remind analysts what to look for when reading through the proposed requirements.

Requirements negotiation is always necessary to resolve requirements conflicts and remove requirements overlaps. Negotiation involves information interchange, discussion and resolution of disagreements.