Upload
murthysejr
View
213
Download
0
Embed Size (px)
Citation preview
8/11/2019 RE-Eli
1/59
Requirements Elicitation
Requirements Elicitation
Requirement techniques
Presentation based on courses given at SEI Carnegie Mellon (USA) and Kingston Univ (GB)
8/11/2019 RE-Eli
2/59
Requirements Elicitation
Presentation based on courses given at SEI Carnegie Mellon (USA) and Kingston Univ (GB)
Case Studies
Standards
Projects
Req. Validation
Exchanging Req.
Req. Expression &
Modelling
System engineering
Req. Management
Req. Elicitation
Basic introduction
RE Techniques
Requirement Engineering
Req. Traceability
Software systems
Reactive systems
8/11/2019 RE-Eli
3/59
Contents
Requirements elicitation
Guidelines
Methodology
Basic techniques for eliciting requirements
Interviews
Meetings
Planning...
8/11/2019 RE-Eli
4/59
Some basic points
Elicitation is not Acquisition
Requirements are not available like sensor data
Notjust read them systematical ly ! !
Elicitation is not specification and modelling
Too much importance has been given toexpression and modelling
RE Determines the successof the mission
Elicitation detrmines the successof the REprocess
8/11/2019 RE-Eli
5/59
What Is Elicitation ?
Process of identifying needs
Front End to systems development
Involves social, communicative issues and
Technical issues
Requirement expression is the step to model
the requirements.
8/11/2019 RE-Eli
6/59
A common Problem !!
What is your need ?
I need a system that
works OK
Robust and respond tomy wishes
8/11/2019 RE-Eli
7/59
As problems in social life
AVOID M ISUNDERSTANDI NG !!
http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/People&img=112http://www2.freeze.com/cgi-bin/imageFolio.cgi?action=view&link=Clip_Art/Holidays/Valentines%20Day&image=valentinsday6121.gif&img=24&tt=http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/People&img=160http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/People&img=168http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/People&img=112http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/People&img=168http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/People&img=160http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/People&img=1688/11/2019 RE-Eli
8/59
A simple scenario
I need a book
What for ? Or What discipline ?
To .....; in fact anything to level up my terminal
So you any item but Not necessarily a book
http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/Business/Computers&img=8/11/2019 RE-Eli
9/59
Elicitation : a subset of goals
Identify the relavant parties . The stackholders
Gather the Wish Listfor each stachholder
Document and refine the Wish list
Expected properties
Unambiguous Complete
Verifiable
Consistent Modifiable
Traceable
8/11/2019 RE-Eli
10/59
Common generic problems
Scope : too much or too littleUnderstandings : Users and developpers
Users have an incomplete understanding of their
needs
Analysts and SE have a poor knowledge of
problem domain
Ease of omitting obvious information Volatility :changing requirements
8/11/2019 RE-Eli
11/59
The Scope problem
Establish a bounday conditions for the target system
Organisation and context analysis
http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/Animals/Birds&img=568/11/2019 RE-Eli
12/59
The Misunderstanding pb
http://www2.freeze.com/cgi-bin/imageFolio.cgi?action=view&link=Clip_Art/People/Occupations&image=pilot2.gif&img=120&tt=http://www2.freeze.com/cgi-bin/imageFolio.cgi?action=view&link=Clip_Art/People/Occupations&image=pilot2.gif&img=120&tt=http://www2.freeze.com/cgi-bin/imageFolio.cgi?action=view&link=Clip_Art/People/Occupations&image=captain.gif&img=24&tt=http://www2.freeze.com/cgi-bin/imageFolio.cgi?action=view&link=Clip_Art/People/Occupations&image=captain.gif&img=24&tt=8/11/2019 RE-Eli
13/59
Some data on the Pb
56 % of errors were due to poor communication
between user and analyste
Such errors cost 82% of the available staff time
Three main issuespeople involved comes from different backgrounds
Language used may be too informal or too formal
A large amount of information to be commnicated
and not really structured
8/11/2019 RE-Eli
14/59
The misun ...
Stakholders may be located at different levels
May correspond to levels to abstraction
From informal knowledge to ...formal
expression
Notion of maturity levels
Dont mix up with abstraction levels
Many people are involved : Questions When in the eliciaition process ?
At what level ?
8/11/2019 RE-Eli
15/59
The Volatility problem
REQUIREMENTS EVOLVE : A basis
Some requiremenrs are more emphasized than needed
during elecitation process
The boss is always rightsHis needs are more considered even not mature and
ambigous
Change may occur due to
Misunderstanding
Scope
8/11/2019 RE-Eli
16/59
An Elicitation methodology Framework (DOD-SEI)
basic remark : Most requirements problems are due to
requirements elicitation
General remark . No technique is comprehensive
enough to adequatly cover all mentionned issues
Objective : Synthesize all methods and techniques
into a methodology which can be instantiated upon a
target systems atributes
bl i d
8/11/2019 RE-Eli
17/59
See table 4.1 in SEI document
Information gathering
Requirements Expression and analysis (see
later course on this topic)
Validation
h li i i h d l
8/11/2019 RE-Eli
18/59
The Elicitation methodology
Fact findings
Req Gathering
Evaluation
Prioritisation
Integration
and Validation
F fi di
8/11/2019 RE-Eli
19/59
Fact findingsUser Developper
Identify Stackholders
Determine operational and
problem contexte
Identify other systemsPerform context analysis
Identify domain experts
Id. Domain
Conduct technological
surveyAsses cost/implementation
R i h i
8/11/2019 RE-Eli
20/59
Requirements gatheringUser Developper
Get Wish List Classify wish list
* Functional
* NFR
* Env.
* ...
See www.incose.org/rwg
paper on requirementscategrorisation
E l i d i li i
http://www.incose.org/rwghttp://www.incose.org/rwg8/11/2019 RE-Eli
21/59
Evaluation and rationalisationUser Developper
Perform abstraction to
answer question
see interview
techniques
Perform risk assessment
Cost benefit ...
P i i i i
8/11/2019 RE-Eli
22/59
PrioritisationUser Developper
* Dtermine criticality Prioritisation of requirements
basis : cost, criticality, ...
I i d lid i
8/11/2019 RE-Eli
23/59
Integration and validationUser Developper
Adress completeness :TBD type
validate req with respect
concept of operation
Decide to go on next step
* Demo
* prototype
* ...
Consistency checking
C l i th th d l
8/11/2019 RE-Eli
24/59
Conclusion on the methodology
Abstract methodology
Still be considered as guide
An evaluation crireria to be developped :
No information on evaluation
Th t kh ld ti
8/11/2019 RE-Eli
25/59
The stackholder connection
Sometimes called requirements analysis or
requirements discovery Involves technical staff working with
customers to find out about the applicationdomain, the services that the system shouldprovide and the systems operationalconstraints
May involve end-users, managers, engineers
involved in maintenance, domain experts,trade unions, etc. These are calledstakeholders
S ifi li it ti t h i
8/11/2019 RE-Eli
26/59
Specific elicitation techniques
Documentation
Interviews
Questionnaires
Scenarios
Ethnography
G h i I f i Ab
8/11/2019 RE-Eli
27/59
Gathering Information About...
The organisation
goals, structure, functional units, policies The people
authority, duties, relationships, information,
needs The work
tasks, work flows, procedures, schedules,
volumes, performance criteria The work environment
work areas, resources
G th i I f ti F
8/11/2019 RE-Eli
28/59
Gathering Information From...
Documentation charts, manuals, job descriptions, forms,
reports
System users and managers External sources
other companies, vendors, publications,
seminars, workshops, on-line data services
I t i
8/11/2019 RE-Eli
29/59
Interviews
The requirements engineer or analyst
discusses the system with differentstakeholders and builds up an
understanding of their requirements.
Identify work flows
factors that influence the operations of systems
the elements (documents, procedures, policies etc.)that make up systems
T f I t i
8/11/2019 RE-Eli
30/59
Types of Interviews
Closed interviews. The requirements
engineer looks for answers to a pre-definedset of questions
goal-directed and systematic
Open interviews There is no predefinedagenda and the requirements engineer
discusses, in an open-ended way, what
stakeholders want from the system. Appropriate when we want to explore an issue
establish rapport and obtain a broad view
I t i i ti l
8/11/2019 RE-Eli
31/59
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, arequirements proposal or an existing system
Interviewers must be aware of
organisational politics - many realrequirements may not be discussed because
of their political implications
I t i St
8/11/2019 RE-Eli
32/59
Interview Steps
Preparing
Planning
Opening and Closing
Conducting
Following up
Preparing for the interview
8/11/2019 RE-Eli
33/59
Preparing for the interview
Review
organisation reports
annual reports
statements of departments goals
long-range planning goals
existing procedure manuals
systems documentation
understand their language
Planning of Interviews
8/11/2019 RE-Eli
34/59
Planning of Interviews
Identify sources
prepare
* purpose, outline of points to cover
venue
appointments
prepare the interviewee
* points to cover, useful documents
Questioning
8/11/2019 RE-Eli
35/59
Questioning
Open questions
tell me what happens when a customer calls
leading questions
be wary of negative responses
exceptions?
Subjects who try to please
Listening
8/11/2019 RE-Eli
36/59
Listening
Judge content and not delivery
withhold evaluation and response
be flexible
work at listening
resist distractions
keep your mind open
listen for ideas
Opening and closing and Following Up the interview
8/11/2019 RE-Eli
37/59
Opening and closing and Following Up the interview
Introduce yourself
state the purpose of the interview
briefly summarise the areas that have been
discussed, highlight important points and
your understanding of them
thank the interviewee for the time
Ask closed questions
Document the results
Questionnaires
8/11/2019 RE-Eli
38/59
Questionnaires
Validity
- sample size, audience
Reliability
Questions
- open ended
- fill in the blank
- multiple choice- rating scales
Scenarios
8/11/2019 RE-Eli
39/59
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
8/11/2019 RE-Eli
40/59
Scenarios
Scenarios are examples of interactionsessions which describe how a user interacts
with a system
Discovering scenarios exposes possiblesystem interactions and reveals system
facilities which may be required
Operational semantics
Observation and social analysis
8/11/2019 RE-Eli
41/59
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 differfromformal, prescribed processes
Meetings
8/11/2019 RE-Eli
42/59
Meetings
Meetings consume resources
must improve quality of meetings
Meetings have different objectives
solve problems, clarify issues
brainstorm solutions to problems resolve conflicts
conduct reviews
collect and merge facts and data report progress
assign actions
Meetings: Planning
8/11/2019 RE-Eli
43/59
Meetings: Planning
Define clearly the expected results or
outcomes of the meeting
Find if possible a way to eliminate the needfor the meeting
do we really need the outcome of this meeting atthis moment?
Is there another more efficient and more effectiveway to accomplish what is to be accomplished by
holding this meeting? If yes and no are the answers to the two questions
then proceed
Meetings: Planning
8/11/2019 RE-Eli
44/59
Meetings: Planning
Prepare agenda for the meeting
reasonable time allocation for each topic circulate at least two days before the meeting
to allow time for the attendees to prepare, comment and makeschedule arrangements
identify and notify required meeting attendees. Must have theright people
the appropriate information and knowledge to support meetinggoals and objectives
the authority )direct or delegated) to make decisions and
commitments if required by the meetings goals and objectives
the need to understand what is going on and the rationale behindany decisions or commitments made during the meeting
Meetings: Planning
8/11/2019 RE-Eli
45/59
Meetings: Planning
Meeting location considerations
room size, lighting, noise, temperature, humidity candistract
need for audio/visual aids in working order
Start and Finish on time
Record and publish minutes
Have handouts ready for distribution
review the agenda, meeting goals and objectivesfirst
discourage interruptions and deflections from thetopic at hand
follow the agenda schedule as closely as possible
Active Listener Guidelines
8/11/2019 RE-Eli
46/59
Active Listener Guidelines
Clear your mind of everything except the speaker,
the topic and what the speaker is actually saying.Prevent trying to read more into what the speakeris saying than the speaker is actually saying
Capture as accurately as possible the information
that the speaker is conveying Let the speaker know by actions that s/he is
interested in what is being said
Ask questions as they arise to clarify points,indicate understanding and provide feedback tothe speaker
Active Listener Guidelines
8/11/2019 RE-Eli
47/59
Active Listener Guidelines
Ask that the central ideas, themes and summaries
be repeated to assure complete understanding
Do not attempt to formulate replies, rebuttals or
counterexamples while the speaker is talking
Do not draw conclusions until you have heard thewhole story
Accept that understanding is not agreeing
Do not be afraid to ask if there is something that
you have not been told.
Methodologies
8/11/2019 RE-Eli
48/59
Methodologies
A number of techniques are available todescribe the workings of a system
Many people have taken a number of these
techniques and produced a method for usingthem to arrive at a specification
Methodologies Division
8/11/2019 RE-Eli
49/59
Methodologies Division
Main Division
Data driven
SSADM
Process driven
Yourdon JSD
Is there a universally best methodology?
No
Can I combine methodologies?
Maybe
Comparison of Methodologies
8/11/2019 RE-Eli
50/59
Comparison of Methodologies
Can one compare the available methodologies?
against an ideal methodology
not feasible because no suitable specification of an ideal
methodology exists
assess the features and facilities of each methodology within
a formalised framework
invent questions about each methodology
ask the questions for each methodology
merge and describe the results
decide?
Typical Comparison Questions
8/11/2019 RE-Eli
51/59
Typical Comparison Questions
For the comparison one may ask
Does the methodology cover all phases? Which ones? How
thoroughly.
Are the steps fairly proceduralised or does the methodology
only give broad directions? Are analysis, design and
implementation given equal weight?
Is it data or process analysis oriented?
Does it cover prototyping and incremental development?
How are the results of analysis and design expressed?
Is the methodology supported by software?
What types of applications is it suited to? History?
Decomposition Diagrams
8/11/2019 RE-Eli
52/59
Decomposition Diagrams
A high-level organisation (or function or activity)
is decomposed into lower organisations (orfunctions or activities). The lower we go in the
hierarchy the greater the detail revealed
Used to show organisation, system, program, fileand report structures
organisation
functions
processes procedures
program structures
Viewpoints for requirements elicitation
8/11/2019 RE-Eli
53/59
Viewpoints for requirements elicitation
The Preview approach adresses the cases
where
Sources from radical sources
Identify key business drivers
Incremental process for requirement elicitation
PREVIEW Components
8/11/2019 RE-Eli
54/59
PREVIEW Components
Viewpoint name : an identifier
Viewpoint focus : interaction, domain, stakeholder
Viewpoint concerns : all concerns applicable
Viewpoint sources : individuals, documents
Viewpoint requirements : Req. from source
Viewpoint history : changes record
Limited only to requirement elicitationand NOT Validation
Example (Sommerville paper ICRE-98)
8/11/2019 RE-Eli
55/59
Example (Sommerville paper ICRE 98)
Emergency braking system
Viewpoint name : emergency braking system
Viewpoint focus : The protection system of the train which mustdetect dangerous condistions and apply emergency braking to bring train to a
safe state
Viewpoint concerns : Safe compatibility
Viewpoint sources : systems design; function spec of existingprotection software
Example
8/11/2019 RE-Eli
56/59
Example
Viewpoint requirements : 1. Detection of excess speed , ifthe speed of the train exceeds the safe speedfor the current track segment bymore than 6 kmh emergency braking must be applied
2. Detection of overshooting, if the signal sensor indicates a danger setting
and the front of the train has entered the signalled track segment,
emergency braking shall be applied3. Frequency of invocation , detection of excess speed, detection of
overshooting, and determining the necessity of emergency brake application
shall be performed once every iteration of the on board software
application cycle
Viewpoint history : case of evolving requirement(following anaccident or a failure)
Conclusions
8/11/2019 RE-Eli
57/59
Conclusions
Elicitation Process is The FIRST PHASE
Needs to be successfulJust DO IT
Be convinced it needs to be done
Any technique will do (see resources and
papers)
Next lecture
8/11/2019 RE-Eli
58/59
Next lecture
RequirementsManagement
Requirements elicitation
Reading and assignment
8/11/2019 RE-Eli
59/59
Reading and assignment
Papers
Christel & Kang : Issues in requirement elicitation Read sections 1 through 6 of the paperIssues in Requirements Elicitationand answer the following questions:
1. Describe an example requirements elicitation for each of the three major categories of elicitation problems and suggest
a technique for solution.
2. What are the chief differences between the user-oriented and developer-oriented tasks of requirements elicitation?
Contact XX for requirement elicitation for thefollowing concept of operation
HPI Scheduler
Web site for RE course
A students utilities to be done at HPI (web site for students).
http://www.cs.cmu.edu/~SW_Managemnt/ps/tr12.92/TR-12-94.001.htmlhttp://www.cs.cmu.edu/~SW_Managemnt/ps/tr12.92/TR-12-94.001.html