Software Development Life Cycle
- Digital Engineering
Software Development Life Cycle
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
Auriga: Leveling Up for Enterprise Growth!
Auriga’s journey began in 2010 crafting products for India’s