0% found this document useful (0 votes)
31 views24 pages

Qualpro - Lesson 2-2

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views24 pages

Qualpro - Lesson 2-2

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 24

SOFTWARE

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

Development Approach Cyclical and Incremental Sequential and Linear

Planning, Design, Coding, Requirements, Design,


Phases Testing, Evaluation Implementation, Testing,
(Repeated Iteratively) Deployment

High – Embraces Changes Low – Changes are Difficult


Flexibility and Enhancements to Accommodate After
Throughout Development Initial Phases

Proactive – Risks Addressed Reactive – Risks Addressed


Risk Management
Throughout Iterations in a Linear Manner

QUALITY PROCESS 14
Iterative SDLC models vs Waterfall SDLC
Models
Aspect Iterative SDLC Models Waterfall SDLC Models

Gradual Releases, Quicker Single Release at the End,


Time-to-Market Time-to-Market for Potentially Longer Time-to-
Incremental Features Market

Continuous User Feedback and Limited User Involvement until


User Involvement
Involvement Throughout the Testing Phase

Testing Conducted After the


Continuous Testing Throughout
Testing Completion of the
Iterations
Implementation

Highly Adaptable to Changing Less Adaptable, Changes May


Adaptability
Requirements Be Costly and Time-Consuming

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)

Flexibility Low High High High Moderate

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

Adaptability Low High High High Moderate

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

Requirements Stable Can evolve Can evolve Likely to change Moderate


Stability frequently stability

Client Limited Continuous Periodic High and Periodic


Involvement Continuous

Budget High Moderate Variable, Suitable Moderate


Constraints Predictability, Predictability, Some Flexibility for Changing Predictability,
Fixed Budget Some Flexibility Budgets Fixed Budget

QUALITY PROCESS 21
When to use SDLC Models
Aspect Waterfall Iterative Spiral Agile V-Models

Risk Tolerance Low Moderate High Moderate Moderate

Time-to-Market Moderate Faster Variable Faster Moderate

Documentation Extensive Moderate Detailed Minimal Moderate


Emphasis Documentation Documentation Documentation Documentation Documentation

Sequential Continuous Continuous Testing


Continuous and
Testing Testing after Testing Testing Conducted After
Collaborative
Approach Development Throughout Throughout the the Completion
Testing
Phases Iterations Spiral of Phases

Change Limited Adaptive to Highly Adaptive Moderate


High Flexibility
Management Flexibility Changes to Changes Flexibility

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

You might also like