Incremental / Prototyping Model
Incremental / Prototyping model is the model of software development life cycle where the Iterative process starts with a simple implementation of a subset of the software requirements and iteratively enhances the evolving versions until the full system is implemented.
- In this model the developer and client interact to establish the requirements of the software.
- Essence of prototyping is a quickly designed model that can undergo immediate evaluation.
- This is follow up by the quick design, in which the visible elements of the software, the input and the output are designed.
- The final product of the design is a prototype.
- The client then evaluates the prototype and provides its recommendations and suggestion to the analyst.
- The process continues in an iterative manner until the all the user requirements are met.
- Accommodates problem of changing requirements
Fig: The prototyping model of Software development lifecycle
Advantages of Prototyping model
- Clients are actively involved in the development.
- Since in this methodology a working model of the system is provided, the users get a better understanding of the system being developed.
- Errors can be detected much earlier.
- Quicker user feedback is available leading to better solutions.
- Missing functionality can be identified easily.
- Confusing or difficult functions can be identified.
Disadvantages of Prototyping model
- Leads to implementing and then repairing way of building systems.
- Practically, this methodology may increase the complexity of the system as scope of the system may expand beyond original plans.
- Incomplete application may cause application not to be used as the
full system was designed.
- Incomplete or inadequate problem analysis.
When to use Prototyping model
- Prototype model should be used when the desired system needs to have a lot of interaction with the end users.
- Typically, online systems, web interfaces have a very high amount of interaction with end users, are best suited for Prototype model. It might take a while for a system to be built that allows ease of use and needs minimal training for the end user.
- Prototyping ensures that the end users constantly work with the system and provide a feedback which is incorporated in the prototype to result in a usable system. They are excellent for designing good human computer interface systems.
542 total views, 3 views today
A Soon-to-be Computer Engineer by profession, he has profound devotion to add Data Scientist as a prefix to his name. He’s been to the nooks of the web (at least of the surface web) and planning to add some real figures in his pocket!