Faults detected by different teams overlapped little, and the number of URD faults found by any one team was small compared to the total number of faults detected.
The study participants were: the user who developed the URD; a moderator who is responsible for coordinating the efforts of the team and collecting data; and forty software engineers organized into ten independent development teams.
The user's primary duty was to develope the URD but was also available on a limited basis for meeting the teams.
Each team carried out formal inspection of the URD. Using techniques similar to those described by Fagan [11, 12], teams read the URD with a critical eye to detect faults.
During the synthesis of the URD for our study, we privately consulted with two major vendors (Digital Concepts Inc.
The URD used in this study is modeled after a request for computer automation of a typical North American railway.
Each team assembled a list of URD faults as they were detected.
(2) URD cross-referencing information (line and page number),
The database was used for coordinating version control among the ten working copies of the URD (one per team).
After URD inspection, faults detected by all ten teams were catalogued.
The URD faults found by each team during specification and design were catalogued in addition to the URD faults found during inspection.
It is possible that undetected faults still remain in the URD. By keeping track of URD faults that were discovered after the requirements inspection phase, later phases could be compared with the inspection phase.