Agile as a Mindset, not a Methodology

I was having a conversation with someone recently, about the possibility of doing some work for him.  His biggest concern was about the fact that my resume highlights Agile expertise (with a capital A, as he put it).  Because he is someone I have worked with before, and I consider him a friend, he was fairly honest about his concerns (Something rare and enjoyable).  The bottom line was – in his experience, people who say they have Agile experience or expertise  really mean something like “I know the Scrum Methodology and I think if you change your process to match it I can fit in there.”  This is probably because a lot of people do mean something just like that when they reference Agile.

I think it is unfortunate that so many people say Agile when they really mean Scrum.  If you get involved in the Agile Communities, you will encounter people who say Agile when they really mean Xp, or Kanban – though usually Scrum.  It’s become the new religion of the software programmers – now firmly entrenched in our churches of Java, Ruby, or C – we must identify which of the Methodologies we shall claim – the one which is superior of course.  I’ve been involved in plenty of conversations about the merits of scrum vs xp vs  Kanban, and the merits of each – they are filled with the software equivalent of fundamentalists.

We need to try and minimize this type of thinking.  We need to stop saying Agile when we really mean Scrum (or any other methodology).  Agile is a mindset, which embraces the facts we like to ignore about software development.  Requirements are never “done”; QA can’t wait until the end of a project; things change, often; the team is what makes you succeed or fail, period.  One of the things I personally like about Agile is it makes the often ridiculously chaotic and changing world of Software Development feel like a craft; less like a game of whack-a-mole.  I use Agile as a way to improve my ability to navigate the chaos; along with my team, my stakeholders, and my customers.

I don’t mean to be one of those people who points at the aging Agile Manifesto and cites it, but I do think they had the right idea in the midst of their vagueness.  Agile should really be a mindset among our community, regardless of our methodology.  We need to get into the mindset of embracing change – even change in our precious methodologies.  We need to take on the mindset of continuous improvement – especially in our methodologies.  We need to embrace the mindset of perfect being the enemy of good – and I have yet to see a “perfect” scrum implementation.

In order for folks like my friend to accept and even embrace Agile as a mainstream concept in Software Development, we need to try and decouple it from the religious wars of methodologies.  Agile is about how you think, view your craft, and prepare yourself to build something valuable.  Who cares how you do it, if you are Agile?

  1. LindaLinda01-27-2011

    Ah yes, change is constant and the only thing that you can can on. However, humans avoid change because it takes a lot of work and is difficult. We would rather die than exercise more to extend our lives. That being said, is there a need for educating the customers of the difference between the methodology and the approach? Your description here is perfect for the non-programmer and may help us to ask better questions of our consultants and development teams.
    I experienced the same reaction when I used 6sigma too much in my CV. I now talk about improving and developing processes and, as you mentioned, continuous improvement.
    If we start with changing our language, our way of thinking about the concepts (approaches and methodologies alike) may follow.

    • DavidDavid01-28-2011

      Hi Linda,
      I don’t know that I would say there is a need to educate the customers about the difference between methodology and approach so much as I would say that as professionals we should be better about separating them. The customer shouldn’t have to care, as long as you are clear and communicative – educate them about how you operate, not about Agile.

      You make a good point about changing language – I know that I have had conversations with too many Agile buzzwords and watched people’s eyes glaze over. It’s an easy trap to fall in, especially once you get into some of the circles which make your own eyes glaze over.

Leave a Reply