Phases of Software Project – SDLC (Software Development Life Cycle)

Phase of a software project

A Software project is generally built in series of phases. Usually, Most projects consists of six phases. In this post we will cover them with respect to tasks, roles, users, process and documents.

Requirement gathering and analysis Phase :

Tasks :

Interacting with customer and gathering the requirements, Requirement analysis.

Roles :

Business analyst –BA, Engagement manager – EM.

Process :

The specific requirements of the software to be built are gathered from the customer and documented.

Documents :

The requirements get documented in the form of Software Requirement Document (SRS). This acts as a bridge between customer and designers.

Planning Phase :

Tasks :

Schedule, Scope, Tentative planning, Technology selection and Environment confirmation, Resource requirements.

Roles :

System Analyst – SA, Project Manager – PM, Technical Manager – TM.

Process :

A plan explains how the requirements will be met and by what time, taking into consideration of scope, milestones, resource availability and release date. This phase is applicable for both development and testing.

Documents :

Project plan and Test plan documents are delivered.

Phase of SDLC -Software development life cycle

Phase of SDLC -Software development life cycle

Design Phase :

Tasks :

High level designing, Low level design or detailed design.

Roles :

Chief Architect– CA, Technical Lead – TL.

Process :

The Development phase produces a presentation through which the verification of requirements is done. It has sufficient information for the next phase to implement the system.

Documents :

System design description (SDD) which will be used by the development teams to produce the programs.

Development Phase :

Tasks :

Programming

Roles :

Developer’s

Process :

Developer’s code the programs in chosen programming language and produce a software that meets the requirements.

Documents :

Production document (can be called as source code document).

Testing Phase:

Tasks :

Testing

Roles :

Test Engineer’s , QA analyst

Process :

Testing is the process of checking the behavior of the application in predefined ways, to work as expected with the requirements. Testing teams identify and remove as many defects as possible.

Documents :

Test case design documents, Execution status, Defect reports.

Deployment and Maintenance Phase :

Tasks :

Hand over the Application to the client to deploy it in their environments.

Roles :

Deployment engineers (or) Installation engineers.

Process :

Documents :

The final agreement made between the customer and company is proof document for Delivery.

Do not worry over the hierarchy or the roles in the organisations. We will discuss them in much detailed version in other posts. For now, let us focus on the phases.