Image by SIMON LEE
  • antoniodellomo

Waterfall Methodology

Updated: Mar 2, 2021

The terms waterfall and agile represent two different approaches to UX and there's actually quite a bit of discussion, argument, and controversy about these terms. While agile is the younger methodology, the waterfall process was among the earliest of formal software engineering lifecycle processes. The waterfall methodology is one of the simplest (in form, at least) ways to put lifecycle activities together to make an SE lifecycle process.



The process was so named because it was described as an ordered, essentially linear sequence of phases (lifecycle activities), in which there is no flexibility to iterate design or development. Each phase is built upon the previous one and although there can and should be some overlap, it's still a fairly sequential process. One phase follows the next and in the end, there's a big launch. It's just like a waterfall where the water starts at the top and plunges down in a rather linear fashion. Hence the name. For many smaller websites, this process makes a lot of sense. You complete the UX process then you develop test and launch. There might be small changes here and there but the development of the project is completed. Using such a process for big and complex projects, however, can be treacherous. It's tempting to want to get everything completely right before showing your site or App to the world. Working with a waterfall process can mean years of development before your project sees the light of day and since nothing is tested until late in the process, chances are pretty high that the project went down the wrong path and the final product has serious flaws that cannot be easily corrected. By now, lots of time and money has already been spent. That's where an agile process offers an advantage.



When Should You Use Waterfall UX?

Use waterfall UX in the following cases:

  • You’re working on a short-term, fixed-bid project.

  • The team has good experience executing similar projects.

  • The requirements are stable and fixed.

  • The team is experienced with the technology.

  • The scope of the project is large.

  • You have a fair idea of what you need to do.

Designers can follow a user-centered design approach but must adhere to an agreed-on scope and timeline. Usually, there is less freedom to experiment due to this method’s sequential flow. The budget for a project is estimated and usually predetermined or limited, so the waterfall-UX approach could encounter a lot of challenges in execution, especially if there are deviations from the process. During the research, it is best to glean all user stories and get the necessary stakeholders involved right from the project’s inception.



Challenges for Designers

Waterfall UX presents the following challenges to designers:

  • Longer reviews, signoffs, and rework times

  • Detailed deliverables followed by documentation

  • Visual designs with detailed style guides for development

  • Wireframe flows detailing every interaction and styles

  • Usability testing that might have no immediate impact on the design

  • Involving or coordinating with usability specialists early during the requirements-gathering phase

  • Ensuring confirmation of acceptance by stakeholders



Modified Waterfall Models

There are many versions of modified waterfall models. One of the most popular variations is shown below. In this version, teams have the flexibility to iterate previous phases and dig more deeply during certain phases. This flexibility can enable a team to redefine some of their more speculative solutions.

Image from Semantic Scholar’s waterfall model




Agile UX

In recent years, agile has become the most popular software development methodology in the industry. It is best for scenarios in which requirements change frequently and teams are doing iterative development. Agile focuses on development and timelines. It also embodies a periodic, incremental development approach to solving problems. Think about Gmail or Facebook or Instagram for example or Uber or Airbnb or Amazon. These sites and services are constantly being developed and they constantly change. They are on a never-ending development cycle and they are never really completed. Their current incarnation compared to what they were when they first launched, is quite different.









Photo by Stephen Walker on Unsplash