The waterfall model takes a long time, but the delivered product does not meet customer expectations. People have to accept two realities:
Requirements themselves have uncertainty, and customers often don't have a clear understanding of what they want until they see a product prototype or use the product. Therefore, continuous customer feedback is necessary to clarify what requirements should be included or excluded in the next steps of product development.
Thus, the waterfall model attempts to define complete product requirements in the initial step, which is trying to achieve an unattainable dream.
The market is not static, especially for Internet products where the market changes rapidly. After the requirements analysis phase in the waterfall model, requirements are frozen, and any changes to the requirements need to go through a strict change process. In an attempt to avoid impacting delivery time, demand changes are usually suppressed. However, if the market has already changed, suppressing demand changes can result in delivering a product that doesn't truly fit the market's needs. Even if the product is delivered on time, it is based on requirements that were frozen months or even years ago, rather than what the market currently demands, thus missing out on new business opportunities.
The waterfall model strictly separates stages such as requirements analysis, design, development, and testing, each of which typically takes weeks or even months, resulting in a long feedback cycle for quality issues.
For example, when a problem is discovered during the development stage, it often means that several months have passed since the requirements analysis phase, and correcting the requirements requires going through a strict change review process and adjusting the outputs of the requirements analysis and design stages before it can be reflected in the development stage. Moreover, bugs found during the testing phase may have been introduced during the development stage, design stage, or even the requirements analysis stage, indicating flaws and errors from earlier stages. Therefore, from the introduction of a bug to its discovery, it may take several months. Typically, projects using the waterfall model have a concentrated bug-fixing phase that lasts for several months before delivery.
The cost of software changes increases exponentially with each stage of the introduction. The later the stage of software development, the higher the cost of changes.
In the waterfall model, it generally takes several months, a year, or even several years from project initiation to product release to the customer. During the intermediate development process, there is no usable product for the customer. Although some documents and reports may be provided to the customer based on their requests, the actual progress of the product remains a black box to the customer.
In this context, software engineering witnessed the second wave: agile software development. Various agile methods such as XP (Extreme Programming) and Scrum emerged, and the Agile Manifesto was established in 2001.
After learning “what is a downside of using the traditional waterfall approach”, we can see that with the rapid development of mobile Internet in recent years, to seize fleeting market opportunities, and meet growing business demands and user experiences, service providers have raised higher expectations and requirements for software products. It is not just about delivering iteratively in short cycles but continuously deploying to production environments based on demand. As a result, the concept and technology of DevOps emerged in this context.
Here, I recommend using WeTest, a long-standing leader in the testing field. WeTest has successfully undergone evaluations using advanced DevOps tools and has performed exceptionally well in five critical modules: interface testing, UI testing, compatibility testing, performance testing, and client performance testing, which is your best choice.