Software Development Life Cycle (SDLC) - Explained with
Examples
What is SDLC?
Software Development Life Cycle (SDLC) is a step-by-step process used by software developers to design,
develop, test, and deploy software efficiently and with high quality. It ensures that the software is delivered
on time, within budget, and meets the user's requirements.
The 6 Common Stages of SDLC (P.A.D.D.T.M)
Planning
Goal: Understand what needs to be built and why.
Activities:
◦ Identify the problem
◦ Set goals
◦ Estimate cost and time
◦ Assign teams
Example: A school wants a student attendance system. In this phase, the team discusses:
◦ Who will use it (teachers, admin)
◦ What features are needed (mark attendance, view reports)
◦ Timeline and budget
Analysis
Goal: Gather detailed requirements from stakeholders.
Activities:
◦ Interview users
◦ List features and functions
◦ Create Software Requirement Specification (SRS)
Example: Developer talks to teachers and finds out they need:
◦ Manual and automatic attendance options
◦ Alerts for absentees
◦ Admin panel for reports
Design
Goal: Plan how the system will work.
Activities:
◦ Create UI/UX wireframes
◦ Choose programming language and database
◦ Design data flow diagrams and architecture
Example: Team designs:
◦ Login screen for teachers
◦ Dashboard for attendance
◦ ER diagram for database (Students, Classes, Attendance table)
Development
Goal: Build the actual software.
Activities:
◦ Write the code
◦ Build database and interfaces
◦ Follow coding standards
Example: Developers use Python and MySQL to build the backend, and HTML/CSS for the front end.
Testing
Goal: Check if the software works correctly.
Activities:
◦ Unit Testing (individual features)
◦ Integration Testing (features working together)
◦ Fixing bugs
Example: Tester checks:
◦ Can a teacher log in?
◦ Can attendance be marked?
◦ Do reports generate correctly?
Maintenance
Goal: Keep the software working after release.
Activities:
◦ Fix new bugs
◦ Add new features
◦ Provide support
Example: After 2 months, the school requests a new feature to send SMS alerts to parents for
absentees. The team adds that in this phase.
Real-World Analogy: Building a House
SDLC Stage House Building Equivalent
Planning Deciding to build a house
Analysis Asking what rooms, style, etc.
Design Creating blueprints
Development Constructing the house
Testing Inspecting plumbing, wiring
Maintenance Fixing leaks, adding rooms