|I understand your frustration with your latest project. Your users sound like they don't know what they want, changing their needs weekly if not more. It's as if the project scope is elastic, stretching in every direction. But I'm concerned about your demand that they sign-off on the spec's before you begin another project.
Most engineers believe that if they just had better spec's from the users. most project problems could be avoided. The question to ask is "can business users ever write good spec's?" I believe the answer is "no." Defining what a system should do, what features it should have is an act of discovery. Remember an earlier letter about the humility project managers need to have? Fifty percent of what you need to know is discovered in the doing of the project. Why is that?
Have you heard the story about tying shoes? I was at a seminar where the assignment was writing a specification for tying shoes. We had to write it down without any diagrams, just the words. "You form a loop with the left lace. (What's a loop?) Then you make another loop, cross them over, twirl them around, make a knot (what's a knot?), etc., etc." You get the picture. It was near impossible to write it in a way that both an inexperienced novice and a pro could both read it and say, "ah yes, it's so clear!"
Is this how a three year-old learns to do it? No. You show them, they watch, they try it, you encourage them, correct them, and they try it again. After a number of tries, voila! The shoe is tied.
The point is that sometimes you need to see it done, to try it a few times, before it makes sense. It a process of discovery. It may also be about how people learn. Sometimes it's by seeing, sometimes by hearing, and sometimes by putting you hands on it and giving it a try. If you are going for the "yes, that's what I want!" you may need to create a situation where people can see, hear and touch the system early. I leave that for another letter.