Robert Niggebrugge CofC CSCI 362 Fall 2020 Blog

HW21: Chapter 24

24.6) Explain why program inspections are an effective technique for discovering errors in a program. What types of error are unlikely to be discovered through inspections?

  • Program inspections are effective at discovering bugs and implementation flaws on the unit level because they require a group of programmers to comb over the actual code while actively looking common flaws. It is much easier to identify that something is implemented poorly upon review than at the time of coding because the programmer has more to juggle than making sure they write the perfect code while actually writing it. In addition, if the reviewers are experienced and/or if they have the proper checklist they have a much greater chance of catching errors. The reason it is so effective boils down to the fact that the reviewers have the chance to actively find the errors and can apply their experience much more effectively than other methods such as automated testing. On the other hand, program inspections would most likely be fruitless in finding larger scale errors such as requirement errors, design errors, architecture errors, or performance errors. This is because the inspectors' focus is on analyzing the actual code at a very fine grained level. At any given time they are reviewing a function or a certain amount of lines of code that is very small compared to the overall system.