Requirement Gathering and Analysis Design Implementation or Coding Testing Deployment Maintenance
Requirement Gathering and Analysis Design Implementation or Coding Testing Deployment Maintenance
Requirement Gathering and Analysis Design Implementation or Coding Testing Deployment Maintenance
phases are executed. Each phase produces deliverables required by the next phase in the life
cycle. Requirements are translated into design. Code is produced according to the design
which is called development phase. After coding and development, the testing verifies the
deliverable of the implementation phase against requirements. The testing team follows
Software Testing Life Cycle (STLC) which is similar to the development cycle followed by
the development team.
There are following six phases in every Software development life cycle model:
Design
Implementation or coding
Testing
Deployment
Maintenance
2) Design: In this phase the system and software design is prepared from the requirement
specifications which were studied in the first phase. System Design helps in specifying
hardware and system requirements and also helps in defining overall system architecture. The
system design specifications serve as input for the next phase of the model.
In this phase the testers comes up with the Test strategy, where they mention what to test,
how to test.
4) Testing: After the code is developed it is tested against the requirements to make sure that
the product is actually solving the needs addressed and gathered during the requirements
phase. During this phase all types of functional testing like unit testing, integration testing,
system testing, acceptance testing are done as well as non-functional testing are also done.
5) Deployment: After successful testing the product is delivered / deployed to the customer
for their use.
As soon as the product is given to the customers they will first do the beta testing. If any
changes are required or if any bugs are caught, then they will report it to the engineering
team. Once those changes are made or the bugs are fixed then the final deployment will
happen.
6) Maintenance: Once when the customers start using the developed system then the actual
problems come up and needs to be solved from time to time. This process where the care is
taken for the developed product is known as maintenance.
There are various software development approaches, these approaches are also referred as
“Software Development Process Models” (e.g. Waterfall model, incremental model, V-
model, iterative model, etc.).
Each phase produces deliverables required by the next phase in the life cycle. Requirements
are translated into design. Code is produced according to the design which is called
development phase. After coding and development, the testing verifies the deliverable of the
implementation phase against requirements.
There are following six phases in every Software development life cycle model:
Business requirements are gathered in this phase. This phase is the main focus of the project
managers and stake holders. Meetings with managers, stake holders and users are held in
order to determine the requirements. 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.
2) Design:
In this phase the system and software design is prepared from the requirement specifications
which were studied in the first phase. System Design helps in specifying hardware and
system requirements and also helps in defining overall system architecture. The system
design specifications serve as input for the next phase of the model.
3) Implementation / Coding:
The work is divided in modules/units and actual coding is started. Since, in this phase the
code is produced so it is the main focus for the developer. This is the longest phase of the
software development life cycle.
4) Testing:
After the code is developed it is tested against the requirements to make sure that the product
is actually solving the needs addressed and gathered during the requirements phase. During
this phase unit testing, integration testing, system testing, acceptance testing are done.
5) Deployment:
After successful testing the product is delivered / deployed to the customer for their use.
6) Maintenance:
Once when the customers starts using the developed system then the actual problems comes
up and needs to be solved from time to time. This process where the care is taken for the
developed product is known as maintenance.