Computer Science and Engineering, Department of


Date of this Version



Department of Computer Science & Engineering, University of Nebraska-Lincoln, Technical Report, TR-UNL-CSE-2012-0008


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 pipes programmers can browse histories of pipes and retrieve specific versions. We have conducted two studies of this environment: an initial exploratory study and a larger controlled experiment. Our results support our beliefs that versioning will help pipes programmers create and debug mashups. Subsequent qualitative results provide further insights into the barriers faced by pipes programmers, the support for reuse provided by our approach, and the support for debugging provided, as well as insights into differences between users who have different levels of programming experience.