Title: Requirements Elicitation Techniques
1Requirements ElicitationTechniques
2Interviewing and questionnaires
3Interviewing
- Important
- Straightforward
- Simple and direct
- Can be used in any situation
- Can lead to Use and Developer syndrome
- Must eliminate biases and predispositions
- We each bring our world filter
4Context-free question
- A context-free question helps us gain an
understanding of the real problem without biasing
the users input - Who is the user?
- Who is the customer?
- Are their needs different?
- Where else can a solution to this problem be
found? - Listen !!
5Context-free question
- These questions allow us to fully understand the
customers problem - Also what solutions, if any, the customer already
envisions
6Value added context
- After the context-free questions are asked,
suggested solutions can be explored - After all thats what we are here for!
- Page 96-98 contains good examples of context-free
and non-context-free questions
7The interview
- Prepare an appropriate context-free interview and
write it down for reference - Research the background of the stakeholder and
the company to be interviewed - Record answers
- Refer to template as necessary
8The interview
- Ok to wander off course, as long as the
interviewer keeps the goal in mind - Keep dive dialogues by the customer are ok!
- This data forms the basic user needs that go near
the top of the pyramid
9Compiling the need data
- Summarize the three most important needs or
problems - Ten interviews may produce 10-15 different needs
- There is really no substitute for the interview
- Do it first
- Do it for every new class of problem
- Do it for every new project
10Questionnaires
- May seem to be more efficient
- Think about the time/effort you spend in doing a
questionnaire - Personal contact, report building, etc is too
important - Problems with questionnaires
- Relevant questions cannot be decided in advance
- Assumptions behind questions bias results
- Difficult to explore new domains
- Unclear responses hard to follow up on
11Requirements workshops
12Accelerate the decision process
- Powerful techniques for gathering data
- Designed to encourage consensus
- Rapid agreement on course of action
- Key stakeholders participate
- Short 1 to 2 days
- Facilitated
13Benefits
- Assists in building an effective team committed
to the project - All stakeholders get their say
- Forges agreement between stakeholders and
developers - Expose and resolve political issues
- Output is preliminary system definition at the
features level
14Preparing for the workshop
- Selling the concept
- Communicate the benefits
- Ensure participation of the right stakeholders
- Important to have the right people
- Logistics
- Structure the proper invitation
- Travel arrangements
- Meeting room
15Preparing for the workshop
- Warm up materials
- Send materials out in advance
- Project specific information
- Drafts of requirements documents
- Lists of suggested features
- Copies of interviews
- Analysts reports
- Marketing data
- Out of box thinking materials
- Rules for brainstorming, etc
16Role of the facilitator
- Should be experienced in requirements management
- Should have some training
- Demonstrated consensus building or team building
skills - Well respected and personable
- Strong enough to chair
- Preferably not a team member
17Possible agenda
- Introduction
- Context
- Brainstorming
- Lunch
- Brainstorming
- Feature definition
- Idea reduction and prioritization
- Wrap up
18Running the workshop
Problem Solution
Time management Facilitator keeps a kitchen timer for all breaks, etc
Grandstanding, domineering positions Use a 5-minute position statement to regulate input. Use a parking lot for later discussion
Lack of user input from stakeholders Encourage at least one idea per person
19Running the workshop
Problem Solution
Negative comments, petty behaviors Various techniques to use
Flagging energy after lunch Light lunches, midafternoon snack breaks, rearrange room, change lighting or temperature
20Brainstorming and idea reduction
21Key points
- Brainstorming is a collection of techniques that
are useful to use when the stakeholders are
collocated - Primary benefits
- Encourages participation by all parties
- Participants can piggy back on others ideas
- Maintain a written trail of all discussion
- High bandwidth and broad solution set
22Brainstorming Rules
- Do not allow criticism or debate
- Let your imagination soar
- Generate as many ideas as possible
- Mutate and combine ideas
- What features would you like?
- What services would you like?
- What things to keep track of ?
23Write down the ideas
- Make sure they are captured in that persons
words - Make sure they are not lost
- Enable them to be posted for later piggybacking
- Prevent delays in the creative process
24Idea reduction
- Pruning eliminate those ideas not worthy of
future investigation - There should be some out of box thinking ideas
- Any disagreement means it stays on the list
- Similar ideas grouped
25Grouping ideas
- New features
- Performance issues
- Enhancements to current features
- User interface and ease of use issues
- Further idea generation may be needed on the
grouped ideas
26Feature definition
- Write a short description of the idea that was
proposed - Ensure common understanding
- Should not take long to do
27Example
Application context Brainstormed feature Feature definition
Home lighting automation Automatic lighting settings Homeowner can create preset time-based schedules for certain lighting events to happen, based on the time of day
Sales order entry system Fast Fast enough response time to not interfere with typical operations
Defect tracking system Automatic notification All registered parties will be notified via e-mail when something has changes
28Prioritization
- Probably cannot do everything on the list
- Cumulative voting the hundred dollar test
- Can only be used once for biasing reasons
- Critical (indispensable), important significant
loss in customer utility), useful ( nice to
have) categorization