Overall, it has been a great help in a lot of projects. The idea is simple and using the image makes it instantly clear to all parties involved how it works.
It has been extended to a larger overall structure, but I am not happy with it. It feels convoluted. So I have stopped developing it further for now, but continue to think about it. I can’t help myself.
I have often thought about the requirements gathering process and the rule that you should never have pre-conceived ideas about the possible solution.
First gather all the requirements and then this will resolve into a solution.
This places most of the burden on finding all the requirements. If you fail to find 1 or 2 key requirements, you might not have an optimal solution.
I think that doing it a different way, might be more effective. It is a method that I was taught at IBM in a consultancy class for a different way of consultancy. It is for a different discipline, but it works for requirements too. The methodology was: Form a hypothesis, define the real check questions to check the value of the hypothesis and adjust if needed.
For finding requirements it would work just as well. I called it the Hippo method.
Get the first requirements defined. This automatically gives you an idea on how the solution will run. (Don’t deny it, you do it automatically, you can’t stop it). Define this solution far enough so you can start defining the proper questions to ask to check the validity of what you think. These questions will generate a better insight and might even generate better insight in the customer too. Then check your hypothesis, modify it to suit the new data and write some more check questions, refining as you go.
The big issue here is that you must be willing and able to drop a hypothesis if the answers point you into another direction. After you have invested quite some time in the hypothesis, you might not want to drop it. You might try and fit the facts into your preconceived plan. If you can avoid that temptation, this method might be for you. Also, you need to make sure you drill deep enough, don’t skimp on the check questions.
I found that I subconsciously worked this way and found that I had a great deal of trouble dropping a well developed hypothesis when the last few questions resulted in the 1 or 2 key requirements mentioned before and they negated my hypothesis. It was then that I truly understood how my mind worked in this aspect and embraced the change. It was a nice moment. So now I consciously use this method and it has often worked in my benefit.