COMPUTER SCIENCE F5
MODULE 1: PROBLEM SOLVING
AND CODING 3
Unit 5: Developing a
system
Lesson 1: Understanding the
System Development Life Cycle
(SDLC) and Key Components
PRESENTED BY MR. TCHOUFOR KENNED(PLET COMPUTER SCIENCE)
LEARNING OBJECTIVES
Understand the phases of the System
Development Life Cycle (SDLC).
Identify the five core functions of a system.
Describe the key components of a system and
how they interrelate.
Explain the purpose and benefits of prototyping.
Outline the importance and types of
documentation.
List key hardware and software requirements.
PRESENTATION OF CONCEPTS
What is the SDLC?
SDLC is a structured process
used by software development
teams to design, develop, test,
deploy and maintain software
systems.
It ensures that systems meet
user requirements on time,
within budget, and reliable.
PRESENTATION OF CONCEPTS
SDLC Stage 1: Planning
Purpose: Define the scope,resources, schedule and
feasibility of the project.
Key Activities:
Feasibility study(technical,
economic,operational)
Resource allocation(budget, team,tools)
Risk assessment and project scheduling)
Output: Project plan, feasibility report
PRESENTATION OF CONCEPTS
SDLC Stage 2: Analysis
Purpose: Understand what the user needs and document
it clearly
Key Activities:
Gather requirements(interviews,surveys,observations,
documents)
Analyse requirements for completeness and
consistency
Document requirements formally
Output: Software requirement Specification(SRS) document
PRESENTATION OF CONCEPTS
SDLC Stage 3: Design
Purpose: Translate requirements into a structured system
architecture
Key Activities:
Design user interfaces (UI), databases, and processes.
Create diagrams (e.g., Data Flow Diagrams, ER
Diagrams).
Identify hardware/software needs.
Output: System Design Specification (SDS).
PRESENTATION OF CONCEPTS
SDLC Stage 4: construction & implementation (coding)
Purpose: Build the system by writing code
Key Activities:
Developers code modules according to
design
Follow coding standart and best practices
Perform unit testing on individual modules
Output: Source code/executable program
PRESENTATION OF CONCEPTS
SDLC Stage 5:Testing
Purpose: Ensures the software works correctly and
meets requirements
Key Activities:
Conduct various
tests(unit,integration,system,acceptance)
Identify and fix bugs
Verify functionality, performance,security
Output: Test reports, verified software system
PRESENTATION OF CONCEPTS
SDLC Stage 6:Deployment
Purpose: Deliver the system to users in the
real environment
Key Activities:
Install the system
User training and documentation
Rollout strategies
Output: Operational software
PRESENTATION OF CONCEPTS
SDLC Stage 7:Maintenance
Purpose: Keep the system running smoothly and up-to-date
Key Activities:
Fix issues(corrective maintenance)
Add new features(adaptive maintenance)
Optimize performance and update security patches
Output: Updated and improved software system
Types of Maintenance:
Corrective: Fixing bugs.
Adaptive: Adapting to new requirements (e.g., new laws).
Preventive: Improving performance to prevent future issues.
PRESENTATION OF CONCEPTS
SDLC Stage 7:Maintenance
Purpose: Keep the system running smoothly and up-to-date
Key Activities:
Fix issues(corrective maintenance)
Add new features(adaptive maintenance)
Optimize performance and update security patches
Output: Updated and improved software system
Types of Maintenance:
Corrective: Fixing bugs.
Adaptive: Adapting to new requirements (e.g., new laws).
Preventive: Improving performance to prevent future issues.
PRESENTATION OF CONCEPTS
After the coding (implementation) phase,
organizations have to decide how to
introduce the new system into the real
working environment. These are called
System Implementation Strategies (or
Deployment Strategies).
Here are the main implementation
strategies:
PRESENTATION OF CONCEPTS
1. Direct (Big Bang) Implementation
Description: The old system is stopped, and the new system is
introduced immediately.
Advantages:
Quick transition.
Less costly since only one system runs.
Disadvantages:
High risk (if the new system fails, the organization may stop
functioning).
Best for: Small systems with low complexity or where interruption
is acceptable.
PRESENTATION OF CONCEPTS
2. Parallel Implementation
Description: The old system and new system run side by side for
a period. Users compare results until the new system is trusted,
then the old system is phased out.
Advantages:
Safer (if the new system fails, the old one is still available).
Users gain confidence gradually.
Disadvantages:
Expensive (running two systems at the same time).
More workload for staff.
Best for: Critical systems where failure would be costly (e.g.,
banking, hospitals).
PRESENTATION OF CONCEPTS
3. Pilot Implementation
Description: The new system is implemented in a small part of
the organization (e.g., one branch, one department) before full
rollout.
Advantages:
Problems can be detected early with minimal impact.
Easier to train a smaller group first.
Disadvantages:
Delays full benefits of the system.
Not suitable for systems that require organization-wide
integration immediately.
Best for: Large organizations with many branches or
PRESENTATION OF CONCEPTS
4. Phased (Incremental) Implementation
Description: The system is introduced in stages or modules. Each
part is deployed and tested before moving to the next.
Advantages:
Problems can be fixed at each stage without affecting the whole
system.
Users adapt gradually.
Disadvantages:
Takes longer to fully implement.
Complex to manage different versions running simultaneously.
Best for: Large, complex systems with many modules (e.g., ERP
systems).
PRESENTATION OF CONCEPTS
Summary
Strategy Description Advantage Disadvantage Best For
Old system stopped,
Direct new one started Fast, cheap Very risky Small systems
immediately
Both old & new run Expensive,
Parallel Safe, reliable Critical systems
together workload
Implemented in small Detect issues Large
Pilot Slower rollout
section first early organizations
Implemented in Low risk, Longer time, Large complex
Phased
stages/modules gradual change complex systems
PRESENTATION OF CONCEPTS
Components of a System
Hardware: Physical devices
(computers, servers).
Software: Programs and
applications (OS, DBMS).
People: Users, IT staff,
managers.
Data: Raw facts processed by
the system.
Processes: Rules and
procedures governing
operation.
PRESENTATION OF CONCEPTS
What is Prototyping ?
Definition: An iterative approach to build a
preliminary working model (a prototype).
Process: Determine needs -> Build
prototype -> evaluate prototype ->
Repeat.
Benefits:
Clarifies unclear requirements.
Reduces risk and cost of late changes.
Increases user involvement and
satisfaction.