2.1. Waterfall Model

../../_images/waterfall-model.jpg

It is a simple sequential way of product development. You may read more about the Waterfall Model in this Wikipedia article. But here are some of the basic flaws with this way of development.

Note

Different Software Development teams/organizations may have different nomenclature for the stages that we have shown above, but the basic idea would still remain the same.

  • Problem:

    (We think) the product is developed exactly as as expected in the DEV stage. Almost every one already seen this developed product. No one seem to have any issue with it.

    So… how long do we keep testing it? The longer we test… the longer is the release delayed. The shorter we test… we may ship out an untested product.

  • Bigger Problem:

    Our understanding of product requirement/FRS evolves/improves when start testing or specifying new tests.

  • Much Bigger Problem:

    You only test what is implemented.

(Probable) Solution V Model:

  • Specify/Document test scenarios as early as possible. Map them back to the requirements.

  • When we map test scenarios back to the requirements, the requirements get more clearer.

  • If it is specified (we talk about tests), it will definitely get implemented.

  • For everything that is specified, there is a test case. Thus, everything that is implemented will get tested. If some implementation is missing or incomplete, the tests will catch that.