Agile is broken, here’s why

When you read the title of this blog post how did it make you feel?

What about the following statement?

“You need to stop doing Scrum, XP, Kanban, or anything under the Lean/Agile umbrella as they are all bad/flawed approaches to software development”

Do you think I’m mad? Are you feeling a little angry with me? Are you getting ready to flame me with hundreds of success stories? Are you going to quote me your 10+ years of Agile experience as unequivocal evidence that Agile DOES work? Are you rolling your eyes and heading off to another website? Do you think I’m trying to wind you up? Do you think this is a joke? Do you think I’m unprofessional? Maybe I just don’t get Agile right?

If you were to take the title of this post seriously and you’re from the Agile community I suspect it would trigger a number of emotions.

What if you changed the title of this post to “Waterfall is broken, here’s why”? What if you also rewrote the next part of the blog post “you need to stop doing waterfall as it is a flawed approach to software development”? How many times have you heard change agents and ‘thought leaders’ in the Agile community say this or infer similar sentiments?

The Agile community regularly refer to non-Agile folk as ‘traditionalists’, i.e. traditional software methods, traditional mindset, traditional portfolio management, traditional governance and controls. How do you think the word traditional makes people feel? Be careful of traditional people – they may have a traditional pitchfork under their desk sharpened and ready to stick up your Agile ****! I hold my hand up to using traditional in this context. Traditional is now erased from my vocabulary.

These folk have invested many years of their careers in delivering software by producing detailed requirements specifications, detailed project plans in the form of Gantt charts, high level design docs, detailed architectural specs (following TOGAF of course), in a gated V-model process. This approach is the way software is developed to many people so calling it traditional is a little bizarre from their point of view. Call this approach what you want, traditional, waterfall, or v-model but please don’t call it broken. It isn’t broken, the evidence for this is all around us. In the earlier part of my career I worked on many waterfall projects which mostly were successful.

If we truly believe there are better approaches to software delivery whether they be Agile, Lean, or Scrumbanifall then let’s stop killing change initiatives before they’ve even started with incorrect use of language. Instead, let’s use language that focuses on enriching delivery practices with approaches that aim to improve effectiveness – see what I did then ;)