Qualpro - Lesson 2-2
Qualpro - Lesson 2-2
DEVELOPMEN
T LIFE CYCLE
SDLC
• Software development life cycle (SDLC) is a structured process that is
used to design, develop, and test good-quality software.
• The goal of the SDLC life cycle model is to deliver high-quality,
maintainable software that meets the user’s requirements.
QUALITY PROCESS
Stages of the Software Development
Life Cycle
QUALITY PROCESS
Stages of the Software Development
Life Cycle
Stage-1: Planning and Requirement Analysis
Planning is a crucial step in everything, just as in software development. In this
same stage, requirement analysis is also performed by the developers of the
organization. This is attained from customer inputs, and sales department/market
surveys.
QUALITY PROCESS
Stages of the Software Development
Life
Stage-2: Defining Requirements
Cycle
In this stage, all the requirements for the target software are specified. These
requirements get approval from customers, market analysts, and stakeholders.
This is fulfilled by utilizing SRS (Software Requirement Specification). This is a
sort of document that specifies all those things that need to be defined and
created during the entire project cycle.
QUALITY PROCESS
Stages of the Software Development
Life Cycle
Stage-3: Designing Architecture
SRS is a reference for software designers to come up with the best architecture
for the software. Hence, with the requirements defined in SRS, multiple designs
for the product architecture are present in the Design Document Specification
(DDS).
QUALITY PROCESS
Stages of the Software Development
Life Cycle
Stage-4: Developing Product
At this stage, the fundamental development of the product starts. For this,
developers use a specific programming code as per the design in the DDS.
Hence, it is important for the coders to follow the protocols set by the association.
Conventional programming tools like compilers, interpreters, debuggers, etc. are
also put into use at this stage.
QUALITY PROCESS
Stages of the Software Development
Life Cycle
Stage-5: Product Testing and Integration
After the development of the product, testing of the software is necessary to
ensure its smooth execution. Although, minimal testing is conducted at every
stage of SDLC. Therefore, at this stage, all the probable flaws are tracked, fixed,
and retested. This ensures that the product confronts the quality requirements of
SRS.
QUALITY PROCESS
Stages of the Software Development
Life Cycle
Stage-6: Deployment and Maintenance of Products
After detailed testing, the conclusive product is released in phases as per the
organization’s strategy. Then it is tested in a real industrial environment. It is
important to ensure its smooth performance. If it performs well, the organization
sends out the product as a whole.
QUALITY PROCESS
Software Development Life Cycle
Models
• To this day, we have more than 50 recognized SDLC models in use. But
None of them is perfect, and each brings its favorable aspects and
disadvantages for a specific software development project or a team.
QUALITY PROCESS 10
Software Development Life
Cycle Models
1. Waterfall Model
It is the fundamental model of the software development life cycle. This is a very
simple model. The waterfall model is not in practice anymore, but it is the basis
for all other SDLC models.
QUALITY PROCESS 11
Software Development Life
Cycle Models
2. Agile Model
The agile model in SDLC was mainly designed to adapt to changing requests
quickly. The main goal of the Agile model is to facilitate quick project completion.
The agile model refers to a group of development processes.
QUALITY PROCESS 12
Software Development Life
Cycle Models
3. Iterative Model
In the Iterative model in SDLC, each cycle results in a semi-developed but
deployable version; with each cycle, some requirements are added to the
software, and the final cycle results in the software with the complete requirement
specification.
QUALITY PROCESS 13
Iterative SDLC models vs Waterfall SDLC
Models
Aspect Iterative SDLC Models Waterfall SDLC Models
QUALITY PROCESS 14
Iterative SDLC models vs Waterfall SDLC
Models
Aspect Iterative SDLC Models Waterfall SDLC Models
QUALITY PROCESS 15
Software Development Life
Cycle Models
4. Spiral Model
The spiral model in SDLC is one of the most crucial SDLC models that provides
support for risk handling. It has various spirals in its diagrammatic representation;
the number of spirals depends upon the type of project. Each loop in the spiral
structure indicates the Phases of the Spiral model.
QUALITY PROCESS 16
Software Development Life
Cycle Models
5. V-Shaped Model
The V-shaped model in SDLC is executed in a sequential manner in V-shape. Each stage
or phase of this model is integrated with a testing phase. After every development phase, a
testing phase is associated with it, and the next phase will start once the previous phase is
completed, i.e., development & testing. It is also known as the verification or validation
model.
QUALITY PROCESS 17
Software Development Life
Cycle Models
6. Big Bang Model
The Big Bang model in SDLC is a term used to describe an informal and
unstructured approach to software development, where there is no specific
planning, documentation, or well-defined phases.
QUALITY PROCESS 18
Comparison of SDLC Models
Aspect Waterfall Iterative Spiral Agile V-Models
Development
Sequential Iterative Iterative Iterative Iterative
Approach
Planning, Planning,
Planning, Risk Planning,
Design, Coding, Design,
Analysis, Sprint, Review,
Testing, Implementation
Phases Linear Engineering, Retrospective
Evaluation , Testing,
Testing (Iterative
(Repeated Deployment
(Cyclical) Cycles)
Iteratively) (Parallel)
Risk
Proactive risk Continuous risk Continuous risk management
Late mitigation,
Risk management, assessment, assessment, aligned with
Limited
Management Adaptability to Proactive Adaptability to phases,
adaptability
changes mitigation changes Moderate
adaptability
QUALITY PROCESS 19
Comparison of SDLC Models
Aspect Waterfall Iterative Spiral Agile V-Models
Time-to-Market Longer Faster Variable Faster Moderate
User
Limited Continuous Periodic Continuous Periodic
Involvement
Continuous Integrated
After Continuous and After
Testing throughout throughout the
Implementation c Implementation
iterations spiral
Easier to
Linear approach, Adaptive
Complexity manage, Cyclical Traceability
Limited approach to
Management Adaptability to approach, Risk-d helps manage c
adaptability changes
changes
QUALITY PROCESS 20
When to use SDLC Models
Aspect Waterfall Iterative Spiral Agile V-Models
Project Size Small to Medium Medium to Large Large Small to Medium Medium to Large
Project Low to Medium Medium to High High Low to High Medium to High
Complexity
QUALITY PROCESS 21
When to use SDLC Models
Aspect Waterfall Iterative Spiral Agile V-Models
QUALITY PROCESS 22
Conclusions
SDLC models provide a systematic approach to software development,
and the choice of a model depends on factors such as project size, complexity,
requirements volatility, and organizational preferences. It’s essential to understand
the characteristics and advantages of each m to make an informed decision based
on specific project needs. Additionally, many organizations may adopt a hybrid
approach, combining elements of different models to create a customized SDLC
that suits their unique requirements
QUALITY PROCESS 23
THANK
YOU