Software Process,  Development life cycle (SDLC) Phases

Software Development life cycle (SDLC) and its Phases

First of all, let’s see similar names of software processes;

  • software development methodology 
  • Software development life cycle (SDLC)
  • Software development process

SDLC is a well-structured process including different activities that perform in a special sequence to develop software with full of quality, in a short time, and with a low budget.

SDLC Main Phases

Many different software processes can have different phases/activities but Some main core phases are;

  1. Requirement Gathering
  2. Requirements Analysis
  3. Design 
  4. Coding
  5. Testing
  6. Evolution
Software Process
Software Process

1. Requirement Gathering

We gather the software requirements and record the requirements in a special document(word, pdf file, etc). This document will help the next phase of requirements analysis to finalized the software requirements specification (SRS). There are many techniques to gather the requirements. For example, we can gather the requirements from the customer through interviews, questionnaires, observations, and many more.

Interviews

Interviews example to gather software requirements in software engineering
Interviews example to gather software requirements in software engineering

Questionnaires

Questionnaire example in software engineering
Questionnaire example in software engineering

Download Questionnaire Template and try it

  1. Observations and many more.

Requirement Specification is a document that specifies/tells what the system should do?

Example:

Suppose  we are developing a calculator, then the requirement specification of the calculator is;

  1. The user can add two numbers.
  2. The user can multiply two numbers.
  3. The user can clear the screen

2. Requirements Analysis

After requirements gathering, in the requirement analysis phase, we need to do the following activities;

3. Design

 To design the interface.

Example:

Suppose we are developing a calculator, then one example of the design of the calculator is shown below;

Calculator
Calculator

4. Coding/Implementation

To write the code of the software. You are very well familiar with writing code. An example of a C++ code to add two numbers is given below;

5. Software Testing  

To test that the software is working according to the customer requirements or not.

Example:

Suppose we want to validate that the sum of two numbers is correct or not?

  1. The user can add two numbers.
Software validation Example
Software validation Example

6. Software Maintenance/ Software evolution

The software code etc must be managed in such a way that if we want to update the software or to change the code, then later, it must be easy to understand and to resolve.

Software evolution Example
Software evolution Example

SDLC Methodologies/SDLC Models

There are many SDLC Models. Some important models are mentioned below;

  1. Waterfall Model
  2. Incremental Model
  3. Iterative Model
  4. Agile Model
  5. Spiral Model
  6. RAD Model
  7. V- Model

Frequently Asked Questions (FAQ) About SDLC

Question: In which phase of the SDLC is the feasibility study done?

Answer: A feasibility study is done in the requirement analysis phase of the SDLC.

Question: We draw the use case diagram in which phase of  SDLC?

Answer: We draw the use case diagram in the requirement analysis phase of the SDLC.

Question: We draw the Data flow diagram (DFD) in which phase of  SDLC?

Answer: We can draw and use the Data flow diagram (DFD) in the requirement analysis and design phase of the SDLC.

Question:  In which phase of  SDLC, We can draw the class diagram?

Answer: We can draw the class diagram in the requirement analysis or design phase of the SDLC.

Question:  In which phase of  SDLC, We can use the class diagram?

Answer: We can use the class diagram in the requirement analysis, design, and implementation/coding phase of a software development cycle.

Question:  In which phase of  SDLC, We draw the activity diagram?

Answer: We draw the activity diagram in the design phase of the SDLC.