# Assignment 3

## Analysis of Fault Matrix

This assignment will be partitioned into very small sub-assignments with tight deadlines to help the students manage their time effectively throughout the semester.
• Assignment 3.1: Due date: Feb. 10, 2007: Write a Java program to compute the average number of faults detected by a smoke and comp test case per application. E-mail the Java code and result to the TA. SUBJECT of the e-mail should be "CMSC 433 -- Assignment 3.1". (5% of Assignment 3 grade.)
• Assignment 3.2: Due date: Mar. 15, 2007: Develop a strategy to analyze the data in the fault matrices and "depth vectors." The goal is to determine whether there is a correlation between testing techniques (comp vs. smoke) and the depths of the faults they detect. Document your strategy using a simple example. Validate the strategy/document by discussing it with the course instructor. Finally, e-mail the document to the TA. SUBJECT of the e-mail should be "CMSC 433 -- Assignment 3.2". (15% of Assignment 3 grade.)
• Assignment 3.3: Due date: May 5, 2007: Implement the above strategy in Java. Make sure that you use at least four design patterns in your code. Submit the code and a report that justifies the use of particular design patterns. Also remember to write JUnit tests and JavaDoc for all methods/classes. E-mail the document to the TA. SUBJECT of the e-mail should be "CMSC 433 -- Assignment 3.3". (80% of Assignment 3 grade.) Points will be awarded for solutions that are different from those submitted by other students in your class; it is in your interest to work independently this time.

# Description

We define a fault matrix as a summary of test results. The matrix has N rows, one for each test case, and M columns, one for each fault. A "0" entry in cell (n, m) shows that test case n did not detect fault m; a "1" entry shows otherwise.

Consider the following four fault matrices for four applications (testing method used is called Smoke; it yields smoke test cases):

• Smoke_TerpPaint.txt
• Smoke_TerpPresent.txt
• Smoke_TerpWord.txt

Consider the following four fault matrices for the same four applications (testing method used is called Comp; it yields comp test cases):

• Comp_TerpPaint.txt
• Comp_TerpPresent.txt