The state of the art in end-user software engineering
@article{Ko2011TheSO, title={The state of the art in end-user software engineering}, author={Amy J. Ko and Robin Abraham and Laura Beckwith and Alan F. Blackwell and Margaret M. Burnett and Martin Erwig and Christopher Scaffidi and Joseph Lawrance and Henry Lieberman and Brad A. Myers and Mary Beth Rosson and Gregg Rothermel and Mary Shaw and Susan Wiedenbeck}, journal={ACM Computing Surveys (CSUR)}, year={2011}, volume={43}, pages={1 - 44} }
Most programs today are written not by professional software developers, but by people with expertise in other domains working towards goals for which they need computational support. For example, a teacher might write a grading spreadsheet to save time grading, or an interaction designer might use an interface builder to test some user interface design ideas. Although these end-user programmers may not have the same goals as professional developers, they do face many of the same software…
Figures and Tables from this paper
571 Citations
Toward Theory-Based End-User Software Engineering
- Computer ScienceNew Perspectives in End-User Development
- 2017
This chapter advocate for stronger theory foundations and show the advantages through three theory-oriented projects: (1) the Explanatory Debugging approach, to help end users debug their intelligent assistants; (2) the GenderMag method, which identifies problems with gender inclusiveness in EUSE tools and other software; and (3) the Idea Garden approach, which helps end users to help themselves in overcoming programming barriers.
Automatic verification and validation wizard in web-centred end-user software engineering
- Computer ScienceJ. Syst. Softw.
- 2017
End-User Software Engineering and Why it Matters
- Computer ScienceJ. Organ. End User Comput.
- 2010
A philosophy of software engineering for end users is described, and a basic premise is that end-user software engineering can only succeed to the extent that it respects that the user probably has little expertise or even interest in software engineering.
What Is End-User Software Engineering and Why Does It Matter?
- Computer ScienceIS-EUD
- 2009
This paper considers what happens when the authors add to end-user programming environments considerations of software quality, going beyond the "create a program" aspect of end- user programming.
End-User Programmers and their Communities: An Artifact-based Analysis
- Computer Science2011 International Symposium on Empirical Software Engineering and Measurement
- 2011
An artifact-based community analysis of 32,000 mashups from the Yahoo! Pipes repository observed that, like with other online communities, there is great deal of attrition but authors that persevere tend to improve over time, creating pipes that are more configurable, diverse, complex, and popular.
Enabling Domain Experts to Develop Usable Software Artifacts
- Computer Science
- 2013
This chapter analyzes the approaches presented in literature that address multi-tiered proxy design problems, and proposes a preliminary solution based on meta-design and meta-modeling.
Supporting the cooperation of end-user programmers through social development environments
- Computer ScienceWeb2SE '11
- 2011
From the implementation of the presented social mechanisms, an improvement in cooperation and mutual help in communities of end-user programmers is expected, as good practices are more likely to spread.
Future of end-user software engineering: beyond the silos
- Computer ScienceFOSE
- 2014
It is shown how the future of EUSE may become over-siloed, restricting future researchers' vision of what can be achieved, and how focusing on the in-the-moment intents of end-user developers can be used to derive a number of promising directions forward.
A web-centred approach to end-user software engineering
- Computer ScienceTSEM
- 2013
This article sets out an approach to EUSE for web-based applications and proposes a software lifecycle that is consistent with the conditions and priorities of end users without programming skills and is well-aligned with EUSE's characteristic informality, ambiguity and opportunisticness.
What happened to my application? Helping end users comprehend evolution through variation management
- Computer ScienceInf. Softw. Technol.
- 2018
References
SHOWING 1-10 OF 337 REFERENCES
Some Problems of Professional End User Developers
- Computer Science
- 2007
The problems that professional end user developers face in meeting the demands of software development given the culture in which they work and their normal development practice are examined.
End-user software engineering with assertions in the spreadsheet paradigm
- Computer Science25th International Conference on Software Engineering, 2003. Proceedings.
- 2003
An approach for supporting assertions in end-user software, focusing on the spreadsheet paradigm is described, and results show that the end users were able to use the assertions to reason about their spreadsheets, and that doing so was tied to both greater correctness and greater efficiency.
End User Development of Web Applications
- Computer ScienceEnd User Development
- 2006
This chapter investigates entry barriers and approaches for facilitating end-user web application development with the particular focus on shaping web programming technology and tools according to…
Web application development by nonprogrammers: user-centered design of an end-user web development tool
- Computer Science
- 2005
This work investigates entry barriers and approaches for facilitating end-user web application development with the particular focus on shaping web programming technology and tools according to…
A Small Matter of Programming: Perspectives on End User Computing
- Computer Science
- 1993
From the Publisher:
A Small Matter of Programming asks why it has been so difficult for end users to command programming power and explores the problems of end-user-driven application development…
End-User Development: The Software Shaping Workshop Approach
- Computer ScienceEnd User Development
- 2006
This chapter discusses a framework for End-User Development and presents the methodology for designing software environments that support the activities of a particular class of end-users, called domain-expert users, with the objective of making their work with the computer easier.
End-User Development as Adaptive Maintenance
- Computer ScienceEnd User Development
- 2006
This chapter takes up tailoring as a means of making software flexible and shows that the borders between maintenance and use become blurred since tailorability can replace maintenance by professional software engineers by tailoring by advanced users.
Software Development Environments for Scientific and Engineering Software: A Series of Case Studies
- Computer Science29th International Conference on Software Engineering (ICSE'07)
- 2007
Nine lessons learned from five representative projects are presented, along with their software engineering implications, to provide insight into the software development environments in this domain.
An empirical study of fault localization for end-user programmers
- Computer ScienceProceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005.
- 2005
The results of an empirical study conducted in an end-user programming environment are presented to examine the impact of two separate factors in fault localization techniques that affect technique effectiveness.
The reuse of uses in Smalltalk programming
- Computer ScienceTCHI
- 1996
An empirical study of expert Smalltalk programmers reusing user interface classes in small graphical applications to develop a qualitative characterization of expert reuse strategies that could be used to identify requirements for teaching and supporting reuse programming.