How and When Agile Working Works (And When It REALLY Doesn’t)

by Make IT Simple , 11 May 2021 Custom Software Development, Software Development Company

Agile working is a badge of honour for many businesses.

It demonstrates their innovative and iterative approach when developing new products and services, and has certainly proved its worth during the pandemic – 93% of businesses that fully adopted an agile model before the current pandemic did better than those that didn’t.

At Make IT Simple, we are agile working proponents – and our expertise in this area means we’re listed on the UK Government’s Digital Marketplace as an agile specialist.

But what does agile working actually mean? And does it always work? We use the agile methodology in our own way and, quite aptly, in an agile manner. Our approach works well for us and our clients but – before we get to that – let’s examine agile in more detail now.

Waterfall versus agile working

The agile methodology breaks down your development process into a series of sprints. These are one- or two-week time-boxed periods where your team commits to designing, developing and testing a specific feature.

This is in stark contrast to the waterfall methodology, where the final product or service is viewed as a whole and then broken down into different deliverables.

Let’s look at an example. You want to make a new car. Using the waterfall methodology, you’d break down the design process into different components.

First, you may design the wheels, then the chassis, then the body, and so on. You then bring these components together at the end of the process to make your finished product – the car.

This is an okay way of working – but what happens when things go wrong? If your budget runs dry, for example, you’re left with a half-finished car (that can’t be sold).

If your client suddenly decides they want the car to be a convertible halfway through the design process, you have to go back to the drawing board. And so on.

In short, waterfall is an inflexible way of working – and that’s where agile comes in.

Using agile working, you focus on one feature at a time. You may start by designing a skateboard, for example, just to get the basics of transportation right.

Then move onto a scooter to improve the control of the vehicle. Then a bike so you can travel greater distances. Then add a motor, so you have a motorbike.

When you get to the final car design stages, you’ve already got several working prototypes. If your budget runs dry, you already have a set of workable (and market-ready) products.

If your client changes their mind and wants to make your car a convertible (or even design something completely different, like a lorry), you don’t need to redo a load of previous work.

This adaptability is one of the major advantages of agile, leading to many knock-on benefits.

Some of the advantages of agile include the following:

1. Fast and reliable

By focusing on continuous delivery, agile is more predictable than other methods. You know what new features you’ll get and when. These new features are also delivered frequently, with a high level of certainty.

This reduces the risks often associated with waterfall, where late-stage changes, for example, could disrupt the entire development process or when issues are uncovered during the late-stage prototyping phases.

2. Continuous customer-driven delivery

By “continuous,” we mean both the continuous development of your new products and services, and the continuous improvement of your existing ones.

As a result, you can react to your customer and market demands with ease. You can even react on a week-by-week basis, depending on the length of your sprints.

3. High-quality products and services

At the end of every sprint, your new features are tested. Continuous testing means you don’t get to the final prototype stage (as with waterfall) and realise nothing works.

Plus, you have full confidence in every release. Also, if something does go wrong with one release, then you only have one sprint’s worth of work to fix.

4. Focus on business value

The client is involved across the decision-making process with the agile methodology. With waterfall, they can usually only contribute during the initial design stages.

By prioritising features, your design and development teams also understand what’s important to the business and where they can add value.

When agile doesn’t work

With all these benefits, why isn’t everyone agile working? There are usually three key reasons…

Three occasions where agile doesn’t work:

1. Your business model isn’t compatible

Some heavily regulated organisations (typically those in the finance and healthcare industries) develop their products using existing models – and those models work.

Agile is great if you have a general understanding of what the end product should do. But if you need to fulfil fixed requirements – it may not be a fit.

2. Your team doesn’t understand the value of agile

Change is tough to implement. If you’re new to agile you may struggle to explain the benefits to your staff and (as with any new way of working) there will be a learning curve and resistance to change.

An agile coach can help get your team on the right track and be enthusiastic about agile.

3. You’re implementing agile incorrectly

Agile is a complex beast (we’ve only touched on the basics in this post – here’s an in-depth explanation from Atlassian). It’s also a flexible way of working with lots of different options – and it could be that you’ve not found the right way of working with agile for your organisation.

Again, this is where an agile coach can help.

How we use agile at Make IT Simple

We take the agility of agile working to heart, finding the best approach for each client and each project.

In general, we take the traditional sprint process (where the design, development and testing of a specific feature is focused on in a 1-2 week sprint) and break this down further.

We use three sprint stages. A pre-sprint (where the design is finalised), a build sprint (where we develop the feature and test internally) and a fixes sprint (where the client tests and we fix/tweak any issues).

This approach not only accelerates the development process, but also ensures every release is highly focused on a specific feature. So, you can launch with complete confidence.

If you’d like to find out more about agile and how we can help your organisation embrace this flexible way of working, contact one of the team.


Let’s Talk

If you are looking for a bespoke software development company, please get in touch by phone by calling +44 (0) 1905 700 050 or filling out the form below.