While play isn’t exactly a verb that we use a lot at Zebulon Solutions (except when we’re breaking things), from time to time we suggest to our customers that we play Twenty Questions together. Like most things in life, if we make assumptions instead of asking, we may end up down the wrong path. And similarly, there is no such thing as a stupid question — there are only stupidly unasked questions.And oftentimes these questions are around Requirements and Specifications. Requirements come first — what do we want (and need, see below) the product to do — and then come Specifications — what the product actually does.
- Musts: if the product cannot do this we kill it
- No debate, no trade-offs
- Relatively few requirements typically fall in this category
- However, many requirements start out here…
- Safety, basic function etc fall into this category
- And there is always a “if it costs more than x we do kill it” threshold, although this can be tough to nail down
- Wants: very strongly desired, with potentially severe consequences, but can be debated
- Very often these involve some form of compromise or trade-off
- For example a Want requirement might be jettisoned or modified if it costs too much to implement
- But the barre is high for jettisoning such a requirement, and heads might roll as a result — there are consequences
- Nice to Haves: include if the incremental cost / schedule impact / risks are not too severe
- In practice many if not most requirements fall into this category
- All comes down to trade-offs, and oftentimes we can have some combination of requirements but not all at once
- Heads don’t roll on any particular Nice to Have requirement getting modified or eliminated, but in aggregate of course there are consequences
The devil is very much in the details of course, and the trade-offs can get complex and interlocking of course. The classic engineering paradox of On Time, On Budget, Works Right: Pick Two also comes into play all too often. And sometimes it takes a lot longer than Twenty Questions to get to the final answer. But if done right, then our product development project is off to a good start.