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.