Program inspection is a formal process that is carried out by a team of at least four people. In Fagan’s original proposals for inspections, he suggested roles such as author, reader, tester and moderator. The reader reads the code aloud to the inspection team, the tester inspects the code from a testing perspective and the moderator organises the process.
As organisations have gained experience with inspection, other proposals for team roles have emerged. In a discussion of how inspection was successfully introduced in Hewlett-Packard’s development process, Grady and Van Slack (Grady and Van Slack, 1994) suggest six roles:
They do not think that reading the program aloud is necessary. The same person can take more than one role so the team size may vary from one inspection to another. Gilb and Graham (ref) suggest that inspectors should be selected to reflect different viewpoints such as testing, end-user and quality management.