Skip to content

Agile is dead

I know that’s a pretty bold statement but here’s why. This morning I went to a vendor’s presentation morning, it was the usual game of buzzword bingo from the very first slide on. All the usual enterprise2.0, social-networking, portal-compliant, content-management, vertically-integrated, SOA-BPM-UCM-JEE-ESB-WS-BPEL platform-framework-enabling scalability-enhancing fun-lovin’ don’t write code but manage-the-enterprise-blog-wiki-twitter-facebook-youtube shopping cart drag-n-drop non-content that we have all come to expect from the big vendors was fully in attendance.

But the real kicker was a presentation on Agile Integration, by one of the vendor’s partners (and in the interests of disclosure, a competitor to my own employer). A few slides in and there’s the inevitable “what is agile” slide with a standard dictionary definition and some lip-service to previous history. Now the thing here of course, is that the word Agile in software development parlance is by now a well-entrenched piece of jargon – it has a specific meaning to most people that is fairly precise and different to just the garden-variety common English usage. This is the purpose of jargon in a discipline: to be precise in communication. And the agile manifesto, nearly 10 years old, just means in effect, if you’re in the software development game you just can’t redefine the term to mean something else.

Except of course, you can, if you do, and you’re big enough and enough people listen to your incredibly mangled marketoid-speak. But implementing a SOA solution is not Agile, no matter how many times you make an incredibly weak case that it is or how many times you repeat any other platform-orientated mantra. Yes, you read it right, according to the vendor’s partner at least, SOA is Agile.

This banality made me so angry, it was very lucky that straight after there was the morning coffee break because I was seething and it took all my self-discipline not to launch into an attack during the questions (easy picking, because there were no other questions asked!). I had to vent at my poor colleagues in the break.

Anyway, on my admittedly pessimistic reading it means that Agile Is Dead, as pretty soon we are going to find clients telling people, “Yeah we do agile, we bought the million-dollar SOA package off that vendor”, and then they’ll be saying the reason their integration projects are still failing is because they haven’t installed the very latest patchset, or upgraded to all-new LEANsuite 17.4.15.8 release B with the optional drag-n-drop Super-Agility add-in for Portals, Release 16f (the “f” is for “fail”).

At sushi train lunch afterwards, we made the observation that pretty much the vendor wants to be all the food groups all at once. Kind of like this bit of gluggy sushi I mistakenly lifted off the train:

All the food groups. Nasty.

All the food groups. Nasty.

Now I’m not saying that you can’t do “SOA” with an agile process, if that’s your preferred architectural style, then if you are committed you can certainly develop it in an Agile fashion. You can’t afford however, to confuse the two things. If you do, that picture above isĀ  what your enterprise will look like too if you mistake the buzzword bingo offered by vendors for actual insight into agile development process. Talk to an expert instead.

Sorry to be so negative, the whole morning pretty much sapped my will to live.

16 Comments

  1. Simon wrote:

    What you experienced is not untypical for overused language. The term ‘Agile’ has been tossed around long enough to accumulate meaning it doesn’t actually have. Also don’t expect vendors to differentiate between their products or service offerings and underlying concepts (sad I know).

    I have a feeling the fans of agile practices will strike back by rebranding their efforts sooner or later :)

    Tuesday, June 23, 2009 at 18:30 | Permalink
  2. Yes, the current buzzword addiction is unbearable. I am sure, that most people don’t even know what they’re talking about. Reminds me somehow of a recent post on The Old New Thing: http://blogs.msdn.com/oldnewthing/archive/2009/06/16/9756461.aspx

    Tuesday, June 23, 2009 at 21:19 | Permalink
  3. Jin Chun wrote:

    Yep, I see this all the time. Same with RUP, or anything else, like SOA, BPM, LEAN, whatever. There is an attachment to the word or acronym that people, especially vendors, want to be associated with, which I’m sure they ultimately want to say that it’s just better.

    Where I work (can’t disclose this, but let’s just say it’s a really really big bank), there are the same cornucopia or initiatives around these tag lines, led by people who are entrenched in the original “outdated” way of thinking, and somehow things are supposed to change, when the problem is part culture, part organization, and everyone plays the same instruments but a different song and it’s still out of tune. I myself refuse to even use the word ‘Agile’ anymore, or even ‘Scrum’, although I am leading efforts in those areas, just to sidestep the inevitable. Instead, I let them call it whatever they want so there isn’t any emotional attachment to the phrase, and help place practices and facilitating tools into groups and projects so that they are behaving in an agile way. I’ll tell them what they were doing once they can do it without coaching and want to own it psychologically after it is internalized ;-) Sneaky, but effective!

    Thursday, June 25, 2009 at 00:40 | Permalink
  4. Reedo wrote:

    Heh, this was worth reading just for the third sentence alone! When I think of “agile SOA” I think of using (REST or XML-RPC) and (WebDAV or AtomPub) instead of the middleware or ESB du jour.

    Thursday, June 25, 2009 at 04:50 | Permalink
  5. What, they didn’t mention cloud? :)

    Thursday, June 25, 2009 at 06:18 | Permalink
  6. Coding Hood wrote:

    I just received a deja vu while reading your post.

    If i wouldn’t know it better, I would bet it was the same powerpoint cunning company with a big A in their name …

    Thursday, June 25, 2009 at 07:59 | Permalink
  7. It’s called cooptation. Anything good gets diluted by institutions until all the goodness is sucked out. They did it to the hippies too…

    Thursday, June 25, 2009 at 08:11 | Permalink
  8. ferrisoxide wrote:

    Yeah, how long until we can drop all the monikers and just be able to say to each other “we just get stuff done and make the customer happy”? Though naturally a few weeks after that we’ll be talking about the Getting Stuff Done methodology and taking advanced courses in Making The Customer Happy.

    *Sigh*

    But yes.. the SOA vendor seems to have no shame.

    Thursday, June 25, 2009 at 08:52 | Permalink
  9. So, you can imagine my disappointment and building frustration as I’ve watched this happen again and again over twenty years, with a long string of technologies, movements and methodologies. Some things never change, do they?

    Someday, when we get beyond all of this, we might actually be able to replace our COBOL mainframes with something else that is actually better. Someday.

    Friday, June 26, 2009 at 00:27 | Permalink
  10. Kevin C. Horn wrote:

    Yes, it’s frustrating to have something that you’re proud to be associated with prostituted for personal gain by people who really have no clue about what they’re destroying. It happens to just about every good or innovative idea at some point. Some people get on the bandwagon, and some people just ride the coattails.

    What this really means is that the concept that you’ve known for years is great has finally received the recognition it deserves. But along with that upside comes the downside: unwanted imitation, where copycats can not only dilute the meaning of a terrific concept, but could also sully its good name forever. Basically, you have no choice but to ride it out for a while until the imitators find a new buzzword to start leeching the life force out of. That’s when the “XYZ” that you love so much becomes “XYZ Classic” or “The Real XYZ.” And even if its good name is irreparably damaged, as Jin Chun mentions above, the same practices can be implemented without ever referring to their names at all.

    What happens with really strong concepts, though, is that they weather the storm and, if need be, reinvent themselves. The word “Agile” might’ve taken a pretty decent hit in your vendor’s presentation, but that really just means that Agile is very much alive and and will come out stronger for it no matter what it’s called.

    Friday, June 26, 2009 at 02:57 | Permalink
  11. ferrisoxide wrote:

    Agile started as a grass roots movement, against the backdrop of the corporate nonsense of RUP, waterfall, etc. Time to wrest it back.

    Agile is dead. Long live Agile!

    Friday, June 26, 2009 at 09:38 | Permalink
  12. Scot Mcphee wrote:

    “Agile is dead. Long live Agile!”

    I considered using that very title for the piece but went for the more fatalistic short-hand version after I had finished writing it. ;-)

    Friday, June 26, 2009 at 12:29 | Permalink
  13. SOA (in the way it is being implemented by a lot of vendors) is the exact opposite of Agile. They promote the idea of starting at the integration level to create integration services, then – when you’re done- move upwards to create the business services, then -when you’re done here- move upwards again and start building the composite apps.
    To do this well, you should know exactly what integration services you will need to create all the business services you need to create the composite applications. Doesn’t that sound waterfall to you? A lot of analysis gathering, months (or even years) of implementation of stuff that will never get into the hands of users…. and after 18 months they pull out a composite application… success! NOT!

    An Agile approach is what will save SOA implementations from doom. Starting with a limited set of requirements to quickly create the services-chain that will allow you to deploy an application that you can give users, gather feedback and then fine-tune, extends, create another app, and so on.

    Although I also feel that the Agile word is being killed by misuse, Agile per se is not dead and will not be anytime soon. How to talk about SOA and Agile? I’d say that “SOA is dead – Agile to the rescue” could be a good title :)

    Michel

    Friday, June 26, 2009 at 19:41 | Permalink
  14. Software is “also” an industry. Some people will assess their importance by the budget they manage/spent or the price of the tool they sell. If you say to your manager: I want to implement a new process for the software development department and I just need to spend 10 dollars/euros buying 3×5 cards, most of the time he will think that something is wrong with you ;o)

    Saturday, June 27, 2009 at 06:32 | Permalink
  15. ferrisoxide wrote:

    Man.. something is stirring in the meme pool..

    Michel: Bingo! SOA takes over *everything*, even where it’s not needed. Even the industrial automation industry is afflicted with the SOA disease, but some friends of mine and I are fighting back. See http://rest-pca.org

    Franco: You’re absolutely on the mark. The old Toyota Production System that sparked off ‘lean’ (and indirectly ‘agile’) actively discourages complex, expensive, technological solutions in favour of stuff that just works – preferring systems that give feedback to a process without imposing too much of an administrative overhead. Who said we need all these tricky tools to manage our development processes? I’m giving up on Mingle, Jira, etc and just going back to the old card system – knowing I can walk into the development room and see exactly where the team is up to. See http://rubyredbricks.com/2009/6/26/requirements-are-transient-artifacts

    Sorry for putting the links in here Scott, but I think you’ve started something and the momentum needs to keep on building.

    Ladies and gentlemen, may I suggest that a revolution is underway. It may not be televised, but it will be blogged.

    Saturday, June 27, 2009 at 09:53 | Permalink
  16. It’s 2x funny, because SOA has been “meaning less” for years now as well. Now, when people say they are doing Agile, you have to follow that up with a series of questions…

    Sadly, most people have reduced agile to the “value responding to change over following a plan” aspect because that is closest in meaning to the English word ‘agile’. In it’s most degenerate form it simply becomes, “don’t plan (just buy our stuff)”. This is why Scrum and XP don’t suffer the same fate as much, they don’t have a dictionary definition to fall back on.

    Now, logically speaking, Agile isn’t dead, of course. More broadly we can say that people are poorly applying the label.

    What is SOA really anyway? It’s really a form of code reuse which differs from library oriented code reuse in that you connect to a running instance of the reused code over the network, thus creating unnecessary live interdependencies between systems. Or is it that systems should have well defined, technology stack independent, APIs to share data using verbose formats?

    Monday, July 6, 2009 at 15:07 | Permalink

One Trackback/Pingback

  1. let x=x › Agile architecture? on Wednesday, June 24, 2009 at 23:07

    [...] appropriate to yesterday’s Agile is Dead rant – because certain vendors are now out and about flogging that “SOA is Agile” in the [...]