Over lunch the other day, Barry Glasco (a colleague) and I were reminiscing about corporate IT projects that we’d worked on as consultants over the years. Typically, these were large systems that were either having trouble being completed or were having serious problems once they were in production. Barry pointed out a self-defeating pitfall or anti-pattern that we had both seen in such cases.
The consultants, usually with the help of the employees in the trenches, would use their time, effort, and expertise to analyze the system under development or in production. They would arrive at a clear, supportable, essential solution – technical, architectural, methodological, organizational, whatever. This would be presented to upper management…whereupon upper (or project) management would say, “No, we can’t do that.”
Sometimes, they would give no specific reason why the solution was not acceptable. Sometimes, they made it clear that it wasn’t the solution they wanted or that they felt was acceptable. If they did explain their rejection, it was usually in budgetary or political terms.
The investigating team would often then go back and look for an alternate (and less optimal) solution. If one was found, often that was rejected as well, and so on, often down to the least desirable solution. Barry said that he and another colleague, Chuck McCorvey, had gone through this so many times with one client that they joked about simply presenting the worst solution first, since it seemed to be typically the only solution the client would accept.
Note that this is not always the case; I’ve seen situations where the client has accepted and implemented – as best they could – the ideal solution, usually with positive results. But the opposite happens often enough to raise the issue: why? Why does a corporation or government agency that is investing millions, tens of millions, or even hundreds of millions of dollars into a major IT system sometimes so resistant to solving its problems?
From my own observations, it usually boils down to three interrelated factors: internal politics; budget; and fear/pride.