What Is SDLC?: SDLC Is A Systematic Process For Building Software That Ensures The Quality
What Is SDLC?: SDLC Is A Systematic Process For Building Software That Ensures The Quality
What Is SDLC?: SDLC Is A Systematic Process For Building Software That Ensures The Quality
SDLC is a systematic process for building software that ensures the quality
and correctness of the software built. SDLC process aims to produce high-
quality software that meets customer expectations. The system
development should be complete in the pre-defined time frame and cost.
SDLC consists of a detailed plan which explains how to plan, build, and
maintain specific software. Every phase of the SDLC life Cycle has its own
process and deliverables that feed into the next phase. SDLC stands
for Software Development Life Cycle and is also referred to as the
Application Development life-cycle.
In this Software Development Life Cycle tutorial, you will learn
Here, are prime reasons why SDLC is important for developing a software
system.
SDLC Phases
The entire SDLC process divided into the following SDLC steps:
SDLC Phases
In this tutorial, I have explained all these Software Development Life Cycle
Phases
Phase 1: Requirement collection and analysis
The requirement is the first stage in the SDLC process. It is conducted by
the senior team members with inputs from all the stakeholders and domain
experts in the industry. Planning for the quality assurance requirements
and recognization of the risks involved is also done at this stage.
This stage gives a clearer picture of the scope of the entire project and the
anticipated issues, opportunities, and directives which triggered the project.
Phase 3: Design
In this third phase, the system and software design documents are
prepared as per the requirement specification document. This helps define
overall system architecture.
This design phase serves as input for the next phase of the model.
Phase 4: Coding
Once the system design phase is over, the next phase is coding. In this
phase, developers start build the entire system by writing code using the
chosen programming language. In the coding phase, tasks are divided into
units or modules and assigned to the various developers. It is the longest
phase of the Software Development Life Cycle process.
Phase 5: Testing
Once the software is complete, and it is deployed in the testing
environment. The testing team starts testing the functionality of the entire
system. This is done to verify that the entire application works according to
the customer requirement.
During this phase, QA and testing team may find some bugs/defects which
they communicate to developers. The development team fixes the bug and
send back to QA for a re-test. This process continues until the software is
bug-free, stable, and working according to the business needs of that
system.
Phase 6: Installation/Deployment
Once the software testing phase is over and no bugs or errors left in the
system then the final deployment process starts. Based on the feedback
given by the project manager, the final software is released and checked
for deployment issues if any.
Phase 7: Maintenance
Once the system is deployed, and customers start using the developed
system, following 3 activities occur
Bug fixing – bugs are reported because of some scenarios which are
not tested at all
Upgrade – Upgrading the application to the newer versions of the
Software
Enhancement – Adding some new features into the existing software
The main focus of this SDLC phase is to ensure that needs continue to be
met and that the system continues to perform as per the specification
mentioned in the first phase.
V-Model in SDLC
In this type of SDLC model testing and the development, the phase is
planned in parallel. So, there are verification phases of SDLC on the side
and the validation phase on the other side. V-Model joins by Coding phase.
Agile Model in SDLC
Agile methodology is a practice which promotes continue interaction of
development and testing during the SDLC process of any project. In the
Agile method, the entire project is divided into small incremental builds. All
of these builds are provided in iterations, and each iteration lasts from one
to three weeks.
Spiral Model
The spiral model is a risk-driven process model. This SDLC testing model
helps the team to adopt elements of one or more process models like a
waterfall, incremental, waterfall, etc.
This model adopts the best features of the prototyping model and the
waterfall model. The spiral methodology is a combination of rapid
prototyping and concurrency in design and development activities.
This model works best for small projects with smaller size development
team which are working together. It is also useful for academic software
development projects. It is an ideal model where requirements is either
unknown or final release date is not given.
Summary
The Software Development Life Cycle (SDLC) is a systematic
process for building software that ensures the quality and correctness
of the software built
The full form SDLC is Software Development Life Cycle or Systems
Development Life Cycle.
SDLC in software engineering provides a framework for a standard
set of activities and deliverables
Seven different SDLC stages are 1) Requirement collection and
analysis 2) Feasibility study: 3) Design 4) Coding 5) Testing: 6)
Installation/Deployment and 7) Maintenance
The senior team members conduct the requirement analysis phase
Feasibility Study stage includes everything which should be designed
and developed during the project life cycle
In the Design phase, the system and software design documents are
prepared as per the requirement specification document
In the coding phase, developers start build the entire system by
writing code using the chosen programming language
Testing is the next phase which is conducted to verify that the entire
application works according to the customer requirement.
Installation and deployment face begins when the software
testing phase is over, and no bugs or errors left in the system
Bug fixing, upgrade, and engagement actions covered in the
maintenance face
Waterfall, Incremental, Agile, V model, Spiral, Big Bang are some of
the popular SDLC models in software engineering
SDLC in software testing consists of a detailed plan which explains
how to plan, build, and maintain specific software