Bug of the Day: Reinforcing the importance of testing
Daniel E. Krutz, Michael Lutz · 2013
Software engineering students typically dislike testing. In part this is due to the simplicity of the programming and design exercises in introductory computing courses - the payoff for thorough testing is not apparent. In addition, testing can be seen as tangential to what really matters: developing and documenting a design addressing the requirements, and constructing a system in conforming to the design. Such dismissive attitudes do not accord well with the realities of commercial software development. The cost of fixing, repairing and redistributing a flawed product can dwarf that of development. The Software Engineering Department at the Rochester Institute of Technology (RIT) teaches (and requires) basic testing as part of its foundation courses in the first two years. In addition, it offers an upper division course on testing, giving an in-depth treatment of best-practice tools, techniques and processes. Recently we've incorporated a “Bug of the Day,” which serves to broaden student awareness of the cost of software flaws. Class discussions focus on the cost of the bug, its root causes, and how it might have been discovered and repaired prior to product release.