DEV Community

Cover image for SDLC Methods and Their Advantages & Disadvantages.
Hansika Herath
Hansika Herath

Posted on

SDLC Methods and Their Advantages & Disadvantages.

What is SDLC?

SDLC Stands for Software Development Life Cycle. SDLC is a process used by the software industry to design, develop, and maintain the quality of software. This framework defining tasks containing 6 steps. The SDLC aims to produce high-quality software that reaches customer expectations, with completion within times and lower cost.

The following shows a graphical representation of the stages of SDLC.


Let's look at SDLS Methodologies

⚫Waterfall Model

waterfall model
This is a linear sequential flow. Progress is seen as flowing steadily downwards (like a waterfall) through the phases of software implementation. This means any phase in the development process begins only if the previous phase is complete. The waterfall approach is most widely known that was used for software development.

Alt Text

⚫V-Shaped Model

v-shaoed model

Mainly V-shaped model planning the early test. In this model, Software requirements clearly defined and known.
Software development technologies and tools are also well-known.

Alt Text

⚫Prototyping Model

Prototype model

This method is to create prototypes of software applications which can occur in software development and It used to visualize some component of the software to limit the gap of misunderstanding the customer requirements. It has some types, such as:
Throwaway prototyping
Evolutionary prototyping
Incremental prototyping
Extreme prototyping

Alt Text

⚫Spiral Model

Spiral model

The spiral model is used for large, expensive, and complicated projects. This model uses many of the same phases as the waterfall model shown in the figure.

Alt Text

⚫Iterative and Incremental Model

Iterative model

This model starts with initial planning and ends with deployment with the cyclic interactions in between. Basically, this method is to develop a system through repeated cycles (iterative) and in smaller portions at a time (incremental), From that software developers can take advantage of what was learned during the development earlier.

Alt Text

⚫Agile Model

Alt Text

This is based on iterative and incremental development. It can be used with any type of project. Also, we can use it when the customer needs to have some functional requirements and the requirements are not clear enough.

Alt Text

Discussion (0)