skip to main content
research-article

On the benefits of providing versioning support for end users: An empirical study

Published:01 February 2014Publication History
Skip Abstract Section

Abstract

End users with little formal programming background are creating software in many different forms, including spreadsheets, web macros, and web mashups. Web mashups are particularly popular because they are relatively easy to create, and because many programming environments that support their creation are available. These programming environments, however, provide no support for tracking versions or provenance of mashups. We believe that versioning support can help end users create, understand, and debug mashups. To investigate this belief, we have added versioning support to a popular wire-oriented mashup environment, Yahoo! Pipes. Our enhanced environment, which we call “Pipes Plumber,” automatically retains versions of pipes and provides an interface with which pipe programmers can browse histories of pipes and retrieve specific versions. We have conducted two studies of this environment: an exploratory study and a larger controlled experiment. Our results provide evidence that versioning helps pipe programmers create and debug mashups. Subsequent qualitative results provide further insights into the barriers faced by pipe programmers, the support for reuse provided by our approach, and the support for debugging provided.

References

  1. Thomas Berlage. 1994. A selective undo mechanism for graphical user interfaces based on command objects. Transactions on Computer Human Interaction 1, 3 (September 1994), 269--294. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Joel Brandt, Philip J. Guo, Joel Lewenstein, Mira Dontcheva, and Scott R. Klemmer. 2009. Opportunistic programming: Writing code to prototype, ideate, and discover. IEEE Software 26, 5 (September 2009), 18--24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Jill Cao, Kyle Rector, Thomas H. Park, Scott D. Fleming, Margaret Burnett, and Susan Wiedenbeck. 2010a. A debugging perspective on end-user mashup programming. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing. 149--156. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Jill Cao, Yann Riche, Susan Wiedenbeck, Margaret Burnett, and Valentina Grigoreanu. 2010b. End-user mashup programming: Through the design lens. In Proceedings of the ACM Conference on Human Factors in Computing Systems. 1009--1018. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Ping Chen, Matt Critchlow, Akash Garg, Chris Van Der Westhuizen, and André Van Der Hoek. 2003. Software Product-Family Engineering. Springer Verlag, 269--281.Google ScholarGoogle Scholar
  6. Ron Cody. 1988. SAS Workbook. Vol. 1. SAS Publishing.Google ScholarGoogle Scholar
  7. Allen Cypher, Mira Dontcheva, Tessa Lau, and Jeffrey Nichols. 2010. No Code Required: Giving Users Tools to Transform the Web. Morgan Kaufmann. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Mark Derthick and Steven F. Roth. 2001. Enhancing data exploration with a branching history of user operations. In Knowledge Based Systems. 65--74.Google ScholarGoogle Scholar
  9. Matthew D. Dinmore and C. Curtis Boylls. 2010. Empirically-observed end-user programming behaviors in Yahoo! Pipes. In Psychology of Programming Interest Group.Google ScholarGoogle Scholar
  10. Shirley Dowdy, Stanley Wearden, and Daniel Chilko. 2004. Statistics for Research, 3rd ed. Wiley.Google ScholarGoogle Scholar
  11. W. Keith Edwards, Takeo Igarashi, Anthony LaMarca, and Elizabeth D. Mynatt. 2000. A temporal model for multi-level undo and redo. In Proceedings of the ACM Symposium on User Interface Software and Technology. 31--40. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. May Eric, Eric Z. Ayers, and John T. Stasko. 1995. Using graphic history in browsing the world wide web. In International World Wide Web Conference. 11--14.Google ScholarGoogle Scholar
  13. Marc Fisher, Gregg Rothermel, Darren Brown, Mingming Cao, Curtis R. Cook, and Margaret Burnett. 2006. Integrating automated test generation into the WYSIWYT spreadsheet testing methodology. ACM Transactions on Software Engineering and Methodology 15 (April 2006), 150--194. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Sue Fitzgerald, Renée McCauley, Brian Hanks, Laurie Murphy, Beth Simon, and Carol Zander. 2010. Debugging from the student perspective. Transactions on Education 53, 3 (April 2010), 390--396. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Lars Grammel and Margaret-Anne Storey. 2008. An End User Perspective on Mashup Makers. Technical Report DCS-324-IR. Department of Computer Science, University of Victoria.Google ScholarGoogle Scholar
  16. Valentina Grigoreanu, James Brundage, Eric Bahna, Margaret M. Burnett, Paul Elrif, and Jeffrey Snover. 2009. Males’ and Females’ Script Debugging Strategies. In Proceedings of the International Symposium on End-User Development. 205--224. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Björn Hartmann, Sean Follmer, Antonio Ricciardi, Timothy Cardenas, and Scott R. Klemmer. 2010a. d.note: revising user interfaces through change tracking, annotations, and alternatives. In Proceedings of the ACM Conference on Human Factors in Computing Systems. 493--502. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Björn Hartmann, Daniel MacDougall, Joel Brandt, and Scott R. Klemmer. 2010b. What would other programmers do: suggesting solutions to error messages. In Proceedings of the ACM Conference on Human Factors in Computing Systems. 1019--1028. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Paul Heckel. 1978. A technique for isolating differences between files. Commun. ACM 21, 4 (April 1978), 264--268. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Jeffrey Heer, Jock D. Mackinlay, Chris Stolte, and Maneesh Agrawala. 2008. Graphical histories for visualization: Supporting analysis, communication, and evaluation. Transactions on Visualization and Computer Graphics 14 (November 2008), 1189--1196. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Ron R. Hightower, Laura T. Ring, Jonathan I. Helfman, Benjamin B. Bederson, and James D. Hollan. 1998. PadPrints: Graphical multiscale web histories. In Proceedings of the ACM Symposium on User Interface Software and Technology. 58--65. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Angus F. M. Huang, Shin Bo Huang, Evan Y. F. Lee, and Stephen J. H. Yang. 2008. Improving end-user programming with situational mashups in Web 2.0 environments. In IEEE International Symposium on Service-Oriented System Engineering. 62--67. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Adam Jatowt, Yukiko Kawai, Hiroaki Ohshima, and Katsumi Tanaka. 2008. What can history tell us?: Towards different models of interaction with document histories. In Proceedings of the Hypertext and Hypermedia. 5--14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Michael Jones and Christopher Scaffidi. 2011. Obstacles and opportunities with using visual and domain-specific languages in scientific programming. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing. 9--16.Google ScholarGoogle ScholarCross RefCross Ref
  25. M. Cameron Jones and Elizabeth F. Churchill. 2009. Conversations in developer communities: A preliminary analysis of the Yahoo! Pipes community. In Proceedings of the International Conference on Communities and Technologies. 51--60. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Shaun Kaasten and Saul Greenberg. 2001. Integrating back, history and bookmarks in web browsers. In Extended Abstracts on Human Factors in Computing Systems. 379--380. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Scott R. Klemmer, Michael Thomsen, Ethan Phelps-Goodman, Robert Lee, and James A. Landay. 2002. Where do web sites come from?: capturing and interacting with design history. In Proceedings of the ACM Conference on Human Factors in Computing Systems. 1--8. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Andrew J. Ko, Robin Abraham, Laura Beckwith, Alan Blackwell, Margaret Burnett, Martin Erwig, Chris Scaffidi, Joseph Lawrance, Henry Lieberman, Brad Myers, Mary Beth Rosson, Gregg Rothermel, Mary Shaw, and Susan Wiedenbeck. 2011. The state of the art in end-user software engineering. Comput. Surveys 43, 3 (April 2011), 21:1--21:44. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Andrew J. Ko and Brad A. Myers. 2004. Designing the whyline: a debugging interface for asking questions about program behavior. In Proceedings of the ACM Conference on Human Factors in Computing Systems. 151--158. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Andrew J. Ko, Brad A. Myers, and Htet Htet Aung. 2004a. Six learning barriers in end-user programming systems. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing. 199--206. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Andrew J. Ko, Brad A. Myers, and Htet H. Aung. 2004b. Six learning barriers in end-user programming systems. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing. 199--206. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Sandeep Kaur Kuttal, Anita Sarma, and Gregg Rothermel. 2011a. History repeats itself more easily when you log it: Versioning for mashups. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing. 69--72.Google ScholarGoogle ScholarCross RefCross Ref
  33. Sandeep Kaur Kuttal, Anita Sarma, Amanda Swearngin, and Gregg Rothermel. 2011b. Versioning for mashups—An exploratory study. In Proceedings of the International Symposium on End-User Development. 25--41. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Clayton H. Lewis. 1982. Using the “Thinking Aloud” Method In Cognitive Interface Design. RC 9265. IBM.Google ScholarGoogle Scholar
  35. Henry Lieberman, Fabio Paterno, and Volker Wulf. 2006. End User Development. Vol. 9. Springer Netherlands.Google ScholarGoogle Scholar
  36. Akhil Mehra, John Grundy, and John Hosking. 2005. A generic approach to supporting diagram differencing and merging for collaborative design. In Proceedings of the International Conference on Automated Software Engineering. 204--213. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Chii Meng, Motohiro Yasue, Atsumi Imamiya, and Xiaoyang Mao. 1998. Visualizing Histories for Selective Undo and Redo. In Proceedings of the ACM Conference on Human Factors in Computing Systems. 459--464. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Don Norman. 1996. The Psychology of Everyday Things. Vol. 1. Basic Books.Google ScholarGoogle Scholar
  39. Dirk Ohst, Michael Welle, and Udo Kelter. 2003. Differences between versions of UML diagrams. In Proceedings of the International Symposium on the Foundations of Software Engineering. 227--236. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Mary Beth Rosson and John M. Carroll. 1993. Active programming strategies in reuse. In Proceedings of the 7th European Conference on Object-Oriented Programming. Springer-Verlag, London, UK, 4--20. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Mary Beth Rosson and John M. Carroll. 1996. The reuse of uses in Smalltalk programming. Transactions on Computer Human Interaction 3, 3 (September 1996), 219--253. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Christopher Scaffidi, Mary Shaw, and Brad A. Myers. 2005. Estimating the numbers of end users and end user programmers. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing. 207--214. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Arne Schipper, Hauke Fuhrmann, and Reinhard von Hanxleden. 2009. Visual Comparison of Graphical Models. In Proceedings of the International Conference on Engineering of Complex Computer Systems. 335--340. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Katie Stolee, Sebastian Elbaum, and Anita Sarma. 2011. End-User programmers and their communities: An artifact-based analysis. In Proceedings of the International Symposium on Empirical Software Engineering and Measurement. 147--156. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Kathryn T. Stolee and Sebastian Elbaum. 2011. Refactoring pipe-like mashups for end-user programmers. In Proceedings of the International Conference on Software Engineering. 81--90. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. Jaime Teevan, Susan T. Dumais, and Daniel J. Liebling. 2010. A longitudinal study of how highlighting web content change affects people’s web interactions. In Proceedings of the ACM Conference on Human Factors in Computing Systems. 1353--1356. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Jaime Teevan, Susan T. Dumais, Daniel J. Liebling, and Richard L. Hughes. 2009. Changing how people view changes on the web. In Proceedings of the ACM Symposium on User Interface Software and Technology. 237--246. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Walter F. Tichy. 1985. RCS-A system for version control. Software: Practice & Experience 15, 7 (July 1985), 637--654. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Claes Wohlin, Per Runeson, Martin Höst, Magnus C. Ohlsson, Björn Regnell, and Anders Wesslén. 2000. Experimentation in Software Engineering: An Introduction. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. Allison Woodruff, Andrew Faulring, Ruth Rosenholtz, Julie Morrsion, and Peter Pirolli. 2001. Using thumbnails to search the Web. In Proceedings of the ACM Conference on Human Factors in Computing Systems. 198--205. Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. Nan Zang and Mary B. Rosson. 2008. What’s in a mashup? And why? Studying the perceptions of web-active end users. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing. 31--38. Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. Nan Zang and Mary B. Rosson. 2009. Playing with information: How end users think about and integrate dynamic data. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing. 85--92. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. On the benefits of providing versioning support for end users: An empirical study

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          Full Access

          • Published in

            cover image ACM Transactions on Computer-Human Interaction
            ACM Transactions on Computer-Human Interaction  Volume 21, Issue 2
            February 2014
            203 pages
            ISSN:1073-0516
            EISSN:1557-7325
            DOI:10.1145/2592268
            Issue’s Table of Contents

            Copyright © 2014 ACM

            Permission to make digital or hard copies of all or part 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 components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 1 February 2014
            • Revised: 1 December 2013
            • Accepted: 1 December 2013
            • Received: 1 October 2013
            Published in tochi Volume 21, Issue 2

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article
            • Research
            • Refereed

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader