Insights

At DVT, we run regular online events focused on the latest technology trends within the IT industry and invite guest speakers to share their knowledge and insights on various topics. The DVT Insights Events aim to enlighten you, educate you and often, provide a new view on a burning issue within the technology space.

How to strike a balance in Agile Software Development
Stephen de Villiers Graaff
Agile Coach and Consultant, DVT

How to strike a balance in Agile Software Development

Mittwoch, 04 Mai 2016 12:32

Agile is a type of software development methodology that anticipates the need for flexibility and applies a level of pragmatism to the delivery of the finished product. The Agile software development cycle relies on iterations -- or single development cycles -- that build upon each other and lead into the next step of the overall development process until the project is completed.

What do a wolf, a deer, and a whole lot of trees have to do with finding the right balance in an Agile business environment?

That’s the question I found myself pondering having recently worked with an organisation of uncannily like-minded people. As it turns out, like-mindedness is hugely problematic for an agile software development business, which reminds me of a famous quote by Benjamin Franklin: “If everyone is thinking alike then no one is thinking.”

Manifesto for Agile Software Development

Agile software development refers to software development methodologies centered around the idea of iterative development, where requirements and solutions evolve through collaboration between self-organising cross-functional teams. The ultimate value in Agile development is that it enables teams to deliver value faster, with greater quality and predictability, and greater aptitude to respond to change. Scrum and Kanban are two of the most widely used Agile methodologies.

A show of hands if you’re familiar with the term ‘trophic cascade’? According to Wikipedia, a trophic cascade “occurs when predators in a food web suppress the abundance or alter the behavior of their prey.” If that sounds a bit dry (and confusing), the story of the wolf and the deer will quickly add some colour – and also make sense of what I’m saying.

In 1995, wolves were reintroduced to Yellowstone National Park in the U.S. They hadn’t been there for 70 years, having been eliminated in the early 1900s by government predator control programs.

Many were rightly concerned about the impact of reintroducing wolves – the Park’s apex predator – back into the vacuum that formed in their absence. In the preceding years, humans, as we’re wont to do, tried to artificially stabilise the environment to compensate for the population growth, but since we were not actively living in that environment, our attempts were meek at best.

As in business, it’s very difficult from the outside to stabilise a machine you’re not part of, and so the unchecked growth in the deer population of Yellowstone had a severe impact on the environment, particularly the vegetation.

So in came the wolves, and the first thing the wolves did was hunt the deer. No surprises there. But then something interesting happened: not only did the wolves affect the overall number of deer, they also started changing the behaviour of the deer they were hunting. The deer began to avoid certain parts of the Park because they were easily hunted there – like valleys and gorges.

Almost immediately there was a change in the vegetation in those areas. The deer left, the vegetation thrived. In some areas, in just six years, the number of trees quintripled. Bare valleys were suddenly coated with forests of Willow and Aspen. With more trees, greater numbers of birds returned to Yellowstone; beavers returned to the rivers because now they had more to eat and build their dams with; the beaver dams created new, larger expanses of water, which increased the numbers of otters, musk rats, fish, amphibians and reptiles.

And so the cascade continued to gather pace. More wolves, less deer, more trees, and just from the regeneration we had an entirely new ecosystem emerging and thriving.

The wolves next turned their attention to their closest rivals – coyotes. They started killing coyotes, because that’s the natural order, and as coyote numbers declined, rodent numbers exploded. More rodents meant more food for predatory birds like hawks and eagles, which started flocking back to Yellowstone en masse. As the larger birds returned the numbers of weasels and foxes grew to balance them out, and with more hunting and more carrion, there were suddenly more ravens and other scavengers in the Park.

Even bears made a comeback of sorts, not only for the carrion but also the trees and their berries. The bears reinforced what the wolves were doing, hunting the older and younger deer.

That’s not all, things were about to get even more surreal: the wolves had an active effect on the rivers!

Now that the deer had moved out of the valleys, the regenerating vegetation stabilised the sides of the rivers; the regenerated forests on the hills slowed erosion, which stopped silt from falling into the rivers. As a result, rivers started to meander less, the channels narrowed, pools formed, and the rivers flowed deeper and cleaner, which created a richer environment for even more wildlife.

In a few short years, a small number of wolves didn’t just chase away a few deer; they changed the physical geography of their ecosystem.

What is a working organisation if not an ecosystem? As in nature, it needs balance, driven by the stresses and behaviours of the different parts of the system. If you have an organisation full of deer, you’ll soon enough end up with a stagnant workplace that ultimately eats itself from within. Remember Franklin’s words; it’s not going anywhere, it can’t.

Healthy organisations need predators among the deer, and by predators I don’t mean ruthless operators or aggressive individuals, but rather people who think differently, who aren’t afraid of change. Likewise your business can’t thrive with a staff full of predators; it needs the deer with an aptitude for consistent, predictable work ethic to balance the system.

The healthy tension between workplace wolves and deer drives innovation, because everything you do goes through a litmus test. An idea is never just accepted because there’s a definitive group that always challenges it. If everyone is thinking the same, those challenges disappear, and the system becomes weaker and more diluted.

In essence what we’re looking for is the trophic cascade within and organisation, which makes the business healthy, keeps it on its toes, sharpens focus, steers it away from the ‘valleys and gorges’ where hunting is easy, because if hunting is easy, everyone else is doing it. As in nature, your trophic cascade removes mediocrity and ultimately sets your business on the path to success.

Striking a Balance in Agile Development

In a trophic cascade, the removal of a top predator can have a cascading effect on the entire ecosystem. For example, if wolves are removed from an ecosystem, the deer population will increase, which will lead to overgrasing and the destruction of plant life.

In the context of agile software development, the key to success is to strike a balance between three competing forces:

  • Customer satisfaction: Agile development is all about delivering value to the customer early and often. However, it is important to balance this with the other two forces.
  • Team morale: Agile teams work best when they are motivated and engaged. This requires a good balance between work and life, and a sense of purpose and meaning in their work.
  • Product quality: Agile teams need to deliver high-quality products that meet the needs of the customer. However, it is important to balance this with the other two forces.

If one of these forces is given too much priority at the expense of the others, it can lead to a trophic cascade effect, where the entire team and project suffer. For example, if customer satisfaction is given too much priority, it can lead to burnout and a decrease in product quality.

The article concludes by stating that the key to success in agile software development is to strike a balance between these three competing forces. This is not always easy, but it is essential for long-term success.

Final ending in reference to a trophic cascade

In the context of the trophic cascade analogy, is a reminder that the success of an agile software development project depends on the balance of all three forces: customer satisfaction, team morale, and product quality. If any one of these forces is given too much priority at the expense of the others, it can lead to a downward spiral that can be difficult to recover from.

Embracing the trophic cascade analogy reminds us that in Agile, as in nature, every element plays a crucial role in maintaining equilibrium, ultimately leading to the successful delivery of high-quality software products.

Therefore, the key to success in agile software development is to find a way to keep all three forces in balance. This may require some compromise and trade-offs, but it is essential for long-term success.

Editor's Note: This post was originally published on 4 April 2016, and was updated on 5 December 2023

Published in Agile
DVT 25 Years of Service