We’re big fans of agile here at Somar Digital. Over the last couple of years, we’ve invested a lot into improving and refining our Agile processes. When we say we do things the agile way we really mean it! Sometimes though we get questions about why we’re so insistent on agile and why we don’t use the waterfall approach. This article will outline the key aspects of Waterfall versus Agile and then discuss the reasons why we’ve stuck with agile for so long.
- Linear and sequential approach
- Project requirements are decided at the beginning
- A project is split up into phases
- Once a project begins the requirements are set
- Low client engagement once the project begins
- Testing begins at the very end of the project
- Iterative approach
- Project requirements are adjusted at the beginning of each sprint
- A project is split up into sprints (typically a sprint is two weeks long)
- Requirements can change throughout the project
- High-level of engagement with clients from sprint-to-sprint
- Testing is undertaken throughout the project
Why we use agile
We prefer the continuous iteration of agile versus the more rigid structure of the Waterfall approach. Agile literally means you can be agile once a project begins and can make quick and decisive decisions throughout the project. Let’s be honest a web project is never truly finished even if using a Waterfall approach. Once a new website is live you are always going to find things that need to be changed or adapted once people start using it. Agile is great for breaking down changes into manageable goals that can then be taken on by the development team.
Client Driven Projects
We much prefer to work as closely with our clients as possible. Agile relies on a high engagement with clients, which means working with our production team on a day-to-day basis during a sprint. This gives the client reassurance that things are actually getting done and they can work with our team to make any changes that need to get made. We love this high level of communication approach and have found it has yielded the best results not only for creating great web projects but also for building strong and long-lasting relationships with our clients.
Getting things done
A high level of communication leads to a high level of transparency between the client and the development team. Agile is an incremental process (the project gets broken down into user stories) and each task goes through a rigorous process of design through to development, peer review, testing, design sign-off, and client sign-off. The client knows exactly what has been completed and what still needs to get done during a sprint.
Because of the flexible approach and how closely we work with clients during the project this often results in being able to create something that is more user-centric. Agile is highly focused and collaborative working towards creating something that puts the user (i.e. the customer) front and center. At the end of the day, you want to design and build a web project that is easy-to-use and your customers actually want to use it.
Testing throughout project
Testing occurs during each sprint as user stories get completed by the development team. Before we send user stories through to clients testing is completed to make sure everything meets acceptance criteria and is working as was agreed upon. Testing includes different devices, responsiveness of website, etc. Testing is done right at the end of a project when using the Waterfall approach, which often results in testing getting rushed running the risk of releasing a product that can have a lot of bugs.
Speed to Market
Agile is a really effective methodology for getting projects quickly to market. Especially when getting a minimum viable product (MVP) out the door, using an agile approach is the best bet for getting things done quickly. Once an MVP is built, further development can be ongoing behind the scene to add features and improve the overall product.
Obviously a big part of why we have stuck with agile is that we’ve had great success building projects using the Agile approach. Whether it’s building a public transport app and website or building an online donation platform quickly to respond to the COVID-19 pandemic it’s been a super versatile way to approach a wide range of projects.
If you want to chat to us about your next web project we’d love to hear from you!