I wish I knew your customers as there are none on this side of the pond. We, with miniscule exceptions are sitting at SEI/CMM Level 1 : Anarchy. That is, start coding while I find out what the customer wants.
It's sad isn't it; it's like that on this side of the puddle too most of the time. I am
the proud owner of my own one man's army^H^H^H^H company: DADID Systems.
The first five letters mean: Define, Analyze, Design, Implement and Deliver and
that is exactly what I do and explain that to my customers (for free!). I want a
signature after each (waterfall) phase; if not I quit the project.
Most of the time they can't even come up with the first D. Me being the cooperative
little baby that I am, I help them with it. I love to see them struggle to even define
what they want. The A and the second D are mostly my job but I keep in touch
and that's (most of the time) the part where they get enthousiastic. I don't do any
prototypes or anything but the customer knows by then what they can expect.
I don't like the fourth I part but that's my job. The last D part is easy: I wrap
things up for the customer and deploy everything. Of course I'm responsible for
code bugs but that doesn't bother me much.
That little 'formula' has saved me more than often from the (almost?) empty cycle
of stepwise refinement and what have you. Flowcharts are far out.
kind regards,
Jos