That’s the question I asked myself after reading this article over on the Energized Work blog - which I highly recommend to anyone interested in Agile software development.
Is it when you picked a methodology like Scrum or XP and follow the associated principles? Is it when everyone in the development team has read the book Agile and Iterative Development: A Manager’s Guide? Is it when you feel totally powerless when asked to get back to a more traditional approach like Waterfall?
According to the above mentioned blog post, “more than practices are required to be agile”. In essence, doing daily stand-ups, having a product backlog, drawing an iteration burndown or doing continuous integration alone is not enough.
Beck argues that all “practices, values and principles” need to be part of the mix in order to be really agile. (read more on Beck’s views over here). So where to start? How do I start being Agile? Really there must be a point to start from…
Do you start with communicating Agile principles around? Do you buy software that allow to manage Agile life cycle products? Do you start doing daily stand-ups? Do you start doing continuous integration? Or do you start being Agile with a small team of talented developers on a small pilot project to get the first feeling of what it takes “to be Agile”?
That’s a lot of questions and the reason why I cannot seem to answer them is that after all being Agile may be something you feel rather than something you teach or learn. From this perspective, I believe learning by doing i.e. using a specific methodology with carefully picked practices would be a good way to get started, get a feeling of Agility, one Sprint at a time.
By the way, beginning of June I will be attending a 2 day training in order to officially be certified Scrum Master. Does that mean I’ll be Agile?
Nathan – some nice links. There is definitely a spirit about being agile - a sense about it - a feeling as you suggest.
But I would say there probably are answers to the questions you pose - and in true agile form - there may be many answers depending who you are and what you want from agile – but fundamentally I think there is one that cannot be disputed and must apply to all agile cases - it should be possible to measure agility and it should be a process of continual improvement against an ever changing backdrop.
Being agile is ultimately about brining benefits to the business - delivering more value in less time and making more money with less waste. Without that no commercial enterprise is going to entertain it. I’ve seen teams who thought they were agile but were not realising the benefits and in fact were suffering because they were not taking the time to measure whether or not it was a success. From day 1 – why do you decide to become agile – because it will bring benefits – how will you know these have been realised – you will need to measure them – which should be straight forward assuming its some measurement you’re not happy with that made you decide to become agile to fix it in the first place.
So if you’ve introduced an agile practice and you want to know if that makes you agile - take a look at the KPIs - are they going in the right direction? Yes? Then I’d say you’re agile!