22.04.2013 Views

appendix 1. analyzing the triangle problem - Testing Education

appendix 1. analyzing the triangle problem - Testing Education

appendix 1. analyzing the triangle problem - Testing Education

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Suggested Answer<br />

(C) Extensive Test<br />

Validation of <strong>the</strong> Specifications<br />

ANALYZING THE TRIANGLE PROBLEM<br />

(Continued)<br />

The first step in any black-box (i.e., specification-based) test planning is to validate <strong>the</strong><br />

specification itself. At least 50% of system errors originate in <strong>the</strong> specifications, and we cannot<br />

simply assume that <strong>the</strong> specs. are complete and correct as <strong>the</strong>y are presented.<br />

In this case, <strong>the</strong>re is at least one omission in <strong>the</strong> specification -- it does not state whe<strong>the</strong>r or not<br />

negative <strong>triangle</strong>s are acceptable. For example, should <strong>the</strong> expected valid response to a test case<br />

of a <strong>triangle</strong> with sides of -3, -5, and -3 respectively be "isosceles" or "error"?<br />

If this system is designed for Ph.D. ma<strong>the</strong>maticians, it might allow <strong>triangle</strong>s with negative sides<br />

or even unreal (complex number) sides. If it is designed for fourth graders, though, negative<br />

<strong>triangle</strong>s could be banned. This uncertainty needs to be resolved before we can complete our test<br />

case planning.<br />

The Need for Assumptions<br />

Assumptions are critical to test planning, since <strong>the</strong> set of test cases which are needed will vary<br />

based on which assumptions are made.<br />

Assumptions need to be documented. The most dangerous assumptions are those which are not<br />

documented but which are simply assumed to be true. Simply assuming that "<strong>the</strong> world has to<br />

work this way" gets testers into trouble.<br />

Assumptions also need to be reviewed and confirmed with <strong>the</strong> subject matter expert or <strong>the</strong> final<br />

authority on <strong>the</strong> application functionality. Undocumented assumptions tend to be embedded<br />

invisibly inside test plans and are not reviewed with <strong>the</strong> subject matter expert.<br />

Definition of a Triangle<br />

The most important assumption to be made is <strong>the</strong> definition of <strong>the</strong> word “<strong>triangle</strong>”. The client<br />

for <strong>the</strong> software may be a PhD ma<strong>the</strong>matician (or a pre-school child), whose definition is<br />

different from our everyday, “common sense” definition.<br />

Copyright 2004 Collard 7 & Company<br />

Appendix 1<br />

7

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!