Article Preview
TopIntroduction
Decades of research on spreadsheets have resulted in several commonly accepted tenets. Spreadsheets are widely used internationally in manufacturing (Schwartz, 2005) education (Wagner, 2003), business (Chan & Storey, 1996), and government (Butler, 2000). Spreadsheets are used for modeling problems ranging from trivial to epic, from simple calculations to incredibly complex amalgamations spanning multiple applications (Panko & Port, 2013; Warfield & Hihn, 2009) and tens of thousands of calculations (Panko & Port, 2013; Powell, Baker & Lawson, 2009).
Given the widespread use of spreadsheets, errors are a potential concern. Since 1995, nine studies have inspected operational spreadsheets to look for errors (Panko, 2013). These studies found errors in 84% of the 163 spreadsheets they inspected. Among inspection studies that only reported errors if they were serious, the percentage of incorrect spreadsheets was actually higher, 91% (Panko, 2013). Although much research has been conducted on spreadsheet errors, there is no consensus on how to prevent, detect, and deal practically with these errors (Clermont & Mittermeir, 2002; Panko, 2007; Croll, 2003; Powell, Baker & Lawson, 2008; Butler, 2000; Rajalingham, Chadwick, Knight & Edwards, 2000).
One way to reduce errors is to manually inspect spreadsheets. Unfortunately, humans are only partially effective in detecting spreadsheet errors, even when using aggressive error detection techniques. In eight laboratory experiments collectively using 982 participants, the participants only discovered 63% of all seeded errors (Panko, 2010). In comparison, manual code inspection in software testing experiments has shown similar detection rates (Panko, 1999). Not only are spreadsheets consistently developed with errors and people are generally poor at detecting the errors, developers are overconfident in both their ability to build error-free models and detect errors (Panko, 1999; Howe & Simkin, 2006; Davis & Ikin, 1987; Reithel, Nichols & Robinson, 1996).