DEV Community

Cover image for Detailing SDLC
Annapoorani Kadhiravan
Annapoorani Kadhiravan

Posted on

Detailing SDLC

Have you ever wondered how applications like Amazon, WhatsApp, Instagram, Netflix, Google Pay, or your college management portal are developed?

Do developers simply start writing code?

Absolutely not!

Before even a single line of code is written, multiple teams collaborate to understand customer requirements, estimate costs, design interfaces, test functionality, deploy applications, and maintain them after release.

This entire journey is called the Software Development Life Cycle (SDLC).


๐Ÿ“– A Short Story Before We Begin

Imagine your family decides to build a dream home.

Would you immediately start buying cement and bricks?

Of course not.

Instead, your family would first discuss:

  • How many rooms are needed?
  • What is the budget?
  • Which location should be chosen?
  • Who will design the house?
  • How long will construction take?
  • Who will inspect the quality?

Only after answering these questions does construction begin.

Developing software works exactly the same way.

Whether you're building:

  • A School Website
  • An Online Shopping Platform
  • A Banking Application
  • A Hospital Management System
  • A Food Delivery App
  • A Multiplayer Game

Every successful software product follows a structured process known as the Software Development Life Cycle (SDLC).


๐ŸŽฏ What is SDLC?

Software Development Life Cycle (SDLC) is a structured process used to design, develop, test, deploy, and maintain software in an organized and efficient manner.

Instead of randomly writing code, SDLC provides a roadmap that answers four important questions:

  • What should be built?
  • Who will build it?
  • How will it be developed?
  • When should each activity happen?

Think of SDLC as the blueprint that guides a software project from idea to reality.


๐Ÿ’ก Why Do We Need SDLC?

Without SDLC:

โŒ Developers start coding without understanding requirements.

โŒ Designers create interfaces the client never asked for.

โŒ Testers don't know what to validate.

โŒ Deadlines are missed.

โŒ Budgets increase.

โŒ Customers become dissatisfied.

With SDLC:

โœ… Everyone knows their role.

โœ… Requirements are documented.

โœ… Resources are planned.

โœ… Risks are minimized.

โœ… Quality improves.

โœ… Projects are delivered on time.


๐ŸŒ Real-World Project Used Throughout This Blog

Let's assume a school approaches an IT company with the following requirement:

"We need a Smart School Management System."

The system should include:

  • Student Login
  • Teacher Login
  • Parent Portal
  • Attendance
  • Fee Payment
  • Homework
  • Online Classes
  • Results
  • Notifications

We'll use this project to understand every SDLC phase.


๐Ÿงญ SDLC Workflow

๐Ÿ’ก Idea
   โ”‚
   โ–ผ
๐Ÿ“‹ Requirement Gathering
   โ”‚
   โ–ผ
๐Ÿ“… Planning
   โ”‚
   โ–ผ
๐Ÿ” Analysis
   โ”‚
   โ–ผ
๐ŸŽจ Designing
   โ”‚
   โ–ผ
๐Ÿ’ป Development
   โ”‚
   โ–ผ
๐Ÿงช Testing
   โ”‚
   โ–ผ
๐Ÿš€ Deployment
   โ”‚
   โ–ผ
๐Ÿ›  Maintenance
Enter fullscreen mode Exit fullscreen mode


1๏ธโƒฃ Requirement Gathering

๐ŸŽฏ Goal

Understand exactly what the customer wants.

No coding happens here.

Instead, this phase focuses entirely on communication.

Golden Rule: Build the right product before building the product right.

๐Ÿ‘จโ€๐Ÿ’ผ Who is Responsible?

  • Business Analyst (BA)
  • Client
  • Product Owner (sometimes)
  • Project Manager (sometimes)

๐Ÿง  Skills Required for a Business Analyst

  • Excellent communication
  • Business knowledge
  • Analytical thinking
  • Convincing skills
  • Confidence during client meetings
  • Documentation skills

๐Ÿ—ฃ Example Client Conversation

Instead of accepting:

"Build a School Website."

The Business Analyst asks:

School Details

  • School Name?
  • Existing Website?
  • Logo?
  • Brand Colors?

Student Module

  • Student Login?
  • Attendance?
  • Homework?
  • Online Classes?

Teacher Module

  • Upload Assignments?
  • Manage Attendance?
  • Publish Results?

Parent Module

  • Online Fee Payment?
  • Notifications?
  • Student Progress Reports?

Technical Questions

  • Website?
  • Mobile App?
  • Android?
  • iOS?
  • OTP Login?
  • Google Login?
  • Payment Gateway?

The better the questions, the better the software.


๐Ÿ“„ Outcome

The Business Analyst prepares the Business Requirement Specification (BRS) document.

A BRS contains only business requirements.

Example:

  • Students should log in.
  • Teachers should upload attendance.
  • Parents should pay fees online.

Notice that technologies are not mentioned.


2๏ธโƒฃ Planning

Planning answers four simple questions:

  • What?
  • When?
  • How?
  • Who?

๐Ÿ‘ฅ Who is Involved?

  • Project Manager
  • Scrum Master
  • Team Leads
  • Testing Manager

Planning for Development and Testing usually happens separately.

๐Ÿ“Œ Resource Management

The company estimates:

  • Budget
  • Timeline
  • Team Size
  • Hardware
  • Software
  • Cloud Infrastructure
  • Training
  • Licenses

Example Team:

  • 2 Frontend Developers
  • 2 Backend Developers
  • 2 Test Engineers
  • 1 UI/UX Designer
  • 1 DevOps Engineer

3๏ธโƒฃ Analysis

Now the technical team studies every requirement.

Questions include:

  • Can this feature be built?
  • Which technologies should be used?
  • Are third-party APIs required?
  • What risks exist?

๐Ÿ“„ BRS vs FRS

BRS FRS
Business Requirements Business + Technical Requirements
Written by Business Analyst Prepared by Technical Team
Client-friendly Developer-friendly
No technology details Includes technologies and implementation

Example FRS:

Frontend: React

Backend: Node.js

Database: MySQL

Authentication: JWT

Cloud: AWS


4๏ธโƒฃ Designing

Now designers convert ideas into visuals.

๐Ÿ‘ฅ Teams

  • UI Designer
  • UX Designer
  • Graphic Designer

Deliverables include:

  • Wireframes
  • Mockups
  • Prototypes
  • Logos
  • Icons
  • Color Themes

Only after approval does development begin.


5๏ธโƒฃ Development

Now coding begins.

๐Ÿ‘จโ€๐Ÿ’ป Team

  • Frontend Developers
  • Backend Developers
  • Database Developers
  • Architects

Developers build:

  • User Interface
  • APIs
  • Business Logic
  • Database

Before sharing code, developers perform Unit Testing.

Finally, the code is pushed to Git.


6๏ธโƒฃ Testing

Testing begins much earlier than many beginners think.

The QA team studies the requirements, prepares test cases, and validates every feature.

๐Ÿงช STLC

Requirement Analysis

โ†“

Test Case Preparation

โ†“

Environment Setup

โ†“

Execution

โ†“

Bug Reporting

โ†“

Regression Testing

โ†“

Closure



Popular Testing Tools

Tool Purpose
Selenium Web Automation
Playwright Cross-Browser Automation
Cypress Modern Frontend Testing
Cucumber Test Driven Development (BDD)

๐Ÿž Bug vs Defect

Bug

A coding mistake identified during testing.

Defect

Any mismatch between expected and actual behavior.



๐Ÿ“Œ Important Fact

There is no such thing as 100% bug-free software.

The goal is to reduce defects to an acceptable level before release.


7๏ธโƒฃ Deployment

After successful testing, the application is deployed to production.

๐Ÿ‘ฅ Team

  • DevOps Engineers
  • Operations Team

Popular Tools

  • Git
  • Jenkins
  • Maven
  • Docker
  • Kubernetes
  • CI/CD Pipelines


8๏ธโƒฃ Maintenance

Deployment is not the end.

Users continue requesting:

  • Bug Fixes
  • Security Updates
  • Performance Improvements
  • New Features

Critical bugs are always fixed before adding new features.



๐Ÿ“š SDLC Models You Must Know

  • Waterfall Model
  • V-Model
  • Agile Model
  • Spiral Model
  • Prototype Model
  • RAD (Rapid Application Development)
  • Iterative Model

Each model is suitable for different types of projects based on requirements, risk, and customer involvement.


๐Ÿ’ผ Certifications That Can Help

Project Management

  • PRINCE2
  • PMP
  • ITIL

Software Testing

  • ISTQB

These certifications are especially useful as you gain industry experience.


Interview Tips

When asked to explain SDLC:

Don't just list the phases.

For every phase, explain:

  • What happens?
  • Why is it needed?
  • Who performs it?
  • How is it carried out?
  • When does it begin?
  • What is the outcome?

Support your explanation with a single real-world example from start to finish. This demonstrates both conceptual clarity and practical understanding.


References
https://www.geeksforgeeks.org/software-engineering/software-development-life-cycle-sdlc/
https://aws.amazon.com/what-is/sdlc/
https://www.ibm.com/think/topics/sdlc
https://www.salesforce.com/in/platform/software-development/lifecycle/
https://www.geeksforgeeks.org/software-testing/software-testing-life-cycle-stlc/
https://medium.com/@jacobmilller65/stlc-explained-every-phase-of-the-software-testing-life-cycle-a36fd79b3651
https://miro.medium.com/1*aEK90rtoC5KJdocGQlEHZA.gif
https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcR88TbGCQDYNw4WCbAK9OK-_PH9JpPWKbTwqIW-ABLP9I1cbvU3SuM7h5yx&s=10
https://cdn.prod.website-files.com/610bb663a35dd3364ddbf08c/6156cd5701416e208d2c2392_blc-short-min.png
https://dz2cdn1.dzone.com/storage/temp/16594280-image2.jpg
https://import.pvs-studio.com/docx/terminology/SDLC_TERM/image1.png?ver=07-03-2026-10-35-21

Top comments (0)