Waterfall, Prototype, and Spiral Models

Waterfall Model in Software Engineering

The Waterfall model follows these steps:

  • Analysis
  • Design
  • Encoding
  • Testing

Prototyping Model (Circular)

Harvest and Refinement of Requirements

Gathering data to formulate an idea, and synthesizing the data.

Quick Design

Once data is gathered, the next step is to translate the idea into a model to determine possible outcomes.

Prototype

A quick draft is created to show the customer.

Evaluation of the Prototype by the Client

The customer determines whether the prototype’s functions meet their needs; they approve or disapprove of the prototype.

Refinement of the Prototype

According to the customer’s evaluation, the prototype is refined to be more effective. Unnecessary elements are removed, ensuring the software performs the required functions. Inconsistencies may require revisiting earlier steps, such as prototype construction and client evaluation, before proceeding.

Final Product

The final prototype is made according to the customer’s expectations and needs.

Spiral Model

Initial Requirements Gathering and Project Planning

Collecting data and information necessary to start the software project.

Risk Analysis Based on Initial Requirements

Once the data is selected, an analysis is performed to determine the actions the software could carry out. This includes assessing data usage, software efficacy, and whether it meets initial requirements and customer requests.

Initial Software Prototype

At this stage, the main idea is captured in a small software prototype (a draft) that will be tested by the customer.

Customer Evaluation

The customer approves or disapproves of the initial prototype, checking if it meets requirements and if the actions will be useful.

Planning Based on Customer Feedback

Customer feedback is taken into account for the software’s development.

Analysis Based on Customer Reaction

The customer decides on the characteristics of the software, considering its usefulness and ease of adaptation.

Next-Level Prototype

If the client decides the software will be useful, a new prototype is built. This prototype will have new tools and updates based on customer feedback and analysis.

Customer Rating

The client evaluates the new prototype, considering the new updates and observations.

Planning Based on Customer Feedback

If the customer approves the prototype, the development will continue to meet the customer’s needs based on the new observations.

Based on Customer Reaction

The software’s development will consider the client’s reaction, ensuring they feel comfortable and that the software accommodates their needs.