Recently, I attended a requirements course presented by Ian Alexander. When talking about prioritising requirements, he mentioned voting as a possible mechanism, and we did a little exercise/experiment. The outcome wasn’t quite what I had expected.
We used a simple business problem throughout the course; so by the time we did this exercise we were all reasonably familiar with this little case (at least we thought being all software engineers). We voted on several requirements and predictably some showed a very clear pattern: we all agreed that these requirements where essential (i.e. should go into the first release) or thought of them as luxury (don’t do them).
However, on some requirements the votes were much less decisive. In Alexander’s opinion this should be clear warning sign that there are different assumptions lurking behind the votes and that it would be worthwhile to dig deeper since there may be more requirements hidden in those tacit assumptions.
I had never before considered to use voting in requirements gatherings but this little exercise proved a nice eye-opener. I still have to work out how that links to my previous jotting.