V-shaped model is a sequential path of execution of processes. It is like the waterfall model, but it integrates validation between system design and implementation. Test plans are created before any coding and testing is done. Hence, developers can maximize the functionality and usability of the software based on the requirements gathered in the communication stage [1].
![](https://static.wixstatic.com/media/7e8362_46a934497f2b4df8bea60bf806519307~mv2.png/v1/fill/w_681,h_361,al_c,q_85,enc_auto/7e8362_46a934497f2b4df8bea60bf806519307~mv2.png)
The advantages provided by this model are:
1. Specific documentation in each stage
2. Less risky than the waterfall model with its planned procedures and validations
3. Applicable and easy to use
The ease of use in this model has disadvantages which are:
1. Rigid like the waterfall model
2. Requires a well-organized plan before any processes are done
3. Clients cannot test the software until it is deployed
The spiral model is a combination of the prototype and waterfall model. It is way less risky than the waterfall and V-shaped model. It focuses on risk analysis. Each stage of the development is covered by the process flow itself. This model has a circular implementation, divided into 4 projects which are concept development, new product development, product enhancement, and product maintenance.
The advantages of this model are:
1. Focuses on risk analysis so that it has way less risks
2. Enhancement of the previous prescriptive models (prototype and waterfall models
3. Frequent communication with clients
Meanwhile, the disadvantages are:
1. High-cost development
2. Requires a long time in completing a software
3. Works mostly on big software development
Rapid Application Development (RAD) model is similar to the incremental model but is divided into several teams to finish a project at a very short time [2], approximately 60 to 90 days. It requires highly committed developers in completing a project with the support of clients. In this model, several teams are doing the same activity, synergizing to produce a product ready software.
![](https://static.wixstatic.com/media/7e8362_e71321af31184e6a8ccfc017a173169d~mv2.png/v1/fill/w_680,h_471,al_c,q_85,enc_auto/7e8362_e71321af31184e6a8ccfc017a173169d~mv2.png)
The advantages of this model are:
1. Shorter timescale
2. High productivity teamwork
3. Frequent communication between team
Such short-scale projects require several things which can be considered as disadvantages which are:
1. Highly skilled individuals in the technology needed in developing the software demanded by clients
2.Inability of newly discovered technologies to be developed using this model
3. Highly committed individuals to team up in completing the project
The implementation of a model depends on the number of individuals in a team, scale of the project, and timespan [3]. Use the right model to achieve maximum results.
References
[1] N. Munassar and A. Govardhan, "A Comparison Between Five Models of Software Engineering", International Journal of Computer Science Issues, vol. 7, no. 6, 2010 [Online]. Available: https://www.ijcsi.org/papers/7-5-94-101.pdf. [Accessed: 15- Sep- 2019]
[2] P. Beynon-Davies, C. Carne, H. Mackay and D. Tudhope, "Rapid application development (RAD): an empirical review", European Journal of Information Systems, vol. 8, no. 3, pp. 211-223, 1999 [Online]. Available: https://www.researchgate.net/publication/31978101_Rapid_application_development_RAD_An_empirical_review. [Accessed: 15- Sep- 2019]
[3] I. Sommerville, " Software Process Models" ACM Computing Surveys, vol. 28, no. 1, 1996. [Online]. Available: https://www.researchgate.net/profile/Ian_Sommerville/publication/220566110_Software_Process_Models/links/53db88b30cf2a76fb667a1e7.pdf [Accessed: 15-Sep-2019]
Comentarios