Software Development Life Cycle (SDLC) : Asma Sajid
Software Development Life Cycle (SDLC) : Asma Sajid
SOFTWARE DEVELOPMENT
LIFE CYCLE (SDLC)
LECTURE 3
Asma Sajid
Asma Sajid; College of Computer Science & Information Studies (c2sis), GCUF. 2
SDLC Introduction
• SDLC can be defined as;
A framework that describes the activities performed at each stage of a
software development project.
• Consists of multiple phases. Each phase has set of
activities to be performed under given constraints and
produce an output.
• Completion of each phase completes some of
milestones of project.
Asma Sajid; College of Computer Science & Information Studies (c2sis), GCUF. 4
3. Software validation
The software must be validated to ensure that it does what the customer
wants.
4. Software evolution
The software must evolve to meet changing customer needs.
Asma Sajid; College of Computer Science & Information Studies (c2sis), GCUF. 5
SDLC Phases
Preliminary
Investigation
System
Maintenance
Analysis
System
System Design
Implementation
System
Development
Phases of the System Development
Life Cycle (SDLC)
1. Preliminary Investigation
Assesses feasibility and practicality of system
This phase is also called system initiation phase.
2. System Analysis
1. Study old system and identify new requirements
2. Defines system from user's view
3. System Design
1. Design new/alternative system
2. Defines system from technical view
Six Phases of the SDLC
4. System Development
New hardware and software is acquired, developed, and tested.
Activities of coding and some types of testing is done in it.
5. System Implementation
1. System installation on client machines.
2. Training of users is also part of this phase.
Documentation Produced
• Complete description of current system and
its problems
• Requirements for new system including:
Subject
Scope Software Requirements
Specification (SRS)
Objectives Document
Benefits
• Possible development schedule
Phase 3: System Design
• Uses specifications from the systems
analysis to design alternative systems
• Evaluate alternatives based upon:
Economic feasibility - Do benefits justify costs?
Documentation Produced
• System Design Report
Describe Alternatives including:
Inputs/Outputs
Processing
Storage and Backup
Recommend Top Alternative based upon:
2. User Training
Ease into system, make them comfortable, and gain their support
Most commonly ignored.
Can be commenced before equipment delivery
Outside trainers sometimes used
Phase 6: Operations & Maintenance
Types of changes:
Physical repair of the system
Correction of new bugs found (corrective)
System adjustments to environmental changes
Adjustments for users’ changing needs (adaptive)
Changes to user better techniques when they become available
(perfective)
Evaluation Methods
Systems audit - performance compared to original specifications
Summary
Phase Tasks Output Artifacts
Preliminary 1. Define the problem
2. Determine what information is needed by whom, • Short Report
investigation when, where and why. • Feasibility Report
(Input Document 3. Suggest alternative solutions
= SOW)
1. Detailed study of the existing system to determine
what the new system should do.
2. Examine and analyze:org chart, SOPs, information • SRS Document
System flows, reasons for any inefficiencies. • Possible development schedule
Analysis
Tools used: Checklists, Top-down analysis, Grid,
System flowcharts
Maintenance Physical, corrective & adaptive repair of the system • Audit report