Software Development Life Cycle is the systematic methodology followed by organizations to produce high-quality software or software applications. It is also known as the Application Development Life Cycle.
There are different phases in SDLC as follows:
- Planning & Feasibility
- Requirement Gathering &Analysis
- Testing & Deployment
Planning & Feasibility
This is the initial phase of the SDLC. The project scope and objectives are planned. The project feasibility on several factors like budget, technical, operational, schedule, etc is analyzed.
Requirement Gathering &Analysis
This phase consists of requirements gathering and analysis. It may consist of meeting the stakeholders, interviews, questionnaires, workshops, etc. to gather and collect the requirements of the product.
In this phase, the design specifications and the architecture of the product are created, documented and reviewed.
In this phase, the software development team builds the software product. The software design is translated into source code. The source code is written in this phase using a programming language and other tools. The code is unit tested by the development team.
Testing & Deployment
In this phase, the QA Team executes the test plan to evaluate the quality of the software. This phase consists of finding and fixing the bugs in the software. End users run acceptance tests on the software. If the software is good to go, the application is deployed in the live production environment.
This phase consists of maintaining the software, updating the software, and rolling out patches to fix any production defects. The software is maintained by fixing any defects and errors in the production environment.
The customer enhancements are fixed in a timely manner. Regular updates are rolled to fix enhancements, security issues, and other customer-reported defects.
SDLC Process Models
Some of the SDLC process models that are widely used are as follows: