Interesting theoretical article called Does Process Matter? It’s an interesting article in that it provides some thinking about levels of process: individual, team, project and enterprise. In the conclusion, the author claims:
Now that I have described a way to think about team size and process levels, I can assert that the Agile community at the [Agile 2006] conference is mainly looking at the team-level process, even though many of the thought leaders claim otherwise. As I noted at the beginning, smaller organizations growing into enterprise organizations must change their processes, with the realization that Agile methods may not suffice at the enterprise or project levels.
I heartily disagree!
While it is true that some people are focused on the individual and team levels of process, the agile community, myself included, are actively working on agile approaches at the project and enterprise level.
The author’s claim is ridiculous! The only hint of truth in it is that agile methods are more mature in their application at the individual and team levels. But there is still plenty going on at the project and enterprise level.
Two years ago, minus three weeks, I started working at a large financial company interested in the enterprise application of agile methods. Over the course of the next eight months, I was actively involved in the application of agile methods at the project level, the portfolio management level, and the corporate strategy level. True enough, I wasn’t a key player… nevertheless, I was involved enough to know that the application of agile at these levels is at least two years old.
Not only that, but agile methods, particularly when combined with explicitly lean approaches, are fantastically appropriate at these levels. All the values of the Agile Manifesto, stripped of their software specificity (since we’re dealing with management) are applicable and sound.
People matter more than process and tools! A really good example of this is the bureaucratic nightmare that can come if a company tries to standardize on a particular process/tool across the board. This is like telling people that they all have to drive the same car to work!
Collaboration is more important than contract negotiation! Contract negotiation is a pure waste… anything that can be done to reduce the effort spent on this is valuable. But it boils down to trust, and the only way trust can develop is through commitment, face-to-face interaction, and truthfulness. This is a value. You can processize truthfulness!
Working software over comprehensive documentation… in otherwords, delivering value instead of waste. Toyota is everyone’s favorite example, but there are others: NuCore Steel comes to mind. If your customers are paying for software, don’t deliver other stuff. If your customers are paying for widgets, don’t deliver reports. If your customers are paying for services, do them quickly and with extremely high quality standards.
Responding to change over following a plan! Imposing any process blindly is lunacy. Agile methods, particularly Scrum and Lean, are actually meta-processes that improve both Product and Process itself. They aren’t defined methodologies, and they explicitly foresake long-term planning: Scrum with iterative delivery, Lean with pull systems. And they work for individuals, teams, projects and enterprises!
So, what do I say to this article? Nice try, buddy. Try again!