I believe in barely sufficient documentation but Corporations equate paper weight with safety.
I have been asked to produce technical documentation. Actually this has happened more than once. My team’s haven’t needed this stuff – the requests came from outside the team. Unfortunately it took time from the team to produce. While they were doing that they weren’t writing code. So my starting point is always “Just say ‘no'”.
Unfortunately, that doesn’t aways work. The bottom line is that if the guy controlling the purse strings wants paper, you have to give them paper. Doesn’t seem like a good use of money to me, but it is their choice.
I did manage to cheat once and satisfy a client with a Class Relationship Diagram automatically generated from the database with a free tool.
Unfortunately, on another occasion, I had to take a bunch of people out of coding for a couple of weeks to write an architectural documentation suite. All of this is a complete waste of everybody’s time. The documents were stale as soon as they were produced – sometimes before.
None-the-less these documents gave the sponsor in that corporation a sense of safety. We produced the documents and then went back to doing our real job – changing the world through software.
Yes – just recently saw this at a company. Massive outdated document for a test strategy on the assumption the client wanted to see it. Waste of time and effort and not an Agile Testing way to go. I always ask to avoid these, instead asking to focus on what really drives value.
I honestly don’t mean to be glib (I understand how much must be at stake), but I can’t help but ask:
Why not simply fire clients that are recalcitrant about this? (e.g.: http://www.satisfice.com/blog/archives/1090)
Even if you set aside the larger (and more pointed question of integrity) it seems to me, sticking with clients who make these sorts of unreasonable demands only serves to dis-spirit your team, and swallow up whole chunks of time that could be spent with clients who are better to work with. Plus, once you get a reputation for not tolerating unreasonableness, fewer clients are likely to make unreasonable demands, yes?
But perhaps I’m being too naive?