No software development project can achieve true success without a proper
alignment of producer and consumer expectations. If the producer is not
building what the consumer is expecting, there will be problems. There are
three critical issues related to the successful management of expectations.
Does the producer know what the consumer wants? Does the
consumer know what they want? Who is the consumer?
Have they been properly queried as to their true needs? Were they
informed of possible alternatives and/or workarounds? Was there a
genuine effort to try and identify the consumer's true source of pain?
Are there any artifacts of the discovery process? Are they
really of any value? How do you know what information to capture?
How should it be organized and communicated? Who should participate
and in what capacity? How should documentation be managed?
Is the producer actually adhering to the consumer's expectations?
How can the consumer insure that their expectations will ultimately be met?
How should the development process be managed? Can it be managed?