You are on page 1of 4

What is SDLC?

The Software Development Lifecycle is a process of building a good software and its life cycle stages
provides Quality and Correctness of good software. All the stages of Lifecycle are important in itself. One
Wrong step in Lifecycle can create a big mistake in the development of Software.
SDLC is a process followed for a software project, within a software organization. It consists of a detailed
plan describing how to develop, maintain, replace and alter or enhance specific software. The life cycle
defines a methodology for improving the quality of software and the overall development process.
A typical Software Development life cycle consists of the following stages:
Stage 1:
Requirement Gathering and Analysis Requirement Gathering and Analysis is the most important and
fundamental stage in SDLC. It is mainly performed by the senior members of the team with inputs from
the customer, the sales department, market surveys and domain experts in the industry.
In this stage, communication taking place between stakeholders, end users and project team. So , all the
person which are related to the project and they gather information for software development
Meetings with managers, stake holders and users are held in order to determine the requirements like;
Who is going to use the system? How will they use the system? What data should be input into the
system?
What data should be output by the system? These are general questions that get answered during a
requirements gathering phase. After requirement gathering these requirements are analyzed for their
validity and the possibility of incorporating the requirements in the system to be development is also
studied.

Responsibility : Requirement Gathering Role : Business Analyst / Engagement Engineer


Document produced / Exit Criteria : Business Requirement Specification / User Requirement /Functional
Requirement

Stage 2: System Analysis

Once the requirement analysis is done the next step is system analysts. This is done through SRS which
consists of all the product requirements to be designed and developed during the project life cycle.
In this stage, Developer gets a detailed blueprint of the various phases of the software that developed in
the project. In this stage , the system is divided into smaller parts to make it easier , more manageable for
the developers , designers, testers , project managers and other professionals who are going to work on
the software in the latter stages.
Responsibility : System Analyst Role : Analyzing Functional Requirements Document produced /Exit
Criteria : SRS I. Technology II. System Specific Requirements

Stage 3:System Design

Based on the requirements specified in SRS,a DDS - Design Document Specification OR Technical
Design Document (TDD) is proposed and documented.
The System analyst designs the logical design for the designers and then designers get the basic idea of
designing the software design of front end and back end both with the help of flowchart and pseudo code
Every software design is presenting with one high level design and one low level design. Because high
level design is a system level document and low level designs are functionalize and modules level
documents.
High Level Design(HLD) :It design the overall architecture of the entire system from main module to all
sub module. eg. flowgraph, flowchart, data structure.
Low Level Design(LLD) :It defines Internal logic of corresponding sub module designers are preparing
individual LLD to Every module. eg. ER Diagram, Algorithm

Responsibility : Design the system Role : Technical Lead , Chief Architect , System analyst Document
/Exit Criteria: Technical Design Document (created using HLD – High Level Design and LLD – Low Level
Design )

Stage 4:Coding/implementation

In this stage of SDLC the actual development starts and the product is built. A team of programmers is
assigned by the company to work on the software
Task allocation is done where each task is assigned for all developers Developers have to follow the
coding guidelines defined by their organization and programming tools like compilers, interpreters,
debuggers etc are used to generate the code. Different high level programming languages such as C,
C++, Pascal, Java, and PHP are used for coding. The programming language is chosen with respect to
the type of software being developed.

Responsibility : Implement the project /coding Role : Programmer / Developer Outcome of this phase:
Source code document / Executable file

Stage 5: Testing
This stage is usually a subset of all the stages as in the modern SDLC models, the testing activities are
mostly involved in all the stages of SDLC. When software is ready , it is sent to the testing department
where Quality Analyst test it thoroughly for different errors by executing various test cases However this
stage refers to the testing only stage of the product where products defects are reported, tracked, fixed
and retested, until the product reaches the quality
standards defined in the SRS.
Responsibility : Writing test cases ,executing , validating software , preparing defect log and test log Role
: Test Engineer Document produced : Test case document , Defect Report document , Test Log

Stage 6: Deployment in the Market (Delivery)and Maintenance

Once the product is tested and ready to be deployed it is released formally in the appropriate market.
Sometime product deployment happens in stages as per the organizations, business strategy.
In this stage , if the software runs smoothly on various systems without any defect , then it is considered
ready to be launched If it generates error then it goes to Testing Department for testing and many coders
write a new code for developers error less software
Responsibility : Delivering product with demonstration Role : PM , Delivery Manager
Outcome of this phase : User manuals

SDLC Models

1. Waterfall Model

You might also like