Helping End-User Programmers "Engineer" Software: an Opportunity for Empirical Researchers

Gregg Rothermel
{"title":"Helping End-User Programmers \"Engineer\" Software: an Opportunity for Empirical Researchers","authors":"Gregg Rothermel","doi":"10.1109/ESEM.2007.42","DOIUrl":null,"url":null,"abstract":"While much of the software that people depend on is written by professional software engineers, increasingly, important applications are being created by non-professional (end-user) programmers. Using tools such as spreadsheet environments and web authoring tools, these programmers are creating software that is being used to support significant activities and inform decisions. Such software needs to work dependably and increase user productivity, but evidence shows that it frequently does not. For example, studies have shown that a large percentage of the spreadsheets created by end-users contain faults, and data suggests that time spent maintaining web macros may actually impede their users' overall efforts. In recent years researchers have begun to address this problem, considering various approaches to adapting software engineering techniques to the realm of end-user programming. For example, researchers have sought ways to help end users test and debug spreadsheets, and to increase productivity in web macros by combining them with various software engineering devices. To make progress in this area, researchers are turning to empirical studies, in order to investigate new approaches, understand the factors that influence them, and better understand issues related to end user programmers themselves. In this talk I will present recent work being done in end-user software engineering, with a particular focus on the state of the art of empirical research in the area. I will show that there is a pressing need for further empirical work in this context, and that there are interesting questions that researchers from the ESEM community could help to answer. For example, how are end-users different from programmers, and how does that affect how we conduct the research? (Are there assumptions we make when doing studies with programmers that do not hold with end-users? What are the threats to validity when, say, we use CS students as subjects in end-user studies?) As another example, how are end-users different from each other and how does that affect study results? (The end-user community is much more diverse than the professional programmer community. What are the important context variables one needs to capture when studying them?) A concerted effort by the ESEM community on such issues could result in a substantial impact on society as a whole, and on the everyday lives of many people.","PeriodicalId":124420,"journal":{"name":"First International Symposium on Empirical Software Engineering and Measurement (ESEM 2007)","volume":"11 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"First International Symposium on Empirical Software Engineering and Measurement (ESEM 2007)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ESEM.2007.42","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2

Abstract

While much of the software that people depend on is written by professional software engineers, increasingly, important applications are being created by non-professional (end-user) programmers. Using tools such as spreadsheet environments and web authoring tools, these programmers are creating software that is being used to support significant activities and inform decisions. Such software needs to work dependably and increase user productivity, but evidence shows that it frequently does not. For example, studies have shown that a large percentage of the spreadsheets created by end-users contain faults, and data suggests that time spent maintaining web macros may actually impede their users' overall efforts. In recent years researchers have begun to address this problem, considering various approaches to adapting software engineering techniques to the realm of end-user programming. For example, researchers have sought ways to help end users test and debug spreadsheets, and to increase productivity in web macros by combining them with various software engineering devices. To make progress in this area, researchers are turning to empirical studies, in order to investigate new approaches, understand the factors that influence them, and better understand issues related to end user programmers themselves. In this talk I will present recent work being done in end-user software engineering, with a particular focus on the state of the art of empirical research in the area. I will show that there is a pressing need for further empirical work in this context, and that there are interesting questions that researchers from the ESEM community could help to answer. For example, how are end-users different from programmers, and how does that affect how we conduct the research? (Are there assumptions we make when doing studies with programmers that do not hold with end-users? What are the threats to validity when, say, we use CS students as subjects in end-user studies?) As another example, how are end-users different from each other and how does that affect study results? (The end-user community is much more diverse than the professional programmer community. What are the important context variables one needs to capture when studying them?) A concerted effort by the ESEM community on such issues could result in a substantial impact on society as a whole, and on the everyday lives of many people.
帮助最终用户程序员“工程”软件:经验研究人员的机会
虽然人们依赖的大部分软件是由专业软件工程师编写的,但越来越多的重要应用程序是由非专业(最终用户)程序员创建的。使用电子表格环境和网络创作工具等工具,这些程序员正在创建用于支持重要活动和通知决策的软件。这样的软件需要可靠地工作并提高用户的工作效率,但有证据表明,它经常做不到这一点。例如,研究表明,最终用户创建的电子表格中有很大一部分包含错误,数据表明,维护网络宏所花费的时间实际上可能会阻碍用户的整体努力。近年来,研究人员已经开始解决这个问题,考虑了将软件工程技术应用于最终用户编程领域的各种方法。例如,研究人员已经找到了帮助最终用户测试和调试电子表格的方法,并通过将web宏与各种软件工程设备相结合来提高web宏的生产力。为了在这一领域取得进展,研究人员正在转向实证研究,以调查新的方法,了解影响它们的因素,并更好地理解与最终用户程序员本身相关的问题。在这次演讲中,我将介绍最近在终端用户软件工程方面所做的工作,并特别关注该领域实证研究的最新进展。我将表明,在这一背景下,迫切需要进一步的实证工作,并且ESEM社区的研究人员可以帮助回答一些有趣的问题。例如,终端用户与程序员有何不同,这对我们如何进行研究有何影响?(在与程序员一起做研究时,我们是否有一些假设与最终用户不符?比如,当我们把计算机科学专业的学生作为最终用户研究的对象时,效度会受到什么威胁?)再举一个例子,终端用户彼此之间有什么不同,这对研究结果有什么影响?(终端用户社区比专业程序员社区更加多样化。研究它们时需要捕捉的重要上下文变量是什么?)ESEM社区在这些问题上的一致努力可能对整个社会和许多人的日常生活产生重大影响。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信