SDLC plays an important role in
software development and testing. SDLC stands for Software Development Life
Cycle and also referred as application development life cycle. It is a step by
step process to develop a software in systems engineering, software engineering and describes a step by
step process for planning, designing, testing and deployment for a software
system. The SDLC intends to deliver an astounding software product that meets to
client needs within time and cost estimates.
SDLC or Software Development
Process, defines phases in the development of software product. The SDLC
process varies from model to model and there are various types of software
development models like Waterfall model, Spiral model, Agile and V model.
There are six phases in
software development life cycle:
Requirement Gathering
The first phase in software
development life cycle is requirement gathering. It is done by the senior
officials of the teams from development, testing and business with inputs from
the client and domain experts in the organization. All the collected information
is then used to plan the basic project approach and to conduct product
feasibility study, operational and technical areas.
Analysis & Design
Once the requirement gathering
phase is completed then the next phase is to analyze the requirements and
create designs. In this collected requirements clearly defined and documented
and then get them approved from the client or the market investigators. Documentation
design is performed by business team. Business analysts design some high level
and low level documents like BRS (Business Requirement Specification), FRS
(Functional Requirement Specification) and SRS (Software Requirement
Specification) which consists all the requirements information of the product
to be designed and developed.
During Analysis of the
requirements various versions of the documents are released. Requirements may
get change and increase or decrease from version to version.
Versions are like BRS_Version_1.1, BRS_Version_1.2 and so on
(Testers design test scenarios and test cases through these high
level and low level documents).
High Level Design (“Components, Interfaces, Packages) Low
Level Design (“Class, Operations, relationship”)
Implementation
Once the Analysis & Design
is completed the next stage in SDLC is Implementation and Development. This is
the stage of SDLC where actual implementation starts and the software product
is developed. Software product is built as per the business, functional and
system requirements recorded during analysis and design phase. In this phase Development,
Network and Database design teams perform the major work on the project. All
the parts or modules of application are designed, developed and integrated. Various
programming languages like JAVA, .NET, PHP, C++ are used for development.
Programming language is selected as per the software requirements being develop.
Testing
Once the development is
completed the next phase in SDLC is testing. Test engineer and QA perform
testing of the developed software as per designed test scenarios and test cases.
Testing team uses valid and invalid test data to validate and verify the end to
end functionality of application.Variuos testing methodologies like system
testing, Integration testing, acceptance testing, performance testing and so on
are used in the different phases of the testing with the purpose to find
errors, bugs and defects to make sure that the developed software meets to the business
goals.
Deployment
The fifth phase in SDLC is deployment.
Once testing is completed and sign-off is provided to client or business then
the developed software is ready to deploy into production environment. Once the
application deployed to production it is ready to use by end user or customer. Vendor
perform script installation and provide release notes and training manuals to
business and client.
Maintenance
The last and sixth phase in SDLC is Maintenance. Application deployment
in production doesn’t mean that the testing will stop here. Testing team gets
the production issues from production and support and raise production bugs and
defects retest them and make sure that application functioning properly in
production.Performance of the system is verified. Implemented CR (Change
requests) tested and released in production to meet additional user requirements.
Read Also >> Software Testing Life Cycle
Read Also >> Software Testing Life Cycle
Software Development Life Cycle
Reviewed by Career Software Testing
on
March 03, 2018
Rating:
No comments: