Explain the popular Software development life cycle models.1) Waterfall model : This is the oldest model. It represents sequence of stages; output of one stage becomes input of others.
2) Spiral Model :This is improved version of waterfall model. Here we have scope to reiterate and go back to the earlier stages number of times as project progresses.
3) Build and fix model: This is a risky and most unorganized model. In this, developers keep writing code until the customer is happy.
4) Rapid Prototype Model: In this model, we develop prototype which acts like a final product. Once prototype is approved, then the actual development starts.
5) Incremental Model: In this model, the product is divided into sections and each section of the product are created and tested separately.
Explain project life cycle.1) Waterfall Model: The waterfall model is a software development process which follows a sequential approach. This approach steadily flows downwards like a waterfall which includes the phases of conception, initiation, analysis, design, construction, testing and maintenance.
2) Spiral Model: The spiral model is one of the software development processes which combines the design and prototyping-in-stages together to gain the advantage of top-down and bottom-up approaches.
3) Build and Fix model: This model is one of the worst model for project development. The project is built without specifications and lacks design steps. Essentially, the project is developed, tested, modified as many times as possible. This process continues until the client’s satisfaction is attained. The cost is greater compared to other models. The software engineers are discouraged to use this model.
4) Rapid prototyping Model: To determine and identify the design flaws and obtaining feedback during design process is done by using rapid prototyping model. Product designers and engineers are allowed to view their designs look and function in real world situations by using Rapid Prototyping Model.
5) Incremental Model: The evolution of waterfall model is incremental model. The integration testing, product design and development is done as a series of incremental builds. A popular software evolution model used by many software companies. Incremental model is suitable and applicable where software requirements are well defined, but their implementation may be delayed; and the basic software functionality are required early.