Software Development Life Cycle is a
process used by software development industry to develop high quality software.
This consists of a detailed plan describing how to develop, maintain, replace
and enhance specific software.
The following figure is a graphical
representation of the stages of a typical SDLC.
Requirement Analysis Phase:
This is the most important and the
fundamental stage of the SDLC, performed by the most senior members (Project
Manager, Business Analyst, Designer, Test Lead, Subject Matter expert) of the
team with inputs from the customers, market surveys and domain experts in the
industry.
This information is then used to plan the
basic project approach and to conduct product feasibility study in the
economical, operational and technical areas.
Requirement Analysis phase completes when
the client signs of the SRS - Software
Requirement Specification.
Design Phase:
Based on the requirements specified in SRS design
approach for the product architecture is proposed and documented in a DDS - Design Document Specification. DDS
clearly defines all the architectural modules of the product along with its
communication and data flows between modules, external and third-party modules
(if any).
Development Phase:
The actual development starts and product
is starting to build based on the Design Document Specification (DDS).
Developers of all levels (seniors, juniors) involved in this phase. The outcome
of this phase is SCD - Source Code
Document and the developed product.
Testing Phase:
This phase is usually a subset of all the
phases as in modern SDLC models, the testing activities are mostly involved in
all the stages of SDLC. In this phase Testers test the software manually or
using automated testing tools as per the process defined in the STLC - Software Testing Life Cycle.
The outcome of this phase is the quality
product and the Testing Artifacts (Test Strategy, Test Plan, Test Case, Test
Data, Requirement Traceability Matrix, Defect report, Test Closure reports
ect.)
The difference between an Use Case and Test
Case
Implementation and Maintenance
Once the product is tested and ready to be
deployed it us released formally in the appropriate market.
Sometimes product deployment happens in
stages as per the business strategy of that organization. The product may first
be released in a limited segment and tested in the real business environment where
that process identified as UAT- User
acceptance testing.
Based on the feedback from the UAT, the
product may be released as it is or with suggested enhancements in the target
market segment. After the product is released in the market, its maintenance is
done for the existing customer base as per a SLA - Service Level Agreement.
Types of Software Development Life Cycle Models
Some of the most important and popular SDLC
models followed in the industry are;
- Waterfall Model
- Iterative Model
- V-Model
- Spiral Model
- Big-Bang Model
Comments
Post a Comment