REQUIREMENTS PLANNING AND ELICITATION

profileEB2007-2007
20161118-Elicitation_presented.pdf

© Fraunhofer IESE

REQUIREMENTS ENGINEERING LECTURE 2016/2017

Eddy Groen

Requirements Elicitation

© Fraunhofer IESE

2

AGENDA

 Objectives & Problems w.r.t. Elicitation

 Stakeholder Analysis

 Communication Issues

 Interviews & Interview Effects

 Other Elicitation Techniques

 Summary

© Fraunhofer IESE

3

Main Activities in Requirements Engineering

Elicitation Documentation Validation & Negotiation

Management

© Fraunhofer IESE

4

Basis Enhancement Optimization Context

Recommended Elicitation Practices

Optimize system to support stakeholders in performing their tasks

Ascertain quality

Elicit non-functional requirements

Elicit functional requirements

Elicit goals

Identify stakeholders &

sources

Define context & scope

Elicit tasks & processes

Elicit technical environment

Consider implementation

constraints

Elicitation

© Fraunhofer IESE

5

Objectives & Problems w.r.t. Elicitation REQUIREMENTS ELICITATION

© Fraunhofer IESE

6

Objectives of the Elicitation Phase

 Knowledge acquisition (elicitation, acquisition) about:

 involved persons and objectives

 tasks

 current state

 expectations

 the domain

© Fraunhofer IESE

7

Common Problems of Elicitation

 Consideration / identification of all relevant stakeholders

 Communication

 Inability of stakeholders to abstractly describe what they are doing, why they are doing it nor what they need to be able to do things

 Requests are too generic

 Presentation of new possibilities and their consequences

 Stakeholders like to stick to their old avenues of approach

 Conflicts

 Cause of power struggles

 Cause of opposition against changes

 Priorities / changes

 Stakeholders want too much

 Stakeholders continuously add new ideas

© Fraunhofer IESE

8

Stakeholder Analysis REQUIREMENTS ELICITATION

© Fraunhofer IESE

9

Stakeholders

 Stakeholders are people / organizations with an interest in the product

 They build it

 They use it

 They manage it

 They are in some way affected by its use

© Fraunhofer IESE

10

Typical Stakeholders

What could be typical stakeholders?

Why are they important?

© Fraunhofer IESE

11

Stakeholder Elicitation by Means of Stakeholder Analyses

 A multitude of very diverse stakeholders are involved in the development of a product or in a project

 Goal: identification of all potential product & process stakeholders

 Which of these stakeholders might be influenced positively and which negatively by a decision made during the project?

 Goal: elicitation of the interests of all stakeholders, their importance, and their influence within the project, as well as identification of their relationships among each other

© Fraunhofer IESE

12

Benefit

 Identification of:

 the interests of all stakeholders who may influence or be influenced by the project

 potential conflicts and risks that may jeopardize the project

 possible opportunities and alternatives that may have a positive influence on the project

 groups whose participation in the project must be promoted actively

 decisions that may reduce or even eliminate negative effects on weak or vulnerable groups

© Fraunhofer IESE

13

Stakeholder Identification

Stakeholder Interests in the Project

Developer High productivity, error avoidance, little rework

Marketing Sales High sales figures, increased customer satisfaction

Project Management Budget reduction, adherence to schedule

Investor Shorter time to market, faster workflows

Customer, User Easier workflow, usability

© Fraunhofer IESE

14

Importance and Influence (1/2)

Stakeholder Importance Influence

Developer 2 5

Administrator 2 2

Manager 4 5

User 4 1

Customer 5 2

 Note: This is a fictional example

Importance: condition that indicates how much the project results should please the stakeholder Influence: capability of affecting the performance of concrete development activities

© Fraunhofer IESE

15

Importance and Influence (2/2)

Importance

Influence

B A

D C

1

1

2

2

3

4

4

5

5

User

Customer

Manager

DeveloperAdministrator

© Fraunhofer IESE

16

Quadrant A

Importance

Influence

B A

D

1

1

2

2

3

4

4

5

5

C

 Stakeholders with high importance for the project, and with strong influence on concrete development activities

 E.g., project manager

 High communication & synchronization effort needed between the stakeholders in this group

 Common understanding & agreement about decisions must continually be guaranteed

© Fraunhofer IESE

17

Quadrant B

Importance

Influence

B A

D

1

1

2

2

3

4

4

5

5

C

 Stakeholders with high importance for the project, but with little influence on concrete development activities

 E.g., user, customer

 Require special initiatives for protecting their interests

 Continuously monitor the fulfillment and validity of their goals

 Promote their involvement in the development

 E.g., prototype workshops, review meetings

 Name person responsible for the project in order to monitor the initiatives

© Fraunhofer IESE

18

Quadrant C

Importance

Influence

B A

D

1

1

2

2

3

4

4

5

5

C

 Stakeholders with low importance for the project, and with strong influence on concrete development activities

 E.g., developer, quality assurance

 Possible “project killers“

 Are able to block the continuation of the project and jeopardize its success

 Need permanent and intensive involvement in decision-making activities by being given rationales and explanations

 Acceptance regarding decisions must be achieved

© Fraunhofer IESE

19

Quadrant D

Importance

Influence

B A

D

1

1

2

2

3

4

4

5

5

C

 Stakeholders with low importance for the project, and with little influence on concrete development activities.

 E.g., maintenance personnel, hotline service

 Still, their interests should not be neglected completely, since they are project and product stakeholders after all

 E.g., handbooks, training

 Periodically communicate information about project or product decisions

© Fraunhofer IESE

20

Stakeholder Onion Model

The Product or Service

The Direct Environment

The Indirect Environment

The Wider Environment

Normal Operator

Maintenance Operator

Operational Support

Interlacing System

Product Manager

Functional Beneficiary

Politician

Media Regulator

The Public

Competitor (Negative

Stakeholder)

Developer

Director, Shareholder

(Financial Beneficiaries)

Stakeholders who only benefit indirectly from the system and only influence the system indirectly (including negative stakeholders)

The indirect operational environment of the system; stakeholders directly benefit from the system

The immediate operational environment of the system; stakeholders are in direct contact with the system

© Fraunhofer IESE

21

Communication Issues REQUIREMENTS ELICITATION

© Fraunhofer IESE

22

Communication – Not As Easy …

© Fraunhofer IESE

23

Objective Reality

Perceived Reality

Perception

Expression

Representation Interpretation

Personal Reality

Stakeholder Requirements Engineer

Representation

Documented Expression

Communication Model (Extended Version)

© Fraunhofer IESE

24

…a little game in between…

© Fraunhofer IESE

25

p = possible g = good v = very good

[Source: Lauesen 2002]

Overview of Elicitation Techniques

P re

se n

t w

o rk

P re

se n

t p

ro b

le m

s

C ri

ti ca

l is

su e s

/ g

o a ls

F u

tu re

s y st

e m

i d

e a s

R e a li

st ic

p o

ss ib

il it

ie s

C o

n se

q u

e n

ce s

& ri

sk s

C o

m m

it m

e n

t

C o

n fl

ic t

re d

u ct

io n

R e q

u ir

e m

e n

ts

P ri

o ri

ti e s

C o

m p

le te

n e ss

Stakeholder analysis (Group) Interviews Observation / Site visits Task demo Document studies Questionnaires

v v v v g

g v g v g g

v g

g

p

p p

p g g p p p p p

g g g

Brainstorming Focus groups UI workshops

v v p

v v v g p

g g

p p

p v

p v

Prototyping Pilot experiments p

p v v

g v

g v

v g g

g g

Similar companies Suppliers

p p

g p

v g

v v

v g

g g

Negotiation Risk analysis Cost/benefit Goal-domain analysis Domain-requirements

p

g g p

g g v v g

p

p g p

p g p p

p v v v

v

g

v

p p

g p

g v

v

v g g

v g

© Fraunhofer IESE

26

Interviews & Interview Effects REQUIREMENTS ELICITATION

© Fraunhofer IESE

27

Types of Interviews

 Unstructured / open interview

 Open questions

 Difficult to analyze the results

 Requires good interviewing skills

 Personality influences the results

 Semi-structured interview

 Guided by predefined interview questions

 Structured by predefined topics

 Room for spontaneous extensions / variation

 Structured interview

 High degree of objectivity

 Easy to compare results between different interviews

 Allows for quantitative evaluation

 No freedom for the interviewer, very narrow

© Fraunhofer IESE

28

Procedure of an Interview (1/3)

1. Preparation

 Clarify goals and focus

 Review of existing documents (e.g., scenarios, previous work documents)

 Selection of interviewees / stakeholders

 Selection of interview type (open, semi-structured, structured)

 Elaboration of questions (create a guideline, with at least one domain expert)

 Date arrangements

 Preparation of the material (dictating machine, guideline, information material)

 Possible inclusion of a minute taker

© Fraunhofer IESE

29

2. Start of the conversation

 Create a pleasant and inspiring conversational situation (also w.r.t. noise and interruptions)

 Inform interviewee of the purpose and procedure of the interview, as well as of the usage of the results

 Assure confidentiality

 Clarify questions of the interviewee in advance

3. Conduction

 Start of the recording

 Conduct interview on the basis of the guiding questions

Procedure of an Interview (2/3)

© Fraunhofer IESE

30

4. End of the conversation

 End of the recording

 Informal talk

 Inform interviewee of further steps

 Interviewee has the last word

5. Follow-up

 Elaboration of the answers

 Submit the elaboration to the interviewee for reviewing

Procedure of an Interview (3/3)

© Fraunhofer IESE

31

More Than Just Questions

 The outcomes of an interview can be influenced by many factors

 Interpersonal behavior

 Interview effects bias both the interviewer and interviewee

 Rosenthal effect

 Social desirability

 Halo effect

 Recency effect

 Sponsorship bias

 …

© Fraunhofer IESE

32

Interview Effect: Rosenthal Effect

Biased expectancies can affect reality and result in self-fulfilling prophecies

The interviewee tries to please the interviewer

“Just one more question: Do you currently own or have you ever owned a fur coat?”

© Fraunhofer IESE

33

Interview Effect: Social Desirability

When we know that other people are watching us, we tend to behave in a way that we believe is socially acceptable

Do you smoke less than 10, 10 to 20 or

more than 20 cigarettes per day?

That’s a fair average!

Umm... 15!

© Fraunhofer IESE

34

Interview Effect: Halo Effect

A property of an individual biases the judgment of other properties

Attractive people are often judged as having a more desirable personality and more skills than someone of average appearance

Attractive = rich = intelligent

© Fraunhofer IESE

35

Interview Effect: Recency Effect

A recent stimulus, observation or experience influences the next

Given a list of items to remember, we will tend to remember the last few things more than those things in the middle

© Fraunhofer IESE

36

Interview Effect: Sponsorship Bias

Interviewees base their response on the interviewer’s goal (or what they think that goal is)

Views and opinions are not expressed as freely (often unconsciously)

Interviewees may try to give appropriate and acceptable answers

Will they reduce the manpower of our department ?

Is this effective?

© Fraunhofer IESE

37

Best Practices for Interviews (1/2)

 Questions

 Start with rather general question, then get more specific

 Mixture of open and closed questions

 No leading questions

 No suggesting of yes / no answers

 No complicated, nested or ambiguous questions

 No multi-questions or question alternatives

 No technical jargon

 Encourage the interviewee to provide depictions in own words

 Important topics that have not yet been addressed should be introduced as new topic at the end

© Fraunhofer IESE

38

Best Practices for Interviews (2/2)

 “Active listening”

 Show interest and attention

 Paraphrasing without asking explicit (W-)questions

 Endure pauses for thought, do not ask the next question right away

 Regard non-verbal aspects

 If possible, do not interrupt

 Interrupt only digressions and streams of words that seem to go nowhere

 Withhold personal opinion

 For eliciting the context: avoid questions about rationale (“Why?”)

 Better: “How did it happen? What happened next?”

 For wishes / requirements: probe deliberately!

 Get beyond too generic answers

© Fraunhofer IESE

39

Other Elicitation Techniques REQUIREMENTS ELICITATION

© Fraunhofer IESE

40

Focus Groups

© Fraunhofer IESE

41

Focus Groups

 Special form of a workshop

 Ideally 6–8 participants

 Preparation and professional moderation are essential for success

1. Collect problems and their reasons

 E.g., map collection, visualization (flip chart, moderation cards)

2. Focus on optimal solution

 Not only opposites of the problem

 Advantages (compared to interviews)

 Different perspectives on the topic of interest

 Direct resolution of conflicts possible

© Fraunhofer IESE

42

Prototyping (1/2)

 Especially suited for elicitation and validation in situations where stakeholders have only a vague understanding of the system

 Allows them to experience what they will get

 Detect unconscious and subconscious requirements

 “…but I had something different in mind”

 “I know it when I see it” (IKIWISI) phenomenon

 Different purposes of prototypes

 Demonstration prototype

 Identification of user tasks

 Decision prototype

 Evaluation of alternatives

 Learn prototype (understand a problem or new technique better)

© Fraunhofer IESE

43

Prototyping (2/2)

 Paper prototypes

 “Wizard of Oz” Prototype

 User input in a graphical user interface is sent to an operator, who then simulates the systems behaviour and produces the appropriate output

 Software prototypes

 E.g., realized in Visual Basic

 Other terms

 Wireframes, mock-ups

 By degree of detail (high-fidelity vs. low-fidelity)

 By prototype lifetime (evolutionary vs. throw-away)

© Fraunhofer IESE

44

Site Visits (1/2)

 Observation of stakeholders in their environment

 Can be done by observer, camera or computer monitoring

 Objectives

 Identify fundamental knowledge that nobody will express (implicit knowledge)

 Find hidden requirements / causes

 Obtain a better understanding of the real situation on the side of the requirements engineer

 Suitable for the development of new products & new market segments

© Fraunhofer IESE

45

Site Visits (2/2)

 1–2 interviews per day and team  Analyze the data within 48 hours  Team debriefing very important

 Disadvantages

 Large amounts of irrelevant data

 Time-consuming

 Only observing the as-is situation and possible problems

© Fraunhofer IESE

46

Other Methods / Sources for Information

 Analysis of existing documents

 Analysis of (legacy and competing) products

 “Creation” of requirements through creativity workshops

© Fraunhofer IESE

47

Creativity in Requirements Engineering

 Idea / requirements generation is at least as important as requirements elicitation!

 Types of ideas needed for successful system development

 Technical (e.g., new features)

 Quality-related (e.g., make system more efficient)

 Organizational (how to improve business processes)

 Creativity techniques can be used during requirements elicitation to create these ideas

© Fraunhofer IESE

48

The 5 Components of Creativity Workshops

Skilled Moderator

Idea Generator: Customer

Idea Evaluator (Benefit): Customer

Idea Generator:

Tech. Competence

Idea Evaluator

(Feasibility / Scope): Tech. Competence

© Fraunhofer IESE

49

Principles of Creativity

Preexisting Associations

New Associations

Alienation Analogy Induction Transfer Adaption Analysis Abstraction Reduction

Free Association Structured Association Intuition-Triggered

Inference Reformulation Forgetting

Concept Formation Abstraction Reduction Analysis Argumentation Confrontation Empirical Evaluation

Transformation

Evaluation

Combination

Exploration

© Fraunhofer IESE

50

Exemplary Techniques in the Phases

IESE’s Creativity Process (1/3)

St a

rt in

g

p o

in t

1. Generate initial ideas • Brainstorming • Provocation • Brainwriting • Pin Cards • Bug Listing

Initial ideas, suggestions or starting points

2. Structure the problem • Mind Mapping • Comparison Tables • Kepner and Tregoe • Strategic Options

Development and Analysis (SODA)

• Goal Orientation

Specified problem

3. Incubation phase

4. Desired degree of innovation

IESE’s Creativity Process (2/3)

5a. Generate unusual / crazy ideas

• Provocation • Morphological Forced

Connections • Problem Reversal • Relational Words • Super Heroes • SCAMMPERR

5b. Generate usual / unusual ideas

• Six Thinking Hats • Synectics • Attribute Listing • Concepts Fan • KJ-Method • Cherry Split • SCAMPER • Circle of Opportunity

Innovative ideas

4. Desired degree of innovation

6. Illumination phase

Usual ideasUnusual ideas

© Fraunhofer IESE

54

IESE’s Creativity Process (3/3)

7. Shape and evaluate the solution

• SWOT Analysis • Listing Pros and Cons • Progressive Hurdles • Dimensional Analysis • Implementation

Checklists • Panel Consensus

8. Fulfilled requirements

6. Illumination phase

Concept / Possible solution

Final product

4. Desired degree of innovation

Yes

No (improve implementation)

No (generate more ideas)

© Fraunhofer IESE

55

List of Creativity Techniques Anonymous Voting

Assumption Surfacing

Attribute Listing

Backward Forward Planning

Boundary Examination

Boundary Relaxation

Brain Sketching

Brainstorming

Brainwriting

Brainwriting 6-3-5

Brainwriting Game

Brainwriting Pool

Browsing

Brutethink

Bug Listing

Bullet Proofing

Bunches of Bananas

Card Story Boards

Cartoon Story Board

CATWOE

Causal Mapping

Charrette

Cherry Split

Chunking

Circle of Opportunity

Clarification

Classic Brainstorming

Collective Notebook (CNB)

Comparison Tables

Component Detailing

Concepts Fan

Consensus Mapping

Constrained Brainwriting

Contradiction Analysis

Controlling Imagery

Crawford Slip Writing

Creative Problem Solving (CPS)

Criteria for Idea-finding Potential

Critical Path Diagrams (CPD)

Decision Seminar

Delphi

Dialectical approaches

Dimensional Analysis

Disney Creativity Strategy

DO IT

Drawing

Estimate-Discuss-Estimate

Exaggeration

Excursions

Factors in Selling Ideas

False Faces

Fishbone Diagram

Five W's and H

Flow Charts

Focus Groups

Focusing

Force-Field Analysis

Force-Fit Game

Free Association

Fresh Eye

Gallery Method

Gap Analysis

Goal Orientation

Greetings Cards

Help-Hinder

Heuristic Ideation Technique (HIT)

Highlighting

Idea Advocate

Idea Card Method - Brainwriting

Ideal Final Result

Imagery for Answering Questions

Imagery Manipulation

Imaginary Brainstorming

Implementation Checklists

Improved Nominal Group Technique

Interpretive Structural Modeling

Keeping a Dream Diary

Kepner and Tregoe Method

KJ-Method

Laddering

Lateral Thinking

Listing 204

Listing Pros and Cons

Metaplan Information Market

Mind Mapping

Morphological Analysis

Morphological Forced Connections

Multiple Redefinition

Negative Brainstorming

NLP

Nominal Group Technique (NGT)

Nominal-Interacting Technique

Notebook

Observer and Merged Viewpoints

Osborn's Checklist

Other Peoples Definitions

Other Peoples Viewpoints

Paired Comparison

Panel Consensus

Paraphrasing Key Words

Personal Balance-Sheet

Phases of Integrated Problem Solving (PIPS)

Pictures as Idea Triggers

Pin Cards

PMI (Plus, Minus, Interaction)

Plan Do Check Act (PDCA)

Plusses, Potentials and Concerns

Potential-Problem Analysis (PPA)

Preliminary Questions

Problem-Centered Leadership (PCL)

Problem Inventory Analysis (PIA)

Problem Reversal

Progressive Hurdles

Progressive Revelation

Provocation

Q-sort

Quality Circles

Random Stimuli

Rawlinson Brainstorming

Receptivity to Ideas

Reframing Values

Relational Words

Relaxation

Reversals 268

Rolestorming

SCAMMPERR

SCAMPER

Sculptures

Search Conference

Sequential-Attributes Matrix

Seven-Step Model

Similarities and Differences

Simple Rating Methods

Simplex

Six Thinking Hats

Slice and Dice

Snowball Technique

Stakeholder Analysis

Sticking Dots

Stimulus Analysis

Story Writing

Strategic Assumption Testing

Strategic Choice Approach

Strategic Management Process

Strategic Options Development and Analysis (SODA)

Successive Element Integration

Super Group

Super Heroes

SWOT Analysis

Synectics 306

Systematized Direct Induction (SDI)

Technology Monitoring

Think Tank

Thril

TILMAG

Transactional Planning

Trigger Method

Trigger Sessions

TRIZ

Using Crazy ideas

Using Experts

Value Brainstorming

Value Engineering

Visualizing a Goal

Who are you?

Why Why Why (repeatable questions)

Wishing

Working with Dreams and Images

© Fraunhofer IESE

56

Creativity Technique: 6-3-5 Brainwriting

© Fraunhofer IESE

57

Creativity Technique: Lotus Blossom

© Fraunhofer IESE

58

Creativity Technique: Storyboarding

© Fraunhofer IESE

59

Creativity Technique: Remember the Future

© Fraunhofer IESE

60

Creativity Technique: Morphological Box

© Fraunhofer IESE

61

Creativity Technique: Clustering

© Fraunhofer IESE

62

Creativity Technique: Product Box

© Fraunhofer IESE

63

Elicitation Summary

 Interviews

 Time-consuming

 Require explicit integration of standpoints

 Allow for adaptation to interviewee’s background

 Workshops / Focus groups

 Frequently used and take relatively little time

 Fundament for team creation

 Allows for discussing the rationale behind requirements / conflicts

 Problems with social structures, focus on hot spots

 Observations / Site visits

 Good for capturing the as-is situation

 Least impact of presumptions

 Creativity techniques

 Help to “generate” ideas & requirements

© Fraunhofer IESE

64

Basis Enhancement Optimization Context

Recommended Elicitation Practices (Summary)

Elicit non-functional requirements

Elicit functional requirements

Elicit goals

Identify stakeholders &

sources

Define context & scope

Elicit tasks & processes

Elicit technical environment

Consider implementation

constraints

Elicitation

© Fraunhofer IESE

65

Questions