skip to main content
10.1145/1083231.1083232acmotherconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
Article

An approach for categorizing end user programmers to guide software engineering research

Published: 21 May 2005 Publication History

Abstract

Over 64 million Americans used computers at work in 1997, and we estimate this number will grow to 90 million in 2012, including over 55 million spreadsheet and database users and 13 million self-reported programmers. Existing characterizations of this end user population based on software usage provide minimal guidance on how to help end user programmers practice better software engineering. We describe an enhanced method of characterizing the end user population, based on categorizing end users according to the ways they represent abstractions. Since the use of abstraction can facilitate or impede achieving key software engineering goals (such as improving reusability and maintainability), this categorization promises an improved ability to highlight niches of end users with special software engineering capabilities or struggles. We have incorporated this approach into an in-progress survey of end user programming practices.

References

[1]
Balaban, M., Barzilay, E., and Elhadad, M. Abstraction as a Means for End User Computing in Creative Applications. IEEE Transactions on Systems, Man and Cybernetics, Part A, 32, 6 (Nov. 2002), 640--653.
[2]
Blackwell, A. First Steps in Programming: A Rationale for Attention Investment Models. In Proceedings of the IEEE 2002 Symposia on Human Centric Computing Languages and Environments, 2002, 2--10.
[3]
Blackwell, A., and Hague, R. AutoHAN: An Architecture for Programming the Home. In Proceedings of the IEEE 2001 Symposia on Human Centric Computing Languages and Environments, 2001, 150--157.
[4]
Bloom, B., Mesia, B., and Krathwohl, D. Taxonomy of Educational Objectives. David McKay Publishers, New York, NY, 1964.
[5]
Boehm, B., et al. Cost Models for Future Software Life Cycle Processes: COCOMO 2.0. Annals of Software Engineering Special Volume on Software Process and Product Measurement, J. C. Baltzer AG Science Publishers, Amsterdam, The Netherlands, 1995.
[6]
Boehm, B., et al. Software Cost Estimation with COCOMO II. Prentice-Hall, 2000.
[7]
Burnett, M., et al. Forms/3: A First-Order Visual Language to Explore the Boundaries of the Spreadsheet Paradigm. Journal of Functional Programming, 11, 2 (Mar. 2001), 155--206.
[8]
Douglas, S., Doerry, E., and Novick, D. Quick: A User-Interface Design kit for Non-Programmers. In Proceedings of the 3rd Annual ACM SIGGRAPH Symposium on User Interface Software and Technology, 1990, 47--56.
[9]
Edwards, N. The Effect of Certain Modular Design Principles on Testability. In Proceedings of the International Conference on Reliable Software, 1975, 401--410.
[10]
Fischer, G., and Girgensohn, A. End User Modifiability in Design Environments. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, 1990, 183--192.
[11]
Fisher II. M., and Rothermel, G. The EUSES Spreadsheet Corpus: A Shared Resource for Supporting Experimentation with Spreadsheet Dependability Mechanisms. Technical Report 04-12-03, University of Nebraska--Lincoln, Lincoln, NE, Dec. 2004.
[12]
Green, T., and Petre, M. Usability Analysis of Visual Programming Environments: A Cognitive Dimensions Framework. Journal of Visual Languages and Computing, 7, 2 (June 1996), 131--174.
[13]
Griswold, W., and Notkin, D. Automated Assistance for Program Restructuring. ACM Transactions on Software Engineering Methodology, 2, 3 (July 1993), 228--269.
[14]
Hall, J., A Risk and Control-Oriented Study of the Practices of Spreadsheet Application Developers. In Proceedings of the 29th Hawaii International Conference on System Sciences, 1996, 364--373.
[15]
Jones, S., Blackwell, A., and Burnett, M. A User-Centred Approach to Functions in Excel. In Proceedings of the 8th ACM SIGPLAN International Conference on Functional Programming, 2003, 165--176.
[16]
McDaniel, R., and Myers, B. Getting More Out of Programming-By-Demonstration. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, 1999, 442--449.
[17]
Miller, R., and Myers, B. LAPIS: Smart Editing with Text Structure. In CHI'02 Extended Abstracts on Human Factors in Computing Systems, 2002, 496--497.
[18]
Modugno, F., and Myers, B. Pursuit: Graphically Representing Programs in a Demonstrational Visual Shell. In Proceedings of the CHI '94 Conference Companion on Human Factors in Computing Systems, 1994, 455--456.
[19]
Nardi, B. A Small Matter of Programming, MIT Press, Cambridge, MA, 1993.
[20]
Panko, R. What we know about spreadsheet errors. Journal of End User Computing, 10, 2 (Spring 1998), 15--21.
[21]
Parnas, D. The Influence of Software Structure on Reliability. In Proceedings of the International Conference on Reliable Software, 1975, 358--362.
[22]
Parnas, D. On the Criteria to Be Used in Decomposing Systems into Modules. Communications of the ACM, 15, 12 (Dec. 1972), 1053--1058.
[23]
Ruthruff, J., et al. Debugging and Finding Faults: End User Software Visualizations for Fault Localization. In Proceedings of the 2003 ACM Symposium on Software Visualization, 2003, 123--132.
[24]
Scaffidi, C., Shaw, M., and Myers, B. The "55M End User Programmers" Estimate Revisited. Technical Report CMU-ISRI-05-100, Carnegie Mellon University, Pittsburgh, PA, 2005.
[25]
Shaw, M. Abstraction Techniques in Modern Programming Languages. IEEE Software, 1, 4 (Oct.1984), 10--26.
[26]
Smith, D., Cypher, A., and Spohrer, J. KidSim: Programming Agents without a Programming Language. Communications of ACM, 37, 7 (July 1994), 54--67.

Cited By

View all
  • (2017)Natural Contextual Reasoning for End UsersACM Transactions on Computer-Human Interaction10.1145/305786024:2(1-36)Online publication date: 27-Apr-2017
  • (2013)Lost while searchingProceedings of the 76th ASIS&T Annual Meeting: Beyond the Cloud: Rethinking Information Boundaries10.5555/2655780.2655801(1-11)Online publication date: 1-Nov-2013
  • (2012)Design and Implementation on Pen-Based E-Form Development Tool for End-UserProceedings of the 2012 Fifth International Symposium on Computational Intelligence and Design - Volume 0210.1109/ISCID.2012.190(151-154)Online publication date: 28-Oct-2012
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
WEUSE I: Proceedings of the first workshop on End-user software engineering
May 2005
65 pages
ISBN:1595931317
DOI:10.1145/1083231
  • cover image ACM SIGSOFT Software Engineering Notes
    ACM SIGSOFT Software Engineering Notes  Volume 30, Issue 4
    July 2005
    1514 pages
    ISSN:0163-5948
    DOI:10.1145/1082983
    Issue’s Table of Contents
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 21 May 2005

Check for updates

Author Tags

  1. abstraction
  2. end user programming
  3. end user software engineering

Qualifiers

  • Article

Acceptance Rates

Overall Acceptance Rate 20 of 21 submissions, 95%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)1
Reflects downloads up to 16 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2017)Natural Contextual Reasoning for End UsersACM Transactions on Computer-Human Interaction10.1145/305786024:2(1-36)Online publication date: 27-Apr-2017
  • (2013)Lost while searchingProceedings of the 76th ASIS&T Annual Meeting: Beyond the Cloud: Rethinking Information Boundaries10.5555/2655780.2655801(1-11)Online publication date: 1-Nov-2013
  • (2012)Design and Implementation on Pen-Based E-Form Development Tool for End-UserProceedings of the 2012 Fifth International Symposium on Computational Intelligence and Design - Volume 0210.1109/ISCID.2012.190(151-154)Online publication date: 28-Oct-2012
  • (2012)Skill Progression Demonstrated by Users in the Scratch Animation EnvironmentInternational Journal of Human-Computer Interaction10.1080/10447318.2011.59562128:6(383-398)Online publication date: Jun-2012
  • (2010)Supporting the Spreadsheet Idea for Interactive Database ApplicationsHuman-Computer Interaction10.1007/978-3-642-15231-3_13(122-132)Online publication date: 2010
  • (2008)Requirements Engineering in End-User Computing: A review2008 International Symposium on Information Technology10.1109/ITSIM.2008.4631897(1-8)Online publication date: Aug-2008
  • (2008)Demonstration of Software Components for End-User DevelopmentProceedings of the 2nd Conference on Human-Centered Software Engineering and 7th International Workshop on Task Models and Diagrams10.1007/978-3-540-85992-5_29(293-298)Online publication date: 25-Sep-2008
  • (2006)Towards a "personal cost" model for end-user developmentProceedings of the 7th ACM SIGCHI New Zealand chapter's international conference on Computer-human interaction: design centered HCI10.1145/1152760.1152770(75-82)Online publication date: 6-Jul-2006
  • (2005)Estimating the Numbers of End Users and End User ProgrammersProceedings of the 2005 IEEE Symposium on Visual Languages and Human-Centric Computing10.1109/VLHCC.2005.34(207-214)Online publication date: 20-Sep-2005
  • (2005)Helping End-Users "Engineer" Dependable Web ApplicationsProceedings of the 16th IEEE International Symposium on Software Reliability Engineering10.1109/ISSRE.2005.20(31-40)Online publication date: 8-Nov-2005
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media