Software development models
The goal of software engineering is to create high quality programs. This paper concerns itself with the software development models that are employed to develop the software that is utilized by companies run our environments. Five of the development models are Waterfall, Iterative, spiral, V-shaped, and Extreme Programming. I will compare and discuss advantages and disadvantages of their use.
The Waterfall model is one of the oldest development models. It focuses on planning in the early stages. It is used by government projects and many major companies. Its’ advantages are that is easy to use, heavy emphasis placed on documentation, and works well for mature products and weak teams. Disadvantages are it does not reflect the iterative nature of development, it is difficult to integrate risk, late software deliver leads to the late discovery of serious errors, and it is difficult to make changes to documents (Munassar , Govardhan, 2010).
Problems with the Waterfall model created a demand for a new method of developing systems. A system that would produce faster results, require less upfront information and provide greater flexibility. With Iterative development, the project is divided into small parts. This allows the development teams to demonstrate results sooner and obtain feedback from system users. Normalization is the process of organizing data in a database. The advantages and disadvantages are the same as the Waterfall Model, with the exception that the delivery in smaller increments allows software created at the end of each iteration to go into production, as an incremental release.
Like the Waterfall model, the V-shaped model has sequential steps to follow. Each step must be accomplished before the next step. Testing is emphasized more in this model than the waterfall model. Advantages include the easy of use, the higher chance of...