Software Development Life Cycle

Published On: 12 May 2023.By .
  • Digital Engineering

Software Development Life Cycle is also known as SDLC. It is a procedure to develop software applications.

It consists of different stages or different phases.

1. Requirement Gathering / Collection:- Usually, the customer or client gives the requirement in the form of CRS/BRS and is converted into SRS by BA. BA is Business Analyst which acts like a bridge between the customer and the company.

Business Analyst Should be confident in

  • Communication Skills
  • Domain Expert
  • Convincing Skills
  • Technical Skills
  • Analyzing Skills

Business Analyst Collects all the information/requirements from the customer and gives it to the development team. That is a requirement Collection

2. Feasibility Study:- In this Phase, BA, HR, Architect, Finance, and PM will discuss all the information needed about the project. 

  • BA will explain the requirements.
  • HR will think of the required resources.
  • Finance will take care of the budget.
  • Architects will think about which technology we should use for the project.
  • The PM will take care of the final decision and gathers all the data related information to proceed to the next phase or stage.

3. Design:- Once everything is fine, we move forward to the Design phase after the Agreement / Sign off between the customer and company.

In the design phase, we have LLD and HLD. Usually, the design phase is taken care by an architect or senior developer.

  • High-Level Design:- It is just like a blueprint. It shows the external architecture of the Application.
  • Low-Level Design:- It shows the internal architecture of the Application

Both HLD and LLD are documentation.

4. Coding:- Once the design is done, developers start writing the source code for the application by looking at the design and requirements.

  • All developers will be involved in writing the source code. i.e. Senior developers, Junior Developers.
  • Developers will write Frontend and Backend Source Code.
  • This is done in the Development server. All Developers will be involved in it.

5. Testing:- Once coding is done, developers will give applications to Test Engineers. All Test Engineers will start testing the application UI and find defects.

  • If any defects are found in a software application, it again goes back to the developers.
  • Developers will fix it again and give it back to the Test Engineer for re-verification.
  • Like this, the process continues till the application meets/matches the requirements.
  • The Testing will be done in the Testing Server.
  • Once everything is completed, we will go for the next phase called Installation/Deployment.

6. Installation/Deployment:- Making the software application available for end users is called “Installation” i.e. Moving the software from the Testing server to the production server (End users will use it).

  • It is done by the software company once the testing is completed.
  • The customer/Client should approve for installation.
  • It can be done by the Installation team/Delivery Team.

7. Maintenance:- Once the software is provided to customers or end users, if they face any problem, support has to be provided, which is called Maintenance.

  • Initially, it will be free, Later it will be paid.
  • Free service will be provided based on the agreement between the customer and the company.
  • During maintenance, defect fixes will be handled and changes will be taken care of.
  • Changes can be adding, modifying, and deleting a feature.
  • Maintenance always happens once the application is on Production Server.
  • It will be done by the development /maintenance team and this is decided by the Customer and Manager.

Related content

That’s all for this blog