Everyone knows that debugging is twice as hard as writing a program in the first place. So if you’re as clever as you can be when you write it, how will you ever debug it? (Kernighan and Plauger 1978)

Reading

Software Engineering (Sommerville 2016)

  • Chapter 8: Software testing
    • Development testing

Learning Objectives

  • Contrast black box and white box testing
  • Calculate cyclomatic complexity and create test cases for each basis path
  • Organize tests in order of coverage
  • List strategies for debugging

Resources

Complete the handout as time permits in (or outside of) class

Further Reading

Software Engineering (Sommerville 2016)