Specification Workshops - The Missing Link
-
Upload
gojkoadzic -
Category
Technology
-
view
1.012 -
download
2
description
Transcript of Specification Workshops - The Missing Link
Here's what I thought...
When the order is in a “pending” state, we first check the account, and if approved move it to “confirmed” state
When the order is manually confirmed, it moves from the “pending” to “confirmed” state even if the account does not have enough funds
When the order is in a “pending” state for two days, we send an alert
Here is what they saw:
http://www.mrklingon.org/
ghorgh [the] [order] 'oH Daq [a] [“pending”] [state] maH wa'DIch [check] [the] [account] 'ej chugh [approved] vIH 'oH Daq [“confirmed”] [state] ghorgh [the] [order] 'oH [manually] [confirmed] 'oH vIHtaH vo' [the] [“pending”] Daq [“confirmed”] [state] 'ach chugh [the] [account] ta'taH ghobe' ghaj yap [funds] ghorgh [the] [order] 'oH Daq [a] [“pending”] [state] vaD cha' jajmey maH ngeH [an] [alert]
http://www.flickr.com/photos/lambdachialpha/157986473/
http://www.flickr.com/photos/mulesafpilot/3513588967
http://www.defenseimagery.mil/assetDetails.action?guid=68cf92e35ce13e6c7c9c066f0b48b6daaa9bf8d8
An experiment with four active battalions in US Army
“Commander expectations matched actions in only 34% of the cases”
L.G.Shattuck, 2000http://www.au.af.mil/au/awc/awcgate/milreview/shattuck.pdf
http://www.flickr.com/photos/mataniere/3107073262
The process is very much like a telephone game
How many points are there?
How many points are there?
B2 bomber crashed and $2bn went up in flames
"the aircraft actually performed as it was designed. In other words, all
the systems were functioning normally."
Maj. Gen. Floyd L. Carpenter
http://www.foxnews.com/wires/2008Jun05/0,4670,B2Crash,00.html
http://www.flickr.com/photos/biolog/3457774800
You can't help a lot when the party is already over...
F-16 design team was asked to do the impossible -
a cheap 2.5 Mach airplane!
“When asked […] why they need Mach 2 - 2.5, the answer was to be able to escape
from combat. Their solution was […] providing acceleration and
maneuverability, not maximum speed.”
http://97-things.near-time.net/wiki/Seek%20the%20value%20in%20requested%20capabilities
Requirements are often given as a solution to an unknown problem!
http://www.flickr.com/photos/sylvancatharsis/3783608640/
An angry e-mail
These are fundamental rules that have been explained many times - and should not be being questioned at this time... Registration = customer registers with xxx in periodNew Active = customer places first bet with xxx in periodAll Active = customer bets with xxx in period, but first bet was prior to period Therefore... If Andy registered and bet in period, he would appear in all three (REGISTERED, NEW, ALL)If Lee registered only, he would appear in REGISTERED onlyIf Tom bet in period, but he registered and had placed a bet prior to that period, he would appear in ALL onlyIf Gojko bet for the first time in that period, but registered prior to that period, he would appear in NEW and ALL Regards,
An angry e-mail
These are fundamental rules that have been explained many times - and should not be being questioned at this time... Registration = customer registers with xxx in periodNew Active = customer places first bet with xxx in periodAll Active = customer bets with xxx in period, but first bet was prior to period Therefore... If Andy registered and bet in period, he would appear in all three (REGISTERED, NEW, ALL)If Lee registered only, he would appear in REGISTERED onlyIf Tom bet in period, but he registered and had placed a bet prior to that period, he would appear in ALL onlyIf Gojko bet for the first time in that period, but registered prior to that period, he would appear in NEW and ALL Regards,
Let's go back to the problems
Faster feedback just tells us that we messed up sooner, it doesn't tell us what we need to do
There is valuable knowledge hidden in the team Expressed requirements often aren't the real
ones We need access to senior people to sort these
problems out
Collaborate on specifications
Challenge requirements!
Discuss examples
Involve the whole team
Plan in advance, schedule the time to do this!
Get everyone together to collaborate on specifications
Get everyone together to collaborate on specifications
Customer tests
Get everyone together to collaborate on specifications
Customer tests Acceptance testing threesome
Get everyone together to collaborate on specifications
Customer tests Acceptance testing threesome Example-writing workshops
Get everyone together to collaborate on specifications
Customer tests Acceptance testing threesome Example-writing workshops Specification workshops
Running the workshop
Choose a story Introduce it, explain with examples Let people ask questions and suggest other
examples Discuss until everyone is confident that we
have enough examples to start working
Some good questions to kick it off:
How do we verify that this thing we are going to write is implemented completely and correctly?
Can you give us a few examples?
Pretend it's magic and it's already delivered – how would you test it?
Distil the specification- focus on what, not on how
Share domain knowledge- help people understand it better
Build and evolve the ubiquitous language
Communicate intent- explain why!
What the workshop is not:
Not a meeting (especially not a planning one)
Not a presentation Not a design session
Keeping the workshop focused
Commanders' intent template: Here's what I think we face Here's what I think we should do Here's what we should keep an eye on Now talk to me
Where next?
http://gojko.net http://agiletesting.org.uk http://acceptancetesting.info
27 Nov – Agile specifications and testing exchange
30 Nov – Agile acceptance testing workshop
4 Dec – Building software that matters