Has Agile become a dirty word?

A few years ago, Agile was everywhere. There were books galore, articles in the technology press, tracks at conferences etc.

That is not to say that it has gone away, but a few years ago everything was being sold and hyped as being Agile. Things from process to products to services were having the Agile name splashed across them - whether it was a correct use of the term or not.

In some ways this was a good thing for the Agile movement as it got the term out there, and a whole lot of people were exposed to it. Some of the more curious people may even have done a bit of research and truly understood the tenets of Agile as a result. However, I would argue that this has had possibly the biggest detrimental affect on Agile possible.

We are now in a position where we have managers that feel that they were bitten by Agile when in fact what they were bitten by was miss-selling. Consultancies sold Agile and did Cowboy.

This has resulted in an allergy to all things Agile amongst many senior managers and budget holders - to the point where even mentioning the word results in a death stare. This is also resulting in a shift back to the perceived comfort of tightly controlled processes that give the managers and budget holders an illusion of control. They fail to realise that actually what they have is a stifling of productivity and ingenuity, and a company of frustrated people who can see there is another way.

My question to you is simple - have you experienced this and how have you approached it?

About the author

Sam is an independent Technical Architect working in Central London. His speciality is Enterprise Java Systems, with which he has architected and developed systems for the Financial Services, Retail, and Logistics industries.
He has co-written several books on the subject of Enterprise Java and is a keen speaker at conferences.

E-mail : sam.dalton at codingthearchitecture.com

Re: Has Agile become a dirty word?

I think you're right. Agile is typically a thinly disguised excuse not to bother with any design, documentation, thought, quality etc... I prefer to 'sell' people on picking the correct methodology (or the correct parts of a methodolgy) for the job in hand. If I was designing a system that was going to be outsourced to India Waterfall is probably the correct choice. If I'm working on a tactical (I hate that word) solution to make the most of a short term oporunity in a bank then something more agile (with a small a) is appropriate. There are a wealth of factors that affect the correct choice of methodology including team size, previous experience, management bias (unfortunately), length and size of project, who is going to maintain it and many other factors

Re: Has Agile become a dirty word?

The agile movement has come a long way from the religious fervour that it seemed to attract at the turn of the millennium! Its benefits are better understood, as are the challenges it brings. Of course that's not to say that it's still not widely misunderstood (or willfully misused).

I've seen it misused in the way you suggest - as a sales angle which then isn't applied correctly. Similarly, I've seen development teams hide behind it to get everyone else off their back.

I guess that's where the problems come from - agile is becoming a byword for a lack of transparency, where development teams hide behind it and outsourcers obscure their commitments. Of course it's not supposed to be like that! It's supposed to be the reverse: a contract between stakeholders and implementors based on trust and feedback.

So what to do about it? I've found information is the key. Often you'll hear something like, "we do Scrum." Ask them what that means. Then tell them what it really means. There's nothing wrong with having a non-standard agile process. Indeed, agile methodologies advocate changing the process! But it's a process nonetheless and everyone has a specific role to play and they should know what it is.

It's also important to state how much work agile is! I've found that being a scrum master, albeit with fairly new scrum teams, takes a lot of time: getting the product and sprint backlogs updated, checking progress, rounding up the team, scheduling reviews and retrospectives and so on. If you're not investing any time in keeping the process going then can you really be surprised that it's letting you down?

Agile's also a hard sell - it takes the sort of trust that outsourcers will struggle to build with a client so perhaps it's no wonder that it gets subverted at the early stages of a project and goes downhill from there!

The software development industry is also different to how it was a mere 8 years ago - agile methodologies are still great, but they aren't (and don't claim to be) applicable to all teams or projects.

Re: Has Agile become a dirty word?

I'm now finely tuned to Agile terminology. So whenever a contractor or consultant says:
"I'm refactoring"
I hear:
"I'm blazing a trail of destruction through your codebase and implementing everything via my current, favourite pattern that I read about last week. Diffs and merges will be impossible from this point and I will wave a Martin Fowler book wildly at you while you cry."

Re: Has Agile become a dirty word?

Similar experiences here, although I don't think it's "become" a dirty word in some circles as much as it was always distrusted.

From my experience as a 'client', consultants love it, and some will willingly use it as an excuse for shortcuts, but I think as a client you have to just demand what deliverables you expect. If you don't request documentation, don't expect to get any! As long as you get what you want from the process, does it really matter how the sausage factory works?

I think the real story behind Agile, Waterfall, etc etc is that - they are all capable of great results if you have smart, motivated people in a cohesive team with good leadership and supporting structures in place.

Despite conventional wisdom, people were writing pretty amazing (for the day) and high quality software back in the 70s and 80s - quite often under a formal process with a lot of accompanying documentation and traditional project management. That's because they had smart, talented and motivated people doing the work - both in coding *and* management.

Getting off my hobby horse... my experience has been that the Agile philosophy is pretty incompatible with a heavily regulated and audited corporate environment. Auditors demand documentation, sometimes just for the sake of having it (how often do those documents get carefully reviewed?). I know there have been attempts to map agile processes to those kinds of environments, but honestly it tends to smack of desparation and square pegs in round holes.

You can't front up to a PWC consultant and say "oh, but you ain't gonna need it!" when they're reporting back to the board of your most important client.

Having said that, I love working in small, self-directed teams with clearly defined deliverables and close contact with stakeholders. Who doesn't? But it's not always compatible with all projects and all corporate environments.

Re: Has Agile become a dirty word?

The main problem with any process is discipline. If the team doesn't have it, the leadership doesn't expect nor encourage it and instead demands results yesterday, then no process will work. Agile expects team members to converse over a story while they implement it. And the team members are expected to understand and stay within the scope of the story. If they are simply bad, lack discipline or just want to get it done, the result will not be pleasing. When that happens it is only natural to look for a clear way to give orders. It all depends - and that's part of the agile manifesto - on the people. To use Agile e.g. in an XP fashion you got to have the right people on the team. If you don't, then you can still embrace change and all that, but you need to modify the process and even start assigning tasks (preferebly done by a senior and more "agile" developer).

Re: Has Agile become a dirty word?

Couldn't agree more. Agility has been bastardized by all sorts of consulting organizations looking to do development on the cheap. I've found that they often sell agility while only utilizing the agile practices that allow them to deliver quickly without any thoughts of the long term viability of the solution. Somewhere along the line continuous design and refactoring became no design and we'll fix it if you pay us. Inevitably once you've been burned you fall back into the safe, welcoming embrace of process heavy waterfall methods, which is sad. I suppose it's up to clients to educate themselves and demand that their "agile" partners embrace the agile method in its entirety; my personal experience suggests that letting them pick and choose what works for them will only lead to trouble down the road.

Re: Has Agile become a dirty word?

I believe any process can succeed if everyone is invested and educated in it. Do I prefer agile over waterfall... certainly.

As for the dirty word. Any term becomes a dirty word when consulting companies start increasing their revenue by selling the term's value. We've gone through this with RUP, CMM, Six Sigma... the list goes on. There has to be a problem, and there needs to be a matching solution. If agile matches, then it should be applied; otherwise move along.

I find so many people using agile tools thinking that makes them agile. They ask how the tool expects them to work believing that following that answer will make them agile. Being agile is more about asking why a lot, focusing on delivered value, and adapting to the real needs of the customer and the team.

I'm currently guiding an agile implementation, but I didn't explain agile for a year until I'd shown them that standing meetings helped with communication, backlogs helped with prioritization, and source control was important for scaling the team. I had to build credibility with real solutions before invoking a vague term and filling in the gaps.

Add a comment Send a TrackBack