Software
Development Life
Cycle
What is SDLC
Software Development Life Cycle
A Framework that describes the
activities performed at each stage
of a software development project
1.
Preliminary
Investigatio
n
7.
2.
System
Feasibility
Maintenanc
Study
e
SDLC
6. Phas 3.
System
Implementati
es System
on Analysis
5.
4.
System
Coding and System
Testing Design
Phase-I
Preliminary Investigation
Phase-I Preliminary
Tasks
What is the problem
Determine if a new system is needed
Whether an alternative system will
solve the problem
Results
Needfor improving the existing
system is recognized
Possible
Impossible
Phase-II
Feasibility Study
Phase-II
Feasibility Study
Tasks
Evaluate alternatives based upon
Economic Feasibility-Do benefits justify costs-
Net Present Value
Technical Feasibility-Is reliable technology
and training available
Operational Feasibility-Will the management
and users support it.
Phase-3
System Analysis
Tasks
Detailedstudy of various operations performed by
the system
Studying the existing organizational history,
structure, and culture
Define boundaries of the candidate
system/software.
Data collection or data gathering
Phase-3
System Analysis
Tools
Data flow diagrams
Interviews
Onsite observations
Questionnaires
Data dictionaries
Phase-3
System Analysis
Results
SRS(Software Requirement Specification)
document is finalised which includes:
Functional and non-functional
requirements
What the system will do and what it is not
expected to do
Information about other systems with
which system must interface
Phase-4
System Design
Most creative and challenging phase
Translates
the performance requirements into
design specifications
Tasks
How should the problem be solved
Organisational and job designs prepared
Information processing systems design
Phase-4
System Design
Design of the user interface
Physical design
Input data and master files are
designed
Output formats are designed
Phase-4
System Design
Results
Detailed System Document
Procedural flowcharts
Record layouts
Report layouts
Workable plan for implementing candidate
system
Phase-5
System Coding and Testing
Phase-5
System Coding and Testing
Build the system to the design specifications
Develop the software
Acquire the hardware
Test the system for acceptance
Program Testing (Unit testing)
System Testing
User Acceptance Testing
Quality Assurance Testing
Phase-6
System Implementation
Phase-6
System Implementation
Convert from old system to new system
Compile final documentation
Evaluate the new system
Phase-6
System Implementation
Types of Conversion
Direct/plunge/crash approach-entire new
system completely replaces entire old
system, in one step
Parallel approach-both systems are operated
side by side until the new system proves
itself
Pilot approach-launched new system for only
one group within the business
Phased/incremental approach-individual
parts of new system are gradually phased-in
Phase-7
System Maintenance
Keeping everything running
Phase-7
System Maintenance
Types of Maintenance
Correction of new bugs found (corrective)
System adjustments to environmental
changes and users’ changing needs
(adaptive)
Enhancing the performance, changes to use
better techniques when they become
available (perfective)
Thank you