author

Team MyOxygen

To minimise your software development costs, time, and risk, you’ll want your developer to use an agile approach. That means you should also expect them to charge for bug fixes.

It sounds pretty counterintuitive. But only because the popular idea of what a bug is doesn’t quite match the reality…

What is a software bug?

Technically speaking, a bug is an “error, flaw, failure or fault” that causes software to “produce an incorrect or unexpected result or to behave in unintended ways”.

As you might imagine, that covers a lot of ground. Some bugs certainly do fit the popular image of those caused by poorly written code.

Yet many others are more properly referred to as software “defects”. This type of bug is essentially caused by a breakdown of vision, requirements, and understanding between the parties involved in creating a product.

Also, when it comes to apps based on huge volumes of complex data and interlocking technologies, some things are impossible to plan for.

Expecting the unexpected

Bugs are unexpected by definition. Yet, as well as being the most cost-effective way to build an app and letting you get to market fast, there are two broad ways agile software development minimises the creation of bugs of all kinds:

  1. Communication – we work with you to research and define the problem you’re trying to solve or the goal you’re trying to achieve. Tools like user story maps, system architecture maps, and wireframes let us clearly illustrate how we will deliver your goal or solve.
  2. Testing – has been built into development from initial scoping onwards. Costs and risk are minimised. Skilled testers try to break the app throughout development. We also write test plans you can use yourself.

However, deployed apps don’t exist in a vacuum. New users. New data. New desired functionality. New software updates to underlying frameworks, technologies, or services your app integrates with.

This latter is a big one. In the past, updates to web services like Azure or AWS have thrown hundreds of businesses into panic mode, struggling to deal with impossible-to-predict “bugs” in everything from their payment systems to user account detail updates.

So why pay for bug fixes?

Given all that, you might say that it is at least worth testing every single expected scenario.

But this quickly becomes wildly impractical from a cost and complexity standpoint. Extensive manual testing of even a relatively modest app might extend the software development process by years.

What you can do is be smart, systematic, and proportional. You can build in testing right from the start of project scoping. You can also rely on clear communication, user research, and let your app’s development be guided by the data – as it is when you’re agile.

If something unexpected then rears its head, you’ve still saved all the time and costs of a more rigid or lengthy software development process.

Need to talk through a business goal you have or a problem you need to solve using technology?

Some of the largest and most trusted organisations in the UK – including the MoD and NHS – partner with MyOxygen for their software solutions.

Arrange a free, no-obligation chat with the MyOxygen Team today. team@myoxygen.co.uk

Sign up for more insights

We will keep you up to date with all the latest in mobile and web app development