Academia.eduAcademia.edu

End Users and GIS

2001, Elsevier eBooks

Abstract

This chapter presents a programming-by-demonstration (PBD) approach to Geographical Information Systems (GIS). The aim of our approach is to enable non-specialist users to avail themselves of the software without having to resort to the help of expert users. We begin with a story of one group of non-specialist users who encountered difficulty with GIS software. Next we summarize findings of a study of why GIS software is hard for non-specialist users to use. Then we describe in detail the PBD approach for GIS and explain how this component may be integrated into a GIS. Your Wish is My Command

Color profile: Generic CMYK printer profile Composite Default screen Chapter Six End Users and GIS: A Demonstration Is Worth a Thousand Words Carol Traynor Saint Anselm College Marian G. Williams University of Massachusetts, Lowell S R L V:\002564\002564.VP Monday, December 18, 2000 1:30:41 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 115 Color profile: Generic CMYK printer profile Composite Default screen 116 Your Wish is My Command Abstract This chapter presents a programming-by-demonstration (PBD) approach to Geographical Information Systems (GIS). The aim of our approach is to enable non-specialist users to avail themselves of the software without having to resort to the help of expert users. We begin with a story of one group of non-specialist users who encountered difficulty with GIS software. Next we summarize findings of a study of why GIS software is hard for non-specialist users to use. Then we describe in detail the PBD approach for GIS and explain how this component may be integrated into a GIS. 6.1 Introduction Geographic information systems (GISs) are in wide use by city planners, landscape architects, natural resource managers, and other specialists who have the expertise—or the trained staff—to use them. Many nonspecialists (e.g., community activists lobbying for change in their inner-city neighborhoods) would like to be able to use GIS. However, GIS software is not accessible to them, because, in its current incarnation, it requires a knowledge of geography, cartography, and database systems. Despite an enormous pool of potential nonspecialist users, GIS is not at this time a mainstream, massmarketed application. In this chapter, we present a programming-by-demonstration (PBD) approach to GIS that offers promise for enabling nonspecialists to avail themselves of the power of GIS. We begin with a story of a group of nonspecialists who encountered major difficulties when they tried to use a GIS. We summarize the findings of a study about why such users find GIS so very difficult to use. We then describe a PBD approach to GIS that shows promise for making GIS accessible to nonspecialist users, and we explain how this PBD component may be integrated into a GIS. 6.2 A Story of End Users and GIS Several years ago, we had the opportunity to observe a group of faculty from a local university as they embarked on a project to make a GIS available to residents of a nearby inner-city neighborhood. The goal of the project was S R L V:\002564\002564.VP Monday, December 18, 2000 1:30:41 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 116 Color profile: Generic CMYK printer profile Composite Default screen Chapter Six: A Demonstration Is Worth a Thousand Words 117 to equip residents of the economically depressed neighborhood, many of whom were recent immigrants, so that they could effectively influence governmental decisions impacting their quality of life. With a GIS, the residents should be able to study and present maps showing the distribution of crime across the city, thereby bolstering their arguments for the placement of a new police precinct within the neighborhood. With a GIS, they should be able to arm themselves with maps showing the proximity of toxic waste sites to their children’s schools and lobby effectively to have the sites cleaned up. The faculty members came from diverse disciplines, including community psychology and public health nursing. They were smart, capable people with advanced degrees and good problem-solving skills. They were regular computer users, proficient with applications for word-processing their academic papers, making slides for presentations, and exchanging email. They approached the adoption of GIS with careful planning. To help them select the right GIS software and get them started using it in the neighborhood project, we engaged a GIS expert for them to consult (Kuhn, Richardson, and Williams 1994). After several long sessions with the consultant, they purchased one of the best-known mass-marketed GIS products. Despite the careful approach and the consultations with the expert, they found it dauntingly difficult to use the GIS. They were, of course, perfectly capable of going out and taking training courses and understanding the material in such courses. But their time, attention, and brainpower needed to be directed at the content of the project, not at how to use a complicated software tool. Needless to say, it was obvious from the start that if the faculty members could not use the GIS, then it would be even further beyond the abilities of non-computer-using neighborhood residents. What did the faculty members do? They hired computer science graduate students to use the GIS for them. We call these grad students their surrogate users. In styling them thus, we mean no disrespect for the faculty members, who retained responsibility for the intellectual content of the project and who specified the nature of the information displays to be created with the GIS. The surrogate users provided a human interface between the faculty members and the software interface. It was the graduate students who produced the displays that the faculty members and neighborhood residents needed. Engaging surrogate users has been observed in a variety of other circumstances, when technology has been (intentionally or unintentionally) unavailable for direct use by nonspecialist end users. For example, directory assistance operators have long served as surrogate users of technology to search for telephone listings, though some of that technology has now been S R L V:\002564\002564.VP Monday, December 18, 2000 1:30:41 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 117 Color profile: Generic CMYK printer profile Composite Default screen 118 Your Wish is My Command made available to end users on the Web. Like us, Garson and Biggs (1992) and Egenhofer (1995) have observed the need for surrogate users for GIS software. What exactly did the grad students do for the faculty members? The first task, after spending a nontrivial amount of time learning how to use the software, was to locate, reformat, and import data files. Once the data sets were installed, they used the GIS to create information displays on maps. They also attempted, unsuccessfully, to use the GIS’s built-in scripting language to create an application that the social scientists could use. However, the possible customizations were too minimal to help solve the problems. In simple terms, the grad students were needed for (1) getting data in and (2) getting information out. We focus here on the problem of getting the information out of a GIS and on the characteristics of the current crop of GIS software that make it so very difficult for nonspecialists to use. 6.3 Why Is GIS Software So Hard To Use? What is it about GIS software that makes it so hard to use, so hard to get the information out? To answer this question, we looked closely at seven commonly used GIS software packages, including the one the faculty members were using. We chose some simple tasks that GIS users are apt to perform repeatedly—for example, opening a map—and analyzed the knowledge and steps necessary for performing them (Traynor and Williams 1995). This task analysis showed that, in general, the GISs had three serious obstacles to use by nonspecialists: 1. They used technical terminology and technical concepts from cartography, geography, and database systems (e.g., the user needs to know what an overlay is in the cartographic sense and what a query is in the database sense). 2. They required the user to have a mental model of the software architecture to perform a task, since the sequence of steps was based on the way data were stored and represented (e.g., the user needs to know the structure of the database). In other words, each of the GISs required users to translate a task from their own language into its language, as well as to understand its software S R L V:\002564\002564.VP Monday, December 18, 2000 1:30:41 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 118 Color profile: Generic CMYK printer profile Composite Default screen Chapter Six: A Demonstration Is Worth a Thousand Words 119 architecture. Little wonder, then, that the grad students hired to work on the neighborhood project became immersed in the terminology of GIS and in a way of thinking about their work that the software imposed on them. Even when coached, they had trouble communicating with the users they served, because of the burden of translating between GIS-speak and the real-world terminology of the users. Another issue common to all of the GISs we examined was the following: 3. They provided no record of how a display of information on a map was created, other than, perhaps, a representation in a database query language. The GIS users we observed created information displays by trial and error, with the result that once they arrived at a useful display, they had no record of how they had achieved it. Also, they had no way to create a similar, but different, display, other than more trial and error. Without a record of how an information display was created (except, perhaps, in a database query language such as SQL that nonspecialists cannot read), a GIS user has no way to program the GIS. He or she tends to start over from scratch all the time. Heuristics for designing this next-generation GIS software follow naturally from the problems we identified with the current generation: 1. Present the human-computer interaction in terms of the user’s task. 2. Protect the user from needing technical expertise from cartography, geography, or database systems. 3. Protect the user from having to know about the software architecture. 4. Provide a program representation of the steps for creating an information display. Some of these heuristics are widely accepted principles of software human factors and familiar rules of thumb for designers of interactive systems. However, they have special applicability to software, such as GIS, that has arisen out of a particular technical community. Interaction that fits the task model and the expertise of a specialist may be incomprehensible to a nonspecialist. Similarly, a program representation, if present, may be represented in a language familiar to the specialist but alien to the nonspecialist. We observe a pattern to the way technical software gets mainstreamed and becomes successful in the mass market. First, its applicability beyond S R L V:\002564\002564.VP Monday, December 18, 2000 1:30:42 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 119 Color profile: Generic CMYK printer profile Composite Default screen 120 Your Wish is My Command the original technical domain becomes widely recognized. There follows a phase in which new users become specialists, or engage the help of surrogate users. Then attempts are made to modify the software to make it usable by nonspecialists. Finally, the software is reconceptualized for the nonspecialist end users. Only then does it succeed in the mass market. Spreadsheets, CAD, and Web browsers are examples of software that has traveled this route. GIS originated in the geographers’ community. Its enormous applicability beyond that community is clear, though at the moment, nonspecialists need surrogate users to exercise the software for them. Now the question is whether we are still tweaking the software in the hopes that small changes will make a difference to nonspecialist users, or whether designers are finally starting to think about GIS from the nonspecialist’s point of view. 6.4 Are Things Improving for GIS Users? We recently revisited the GIS packages that we looked at a few years ago and can report that things have improved for GIS specialist users. The software packages now reside on mainstream platforms, such as Windows. The vendors have started to take usability issues seriously. And more research has been done on how people use spatial data. But what about nonspecialist users? One of the major vendors of GIS software now has a product aimed at first-time GIS users and has published a book to accompany it. The company’s Web site suggests that “everyone” can now use GIS: “Within minutes, you’ll be able to create attractive and accurate digital maps that you can print, embed in documents, e-mail, or publish on the World Wide Web.” Unfortunately, interacting with the software requires learning many of the same technical concepts and terms (e.g., the technical meanings of “theme” and “coverage”) that full-fledged GIS software requires. Queries are just thinly disguised SQL. In research labs, new ways of querying a GIS are being explored. For example, Standing and Roy (1997) have proposed a visual functional query language for creating macros. Aufaure-Portier (1995) has devised a visual gesture language for describing spatial relationships, such as adjacency and inclusiveness. Richards and Egenhofer (1995) have designed a dragand-drop interface that lets the user stack up icons, as if they were blocks; the resulting stack shows how information should be used on a map. Ahlberg and Shneiderman (1994) have shown the usefulness of letting users create dynamic database queries by manipulating alphasliders to select V:\002564\002564.VP Monday, December 18, 2000 1:30:42 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 120 S R L Color profile: Generic CMYK printer profile Composite Default screen Chapter Six: A Demonstration Is Worth a Thousand Words 121 values for the various parameters. Some of these approaches require technical knowledge (e.g., Standing’s query language uses icons representing functions such as Union and Buffer). None of them provides a savable, retrievable, editable program representation written in a language that nonspecialists can read. 6.5 How Can Programming by Demonstration Help? In the PBD paradigm, the software “watches” while the user “demonstrates” how to do a task. The software makes inferences about what the user is doing and creates a program that will do the same thing. Depending on the sophistication of the software, the resulting program may be hard-wired for the specific task the user demonstrated (in which case it functions like a macro), or it may be generalizable to similar tasks. (See Cypher 1993 for extensive discussion and case studies of PBD.) The PBD software creates a representation of the program it has inferred. Sometimes, the representation is internal and cannot be viewed by the user. Often, it is accessible to the user but written in a language best understood by a trained programmer (e.g., Lisp). However, to be usable by nonspecialists, the program representation needs to be written in a language that is accessible to nonprogrammers. The program representation language needs to be • free of technical terminology, • independent of the software architecture, and • expressed in terms of the user’s task. For the program representation to be useful, the user must be able to do more than just see it and read it. The user must also be able to use it in the following ways: • view it while it is being constructed, in order to check whether the software is making correct inferences; • save and retrieve it for later use; • execute it on demand; and • edit it for performing similar tasks. S R V:\002564\002564.VP Monday, December 18, 2000 1:30:42 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 121 L Color profile: Generic CMYK printer profile Composite Default screen 122 Your Wish is My Command Figure 6.1 User’s interaction with the GIS interface ce en er f in ex ec ut io n Program (in program representation language) co m pi lat io n n tio cu e ex Information Display Chart or Map Program (in GIS database query language) How a user’s interactions with the GIS interface are processed. For a GIS, having a program representation that can be understood by nonspecialist users means that a user’s interactions with the interface of the GIS are processed in two different ways. First, the instructions are executed and the results shown in an information display, either in a chart or on a map. Second, a program is inferred from the user’s actions and encoded in the program representation language. If the user wishes to run the program later on, it needs to be compiled into the GIS’s database query language for execution. Figure 6.1 shows the two different ways that the users’ interactions with the interface are processed. If the program has been inferred from the user’s actions and the program is run later, the resulting information display should be identical to the one that the user constructed by hand. Of course, if the user has edited the program, then the information display would differ accordingly. S R L V:\002564\002564.VP Monday, December 18, 2000 1:30:47 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 122 Color profile: Generic CMYK printer profile Composite Default screen Chapter Six: A Demonstration Is Worth a Thousand Words 6.6 123 A Programming-by-Demonstration Approach for GIS: C-SPRL We are using a PBD approach to making GIS accessible to the nonspecialist users. The specific user population we are designing for can be characterized as people who • wish to focus on their own domain tasks; • use a computer as a vehicle to accomplish those tasks; • have little or no programming knowledge; and • have no expertise in geography, cartography, database systems, or GIS. Examples of this kind of user include the concerned mother who wants to ask, “Show me the bars and liquor stores within a mile of my child’s school” or the community activist who wants to say, “Show me data on traffic problems in all of the city’s neighborhoods”—and who should not need to understand cartography and database systems to formulate their questions. Figure 6.2 shows the PBD GIS user interface. There are two main parts to the interface: the GIS component (upper part) and the PBD component (lower part). The architecture of the GIS for nonspecialist users corresponds to Figure 6.1. The user interacts with a graphical user interface (GUI) designed to support the way the nonspecialist user thinks about his or her tasks (e.g., map is used in the common, everyday sense, not the cartographic sense). His or her instructions are carried out, and an information display is created on a chart or a map or both. Simultaneously, a program representation is created and displayed. The PBD component for GIS allows the user to interact in two modes: record and edit. In record mode, the user interacts with the GIS GUI, and the system infers the program representation based on the user’s actions. Record mode is the default mode. Edit mode allows the user to edit the program representation directly so that he or she can correct or modify a query or create a new query. The user can switch to edit mode by choosing Edit from the Mode menu from the GIS GUI. In Edit mode a menubar is displayed in the PBD window. (See Figure 6.8 later for the options available in Edit mode.) The program representation language uses a comic-strip metaphor. A program consists of a series of panels, just the way a comic strip does. A S R L V:\002564\002564.VP Monday, December 18, 2000 1:30:47 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 123 Color profile: Generic CMYK printer profile Composite Default screen 124 Your Wish is My Command Figure 6.2 The PBD GIS interface in Record mode. The query depicted is “Show me the location of Saints Memorial Hospital.” panel to the left of another is a before panel; one to the right is an after panel. An operation on the contents of the before panel results in the contents of the after panel. Thus, a series of panels represents a sequence of transformations, in the temporal order in which they occur. We call the language the Comic-Strip Program Representation Language (C-SPRL, pronounced, “c-spiral”). C-SPRL is an extension of the Pursuit program representation language devised by Modugno (1995). C-SPRL uses the notion of categories of data, in which category is used in the normal everyday sense of the word. A category may be composed of one or more subcategories and/or of a number of individual category members. For example, the school system in many U.S. school districts consists of three categories of schools—namely, elementary schools (kindergarten to fifth grade), middle schools (sixth to eighth grade), and high schools (ninth to twelfth grade). In this case the overall category would be “Schools.” The category Schools would contain three subcategories: High Schools, Middle Schools, and Elementary Schools. Each of these three subcategories would contain a list of the individual schools in that subcategory. Categories form the basis for queries. Categories, subcategories, and individual members of categories S R L V:\002564\002564.VP Monday, December 18, 2000 1:30:48 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 124 Color profile: Generic CMYK printer profile Composite Default screen Chapter Six: A Demonstration Is Worth a Thousand Words Figure 125 6.3 Before panel 1 select Hospitals After panel 1 select show Saints Memorial map Before panel 2 After panel 2 Programs consist of before and after panels. This program depicts the query “Show me the location of Saints Memorial hospital.” are represented by rectangles. A shadow under a rectangle indicates a category or subcategory. A rectangle without a shadow represents an individual member of a category. Data displays are represented by chart panels (called “info”) and by map panels (called “map”). (Figure 6.7 later shows the symbols for both the chart and map panels.) The data display panels are abstractions, not realistic representations of actual screen objects as in, for example, Mondrian (Lieberman 1993). Figure 6.3 shows a very simple C-SPRL program representation with three panels. The query represented is “Show me the location of Saints Memorial hospital.” When a user interacts with the GUI of the GIS, the software infers a program and builds a representation of it, panel by panel, in a program display window. To construct the simple example of Figure 6.3, the user interacts with the GUI and begins by selecting the category Hospitals from the Select menu on the menubar (Figure 6.4 [a]). Once this action has been completed, the first panel appears in the PBD program area (Figure 4[b]). Notice that the category Hospitals is represented by a shadowed rectangle. A pop-up window with a list of choices appears in the GIS GUI (Figure 6.5). Since there are no subcategories in this category, a list of individual hospitals and a list of the actions or information that can be requested about the available hospitals are displayed. The user clicks on Saints Memorial. At this point the user can also indicate that he or she would like to see the location displayed on a map by clicking on the map button on the pop-up window. When the user has fi S R L V:\002564\002564.VP Monday, December 18, 2000 1:30:52 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 125 Color profile: Generic CMYK printer profile Composite Default screen 126 Your Wish is My Command Figure 6.4 select Hospitals (a) (b) (a) The categories from the select menu on the GIS GUI; (b) the panel created in the PBD area as a result of choosing Hospitals (a shadowed rectangle) from the select menu. Figure 6.5 Healthsouth Lowell General Saints Memorial Address Phone No. Emergency No. When the user selects Hospitals from the Select menu, a pop-up window with the list of hospitals and actions and/ or information that can be requested about the available hospitals appears on the screen. V:\002564\002564.VP Monday, December 18, 2000 1:30:59 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 126 S R L Color profile: Generic CMYK printer profile Composite Default screen Chapter Six: A Demonstration Is Worth a Thousand Words 127 nished choosing items from the Hospitals popup window, he or she clicks on the OK button. The second and third panel of the program representation now appear on the PBD screen. The location of Saints Memorial Hospital also appears on the map in the GIS GUI. Figure 6.2 shows both the GIS and PBD GUI for the results of this query. Notice also in the program representation that Saints Memorial hospital is represented by a rectangle without a shadow. The third panel is an example of a map panel. More complex user actions would result in multiple panels being added to the program representation. In building a query, the user uses a topdown approach. At each step in the query-building process, the user refines and narrows the search until reaching the level of granularity that he or she is looking for. The program representation does a variety of things for the user. First, it provides a visualization of the software’s inferences about the user’s actions, so the user can correct the software’s understanding, if necessary. Each panel depicts a user action, so the user has a step-by-step account of how the query was created. This is also helpful in identifying user errors. Second, the gradual construction of the program representation helps the user to learn C-SPRL by watching what happens as he or she interacts with the GIS’s GUI. The representation provides the user with continuous feedback, so if the program representation depicts an “incorrect” action, the user can immediately backtrack and rectify the situation. Third, the program representation is editable. The user can edit the program to modify it or to create a similar, but different, program. The user saves time by being able to run a previously constructed query without having to repeat all the steps. The user can even create an entirely new program from scratch. Fourth, the user can save and retrieve programs for later use. Once again this saves the user time by not having to repeat work/steps already done. Users can easily share results of queries with others. Finally, a program can be executed on demand. Figure 6.6 summarizes the various uses that a user can make of a program representation. The set of symbols used in C-SPRL program representation is not large in number (Figure 6.7). As a result, users do not have to spend much time familiarizing themselves with the terminology. All program symbols have self-identifying labels that aid user comprehension. C-SPRL also has a set of commands: select, show, and draw. The select command indicates the selection of a category, subcategory, category member(s), or one or more items from the list of available information about a category or category member. The show command indicates the display of information on a map or in text format. The draw command indicates that a user has narrowed the search to the area highlighted on the map. These commands appear above the panels in the program representation. V:\002564\002564.VP Monday, December 18, 2000 1:31:00 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 127 S R L Color profile: Generic CMYK printer profile Composite Default screen 128 Your Wish is My Command Figure 6.6 • Check whether the software is making correct inferences • Learn C-SPRL by watching the correspondence between GUI interactions and program constructs • Save and retrieve a program • Edit a program to modify it or to create a similar program • Write a program from scratch Summary of uses of a C-SPRL program representation. Figure 6.7 label label label Category Individual category member Multiple category members Message box Available info: emergency phone number map info Shows selected information Indicates information has been displayed in the information area Indicates something has been displayed on the map C-SPRL panel icons. C-SPRL program representations can be edited directly with a specialpurpose editor. Figure 6.8 shows the menu options available in the PBD program editor. Panels and program constructs may be added, edited, and deleted. If a before panel is edited or deleted, then all of its after panels are deleted, when their preconditions are no longer met. C-SPRL includes a branching construct, called do-one, and an and-ing construct called do-all. Figure 6.9 shows a program that uses the do-all. The S R L V:\002564\002564.VP Monday, December 18, 2000 1:31:04 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 128 Color profile: Generic CMYK printer profile Composite Default screen Chapter Six: A Demonstration Is Worth a Thousand Words Figure 129 6.8 (b) (a) Menu options from the C-SPRL editor. Figure 6.9 show select select select do-all map schools high schools Lowell High select show Available info: principal info A C-SPRL program with a do-all construct. S R L V:\002564\002564.VP Monday, December 18, 2000 1:31:16 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 129 Color profile: Generic CMYK printer profile Composite Default screen 130 Your Wish is My Command schools category is selected, the selection is refined to include just the high schools, and then it is further refined to an individual school, Lowell High School. The panel for Lowell High is the before panel for two after panels, because two simultaneous operations are performed with the Lowell High data: (1) the school’s location is shown on a map, and (2) information about the school’s principal is displayed in a chart. User tests of the C-SPRL program representation language indicate that non–GIS specialists are able to read C-SPRL programs (program interpretation), edit programs to create new programs (program modification), and write programs from scratch (program creation). We also gave C-SPRL programs to study participants and asked them to use the GUI to perform the steps that would cause the software to infer the programs (program navigation). The fact that they were able to navigate the GUI successfully indicates that the participants understood the encoding of actions into the C-SPRL representation. Figure 6.10 gives samples of the different types of queries used in the studies. Two different studies were performed. As a result of the first study, some of the C-SPRL panel icons were modified; hence some of the panel icon symbols in the program navigation may differ slightly from those in Figure 6.7. The tasks chosen for the user studies were based on a taxonomy of the types of queries that our end users are likely to perform on a GIS. The taxonomy was derived from a requirements definition for a GIS intended for use by one of our target user populations (Traynor 1998). The taxonomy contains six classes of queries: 1. Show me one or more objects. 2. Show me one or more objects with/without one or more features. 3. Show me one or more objects with/without one or more attributes. 4. Show me one or more objects with/without one or more features and with/without one or more attributes. 5. Show me one or more objects within “this” distance of one or more objects. 6. Show me one or more attributes for one or more objects. More details of these studies can be found in Traynor and Williams (1995, 1997). S R L V:\002564\002564.VP Monday, December 18, 2000 1:31:16 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 130 Color profile: Generic CMYK printer profile Composite Default screen 131 Chapter Six: A Demonstration Is Worth a Thousand Words Figure 6.10 Program Interpretation Show me the location of all houses for sale with a fireplace. Show me the practice hours for Pawtucket soccer club. Show me all the liquor stores within a mile of Lowell High and 1.5 miles of my house. Program Modification Original Task Modified Task Show me all swimming pools. Show me all parks. Show me all parks within a half-mile of Pawtucket Show me all the swimming pools within a mile of Soccer Club and the number of teams in the club. the Wang Middle School and the number of teachers in the school. Program Creation Show me the Acre Police Station and the number of policemen assigned to it. Show me all the fire stations within a mile of Murphy’s restaurant and the number of fire engines. Program Navigation Part 4: Program Navigation Please perform the program below on the computer. show select select draw 1 mile schools Central high map 1 mile select show select clubs soccer Pawtucket select map Available Information text Practice Hours text Sample of queries used in the user studies. S R L V:\002564\002564.VP Monday, December 18, 2000 1:31:21 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 131 Color profile: Generic CMYK printer profile Composite Default screen 132 Your Wish is My Command 6.7 Conclusion C-SPRL is one possible representation language for a GIS for nonspecialist users. Many others are possible. For example, the block-stacking metaphor of Richards and Egenhofer’s (1995) GIS interface would lend itself to a program representation that contains images of stacked blocks. Whatever the representation, it appears possible to create new ways of interacting with GIS software—ways that are not steeped in the traditions of geographers and cartographers. The experts already have GIS software that meets their needs. Attempting to tailor their highly technical software for nonspecialists, either by modifying the interface slightly or by providing a subset of the functionality, has not worked. What is needed is a fresh start, with nonspecialist users viewed as a first-class population of GIS users, rather than an add-on population. Only then will GIS come into its own as a “killer application.” Acknowledgments We would like to thank the following people for their insightful comments and help in preparing this chapter: the HCI Research Group at the University of Massachusetts Lowell, in particular Dr. J. Nicholas Buehler and Guillermo Zeballos; and Gordon Paynter of the University of Waikato, Hamilton, New Zealand. References Ahlberg, C., and Ben Shneiderman. 1994. “Visual Information Seeking: Tight Coupling of Dynamic Query Filters with Starfield Displays.” In Proceedings of Human Factors in Computing Systems Conference (CHI ’94). New York: ACM Press. Aufaure-Portier, M.-A. 1995. “Definition of a Visual Language for GIS.” In Cognitive Aspects of Human-Computer Interaction for Geographic Information Systems, ed. T. Nyerges, D. Mark, R. Laurini, and M. J. Egenhofer. Dordrecht, The Netherlands: Kluwer Academic. Cypher, Allen. 1993. Watch What I Do: Programming by Demonstration. Cambridge, Mass.: MIT Press. S R L V:\002564\002564.VP Monday, December 18, 2000 1:31:21 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 132 Color profile: Generic CMYK printer profile Composite Default screen Chapter Six: A Demonstration Is Worth a Thousand Words 133 Egenhofer, M. J. 1995. “User Interfaces.” In Cognitive Aspects of Human-Computer Interaction for Geographic Information Systems, ed. T. Nyerges, D. Mark, R. Laurini, and M. J. Egenhofer. Dordrecht, The Netherlands: Kluwer Academic. Garson, G. David, and Robert S. Biggs. 1992. Analytic Mapping and Geographic Databases. Sage University Paper series on Quantitative Applications in the Social Sciences, series no. 07–087. Newbury Park, Calif.: Sage. Kuhn, Sarah, Charles Richardson, and Marian G. Williams. 1994. “Meeting of the Minds: The Challenges of Interdisciplinary and Inter-occupational Communication.” In Proceedings of the Participatory Design Conference (PDC ’94), ed. R. Trigg, S. I. Anderson, and E. A. Dykstra-Erickson. Palo Alto, CA: CPSR. Lieberman, Henry. 1993. “A Teachable Graphical Editor.” In Watch What I Do: Programming by Demonstration. Cambridge, Mass.: MIT Press. Modugno, F. 1995. “Extending End-User Programming in a Visual Shell with Programming by Demonstration and Graphical Languages Techniques.” Ph.D. diss., Carnegie Mellon University, Pittsburgh, Pa. Richards J. R., and M. J. Egenhofer. 1995. “A Comparison of Two Direct-Manipulation GIS User Interfaces for Map Overlay.” In Geographical Systems, 2, no. 4: 267– 290. Standing, Craig, and Geoffrey G. Roy. 1997. “Developing Macro Queries in Geographical Information Systems.” In Proceedings of the Fourth Conference of the International Society for Decision Support Systems (ISDSS ’97). Traynor, Carol. 1998. “Programming by Demonstration for Geographic Information Systems.” Ph.D. diss., University of Massachusetts, Lowell. Traynor, Carol, and Marian G. Williams. 1995. “Why Are Geographic Information Systems Hard to Use?” In Conference Companion of Human Factors in Computing Systems Conference (CHI ’95). Boston: Addison-Wesley. ———. 1997. “A Study of End-User Programming for Geographic Information Systems.” In Proceedings of Empirical Studies of Programmers: Seventh Workshop. New York: ACM Press. S R L V:\002564\002564.VP Monday, December 18, 2000 1:31:21 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 133 Color profile: Generic CMYK printer profile Composite Default screen S R L V:\002564\002564.VP Monday, December 18, 2000 1:31:21 PM TNT Job Number: [002564] • Author: [Lieberman] • Page: 134