The Benefits of Agile Software Development

by Yianni Stergou, Jun 17, 2020

It seems like every software project nowadays is 'agile.' Or at least it's said to be. So why the fuss? To understand why the market gravitated towards agile, we must first understand where it came from. Before agile the main project management approach was waterfall. Essentially the waterfall methodology means roadmapping all your features and completing them in sequential order, with a final release at the end of the project. If you're interested in learning more about the differences between agile and waterfall development then follow this link.

What is agile development?

The concept of agile originally surfaced through the agile manifesto. The manifesto contains 12 Principles which outline what to prioritise during a project build. What has arisen from this methodology is a number of different frameworks including Scrum, Kanban, Kaizen and Lean. But at its core agile is a mindset. A mindset that helps projects thrive in complex environments. It ties in well with product/market fit by putting the emphasis on customer collaboration (one of the agile principles).

Benefits of agile

1. Mitigates the risk of budget blow outs

The main criticism of waterfall development was the likelihood of projects running overtime and over budget. When one phase of development is reliant on the prior phase it makes it extremely difficult to deliver an entire project on time. This is especially true in the software development industry where there are so many complexities and unknowns. With agile we can prioritise smaller increments of work that don't depend on previous work being completed.

2. Better product/market fit

One of the manifesto's values is customer collaboration over contract negotiation. The key is to put the customer at the centre of everything we do. It allows us to focus on a problem statement and solve it for the customer base. By building in increments we can test out different solutions without having to wait till the end of the project to see if they work.

3. Increased stakeholder collaboration

Many of the agile frameworks put a process in place for facilitating stakeholder collaboration. Scrum for example uses sprint planning and review sessions to ensure the product owner and the developers are aligned and working towards the same objectives. This also prevents getting to the end of a project only to realise your solution doesn't actually solve the problem.