It seems truth is a rare commodity going both ways on the communication chain. People were equally concerned that they weren't getting the truth from management and that management wasn't being told the truth.
I'm not telling stories out of school; namely, because this is the same discussion I have heard at every software company I have ever worked at. I suspect it transcends industries as well.
- I was at an international conference in Leeds, England, on Learning in the Workplace where the keynote speaker asked "Have you noticed that the purpose of a project status meeting is to hide the status of the project?" He got a standing ovation.
- I used to teach project management at Southern Polytechnic State University and I would tell my students, "If you say the project will be six months late, you will be fired, but you can be one month late six months in a row and nobody bats an eyelash."
- Projects stay in green status until a few weeks before release and then go into red--all of a sudden the code doesn't work.
- Projects change status or iterations end not because criteria have been met, rather, because their due dates have arrived.
Part of it is that we treat mistakes like crimes and punish those who make them. Therefore, mistakes become things we must cover up.
But I think a major contributor is the whole myth of project management. We estimate dates and resources when we know very little about the problem space, let alone the solution, and then those dates become holy unto themselves. We beg others to lie to us (sometimes even insist on it). "How long will this take?" "Three months." "Not good enough, give me a better estimate!"
Let me offer a radical proposal: What if projects were open ended? What if a product didn't ship until it was ready? Instead of dates, we had feature and performance specifications, resource allocations, and release criteria. "Nothing would ever ship," might be a reasonable rebuttal. That is pretty telling in and of itself.
I know the devil is in the details, but it might be time to rethink our current model of design and development.