Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
#IWDev 11 - Requirements Gathering
Search
Matt Ball
May 07, 2013
Programming
1
86
#IWDev 11 - Requirements Gathering
How to maximise the bang-for-your-buck we gathering requirements.
Matt Ball
May 07, 2013
Tweet
Share
More Decks by Matt Ball
See All by Matt Ball
Build a Game: The @IWDev Challenge 2014
saxonmatt
0
140
Why I'll never be a Clojure dev
saxonmatt
0
230
Taking mutability out of the state machine
saxonmatt
0
590
Outside In: an introduction to TDD
saxonmatt
0
71
Other Decks in Programming
See All in Programming
Чего вы не знали о строках в Python – Василий Рябов, PythoNN
sobolevn
0
150
GraphQL×Railsアプリのデータベース負荷分散 - 月間3,000万人利用サービスを無停止で
koxya
1
1k
iOSDC.pdf
chronos2500
2
660
Playwrightはどのようにクロスブラウザをサポートしているのか
yotahada3
7
2.3k
NetworkXとGNNで学ぶグラフデータ分析入門〜複雑な関係性を解き明かすPythonの力〜
mhrtech
3
980
クラシルを支える技術と組織
rakutek
0
190
CSC509 Lecture 01
javiergs
PRO
1
430
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
3
130
Go言語の特性を活かした公式MCP SDKの設計
hond0413
1
130
Your Perfect Project Setup for Angular @BASTA! 2025 in Mainz
manfredsteyer
PRO
0
120
ネイティブ製ガントチャートUIを作って学ぶUICollectionViewLayoutの威力
jrsaruo
0
130
非同期jobをtransaction内で 呼ぶなよ!絶対に呼ぶなよ!
alstrocrack
0
500
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Designing Experiences People Love
moore
142
24k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
4 Signs Your Business is Dying
shpigford
185
22k
The Invisible Side of Design
smashingmag
301
51k
Practical Orchestrator
shlominoach
190
11k
Speed Design
sergeychernyshev
32
1.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Transcript
Matt Ball, #iwdev 11 Requirements Gathering Getting the most !
for your $ Tuesday, 7 May 13
I’ve said it (here) before Building software is easy Tuesday,
7 May 13
...and this as well But it can be hard to
figure what you’re building Tuesday, 7 May 13
In fact Many people agree with this Tuesday, 7 May
13
Enough already! No more power phrases, please. (but lets keep
the pictures going, yeah?) Tuesday, 7 May 13
So why is it so difficult? Requirements Gathering is hard
Not enough time Stakeholder uncertainty Communication problems Tuesday, 7 May 13
Before all of that though, let me introduce you to...
Tuesday, 7 May 13
The four gnomes Gnome Gnomes Gnome Ungnomes Ungnome Gnomes Ungnome
Ungnomes Tuesday, 7 May 13
But wait! What is a good requirement anyway? Will deliver
measurable value Will identify any and all stakeholders Will be testable Seen it elsewhere? Copy it. Tuesday, 7 May 13
Not enough time Problems: Time is money. Full requirements and
specification takes lots of it. Tuesday, 7 May 13
Not enough time Solutions: Take an Agile approach to requirements:
Keep them lean Pictures User stories Examples Tuesday, 7 May 13
Stakeholder uncertainty Problems: User wants v.s. Business needs Broken processes
(don’t need I.T. bandages) Tuesday, 7 May 13
Stakeholder uncertainty Solutions: Ask questions Why do they want it?
Is it even an I.T. problem? Tuesday, 7 May 13
Communication problems Problems: Developers think implementation Testers think edge-cases Stakeholders
think £££ Tuesday, 7 May 13
Communication problems Solutions: Speak plain english (or whatever...) Review documentation,
always User stories Examples Tuesday, 7 May 13
!$ Maximize bang for your buck What if they were
all just 1 task? Requirements Conversation Documentation Testing Tuesday, 7 May 13
Gherkins! You knew they were coming, am I right? Tuesday,
7 May 13
BDD Behavior Driven Development: Developers, Stakeholders, Testers - in fact
anyone! Conversations and questions. Documentation in plain language we can all understand. Tuesday, 7 May 13
BDD Documentation: Features and user stories Scenarios and examples Concise
and lean Tuesday, 7 May 13
BDD Testability: Automated tests Validates correctness Validates value If you
cannot write a test for a requirement - you don’t understand it, or it isn’t one. Tuesday, 7 May 13
BDD Unseen benefits: Understanding, requirements, documentation and tests are always
in line with each other. Fragile tests indicate problems with a requirement. Transparency - for everyone. Tuesday, 7 May 13
Reading Tuesday, 7 May 13