"Formal specification" is the computer science term for explaining precisely what a program does and how. There are many formal specification techniques. The one I propose is simple to use, because close to Excel.
Ray Panko reports, in What We Know About Spreadsheet Errors ( www.opssys.com/instantkb/attachments/What_We_Know_About_Spreadsheet_Errors_Whitepaper-GUID9b35763e2d504ddab36b9e26a4eee631.pdf ), that:
Cragg and King, 1993, inspected 20 operational spreadsheets from 10 firms. They found serious errors in 5 spreadsheets. "One universal aspect of the Cragg and King spreadsheets was informal iterative development. None of the spreadsheets used formal specification, design, or coding. In addition, there was extensive revision because of poor initial design."
(Cragg, P. G., & King, M. (1993). Spreadsheet Modelling Abuse: An Opportunity for OR? In Journal of the Operational Research Society, 44(8), 743-752.)
Has this changed?[ P | N ]