software testing life cycle


software testing life cycle.

The software testing life cycle (STLC) identifies all testing activities and their relationship with other activities in the software development life cycle (SDLC).


Software testing should begin with the start of the software development life cycle.
The main activities of any software testing life cycle (various phases involved in testing) are:
  1. Requirements analysis
  2. Test planning, including test strategy
  3. Test development and review
  4. Test environment setup and maintenance (including test data preparation)
  5. Test execution (static and dynamic)
  6. Test reporting
  7. Test result analysis (see "Software bug life cycle" on this website for details)
  8. Defect retesting
  9. Test automation
  10. Test maintenance
  11. Regression testing
  12. Test closure

QA activities that have an influence on the software testing life cycle:
  • Software configuration management (change control)
  • All QA defect prevention activities
    Software testing activities and the software testing life cycle can depend on different system integration techniques used in software development.
    The scope of testing and software testing life cycle activities may vary from customer to customer, product to product, and organization to organization depending on the methodology used.

    Below is a list of SDLC types and their definitions taken from various wiki articles and corrected when necessary:
  • waterfall model: is the oldest SDLC and takes a sequential view on the software development process.
    Diagram Waterfall SDLC
  • spiral model: combines waterfall and prototyping approaches with implementing risk analyses and iterations.
    Diagram Spiral SDLC
  • rapid application development (RAD): is a software development methodology that involves techniques like iterative development and software prototyping.
  • prototyping life cycle: provides a mechanism for identifying requirements and allows developers to create a model of software.
    Diagram Prototyping SDLC
  • iterative model: is a software development model in which developed modules are reviewed and new functionality is added to improve the system. (RAD, Spiral, RUP, Agile)
  • V-model: talks about SDLC (System Development Life Cycle) phases and maps them to various test levels.
    Diagram v-model SDLC
  • Agile types of SDLC: Agile software development uses iterative development as a basis, but advocates a lighter and more people-centric viewpoint than traditional approaches. Agile processes use feedback, rather than planning, as their primary control mechanism. The feedback is driven by regular tests and releases of the evolving software.
    The agile life cycle has 6 phases: iteration 1, iteration 0, construction, release, production, retirement.
    Other processes those are not as well-known:
  • The Cleanroom Software Engineering process: is a software development process intended to produce software with a certifiable level of reliability. The focus of the Cleanroom process is on defect prevention.

    Please send me software testing activities and processes that are missing, along with the source, and I will put them on this page.
    You can find descriptions of all the SDLC types listed below on the software testing methodologies and software testing dictionary page.
    Types of SDLC: waterfall model, the spiral model, rapid application development (RAD), prototyping lifecycle, iterative model, V- model and agile types of software development life cycle.
    For useful Books about testing, see the Software testing books page on this website
    Systems Development Life Cycle   






    Software testing Methodology    Main Page

    Copyright © 2009 extremesoftwaretesting.com"  All Rights Reserved.