Agile: less recipes, more state of mind
Too many people think of Agile as nothing more than Scrum and a bunch of rituals. But perform a rite and lose sight of its purpose, and you’ll end up far from Agile.
The first tenet of the Agile Manifesto is that it focuses on people and their interactions rather than on the methods and tools, to counteract what usually happens in a traditional setting, where processes and tools reign supreme.
Agile has become a business, even fostering an entire industry, with specialized companies, consultants, and software vendors all promising the moon and the stars, to their own benefit: adopt our methods and your productivity will soar. Then everyone thinks they’re Agile because they use the methods, tools, terminology and rituals. It goes without saying: a practice followed to the letter but not in spirit doesn’t cut it.
“Individuals and interactions
over processes and tools.”
Besides living in an era of “fake news”, we’re also in an era of “fake agility” when it comes to software development. Have you read the manifesto for Agile software development yet? You’ll be hard-pressed to find anyone in a development team who has done so, or who can recite any of the four values or twelve underlying principles. Some companies call themselves Agile without having the least notion of what Agile culture is. Others have the best intentions but get stuck micromanaging and lose sight of the overarching goals. They don’t really get that Agile is a state of mind. Some teams are honest: “Sure, we do sprints and dailies. We assign points to stories. We have a scrum master who’s actually a project lead. That’s about as far as it goes.”
“Our highest priority is to satisfy the customer
through early and continuous delivery
of valuable software.”
Agile is an outlook that rests on four values and defines itself according to twelve principles. It’s a sort of philosophy coupled with moral principles that translates into an infinite number of practices. Agile is not like XP, a box of tools that you can choose from according to your needs. It’s a holistic thought pattern that guides practise with key objectives, such as client satisfaction. A satisfied customer doesn’t care whether you faithfully do your 15-minute stand-up each day. The question you should be asking is, “Does our daily stand-up get us closer to our goal? Is it helpful or is it just a waste of time?” Is the team thinking about ways to be more productive and then adjusting its behaviour accordingly (12th principle)? Or is it just performing empty rituals without asking itself whether they’re furthering the project, and never trying new ways of doing things? Is Kanban perhaps more appropriate for this project?
Those are the kinds of questions that reveal a true understanding of Agile. Blindly following methodologies and prescriptive rules doesn’t demonstrate you can adapt rather than dumbly follow a plan (4th value in the Manifesto, summarized as “pragmatism”).
“Responding to change
over following a plan.”
The point of Agile is not to fit people in a mould, forcing them to follow practices unquestioningly, without a concern for how they think, interact, or collaborate. Again, the first value of the Manifesto is clear: individuals and their interactions are at the heart of the methodology, and tools and procedures are secondary. The latter are always in the service of the former.
The origin of the term Agile, and what makes it superior to the cascade model, is its emphasis on adaptability to change. Using the same practices and tools day in day out, on all projects, no matter their scope and specificity, is not a sign of adaptation, but of inflexibility. A team can lift the practices that have worked in other situations, or it can create its own methods for the current context. Meaning a team must be allowed to find its own groove. When thinking through Agile practices, the only hard limit is the ultimate goal, the Manifesto principles’ highest priority: swiftly and regularly deliver great value-added functionalities to satisfy the client. If the client isn’t satisfied, check the fundamental soundness of your practices.
“At regular intervals, the team reflects on how
to become more effective, then tunes and adjusts
its behaviour accordingly.”
Finally, all team members must know and understand the Agile Manifesto and soak in its philosophy. Get used to reading and rereading the Manifesto to fully understand the purpose of its precepts, to discuss them in a group so that everyone is on the same page. Keep in mind that Agile is above all an evergreen concept to be constantly nurtured and rethought.