Software Development Life Cycle (SDLC)

Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)


Software Development Life Cycle (SDLC) it is nothing but step by step implementation of software. It is systematic process of building a software Ensure the quality.


Software Testing Life Cycle

Defect Life Cycle

Waterfall Model

What Is Agile Methodology

Test Plan In V-Model

What are the phases of SDLC?

  • Information Gathering
  • Analysis
  • Design
  • Coding
  • Testing
  • Maintenance


Information Gathering :- 

BA (business analyst ) is responsible for information gathering.That is which type of customer application wants what was the purpose of that application.

Information gathering means requirement gathering. This information gathering nothing but Business requirements known as BRS. BRS: Business Requirement specification

BA is taking Requirement from clients/Customers & Preparing BRS document. Simply it acts as bridge between Client and Technical team (Devloper and Tester).


Business analyst is involved in this process in the Analysis phase SRS is made, in the. After BRS = SRS documents prepared, Software Requirement specification

BRS: Business Requirement specification . SRS: Software Requirement specification o Also called as – functional requirement specification document.  SRS Means details documentation .Software Requirement specification will contain Function Requirement, Functional Flow diagram, Use cases and   Snapshot.

  • Functional Requirement: Functional Requirement is nothing but a detail requirement for every single module. Means specific requirement of every sub module. Functional requirement means Element which are required to fulfill the specific function.

For Example: Sign up page is main function.

First name , last name, Email id, mobile no.. password,  Forget password.

  • Functional Flow Diagram:

Functional flow diagram is the process of show the relationship between the element/task. Functional flow diagram means flow of task. This flow show dependency  of two task each other. Here the sequential arrange this task. It is a step by step implementation of requirement.

Req. 1 – Req.2 –Req. 3 –Req.4 like that.

For Example:

  • Use Cases:

Use cases are the requirement. Whenever Business analyst gather requirement to customer that are whole project requirement.

It is similar to use story. In use case only single requirement are there. In the Use cases consist of two parts that is Description and acceptance criteria.


It is a description about the functionality. Means what is the customer expectation. What user want to do ,what is the process of the build and what we give the output.

Acceptance Criteria:-

In acceptance criteria is nothing but scenario. Means when this scenario are correct that time we generate the desired output otherwise system give the failure.


It is process of transform customer requirement into some suitable form basically two types of design. System architecture develops the design

  1. HLD – High level design
  2. LLD – Low level design


  1. Difference between high level design and low level design?

High-Level Design (HLD)

  • High level design is developed by System architecture or design architecture
  •  Brief description or Working in main module .
  • An outline about the designing Structural functionality of Main module
  • Include relation dependency of main module
  • Database tables identified along with their key elements
  • Complete architecture diagrams along with technology details
  • High-level design defines the architecture/design of modules. It defines the functionality between the two modules.
  • It is macro level design. Understand architecture of entire application from main module to sub module.

Low-Level Design (LLD)

  • Static logic and Functional logic of the  every sub modules
  • Database tables, which include type and size
  • Complete detail of the interface
  • Addresses all types of dependency issues
  • Low level design is Developed /design by front end developer Complete input and outputs for every module.
  • Designing Structural functionality of Sub module
  • Low-level Design defines the architecture/design of individual components.



Coding means programming developer is involved in coding. One line is code. Multiple line of code is known as program. It is set of programming language designed, written by programmer known as coding

There are two types of developer.

  1. Front end developer
  2. Back end developer

Front End developer/Coding – UI, Functional checking, flow, process developed by Front End developer .Front end developer develop animation, Action pages, functionality,U.I.

Back End developer/coding – Data Management, Data gathering, Data security, algorithm section is done at the back end section developed by Front End.   End Back end developer –Data management, Data Analysis, Data  security.


  1. What is testing?


Definition:-  Testing is a process of checking whether our software generate desired outputs. In short how well software work it is called testing.

Developer who is woke on front end development as well as back end development called as full stack developer

It is a process to check Completeness & correctness of software/ Application as per customers’ requirement

Testing having three types of testing –

  1. White box Testing
  2. Black Box Testing

III. Grey Box Testing


  1. White box Testing

White box Testing is called as Clear Box testing, Glass Box testing, Transparent Testing. It is also called as Static Testing.

It is a coding level testing approach to check Completeness & correctness of program .White Box Testing done by coder means it testing done by developer.


  • Black Box Testing

Black Box testing is  called as System and Functional testing. It is  done by tester.

In the black box testing tester verify/ validates internal functionality of application depends on external interface (front end). It’s a build level testing Technique

  • Gray box Testing –

Gray box testing – It’s a combination of white box testing & Black box testing. Gray box testing = White Box Testing + Black box testing. Testers are involve in Gray box testing.

In the gray box testing Testers needs some programming language. In case any defect occurs – testers makes some changes in code itself instead of assigning to the developers.


Maintenance  means provide the service after the delivery of product. Project team will give 1 month warrant support for that build/ functionality. Project team will get KT (knowledge transfer) to support team. After warrant period, these build/ functionality will sent to support/ Maintenance team.

  1. What is mean by SDLC?

Sdlc- It is Software Development Life cycle. It is the process of developing the high quality software. In the software development life cycle developed, design, and test the software. Software development life cycle is the step by step implementation of the software ensure the quality of product . 

  • Types of SDLC/Methodology/Models
  1. Waterfall Model
  2. V-Model
  3. Agile
  4. Fish Model