SOFTWARE DEVELOPMENT LIFE CYCLE METHODOLOGY

What is Software Development Life Cycle(SDLC) ?

Thilina Madushan
3 min readDec 26, 2020

SDLC is a process used by software developer for designing ,developing and test high quality software project in the industry. It is also called as Software Development Process. SDLC has the various stages like figure 1.

https://melsatar.blog/2012/03/15/software-development-life-cycle-models-and-methodologies/
figure 1

SDLC Methodology

Developer use SDLC methodology for get high quality software as quickly and cost-effectively as possible and also all methodology has advantages and disadvantage. Most suitable method depend on the project attribute.

In industry has more SDLC methodology and also use combined models ,

Examples …..

— — — — — Waterfall — — — — — -

is a waterfall SDLC model where the development process is like the flow, moving step by step through the phases of analysis, projection, realization, test, implementation and support. This SDLC model involves progressive execution of each step in full. This process is strictly documented and predefined with the expected functionality for each phase of this software development life cycle model.

ADVANTAGES

Simple to use and understand

Management simplicity thanks to its rigidity: every phase has a defined result and process review

Development stages go one by one

Perfect for the small or mid-sized projects where requirements are clear and not equivocal

Easy to determine the key points in the development cycle

Easy to classify and prioritize tasks

DISADVANTAGES

The software is ready only after the last stage is over

High risks and uncertainty

Not the best choice for complex and object-oriented projects

Inappropriate for the long-term projects

The progress of the stage is hard to measure while it is still in the development

Integration is done at the very end, which does not give the option of identifying the problem in advance

— — — — — Spiral — — — — — -

ADVANTAGES

Lifecycle is divided into small parts, and if the risk concentration is higher, the phase can be finished earlier to address the treats

The development process is precisely documented yet scalable to the changes

The scalability allows to make changes and add new functionality even at the relatively late stages

The earlier working prototype is done — sooner users can point out the flaws

DISADVANTAGES

Can be quite expensive

The risk control demands involvement of the highly-skilled professionals

Can be ineffective for the small projects

Big number of the intermediate stages requires excessive documentation

— — — — — V-shaped — — — — — -

ADVANTAGES

Every stage of V-shaped model has strict results so it’s easy to control

Testing and verification take place in the early stages

Good for the small projects, where requirements are static and clear

DISADVANTAGES

Lack of the flexibility

Bad choice for the small projects

Relatively big risks

— — — — — Agile — — — — — -

ADVANTAGES

Corrections of functional requirements are implemented into the development process to provide the competitiveness

Project is divided by short and transparent iterations

Risks are minimized thanks to the flexible change process

Fast release of the first product version

DISADVANTAGES

Difficulties with measuring the final cost because of permanent changes

The team should be highly professional and client-oriented

New requirements may conflict with the existing architecture

With all the corrections and changes there is possibility that the project will exceed expected time

--

--

Thilina Madushan

Software Engineering undergraduate at University of Kelaniya