For starters….a simple example follows. Read the lyrics of the song, then return here to compare notes.
Remembering the song ‘Twelve Days of Christmas’ for more info please follow this Wikipedia song.
We’ll use this version…
On the twelfth day of Christmas,
my true love sent to me
Twelve drummers drumming,
Eleven pipers piping,
Ten lords a-leaping,
Nine ladies dancing,
Eight maids a-milking,
Seven swans a-swimming,
Six geese a-laying,
Five golden rings,
Four calling birds,
Three French hens,
Two turtle doves,
And a partridge in a pear tree!
The client tells us: ‘That’s what I want!’
Testers. This is your requirement. At first it might seem rather extravagant. The developer needs to deliver this pronto and to a fixed agreed budget. How can you help achieve this with maxing efficiency? What questions do you need answering?
So get to work on this right now. Christmas is just 3 months away and we have a deadline!
Q. Is this a serious request? A. Yes it’s a romantic gesture along with a real proposal.
Q. Yes, but it is an expensive one, how tight is the budget?
A. Let’s keep it real tight and to the letter.
Q. As the song is a round, are you sending the 1st item (partridge in a pear tree) on 25th, 1st and 2nd item on 26th, 1st, 2nd and 3rd item on 27th and so on?
A. Yes, but obviously assume she returns my gifts each day and that I resend those all the next day along with the next one on the list.
Q. Even the rings?
A. Ah yes, she’d probably keep the real ring, so we need a spare.
Q. Ah so on Day 1 you just send
And a partridge in a pear tree! And she returns it? On Day 2 you send Two turtle doves,
And the partridge in a pear tree! (The one you sent the day before?) etc… but what if she does not return them.
A. Trust me she will.
Q. Eight maids a-milking? What are they milking?
A. It’s just the way we say milk-maids but it makes sense that they have a stool to sit and pretend to milk otherwise we’d need 8 cows as well and that could get expensive.
Q. 5 Gold rings? You just need one real one? A. Ah yes, one can be real gold and the another 5 for show but still ‘gold’ and ‘rings’. – Olympic Rings perhaps.
Q. How big? A. Size J and the 5 would be about 10cm diameter each.
Q. If the drummer is drumming and pipers piping, it will be somewhat noisy unless they play something. What music should they play?
A. Little drummer boy of course.
Q. Lords leaping and Ladies dancing? They won’t come cheap – do they need to be titled?
A. No no. Of course not, that’s just their costume, this is all for show and effect, like a pantomime. Anyway Christmas is expensive enough these days and my fiancé-to-be is very frugal. So the proposal needs to be sincere but the rest is for fun only.
Q. So the birds? Are they real?
A. Well, the swans could be ballet dancers from swan lake.
Q. But do you need a lake? Do they actually need to be swimming?
A. No just making the actions of swimming and looking like swans.
Q. And the ‘Six geese a-laying,
Four calling birds,
Three French hens,
Two turtle doves,
And a partridge in a pear tree! ‘ are they to be fake too?
A. No they should all be real, I’m not a total cheapskate you know! But the pear tree should not be too big.
Q. How big?
A. No more than 1 metre, but it needs at least one real edible pear on it, just for show. How much will all this cost me exactly?
Etc, etc, etc …
Do you have some other question? If so please add them below.
So thankfully we established the requirements which turned out to be a lot cheaper than it seemed – with one ‘set’ of each item, despite the song repeating over 12 days.
You may have something different, but hopefully it’s getting closer.
Acceptance – Checklist / shopping list
- 1 real pear tree with at least one real pear in it
- 1 gold ring size J
- 5 Olympic ‘gold’ ‘rings’ 10cm each
- Real birds:
- 1 real partridge
- Six real geese laying fake golden eggs,
- Four real calling birds,
- Three real French hens,
- Two real turtle doves
In appropriate costume:
• Ten lords a-leaping (book for days 10,11 and 12)
• Nine ladies dancing (Days 9, 10, 11, 12)
• Eight maids with milking stools (Days 8, 9, 10, 11, 12)
• Seven ballet ‘swans’ ‘swimming’ as if in swan lake (Days 7, 8, 9, 10, 11, 12)
Musicians :playing Little Drummer boy.
• Twelve drummers drumming (book for Day 12 only)
• Eleven pipers piping (book for days 11 and 12)
How do we get clarification?
Firstly, being a Tester is about developing a mindset that seeks to clarify everything and assume nothing that is not clearly stated. The main question types are ‘What?’ questions as these drill down to the next level to uncover and clarify gaps. ‘What?’ questions dig below the common language to describes actions or events that are to be added to the software to produce the desired expected outcomes.
‘When?’ questions also have their place, as do ‘Who?’ questions. Timing can be essential and often events are time-driven. Limitations and restrictions in permission determine who, as do key roles.
‘Why?’ questions are less obvious and yet delivering the software is very much hinged upon the ‘Why?’. The motivation behind the software change, is what drives the delivery.
Secondly, before any work begins on development of software the gaps and potential misunderstandings in a specification need to be brought to the forefront. Each sentence needs to be scrutinised to examine its clarity. What we think is clear to us may have a different meaning to someone else.
Each situation has a history too. So previous events and actions that are part of the current software (or expectations) also need to be considered. What a Tester does is take the language of ‘should’ and defines the ‘must’. The developer will decide how the action or event will result in the expected outcome. To the Tester this is usually an unknown quantity with an initial state, inputs and outputs. This describes the so called ‘black box’ as we don’t know what is inside or how it works. Although ‘White’ box is not really self-explanatory. Glass-box would be better.
Testing the fuzzy design plan that only exists as a description of what the software (or shopping list) should do or contain is the cheapest way to write software. To build it right first time some examples can help, but from the Tester can devise tests for the developer to include when checking their build and in their testing. Outline the road map for the testing to come and have the clarifications written into the specifications before the development starts.
As you can see, the Foxy-Tester mindset can be applied to any situation that needs clarification or has potential gaps or fuzziness even a bizarre Christmas shopping list.
Now take another look at Wikipedia Price and compare costs. We could easily have been way off base and delivered the wrong things.