Research
The EUSES Consortium is a collaboration by researchers at Oregon
State University, Carnegie Mellon
University, Drexel University, Penn
State University, University of Nebraska,
and Cambridge University whose
goal is to develop and investigate technologies for enabling End Users
to Shape Effective Software.
Motivating End Users to be Effective
- Burnett: Surprise-Explain-Reward strategy to harness users' curiosity and help them discover useful approaches
- Rosson: Real situations & communities to help end-user programmers
- Wiedenbeck: Gender differences in end-user software engineering and improving end-user software to support both genders.
- Blackwell: Model of attention investment: How users decide to use
programming features
- Cypher: Programming by demonstration and end-user programming.
- Jensen: Advancing understanding of how computer systems affect decision-making
Devices to Increase End User Effectiveness
- Myers: Empirical studies about software development and productivity tools to help with debugging, editing, design and task management.
- Erwig: Unit
inference in spreadsheets: When is it legal to add apples and oranges?
- Burnett, Rothermel, Cook: End-User
Software Engineering project
- Shaw: Helping end users create, share, and use data abstractions to improve programs' quality
- Elbaum: Fault detection in web software through statistical,
heuristic, machine learning
- Niess, Wortmann: Developing teachers' technology pedagogical content knowledge: preparing teachers to guide their students in designing dependable spreadsheets/software applications while also encouraging them to use technology as a learning tool within a context of a quality-control culture.
Constituent Technologies
This project builds on and contributes to our work on the following
constituent technologies:
Screen Shots from EUSES Projects
End-User Software Engineering & WYSIWYT applied to spreadsheets
(see papers co-authored by Burnett, Cook,
and/or Rothermel.)
 |
The WYSIWYT (What You See is What You Test) testing approach. Cell
borders reflect the "testedness" of cells. Users indicate "testing
decisions" by placing checkmarks. |
 |
Fault localization support in the WYSIWYT approach. Cell interiors
indicate all cells that might contain errors, with darker colors
corresponding to increased likelihood. This feedback is triggered
when the user notices bad values. |
 |
Assertions "guard" the values in cells. User-entered assertions
are propagated through the spreadsheet as system assertions. These
system assertions are compared with user-entered assertions. Conflicting
assertions indicate the presence of errors, and are circled. Values
outside assertion ranges are also circled. |
The "Whyline" System
(see papers co-authored by Myers and Ko)
|
The Whyline's answer to a question. The programmer expected Pac
to resize when Pac touched the Ghost, but the resize didn't seem
to happen. The programmer asked, 'Why didn't Pac resize 0?' and the
Whyline revealed that the resize did in fact happen, but had no effect
on-screen. This helped the programmer isolate the problem to the
resize statement and ignore other parts of the code that were correct. |
The "UCheck" System
(see papers co-authored by Erwig)
 |
The UCheck system can automatically detect errors in spreadsheet formulas by
reasoning about the units of values in the spreadsheet. The unit information is
automatically inferred from labels and headers that are contained in a spreadsheet, which
allows communication about errors with the user's vocabulary.
|
The "ViTSL/Gencel" System
(see papers co-authored by Erwig)
 |
The ViTSL/Gencel system is based on the idea to anticipate the possible
evolutions of a spreadsheet and capture a class of spreadsheets in a template. A
program generator will then create an initial spreadsheet together with customized
update operations for such a template. These customized update operations allow users
to edit the created spreadsheet while ensuring that no reference, range, or type
errors can be introduced into the spreadsheet.
|
 |
Templates are created with an editor, called ViTSL, which is similar to Excel,
but offers additional functionality to specify templates. These templates can then be loaded
into the Gencel system, which is implemented as an extension to Excel, and allows the safe,
error-free editing of spreadsheets.
|
Related Research
|