But WHY, Dad?
Asking 'why' is perhaps the most valuable of all questions both in life and software development / product management. Being the father of two toddlers, I get asked 'Why?' a lot. I only wish the team mates on some of the teams I coach were so inquisitive. Knowing the 'Why' is often the difference between success and failure. This is, of course why User Stories take the form they do: As a <type of user> I need to be able to <perform some function> so that I can <get some value>.
Both the type of user and the 'so that' clause provide valuable information in the form of 'Why'. Without this information, a team could go horribly astray. Asking 'Why?' helps provide valuable context.
Here's a simple example:
The user needs to be able to enter surface positional data. Why?
The directional drilling engineer needs to be able to enter surface positional data so that he/she can perform anti-collision analysis. Why?
The directional drilling engineer needs to be able to enter surface positional data so that he/she can perform anti-collision analysis, avoid drillstring collisions with offset wells and therefore avoid tremendous expense and/or injury/death of drilling personnel.
Clearly knowing who needs to enter this data, and why, puts a different context in front of the team around the requirement of simply being able to enter surface positional data.
My sons make me answer this question a lot and software development teams could learn a great deal if they if they continually did the same!
Everybody WANTS flow. The problem may be you’re often in the WRONG flow. Physics can help you understand why and what to do about it.