loader

Why Agile is Not Agile Anymore?

Sudhir Shetty

Sudhir Shetty

Why Agile is Not Agile Anymore?

Two decades ago, agile took over the world and become so popular that customers demanded agile projects. Regardless of whether it was a good choice, if they had the right people, or even the right mind-set.

In their book on Patterns and Anti Patterns for Business Agility by Myles Ogilvie, Simon Rohrer, and Zsolt Berend. The writers lament- that the projects do Agile instead of being agile. Agile has become a product instead of a mind-set.

It has nothing to do with Agile per se. We see the same behaviours in outright idiocy such as front-end frameworks, religion etc. Agile is madness wrapped in rose candy. It is more of a religion- lots of documents praising it, lots of followers, lots of gurus making money preaching it. They love it, they soak it all up, they obsess over how to implement scrum (psst… Scrum is all about the project management, not the software. Therefore, Scrum per se is not an “agile” software-development method—because it is not a software-development method at all) and sprints. They can talk of nothing else in the waking hours. If they can't do it, who can, right?

But sadly, there’s no evidence to show it exists. In fact, as far as I can see, every project scream with piles of evidence that it doesn't work.

Maybe somewhere out there, there's really a perfect team who has a perfect plan in a perfect organization owning a perfect client and everyone is happy. In my 20 years of “hearing” of how agile is a solution to the world’s, unfortunately I have witnessed many projects in which Agile in name but chaos in reality.

I would say it has become worse; companies and Dev teams want agile delivery that involves product backlogs, sprints, and fixed deadlines/cost. The agility part of agile projects is completely removed and the retrospectives are gone. It’s more like waterfall projects with upfront requirements, fixed deadlines, sprints, and fortnightly demos.

Agile, is more of a label, since nobody wants to insulted by not being agile.

They say ‘the road to hell is paved with good intentions’, Agile is exactly that- the concept itself isn’t bad. It is through apathy, and ignorance it becomes a big mess as an approach to software development. Like many things in life those talking loudest about it fall into two camps: Those vehemently against it, and those who are passionately in love with it.

Let’s talk about the “12 Simple principles” of Agile:

  • 1. Customer satisfaction by early and continuous delivery of valuable software.
  • 2. Welcome changing requirements even in late developments.
  • 3. Deliver working software frequently (in weeks rather than months).
  • 4. Close, daily cooperation between business people and developers.
  • 5. Projects are built around motivated individuals, who can be trusted.
  • 6. Face-to-face conversation is the best form of communication (co-location).
  • 7. Working software is the primary measure of progress.
  • 8. Sustainable development which is able to maintain a constant pace.
  • 9. Continuous attention to technical excellence and good design.
  • 10. Simplicity is essential, the art of maximizing the amount of work not done.
  • 11. Best architectures, requirements, and designs emerge from self-organizing teams.
  • 12. The team reflects regularly on how to become more effective, and adjusts accordingly.

The above list uses buzzwords that look all rosy and shiny to the middle-manager but elicits an “Uhh” reaction from people who actually think.

There is no appetite for empowering small teams. Management doesn’t trust teams and wants to monitor all decisions, which leads to explosions in meetings. There’s no focus on improving the ways of working which would lead to optimising the project. This extra layer of management and meetings slows down development which gives the teams less and less time for development. Any time gained from remote working is gobbled up in meetings. Developers are busier and lonelier than before. Burning out in higher numbers and continuing to move jobs in the hopes the next job might be better.

Conclusion:

Agile projects have become bloated, lazy waterfall projects with just two-week sprints. The waterfall production line approach is best suited for projects with known requirements or making widgets.

Currently, agile projects tend to move towards, late projects or failed projects.

People are the reasons for the success or failure of the projects. Project methodology, technology, and programming languages are the tools which are used to create a software.

There is no ‘one shoe fits all, every project is unique with unique clients, developers, managers, requirements, and timelines. There never was nor ever will be a magic formula to deliver a perfect project.