The Pitfalls of Agility in Software Development

INGENO
Be the Revolution
Published in
3 min readJul 30, 2015

--

We all agree that agile software development practices are a good thing. But there is danger lurking. We have to be careful not to use the agile springboard and jump head first into code construction. This applies to all projects, big and small.

The experienced carpenter considers the task three times, measures twice and cuts only once!

Agility is no pretext to completely forgo requirements gathering, planning and designing. The thinking phase needs to precede each iteration. Your urge to code could prevent you from exploring often overlooked but very powerful options at the initial stages…

Let’s Build a Dog House

Jack, your new dog, needs a house. So your partner asks you to build one and goes out for the day. Building a dog house is not that complicated: leftover materials, a few tools, and the job can be done quick and easy. The result however is not what was expected, as you find out when your partner checks out your day’s work.

You could choose to adopt an agile approach and consult with your partner every step of the way. When the day is done, the new dog house will be completed and everybody will be happy, including Jack.

The general belief is that waterfall projects are doomed to fail, while agile projects have a much greater chance of being successful. However, our new focus on agile processes can promote the notion that our ability to deliver is the end goal. That’s where we may be misleading ourselves.

In software development, benchmarks for success should not be based on under-budget and on-time delivery. The real measure of success is a positive return on investment.

The Power of Simplicity and Compromise

Happy carpenters would probably be surprised to know the total cost of ownership of the new dog house. To the costs of building materials and tools, we mustn’t forget the labor for ALL the people involved, including the supporting actors. At $50/hour, the dog house may very well end up costing $750!

That’s a sizeable investment. What’s the return on investment here? That’s the real question we need to ask.

Whether it’s for a dog house, a new application feature or a complex development project, I always start by asking:

  • What if we just didn’t do it? Can our users live without it?
  • If not, can we repurpose existing artefacts or buy some off-the-shelf components and achieve a baseline of capabilities?

How did we come up with the need for a dog house in the first place? The dog certainly didn’t ask for it. The house will certainly get some use once in a while. But Jack is never left outside at night. There is not an absolute need for it.

But what if you have a bigger dog that effectively spends a lot of time outside? Well, I’ve seen incredibly good looking dog houses on Walmart’s Web site for $150. Factor in the time to go and pick it up, and you’re looking at $200 vs our original $750.

Take It a Step Further

The biggest gain here is not that you saved some money. Rather, you could be doing something else of value with the time saved.

If there is effectively a need for a dog house and building the dog house is not really perceived as a great way to spend your time, what could you do instead? If you’re an entrepreneur, you could work on something your customers are waiting for and willing to pay. By buying the dog house you’re left with 7 available hours that you can use to build value and bill your clients for it. At the end of the day, you’ll have the dog house and $150 more in your bank account.

Being agile should not distract us from the need to constantly ask about business needs and question the ROI. Moreover, we have a strong tendency to overdesign when most users of our solution would be content with a baseline of functionalities.

Agility is not the ability to do more or more complex software. It’s about building quality products the customers really need, while being profitable as a business.

Keep it simple and be open to compromise. You’ll be more agile than ever!

Be the Revolution!

by Remy Gendron, founder at Ingeno

Learn more about us at ingeno.ca.

--

--