Is it better to use the Waterfall or Scrum methodology?

The waterfall method and the Scrum method are different approaches to project management and development. What are their limitations, and which one should you choose?

Agile vs. non-agile approach

There are essentially two ways to approach the development of web and mobile applications:

1. Agile development

This approach is based on iteration
. This means that developers constantly return to the same issues, continually testing and fixing them. This method is able to reflect changing requirements during development. The term has been in use since 2001, when the Agile Manifesto
was published.

There are numerous variations of this method. In practice, the Scrum method
is most commonly used.

2. Non-agile development

Non-agile development, on the other hand, proceeds step by step. It progresses in sequences
. First, the initial step is completed, followed by the next ones. It is not as flexible when it comes to accommodating changes. This approach is significantly older.

The term ‘waterfall model’
is also very often used to describe the non-agile approach to development.

The Scrum method: advantages and disadvantages

The key principle of agile development is that the specifications and requirements for the final application can change constantly. Developers constantly return to different parts of the development process. All stakeholders participate in the development, and communication is managed by the so-called Scrum Master.

Roles in Scrum development:

  • Product Owner
  • Development team
  • Scrum Master

The Scrum Master is neither a project manager nor a team leader; they are simply a facilitator
who ensures communication between the development team and the product owner. There is no hierarchy within the development team and all members are equal; they can contribute ideas and challenge the current state of development.

The Scrum method does not have clearly defined phases, but proceeds through so-called scrums,
which are review meetings of the development team, sometimes including the Product Owner, during which the current progress is discussed and the next steps for development are planned. The basic unit of development is the sprint
. A sprint can vary in length (from a week to a month).

During a sprint, the team holds short
daily meetings
known as daily scrums
. These primarily address issues and specific feedback regarding development. A daily scrum should not last longer than 15 minutes. For this reason, Scrum is better suited to smaller teams of up to 15 people.

The advantage of this method is that it can respond flexibly to change requests at any time. Scrum gives the development team more freedom. It is, in fact, a less documented and more focused and creative part of development. Thanks to this, the agile Scrum method is suitable, for example, for the development of complex bespoke applications, such as loyalty programmes.

The method is based on involving the client in the development process. The client participates in regular sprints, during which the results achieved so far are reviewed and discussed. Success depends to a large extent on whether the client is willing to devote their time to these consultations.

Scrum is often unsuitable for large digital agencies handling several projects at once. Conversely, it is ideally suited to projects where the development team focuses on just one project. Due to frequent changes to the brief and constant adjustments, there may be deviations in the estimated deadline and cost, which is another factor that many clients find unsatisfactory. In most cases, during development, the client ‘hires’ the developers’ time for the duration of a sprint and decides for themselves what the development team will work on and how.

Waterfall model: advantages and disadvantages

The waterfall model proceeds linearly
. The second phase does not begin until the first phase of development is complete. In practice, some phases may overlap – for example, testing and certain parts of implementation. This method emphasises adherence to the schedule
, budget and forward planning of implementation.

Development has several phases:

  • Requirements specification
  • Design
  • Implementation
  • Integration
  • Testing and debugging
  • „Installation
  • Maintenance

There are numerous variations in the phases and tasks within the model. Essentially, each agency adapts it to best suit its own working methods and client requirements.

A major advantage is that requirements are precisely defined at the start of development, and the work schedule, completion dates and budget are set accordingly. Thanks to high-quality analysis and clarification at the start of development, much can be predicted and a functional model of the application can be designed straight away. This can save considerable resources. Steve McConnell, author of a book on software engineering, writes that fixing a bug that is only discovered during the implementation or maintenance phase costs 50 to 200 times more than if it had been detected during the requirements specification phase.

Another advantage is the simplicity of the model; it is clear and transparent even to non-technical clients. The model also emphasises high-quality project documentation, which is definitely a major plus, particularly for more demanding projects.

Conversely, this method is not as flexible when it comes to change requests. This is because there is a clear work schedule in place from the outset, and any additional work makes it impossible to adhere to the schedule (and therefore the budget).

Which method does AITOM use and why

At AITOM, we use the waterfall method. We sometimes find the Scrum method more creative and fun, but it is far from being as transparent for our clients. The vast majority of clients expect us to clearly communicate the website’s completion date and price, which is by no means easy with Scrum.

We place great emphasis on the first phase – i.e. the requirements specification. Before every project, we produce a detailed initial study setting out the project objectives, wireframes, marketing plan, SWOT analysis and competitor analysis. In the first phase, we ask a lot of questions – sometimes to the point of being a bit of a nuisance – but it is only thanks to this that we are able to identify a whole range of potential errors right at the start of development and prevent them.

Our clients appreciate our approach; they find it easier to understand. They also have a clear picture from start to finish of how the work is progressing and the cost of the projects.

Let’s take your business to the next level

Let’s start with a free consultation