CORVALLIS - Every day, millions of computer users unknowingly make small errors when creating formulas in spreadsheets, macros in word processing programs, scripts for computer-aided design (CAD) systems, rules for receiving e-mail, and more.
Although these errors might seem insignificant at first glance, the impacts can be disastrous.
An oil and gas company in Dallas, Texas, lost millions of dollars in an acquisition deal due to errors in a spreadsheet. A person with diabetes using the web to help compute diet and exercise safety ranges based on blood sugar levels and medication intakes can be given inaccurate information if the data supplied by a pharmaceutical company contain errors. Rules set up incorrectly by e-mail users can send important e-mail messages to the wrong folders, or worse, into the trash.
But relief might be on the way for the millions of people whose retirement funds, credit histories, e-business revenues, and even health and safety rely on decisions made based on the software they build.
Funded by a $2.65 million grant from the National Science Foundation, computer science researchers in the Oregon State University College of Engineering have launched a unique research project aimed at helping everyday computer users notice their programming errors early on and correct them before they cause headaches.
"Part of the problem is that historically most software engineering research has been directed at professional programmers," said Gregg Rothermel, associate professor of computer science at OSU. "But given the computer tools available today, millions of everyday end users are essentially doing programming, from managing their retirement funds to tracking their medications. But they've never been taught about the consequences of the errors in the programs they're writing."
Rothermel is part of a 12-person, multi-university research team that has launched a consortium called EUSES (End Users Shaping Effective Software), directed by OSU computer science professor Margaret Burnett. The group includes Martin Erwig and Curtis Cook, fellow OSU computer scientists; Ellen Ford and Maggie Niess from OSU's Department of Math and Science Education; and researchers from Pennsylvania State University, Carnegie Mellon, Drexel, University of Nebraska, and Cambridge University in the UK. OSU is the lead institution.
By combining computer science research with expertise in psychology and education, the group hopes to find more effective solutions than if only the technological aspects were considered.
"Many technologists assume other computer users think like they do," Burnett said. "But that's often not the case."
The number of end-user programmers in the United States is expected to reach 55 million by 2005, compared with only 2.75 million professional programmers.
These numbers, Burnett said, clearly indicate the huge need for research that will lead to more effective and dependable end-user programming. The EUSES Consortium is the only place in the U.S. where this type of end-user research is happening, she said.
"Historically, the emphasis of computer literacy training, self-help books, and on-line help systems has been on helping end users create the spreadsheet formulas, e-mail rules, etc., but there has been no emphasis on quality control, accountability, or human habits that might lead to errors," Burnett said. "So we are not only trying to come up with devices that might locate mistakes, but also to put those devices in the trail of the end user in a very subtle but effective way so that they see potential errors they would have otherwise not noticed."
Burnett is quick to point out that what she and her team are developing are not separate tools or pop-up messages, which research shows often annoy or distract end users instead of helping them. Instead, they are trying to determine the most effective ways to "gently encourage" end users to remedy errors while they work.
For example, in a spreadsheet colored boxes might appear around certain cells, suggesting the end-user verify certain data; however, there is no requirement to do this, and the user can choose to simply ignore the colors. If the user does the verification, the colored border might vanish, or change, depending on the outcome, letting the user know in a subtle way that the verification was effective and the time well-spent.
"We don't want the devices we're developing to interrupt end users in any way, but to blend into their normal work habits," Burnett said. "We want to pique their curiosity so that they will make use of the right device at just the right time."
Team member Martin Erwig explained that one popular software program, for example, if a user erroneously enters a date instead of a dollar amount into a cell, the current system will not catch this error, interpreting the date as numerical data and producing inaccurate results.
"Our research could solve that problem," Rothermel said.
Although they've not yet established commercialization plans, the OSU researchers would welcome the opportunity to partner with a software company to improve its product so that potentially, the millions of computer users will be making millions of fewer errors in the future.
For more information about the EUSES Consortium, go to: http://eecs.oregonstate.edu/EUSES.