The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.05 - September/October (2009 vol.26)
pp: 25-30
Martin Erwig , Oregon State University
ABSTRACT
Spreadsheets are popular end-user programming tools. Many people use spreadsheet-computed values to make critical decisions, so spreadsheets must be correct. Proven software engineering principles can assist the construction and maintenance of dependable spreadsheets. However, how can we make this practical for end users? One way is to exploit spreadsheets' idiosyncratic structure to translate software engineering concepts such as type checking and debugging to an end-user programming domain. The simplified computational model and the spatial embedding of formulas, which provides rich contextual information, can simplify these concepts, leading to effective tools for end users.
INDEX TERMS
spreadsheets, software engineering, type checking, debugging, spatial analysis
CITATION
Martin Erwig, "Software Engineering for Spreadsheets", IEEE Software, vol.26, no. 5, pp. 25-30, September/October 2009, doi:10.1109/MS.2009.140
REFERENCES
1. Y. Jun, G. Michaelson, and P. Trinder, "How Do People Check Polymorphic Types?" Proc. 12th Psychology of Programming Interest Group Workshop, Psychology of Programming Interest Group, 2000, pp. 67–80.
2. G. Tassey, The Economic Impacts of Inadequate Infrastructure for Software Testing, RTI project 7007.011, US Nat'l Inst. of Standards and Technology, 2002.
3. R. Abraham and M. Erwig, "Type Inference for Spreadsheets," Proc. ACM Int'l Symp. Principles and Practice of Declarative Programming, ACM Press, 2006, pp. 73–84.
4. M. Erwig et al., "Automatic Generation and Maintenance of Correct Spreadsheets," Proc. 27th IEEE Int'l Conf. Software Eng. (ICSE 05), IEEE CS Press, 2005, pp. 136–145.
5. R. Abraham, M. Erwig, and S. Andrew, "A Type System Based on End-User Vocabulary," Proc. IEEE Int'l Symp. Visual Languages and Human-Centric Computing, IEEE CS Press, 2007, pp. 215–222.
6. R. Abraham and M. Erwig, "Inferring Templates from Spreadsheets," Proc. 28th IEEE Int'l Conf. Software Eng. (ICSE 06), IEEE CS Press, 2006, pp. 182–191.
7. R. Abraham and M. Erwig, "Header and Unit Inference for Spreadsheets through Spatial Analyses," IEEE Int'l Symp. Visual Languages and Human-Centric Computing, IEEE CS Press, 2004, pp. 165–172.
8. M. Erwig and M.M. Burnett, "Adding Apples and Oranges," Proc. 4th Int'l Symp. Practical Aspects of Declarative Languages, LNCS 2257, Springer, 2002, pp. 173–191.
9. Y. Ahmad et al., "A Type System for Statically Detecting Spreadsheet Errors," Proc. 18th IEEE Int'l Conf. Automated Software Eng., IEEE CS Press, 2003, pp. 174–183.
10. M.J. Coblenz, A.J. Ko, and B.A. Myers, "Using Objects of Measurement to Detect Spreadsheet Errors," Proc. IEEE Symp. Visual Languages and Human-Centric Computing, IEEE CS Press, 2005, pp. 314–316.
11. T. Antoniu et al., "Validating the Unit Correctness of Spreadsheet Programs," Proc. 26th IEEE Int'l Conf. Software Eng. (ICSE 04), IEEE CS Press, 2004, pp. 439–448.
12. R. Abraham and M. Erwig, "UCheck: A Spreadsheet Unit Checker for End Users," J. Visual Languages and Computing, vol. 18, no. 1, 2007, pp. 71–95.
13. R. Abraham and M. Erwig, "GoalDebug: A Spreadsheet Debugger for End Users," Proc. 29th IEEE Int'l Conf. Software Eng. (ICSE 07), IEEE CS Press, 2007, pp. 251–260.
14. R. Abraham and M. Erwig, "Mutation Operators for Spreadsheets," IEEE Trans. Software Eng., vol. 35, no. 1, 2009, pp. 94–108.
15. G. Engels and M. Erwig, "ClassSheets: Automatic Generation of Spreadsheet Applications from Object-Oriented Specifications," Proc. 20th IEEE/ACM Int'l Conf. Automated Software Eng., IEEE CS Press, 2005, pp. 124–133.
7 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool