System Development Life Cycle (SDLC) - Full
Notes
The System Development Life Cycle (SDLC) is a structured process used for developing
information systems. It provides a step-by-step approach to ensure that systems are well-planned,
designed, tested, and implemented effectively. These notes cover all the major phases, models,
advantages, disadvantages, and examples to give students a complete understanding of SDLC.
Phases of the SDLC
1. Planning
This is the first and most critical phase. It defines the project scope, objectives, resources,
schedule, and feasibility.
Example: Deciding whether to build a new student registration system.
2. System Analysis
In this phase, the current system is studied and requirements are gathered from users.
Tools used: Interviews, Questionnaires, Observation, Document review.
Example: Collecting requirements for an online banking system from customers and staff.
3. System Design
This phase focuses on how the new system will work. It involves logical and physical design.
• Logical Design: Describes system processes and data flow.
• Physical Design: Specifies hardware, software, databases, and user interfaces.
Example: Designing input forms, database structures, and outputs for a payroll system.
4. System Development (Implementation/Coding)
This is where programmers write the code for the new system using suitable programming
languages and tools.
Example: Writing code for a hospital management system using Java or Python.
5. System Testing
The system is tested to ensure it meets requirements and is free of errors.
Types of testing: Unit testing, Integration testing, System testing, User acceptance testing.
Example: Testing an e-commerce platform before launch to ensure payments work correctly.
6. Deployment (Installation)
The system is installed and made available for users.
Example: Installing a school management system on all computers in a school.
7. Maintenance
This phase ensures that the system continues to work effectively after deployment. Updates, bug
fixes, and improvements are done.
Example: Regularly updating antivirus software in an organization.
SDLC Models
Waterfall Model
Linear approach where each phase must be completed before moving to the next. Easy to
understand but rigid.
Iterative Model
System is developed in cycles, with improvements made at each iteration.
Spiral Model
Focuses on risk analysis and iterative development. Best for large, risky projects.
V-Model
Each development stage is tested alongside. Known as the Verification and Validation model.
Agile Model
Emphasizes flexibility, teamwork, and customer feedback. Development is done in short sprints.
Advantages and Disadvantages of SDLC
Advantages Disadvantages
Provides a structured approach to development Can be time-consuming
Ensures user needs are met High cost in large projects
Improves project management and tracking Requires skilled personnel
Allows for quality assurance through testing Rigid models (like Waterfall) lack flexibility
Case Study Example: Online Library Management
System
A university decides to create an online library system.
• Planning: Define scope – students should borrow and return books online.
• Analysis: Collect requirements from students and staff.
• Design: Design database of books, user accounts, and borrowing records.
• Development: Code system using PHP and MySQL.
• Testing: Check if students can borrow and return books correctly.
• Deployment: Install system on the university server.
• Maintenance: Update system with new features like e-books.
Exercises and Discussion Questions
1. Define SDLC and explain why it is important in system development.
2. List and explain the seven phases of SDLC with examples.
3. Compare the Waterfall Model and Agile Model with their strengths and weaknesses.
4. Give three advantages and disadvantages of SDLC.
5. Draw and explain the V-Model of SDLC.
6. Using a hospital management system as an example, explain how each phase of SDLC would
be applied.