Unit 2: Software Development Life Cycle (SDLC)
Software Engineering (4353202)
2.1: Introduction to SDLC
The Software Development Life Cycle (SDLC) is a process used by the software industry to design, develop, and test high quality softwares.
2.2: Waterfall & Incremental Models
Waterfall Model
A sequential design process in which progress is seen as flowing steadily downwards (like a waterfall) through the phases of conception, initiation, analysis, design, construction, testing, deployment and maintenance.
Incremental Model
The incremental build model is a method of software development where the model is designed, implemented and tested incrementally (a little more is added each time) until the product is finished.
2.3: Prototype & Spiral Models
Prototype Model
The prototyping model is a systems development method (SDM) in which a prototype (an early approximation of a final system or product) is built, tested, and then reworked as necessary until an acceptable prototype is finally achieved from which the complete system or product can now be developed.
Spiral Model
The spiral model is a risk-driven software development process model. Based on the unique risk patterns of a given project, the spiral model guides a team to adopt elements of one or more process models, such as incremental, waterfall, or evolutionary prototyping.
2.4: RAD & Agile Models
RAD Model
Rapid application development (RAD) is a software development methodology that uses minimal planning in favor of rapid prototyping. A prototype is a working model that is functionally equivalent to a component of the product.
Agile Model
Agile software development refers to a group of software development methodologies based on iterative development, where requirements and solutions evolve through collaboration between self-organizing cross-functional teams.
Scrum
Scrum is an agile framework for managing knowledge work, with an emphasis on software development.

