[Editor(s) here] (ed.), [Book Titlen here], 1—26.
© 2005 Kluwer Academic Publishers. Printed in the Netherlands.
JOCHEN RODE, MARY BETH ROSSON, AND
MANUEL A. PÉREZ QUIÑONES
END USER DEVELOPMENT OF WEB APPLICATIONS
1. INTRODUCTION
Why would end users want to develop web applications? Why are they unable to do this
with today’s tools? Who are these end users? What are they like? To gain insight into
these questions—and the topic of this chapter—contrast these scenarios:
Anna uses today’s web tools Anna uses tomorrow’s web tools
As webmaster Anna manages a database
for registering clients in her company's
courses. Recently, she used a survey
authoring tool to build a web-based system:
clients now submit a registration form, which
Anna receives by e-mail. She reads and re-
enters the information she receives into a
spreadsheet. If a course has seats she
registers the person and emails a
confirmation; if not, she contacts and
coordinates with the client to re-schedule.
Often Anna’s boss asks for summary
reports, which she creates by hand, a
tedious process. Anna knows that these
repetitive and time-consuming activities
should be handled by the computer. But
while she knows how to create websites
using WYSIWIG editors she has no
programming experience. She has heard of
Javascript, so she enters “javascript
registration database” into a web search
engine. She is overwhelmed with results and
quickly becomes discouraged because few
of the pointers relate to her particular needs,
and the information is highly technical.
A few weeks after her initial effort, Anna
learns from a friend about a web
development tool that has been targeted at
nonprogrammers like her. She decides to
give it a try, clicking on the “create new web
application” link.
The development environment guides her
through the process of creating the screens
for her registration application as well as the
database behind the scenes. Designing the
application becomes even enjoyable when
Anna notices that the tool asks her the right
questions at the right time and uses familiar
language instead of the typical “techno-
babble.” At times it even seems that the tool
reads her mind. It allows her to quickly try out
different options, entering her own test data
and seeing what happens. Anna loses track
of time, totally engaged by her design
activity. Before the day is over she has fully
automated the registration process. Anna
has even managed to create a basic web-
based report generator for her boss. She
feels empowered and is proud of her
achievement.
The contrast shown in these two scenarios sketches out the challenges and motivation
underlying the work we report here. Our goal is to understand what end-user developers