ITR: End-User Software Engineering
Oregon State University, Corvallis OR
Investigators
Abstract
Abstract The objective is to improve the reliability of software produced by end-user programming languages in general, and by spreadsheet languages in particular. The approach is to address software engineering issues as an integrated whole in ways that incrementally interact with each other and with the user. For example, the system will notice the user's reactions to sample values she tests, and will then suggest general principles about the spreadsheet, encouraging the user to refine or modify the suggestions. This collaboration between the system and user will incrementally generate formal specifications as the spreadsheet evolves. These specifications can in turn be fed back to enhance reliability -- by automatically suggesting appropriate test values, by helping locate faults, and by ensuring continuing consistency with the specifications. The research involves three facets: developing an interactive mechanism for user-system collaboration, developing algorithms for the system's part of the collaboration, and conducting experiments to evaluate effectiveness. This is the first research attempting to bring fundamental software engineering principles to bear on end-user programming. Since the use of end-user-written programs and spreadsheets is very widespread and their lack of reliability is pervasive, improved reliability will impact a potentially huge number of business and personal computer users.
View original record on NSF Award Search →