getting to the core, requirements gathering in the wild
DESCRIPTION
Session slides as delivered on March 18th 2014 at Engage in Breda, The Netherlands by Sophie Lavignac-Le Madec & Femke Goedhart Abstract: The basis of any good project is good requirements. Knowing what it is you are going to build / get determines whether your project will be a success or a flat out failure. In reality though the requirements phase is often trivialized or even forgotten. This session will give you tips & tricks as well as explain to you the basic techniques on how to effectively get to the core of the requirements, identify ways of prioritizing them and explain some core concepts of Functional and Technical design elements. Coming from a requirement gathering as well as development & customer point of view Femke & Sophie will take you through some of the real life examples they have come across and a lot of do's & don'ts they have seen (and despaired over)TRANSCRIPT
![Page 1: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/1.jpg)
GETTING TO THE COREREQUIREMENTS GATHERING IN THE WILD
![Page 2: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/2.jpg)
SPEAKERS
Femke Goedhart
Business Consultant - Silverside, The Netherlands
@FemkeGoedhart
nl.linkedin.com/in/femkegoedhart
Sophie Lavignac-Le Madec
Senior Engineer Messaging & Collaboration at SES, Luxembourg
lu.linkedin.com/pub/sophie-le-madec/6/2b0/653
![Page 3: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/3.jpg)
“Knowing what you get before you get it”
![Page 4: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/4.jpg)
REALITY….
It’s all critical!No timeWe assumed…
Scope???
THEY DON’T USE IT
![Page 5: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/5.jpg)
ROI?
![Page 6: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/6.jpg)
DEVELOPMENT WORK
Rework40%
Development60%
Shull et al. 2002, GAO 2004
![Page 7: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/7.jpg)
INFLUENCE OF REQUIREMENTS ON REWORK
Rework40%
Requirement Errors75%
Other25%
Leffingwell 1997
![Page 8: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/8.jpg)
COST OF REWORK
1x
Requir
emen
ts
phase
Develo
pmen
t
phase Pr
oduc
tion
phase
![Page 9: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/9.jpg)
COST OF REWORK
1x
2-3x
Requir
emen
ts
phase
Develo
pmen
t
phase Pr
oduc
tion
phase
![Page 10: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/10.jpg)
Requir
emen
ts
phase
Develo
pmen
t
phase Pr
oduc
tion
phase
1x
2-3x
100x
Boehm 1981; Grady 1999; Haskins 2004
COST OF REWORK
![Page 11: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/11.jpg)
All we really need is some document
management!Ok, but is that all?
Example
![Page 12: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/12.jpg)
Well yes, but we expect it to also do … and … and …
Mmm…. ok, is document
management really what you need then?
Example
![Page 13: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/13.jpg)
Development phase
Requirements phase
Signoff
$$$
$
![Page 14: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/14.jpg)
REQUIREMENTSVision & Scope
User Requirements
Software Requirements specification
![Page 15: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/15.jpg)
INCREASING LEVELS OF DETAILS:
Vision & Scope document
User requirements document
Software requirements specification
Business requirementBusiness rules
User requirement
Quality Attribute
External interfaces
Functional requirement
System requirement
Constraints
Non-Functional requirement
Software Requirements Third edition, Wiegers & Beatty
![Page 16: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/16.jpg)
START WITH THE WHY
Vision & Scope document
User requirements document
Software requirements specification
WHY
HOW
WHAT
![Page 17: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/17.jpg)
REQUIREMENT DOCUMENTS?
Vision & Scope
User Requirements
Software Requirements specification
Project Charter
Functional Design
Technical Design
Project requirements document
Project initiation document
etc, etc…
![Page 18: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/18.jpg)
Requirements Engineering
Requirements Development Requirements Management
Analysis ValidationSpecificationElicitation Change Mgt
STAGES
Software Requirements Third edition, Wiegers & Beatty
![Page 19: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/19.jpg)
Requirements Engineering
Requirements Development Requirements Management
Analysis ValidationSpecificationElicitation Change Mgt
Software Requirements Third edition, Wiegers & Beatty
![Page 20: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/20.jpg)
ElicitationRequirements DevelopmentRequirements Engineering
Budget & Time?
Waterfall or Agile?
User centric or Product centric?
SCOPE
![Page 21: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/21.jpg)
ElicitationRequirements DevelopmentRequirements Engineering
Discover
Design
Develop
Test
Discover
Dev
elop
Design
Test
Sprint #1
Sprint #2
Sprint #3
Discover
Dev
elop
DesignTest
Discover
Dev
elop
Design
Test
AGILE OR
WATERFALL?
![Page 22: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/22.jpg)
WHO ?ElicitationRequirements DevelopmentRequirements Engineering
OWNER
![Page 23: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/23.jpg)
WHO ELSE?ElicitationRequirements DevelopmentRequirements Engineering
Who will use it?
Who will depend on it?
Who has a stake in it?OW
NER
![Page 24: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/24.jpg)
WHO ELSE?• Direct users
• Indirect users
• Stakeholders
• Sponsors
• Acquirer
• Management
• Compliance auditor
• Suppliers
• Regulatory body
• Quality assurance
• Etc, etc…….
ElicitationRequirements DevelopmentRequirements Engineering
Who will use it?
Who will depend on it?
Who has a stake in it?OW
NER
![Page 25: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/25.jpg)
ElicitationRequirements DevelopmentRequirements Engineering
Yes! that’s what we want!
Well I think something else is more important!
That’s not what I wanted!
Example
![Page 26: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/26.jpg)
TACTICS FOR GATHERING REQUIREMENTS
• Interviews
• Focus groups
• Observation
• Document studies
• RFP Documents
• Workshops
• Questionnaires
• Incident & compliance systems
• SME’s
• Market research
• Review of current systems
• ….
ElicitationRequirements DevelopmentRequirements Engineering
![Page 27: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/27.jpg)
TACTICS FOR GATHERING REQUIREMENTS
• Interviews
• Focus groups
• Observation
• Document studies
• RFP Documents
• Workshops
• Questionnaires
• Incident & compliance systems
• SME’s
• Market research
• Review of current systems
• ….
ElicitationRequirements DevelopmentRequirements Engineering
Talking
!=
Listening!
![Page 28: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/28.jpg)
METHODS
ElicitationRequirements DevelopmentRequirements Engineering
Creative Problem Solving (Isaken & Treffinger) • Mess finding • Data finding • Problem finding • Idea finding • Solution finding • Acceptance finding
![Page 29: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/29.jpg)
METHODS
ElicitationRequirements DevelopmentRequirements Engineering
Iterative question asking (Sakichi Toyoda) • Why? • Why? • Why? • Why? • Why? <-Root cause
![Page 30: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/30.jpg)
ElicitationRequirements DevelopmentRequirements Engineering
![Page 31: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/31.jpg)
Requirements Engineering
Requirements Development Requirements Management
Analysis ValidationSpecificationElicitation Change Mgt
Software Requirements Third edition, Wiegers & Beatty
![Page 32: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/32.jpg)
SMART• Specific
• What? Why? Who? Where? Which?
• Measurable • How much? How many? Is it quantifiable?
• Attainable • Can it be achieved with the resources & facilities available?
• Relevant • Does it relate to the project vision & scope?
• Timely • Can I set a date to it?
AnalysisRequirements DevelopmentRequirements Engineering
![Page 33: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/33.jpg)
PRIORITISE
AnalysisRequirements DevelopmentRequirements Engineering
![Page 34: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/34.jpg)
MOSCOWAnalysisRequirements DevelopmentRequirements Engineering
• Must • Should • Could • Won’t (or would)
![Page 35: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/35.jpg)
MOSCOWAnalysisRequirements DevelopmentRequirements Engineering
Requirement M S C W
Insert multiple order lines x
Create an export of closed orders x
Allow to copy order details to allow quick registration x
Allow for inserting personal notes on orders x
![Page 36: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/36.jpg)
MOSCOWAnalysisRequirements DevelopmentRequirements Engineering
Requirement Costs M S C W
Insert multiple order lines $100 x
Create an export of closed orders $1500 x x
Allow to copy order details to allow quick registration $250 x
Allow for inserting personal notes on orders $100 x x
![Page 37: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/37.jpg)
EISENHOWER DECISION MATRIXAnalysisRequirements DevelopmentRequirements Engineering
Urgent Not Urgent
Important
Not Important
![Page 38: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/38.jpg)
PRIORITISEAnalysisRequirements DevelopmentRequirements Engineering
Urgent Not Urgent
Important Must! Should
Not Important Could
Won’t (Nice to
have)
![Page 39: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/39.jpg)
AnalysisRequirements DevelopmentRequirements Engineering
KEEP IT SIMPLE STUPID
![Page 40: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/40.jpg)
Requirements Engineering
Requirements Development Requirements Management
Analysis ValidationSpecificationElicitation Change Mgt
Software Requirements Third edition, Wiegers & Beatty
![Page 41: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/41.jpg)
UNIFIED MODELLING LANGUAGE
Structural UML diagrams
• Class diagram
• Component diagram
• Composite structure diagram
• Deployment diagram
• Object diagram
• Package diagram
• Profile diagram
SpecificationRequirements DevelopmentRequirements Engineering
Behavioural UML diagrams
• Activity diagram
• Communication diagram
• Interaction overview diagram
• Sequence diagram
• State diagram
• Timing diagram
• Use case diagram
![Page 42: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/42.jpg)
SpecificationRequirements DevelopmentRequirements Engineering
VISUALISE
![Page 43: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/43.jpg)
WRITE IT DOWN • Build prototypes
• Provide demo’s of similar functionality
• Models & Diagrams
• Draw out process- and workflows
• Mockups of screens & forms
• Use cases, function descriptions
• Tell it as a story: “a day in the life of…”
SpecificationRequirements DevelopmentRequirements Engineering
![Page 44: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/44.jpg)
TALK THE TALK…
SpecificationRequirements DevelopmentRequirements Engineering
User
??
Developer
??
![Page 45: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/45.jpg)
TALK THE TALK…
SpecificationRequirements DevelopmentRequirements Engineering
User
??
Developer
??
Management
$$$?
![Page 46: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/46.jpg)
example
ElicitationRequirements DevelopmentRequirements Engineering
![Page 47: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/47.jpg)
ElicitationRequirements DevelopmentRequirements Engineering
![Page 48: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/48.jpg)
Requirements Engineering
Requirements Development Requirements Management
Analysis ValidationSpecificationElicitation Change Mgt
Software Requirements Third edition, Wiegers & Beatty
![Page 49: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/49.jpg)
EXPECTATION GAPValidationRequirements DevelopmentRequirements Engineering
Time —>
What the developer builds
What the user wants
Expectation gap
Software Requirements Third edition, Wiegers & Beatty
![Page 50: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/50.jpg)
EXPECTATION GAPValidationRequirements DevelopmentRequirements Engineering
Time —>
What the developer builds
What the user wants
Expectation gap
contact pointcontact point
Software Requirements Third edition, Wiegers & Beatty
![Page 51: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/51.jpg)
PLAY IT BACK!
“I ‘ve heard that…”
“I understand you want…”
“You expect it to…”
etc. etc…
ValidationRequirements DevelopmentRequirements Engineering
![Page 52: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/52.jpg)
ROLE
Check your personal feelings at the door but don’t forget to keep an eye on project
scope & constraints!
ValidationRequirements DevelopmentRequirements Engineering
![Page 53: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/53.jpg)
4-EYES PRINCIPLE
ValidationRequirements DevelopmentRequirements Engineering
![Page 54: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/54.jpg)
ValidationRequirements DevelopmentRequirements Engineering
SIGN OFF ON THE REQUIREMENT BASELINE
![Page 55: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/55.jpg)
ElicitationRequirements DevelopmentRequirements Engineering
Example
![Page 56: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/56.jpg)
Requirements Engineering
Requirements Development Requirements Management
Analysis ValidationSpecificationElicitation Change Mgt
Software Requirements Third edition, Wiegers & Beatty
![Page 57: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/57.jpg)
Change managementRequirements DevelopmentRequirements Engineering
THINGS CHANGE
![Page 58: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/58.jpg)
– Douglas Hofstadter
“Hofstadter's Law: It always takes longer than you expect, even when you
take Hofstadter's Law into account”
Change managementRequirements DevelopmentRequirements Engineering
![Page 59: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/59.jpg)
MANAGE CHANGES• Set up a formal RFC (Request For Change) process
• Register all changes and use version control
• Translate into effect (impact on time, costs & end result)
• (Re-)Prioritise
• Communicate
• Sign off on changed requirements
Change managementRequirements DevelopmentRequirements Engineering
![Page 60: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/60.jpg)
WRAP UP
• Treat Requirements Gathering as if it’s a project on its own
• Assign or free up enough resources
• Evaluate afterwards (improvements for future projects)
• Incorporate an outsiders view
• Don’t set it in stone…. things change, just make sure you manage it!
• Be open… you might be pleasantly surprised!
![Page 61: Getting to the core, requirements gathering in the wild](https://reader034.vdocument.in/reader034/viewer/2022052619/55540af0b4c90544428b52da/html5/thumbnails/61.jpg)
QUESTIONS?
Femke Goedhart
@FemkeGoedhart
nl.linkedin.com/in/femkegoedhart
Sophie Lavignac-Le Madec
lu.linkedin.com/pub/sophie-le-madec/6/2b0/653