in reply to What do they want?
Trust me that the problem is shared. I've got som 20+ years developing software in different contries and the problem description hasn't changed.
Furthermore, at least in my case, it's not at all limited to The Management (bows in deep respect and keeps job) but just as flagrant for any user of my/our software.
It's very common that when our user community calls us up with an idea:
- We do an analyze of the idea and presents the analyze to the user
- The user says that it's great
- We ask the user to somehow commit to the requirements (at least in an internal e-mail, asking for a physical signature would be politically incorrect.)
- The user studies the requirements for the first time ;-)
- The user organizes a set of meetings with other users to make sure that the decision becomes a "concencus decision", i.e. an "it wasn't me deciding that" decision
- The user comes back to me/us saying that it's OK
- We develop a prototype with an interface without guts, all according to the requirements agreed upon
- The user immediately finds that the interface must change; "Put this button to the left of that button"
- We make the changes of button placement
- The user agrees and wants to use the application the same day
- I/we tell the user that we can now write the guts of the application
- The user complains
- We write the guts of the application
- The user "tests" the application during five minutes and agrees to put it in production
- We ask the user to somewhat confirm that, at least in an internal e-mail
- The user tests the application for more than twenty minutes and let's us know that the functionality is not what s/he wants
- We show that the application does what the user asked for
- The user ignores our arguments and tells us what s/he really wants
- We write down what the user says and ask the user to confirm, at least in an internal e-mail
- The user goes back to his/her colleagues...
A few cycles of the above and we can put the first release in production. That's when the user realizes that the production application doesn't do what s/he needs...
Everything went worng, just as foreseen.