Saturday, May 11, 2013

Art of Requirement Elucidation – Learn by Game


This game was shared by my friend, Shibaji Ganguly.  He is well known for clear and flawless testing artifacts. I do not have any name for this exercise. But I am certain many of us would have played the variants & equivalents of this game. Believe me this game is worth a try in your leisure time with your team member, as it heightens your interpretation skill.

To start, let’s assume you are the organizer, take a white paper and draw an object of your wish. Ensure object drawn, can be designed with the help of ONLY geometrical figures (Square, Rectangle, Rhombus, Triangle & many more).

Now form teams with at-least three members. Each team should have Presenter, Drawer and Observer.  Hand over the sheet with object, only to Presenter.
  • Presenter - Provide hints to “Drawer” for depicting the object. Presenter should not face the board until “Drawer”  finish sketching the object.
  • Drawer - Sketches the object on board based upon hints provided by presenter.
  • Observer - As name insist just a observer. Identifies the object as penciled by Drawer.
Remember "Presenter" hints should always stick to geo-metrical figures and violating this rule, appeals for team elimination. Team which pinpoints intended object more rapidly is the champion.

To explain further, here is an illustration: A conical flask (Erlenmeyer flask to be perfect) closed with cork and also an apple within flask.

Actual (as drawn in paper)
Object to be identified
Image source:http://teachers.egfi-k12.org/master-stem-teachers/
Hints that shall be provided by the presenter for this diagram
  •  Draw an equilateral triangle.
  •  Erase tip of the triangle, at the top. Do not erase the base.
  • Expected (To be drawn by drawer) Expected(To be penciled by drawer)
  • Draw pipe connecting open end of triangle, at the top.
  • Pipe should be like two parallel lines of equal length.
  • One end of the pipe should connect the erased end of the triangle.
  • Do close the other end of the pipe with an ellipse
  • Focus on ellipse
  • Draw an inverted cone within ellipse
  • Base of the inverted code should be above ellipse
  • Tip of the inverted code should be flat
  • Tip of Inverted cone should not touch base of the triangle
  • Height of inverted cone should be equivalent to pipe length.
  • Above the base of the triangle, say 1 centimeter
  • Draw a circle or sphere
  • Draw a line of 1 centimeter at one edge of circle
  • The other end of line should point to open end of triangle
  • Line drawn from circle should not touch the tip of inverted cone.
At the end of this workout, each team will realize the importance of clear and distinctive requirements. That is, as small teams with single object on hand; amount of confusion is manageable upto a magnitude. Then visualize a typical software project where geographical distributed teams would work on multiple features, aggregate of misunderstanding will grow exponentially with unclear requirements.

For those who ponder how this exercise is linked to requirement collection, in software industry many tester treat requirements document (esp with single liners) as ONLY reference/guide for verification either because they are forced to do or trained in that way. So why do not we(testers) cultivate clear, comprehensive & complete communication within our-self and try to dive deep with information on hand. Quality can be easily assured if a tester understands product being shipped.

Avatar. 1 Avatar. 2 Avatar. 3 Avatar. 4
probingtester_Avatar1 probingtester_Avatar2 probingtester_Avatar3 probingtester_Avatar4

Above snapshots are few of the avatars which was spawned from my team :).
Do try this game and share your comments. I am definite you will like the revolution.