Each defect should have one requirement and test case

A software defect by definition is a flaw in the system that can cause the system to fail to perform its required function.  In Requirement Driven Testing requirement is first selected to short list which test cases to execute.  It only makes sense that for something to be called a defect should have been tested against a requirement using test case(s) derived from the same requirement.  Hence, every defect should be linked to at least one requirement together with the test case that proving the test to fail.

In reality many functional defects are being reported without matching functional requirements.  What is the best way to deal with this situation?  The following are possible reactions from the development team (including testers):

  • Fix the defect
  • Create change request
  • Defer the defect
  • Reject the defect
  • Ignore and wait for escalation from business owner or users

Each of the above actions could be a correct outcome when an appropriate procedure is followed.  Different projects in different organizations have different approach but Requirement Driven Testing test approach uses the following guidelines:

  1. Prove that the defect can be reproduced
  2. If yes, check if there is an existing requirement.  Else add a new business requirement and review and request additional time if needed.
  3. If yes, check if there is an existing test case.  Else add a new test case.
  4. If yes, create a defect.
  5. Note that in Requirement Driven Testing each defect is linked to requirement and test case

The following diagram shows the workflow of defect management lifecycle.

Although it is not mandatory to maintain each defect with requirement and test case as one package, this method will surely give developer, business owner and other stakeholders clarity and help everyone in the team understand the ‘what’ and ‘why’ factors of the issue.

Next topic: A separate test should be created for each scenario.

Related Posts Plugin for WordPress, Blogger...