- Executive Support
- User Involvement
- Experienced Project Manager
- Clear Business Objectives
- Minimized Scope
- Standard Software Infrastructure
- Firm Basic Requirements
- Formal Methodology
- Reliable Estimates
When I hold talks about software development, which I do a bit sporadically these days, I am most interested in talking about the top five items on the list. Not because of the report, BTW, but because my own experiences, and those of others, have led me to believe that these factors are important.
I also like to talk a bit about number eight, Formal Methodologies. This is because of a personal belief that methodology matters a bit more than the list implies. Why is that? It is because the methodology guides how we think about the other items on the list.
Sometimes, having a formal methodology becomes a substitute for thinking. If we do what the methodology says we should do, we won't get blamed, even if we fail. Well, there may be a bit of yelling, but probably few consequences beyond that.
On the other hand, not following the methodology is dangerous. If we fail, there may be severe consequences. There may even be unfortunate consequences if we succeed, because in many corporate cultures, following the rules is more important than succeeding.
Which brings me to the missing item on the CHAOS list: Corporate Culture. That is where everything begins. The corporate culture has a strong influence on all the items on the list.
A project team can get executive support even if its not a part of the culture. However, the team is much more likely to get such support if it is part of the culture. Also, such support is much more likely to matter. Same thing with user involvement. If its not part of the culture, for both vendor and client, user involvement is likely to dwindle over time, even if things start out well.
Going down the list, corporate culture is a strong, but often unnoticed, influence on everything. I believe it should be the top item. Therefore, it is also my favorite subject for talks. It is also why my articles at www.henrikmartensson.org tend to be about corporate culture and management, even though I am a developer at heart.