SOFTWARE DEVELOPMENT
LIFE CYCLE
“Basics for beginners. Fundamentals for
everyone”
Overview
Overview of the SDLC basics.
Contents
Software Development Life Cycle
Requirement Analysis
Design
Development
Testing
Maintenance
Introduction
Fundamental concept in Software
Engineering is the Software Life Cycle.
Also called Software Development
Process.
What is software life cycle?
It is a process used by the software industry
to design, develop and test high quality
software's.
Just like human’s life cycle
Software Development Life Cycle
(SDLC)
The SDLC aims to produce a high-quality
software that meets customer expectations,
reaches completion within times and cost
estimates.
Phases of SDLC
Requirement Analysis
Define the user
Define the needs
Define the
requirements
Requirement Analysis
Requirement Analysis
User Requirements
Easy to use.
Quality Product.
More Safe & Secure product.
Software Requirements
Advance Tools & Technique
Design
The output of SRS is the input of design phase.
With described in detail, including screen layouts,
process diagrams and other documentation.
Two types of design -
High Level Design (HLD)
Low Level Design (LLD)
High Level Design (HLD)
1. List of modules and a overall idea of module.
2. Overall architecture diagrams along with
technology details.
Low Level Design (LLD)
Describes each and every module in an
elaborate manner.
Complete input and outputs for a module.
Development
Developers use the LLD document and write the
code in the programming language specified.
Example:
C,C++,Java
Testing
The testing process involves development of a
Testplan,
Executing the plan and
Documenting the test results.
Maintenance
After the software is released and the client
starts using the software, maintenance phase
is started.
Three things happen –
Bug fixing,
Upgrade,
Enhancement
Software life cycle models
Waterfall Model
Iterative Model
Spiral Model
V-Model
The other related methodologies are Agile Model,
Rapid Application Development (RAD) and
Prototyping Models.