Agile is starting to become mainstream. In the last 2-3 years I have come across more projects and organizations proclaiming “to do Agile” than not, although most of them mostly just pay lip service to the concept. Most organizations seem to be adopting Scrum, because it’s emphasis lies on project management and can be readily “understood” by people who come from the old school of project management, just like Rational Unified Process once upon a time could be “understood” by the same people (we all know how that went, don’t we?).

However there are a couple of big problems with the way Agile is going mainstream: first of all the focus on Scrum rather than XP (I’d prefer focus on both) means that good engineering practices, arguably the most important piece of the jigsaw are often forgotten or applied in a piece meal fashion. Let’s face facts: most corporate software developers are at best poorly motivated, uninterested and mediocre, listening to slightly different management speak is not going to change that, hence the results and high failure rates of projects will persist. A lot of the XP practices and values are what can make an uninterested, mediocre developer into an energized, good developer.

Secondly, and most importantly, agile fails because of values and culture. When organizations adopt Agile methodologies they will often pay attention to the practices, but the core values and the culture of the organization remain the same. If an organization has an embedded blame culture (which I dare to say, 99% of larger organizations in the Anglo-Saxon world have to some degree), people will avoid accountability, they will avoid taking ownership and they will keep their heads down, because the only thing they will achieve is getting their heads cut off if they happen to make a mistake.

I would dare to say that for Agile adoption to work, corporate culture and people have to change their values, and that is certainly not an easy thing unless there is an infusion of new blood and in some cases even some “blood letting” of people who remain obstacles and stuck in their old ways.
This is why I believe a lot of Agile consultants and consultancies bar a few really good ones are mostly snake-oil salesmen: you can’t come in, wave a magic wand, institute a few new daily routines and ceremonies and call it a day.
In many cases you need to seriously challenge the status quo, shake things up, step on peoples toes and make them really reflect over how they have been thinking and doing things in the past, which means even the people who are your paymasters for the day and even if they don’t like what you are doing one bit – people usually respond less than amicably to having their ingrained implicit assumptions and values challenged, and changing them can take a long, long time, if it’s even possible at all.