16 International Journal of People-Oriented Programming, 2(1), 16-52, January-June 2012
Copyright © 2012, IGI Global. Copying or distributing in print or electronic forms without written permission of IGI Global is prohibited.
ABSTRACT
Mashups are newly envisaged applications, made up from local information sources and processes, Web
services and other distributed resources, bound together technically in some way. Interactive Development
Environments (IDE) used to build mashups are becoming more accessible to end-user programmers. Design
methods that end-users may apply to a given problem addressed by a mashup, are much less prevalent. This
paper describes an end-user-friendly design method called TANDEM and demonstrates the use of it in detail,
by way of an example: the design of a mashup of services that solves the so-called movie-cinema problem. An
implementation of the newly designed movie-cinema app is then built within the DigitalFriend, an end-user
programmer IDE. Furthermore, a signifcant part of the TANDEM design method, is then automated within
the development tool itself. This automation removes the most skilled task required by TANDEM of the end-
user: the automation of the process of Data Normalization. The automation applies data normalization to the
initial model of components and data sources that feed into the mashup. The presentation here relies on some
understanding of Data Normalization, so a simple example is presented. After this demonstrated example
of the method and the implementation, the paper discusses the applicability of a model achievable by end-
users using TANDEM coupled with the automated normalization process built into the IDE, versus, using a
top-down model by an experienced information analyst. In conclusion, the TANDEM method combined with
the automation as demonstrated, does empower an end-user to a signifcant degree in achieving a workable
mashup or distributed application. And furthermore, the TANDEM method does have broader applicability
to designing a broad class of logic programs, complementing the use of collected patterns in logic programs.
Automating the TANDEM
Design Method in End-User
Programming Environments
Steve Goschnick, University of Melbourne, Melbourne, VIC, Australia
Keywords: Computer Programming, Design Method, End-User Programming, Logic Programming, Logic
Programming Methodology, Mashups, Movie-Cinema Problem, People-Oriented Programming,
Prolog, Web Services Orchestration
1. INTRODUCTION
End-users are more and more able to build
mashups of Web services, local resources
and processes, and other distributed informa-
tion sources, into newly envisaged, and often
personalized applications. While the tools that
end-users may use have increased in number and
accessibility over the last decade, the methods
and design techniques that are targeted at end-
user programmers, have not followed suit. This
paper describes an end-user-friendly method
DOI: 10.4018/ijpop.2012010102