What is SDLC?
Tags: webdev, softwareengineering, sre, programming
Published: 2023-06-22 16:24:12

### What is SDLC?
The software development life cycle is the process followed within a Software Organization. It is the detailed process that describes how to develop maintain and replace the software product.
The following figure describes the graphical representation of a process of SDLC. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jyrrb2bc2oskuxn622if.png)
### Step 1: Project Planning
This step is the most important step of the software development life cycle (SDLC). This step is performed by senior members of the team because a big project requires more efficient planning for making the project successful likewise small project also requires planning but if at the start of the project you made a mistake and miss any prerequisites then your project will require two to three times of revision this is the worst part of development. In this step, we identify quality assurance procedures and risks associated with the project. The outcome of this step is used in the feasibility study of the project. Project feasibility defines the various procedures that can be followed for the successful delivery of a project with minimum risks. 

### Step 2: Defining Requirements 
Defining requirements is the most important part of the software development life cycle. The process to gather the software requirement from customers and then analyze those requirements and document them is called requirement engineering or requirement elicitation. If the feasibility report is positive from all aspects, then we start the requirement elicitation process in this process we start requirement engineering we use different techniques to get requirements about the project. We discuss the feature and functionalities of the system and identifies the user and stakeholders.

### Step 3: Designing and Architecture
The designing and product architecture means clearly defining the structure of modules along with communication among modules and data flow representation with the external third-party module. The internal structure of the module should be clearly defined. This step of the software development life cycle is reviewed by all the stakeholders based on various parameters such as risk assessment, product robustness, time and budget, etc. 

### Step 4: Building and Developing the product
After defining the clear and rich requirements the fourth step is building and developing the software product according to the defined standards. Software organizations start coding and designing products this step involves the implementation of all the pre-and post-condition of a project like the development of complete functionalities of the software product according to the requirement verified by senior members of teams and all the stakeholders of the project.   

### Step 5: Testing the product.
In this step of the software development life cycle, we define the testing strategies in which we do the testing of different modules, and we check that either every module is behaving and functioning according to the standard definition or according to the requirements define in the first phase of the SDLC process.

### Step 6: Deployment
After the complete testing of the product and the product is formally ready for deployment then some of the time product is released in the stages according to the deployment plains of the organization. And some time product deployment is dependent on the feedback of the customers.