Day 2 ! Software Development Life Cycle (SDLC)


Welcome back Champs, This is day 2 of our DevOps learning in which we are going to understand key aspects of DevOps..
Software Development Life Cycle: It is a set of standards followed to ensure a structured approach to software development, irrespective of whether the organization is a startup, an MNC, or a unicorn.
The end goal of the SDLC is to deliver a high-quality product. By following its phases, organizations can meet customer expectations and deliver prompt applications. Without proper design and testing, a developed product would not be of high quality.
This consists of 5 Major Points which will be further classified into several categories:-
Purpose & Importance »
A. Standard Process/ Culture
B. Deliver High Quality Products
C. Meet Customer Expectations
D. Essential for All Roles( Dev, tester, DevOps)
E. Improve the organization’s efficiency
Key Phases ( Circular Approach)»
A. Planning & Requirements»
a. Gather Requirements
b. Input from Customer/Feedback
c. Product Owner/Business Analyst Role
d. Decide on Feature Viability
B. Defining Requirements»
a. Document Requirements
b. Software Requirement Specification( SRS) Document
C. Designing»
a. High-Level Design(HLD)»
$. Overall System Scalability
$. High Availability
$. Database Choices
$. Application Replicas
b. Low-Level Design(LLD)»
$. Specific Functions/Modules
$. API Calls/Arguments/Responses
$. Database Interactions(e.g., MySQL)
$. Senior Developer/ Architect Role
D. Building(Developing)»
a. Developer Write Code
b. Push Code to Source Code Repository(e.g., Git)
c. Peer Review
d. Centralized/ Distributed Repository
E. Testing»
a. QE Team/ Quality Assurance Engineers
b. Deploy to Staging/ Development Server
c. Ensure Quality Product
F. Deployment »
a. Promote Application to Production
b. Customer Receives Product
DevOps role in SDLC »
A. Primary Focus: Automation
B. Improve Efficiency
C. Fasten Process
D. Reduce Manual Intervention
E. Key Phases for DevOps
a. Building Automation
b. Testing Automation
c. Deployment Automation
F. Not Developer/ Tester / Deployer( Automates these)
G. Can get involved in Other Phases ( Personal Interest)
SDLC Models( Future Learning)»
A. Waterfall Model
B. Iterative Model
C. Agile Methodology» This means they do not wait for all planning, defining, or design documents to be fully complete; instead, once a small chunk of work is ready, it goes through the entire circular process, and then the next chunk follows suit.
a. Short Sprints
b. Continuous Iteration through Phases
Example Scenario »
A. Example.com(e-commerce website)
B. New Features: Kids catalog
C. Follows All SDLC Phases
Subscribe to my newsletter
Read articles from Abhishek Jha directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
