Summary

The V model is fatally flawed, as is any model that:
  1. Ignores the fact that software is developed in a series of handoffs, where each handoff changes the behavior of the previous handoff,
  2. Relies on the existence, accuracy, completeness, and timeliness of development documentation,
  3. Asserts a test is designed from a single document, without being modified by later or earlier documents, or
  4. Asserts that tests derived from a single document are all executed together.
I have sketched – but not elaborated – a replacement model. It organizes the testing effort around code handoffs or milestones. It takes explicit account of the economics of testing: that the goal of test design is to discover inputs that will find bugs, and that the goal of test implementation is to deliver those inputs in any way that minimizes lifecycle costs.

The model assumes imperfect and changing information about the product. Testing a product is a learning process. In the past, I haven’t thought much about models. I ostensibly used the V model. I built my plans according to it, but seemed to spend a lot of my time wrestling with issues that the model didn’t address. For other issues, the model got in my way, so I worked around it.

I hope that thinking explicitly about requirements will be as useful for developing a testing model as it is when developing a product. I hope that I can elaborate on the model presented in this paper to the point that it provides as much explicit guidance as the V model seems to.

No comments:

 

© blogger templates 3 column | Make Money Online