206463342
The User Experience
In this article the author provides perspective on user experience, usability and user-centered design. User experience is a broad collection of user-centric issues that cut through the full extent of a project. The author points out new developments in the user experience world that are opening up new opportunities for research and projects. The author also discusses how good user experience processes can be built into the kinds of system development projects that many of us are involved in.
17043790
Collaborative, programmable intelligent agents
A growing number of computer systems,in the hope that such simulations w as we had thought. More recently, however, resources for such work can be obtained from untapped source: the generation of extremely large numbers of graduate students and their subsequent application to the creation of alternate “Simulating Complex Adaptive Systems -What can we really learn?” Dr. B. Rubble Bedrock Inst. Brub@bedrock.edu Friday, December 6, 1996 11:00 a.m. – 12:00 noon Singapore Rm. 1st Floor R&D Building #1 Place on electronic calender brub@bedrock.edu Friday,December 6, 1996 11:00 a.m... Mail to secretary for scheduling Done Figure 1. Sample invocation of Apple Data Detectors. The user has selected a portion of an email message describing an upcoming seminar. Two patterns are found: an email address (brub@bedrock.edu) and the announcement of the meeting (the sequence of date and time information starting Friday, Dec. 6, 1996). These patterns are presented in the pop-up menu; by pointing at the date information in the menu; a second pop-up menu offers a choice of actions: place an entry for the meeting on the user’s electronic calendar or mail the selection to the user’s secretary. The user can select one, thereby running a small application, or move the cursor off the menu, eliminating the pop-up menu and canceling any actions. agents also varies across different agent-based systems; some act only within one’s own machine, find others autonomously crawl the Web, searching for interesting content [4]. We tried to find a middle ground by using explicit representations of user-relevant information as a means of identifying actions users might wish to take but to leave the choice of these actions to users. Working with Information Inside User Documents Our first step was to find a user problem that needed solving in which intelligent agents would add value. In an investigation of how people file information on their computer desktops [1], we discovered that a common user complaint is that they cannot easily take action on the structured information found in everyday documents (structured information being data-recognizable by a grammar). Ordinary documents are full of such structured information: phone numbers, fax numbers, street addresses, email addresses, email signatures, abstracts, tables of contents, lists of references, tables, figures, captions, meeting announcements, Web addresses, and more. In addition, there are countless domain-specific structures, such as ISBN numbers, stock symbols, chemical structures, and mathematical equations. These structures are not only relevant to users, but because of their structure, are also recognizable by parsing technologies. Once identified, the structure’s type can be used to identify appropriate actions that might be carried out, like placing a meeting on a calendar, adding an address to an address book, dialing a phone number, opening a URL, finding the current price of a stock, filing an ISBN number, and compiling a list of abstracts. Apple Data Detectors supports a wide range of uses. Think of all the structured information in the documents you work with; in addition to those mentioned already, add bibliography items, forms (such as travel expense reports and non-disclosure agreements), executive summaries, and most important, such domain-specific kinds of data as legal boilerplate, customer orders, and library search requests. Specific detectors can be created for each of these types of information. User interface. To use Apple Data Detectors, users select a region of a document with some information of interest. Pressing a modifier key and the mouse button instructs the system to analyze the data within the selected region and to find all structures for which it has grammars. It then offers appropriate actions for each structure (see Figure 1). For example, for users reading email who come across a seminar announcement they would like to put on a calendar, Apple Data Detectors parses the relevant information within the selected text, including the meeting’s place, time, and date and puts this data into the appropriate fields on the calendar. A user can select a whole document or part of a document without having to make a careful selection; the grammars find any embedded structures they know about within the selection and offer an appropriate set of actions from which to choose. The use of anthropomorphism in an agent interface [12] was incongruent with our goal of unobtrusiveness. We designed Apple Data Detectors to be invis98 March 1998/Vol. 41, No. 3 COMMUNICATIONS OF THE ACM User Application Presentation User Interface Apple Data Detectors Detectors Database Actions Folder HTTP = (Http Protocol, Host, Port?, Path?, {Http Location, Http Search} ? ) Http Protocol = {“http://”, “https://”} Port = (“:”, Port Number) Port Number = Digits Figure 2. The Apple Data Detectors architecture, which separates the application in which the information is found, the presentation of the analysis and possible actions, and the analysis of the information itself. This separation means that Apple Data Detectors can be invoked in any application and that the user interface can be implemented, refined, and evolved separately from the analysis module. Figure 3. A grammar to define a URL. The language implements a context-free grammar in which sequences of terms are matched against the input stream. References to other grammars are permitted, as are optional and repeated terms. Here, the HTTP grammar finds a match when it finds an HTTP protocol, a host, a port (optional), a path (optional), and either an HTTP location indicator or an HTTP search command and arguments.
1650301
The spreadsheet interface: A basis for end user programming
14392520
An ethnographic study of distributed problem solving in spreadsheet development
In contrast to the common view of spreadsheets as “single-user” programs, we have found that spreadsheets offer surprisingly strong support for cooperative development of a wide variety of applications. Ethnographic interviews with spreadsheet users showed that nearly all of the spreadsheets used in the work environments studied were the result of collaborative work by people with different levels of programming and domain expertise. Cooperation among spreadsheet users was spontaneous and casual; users activated existing informal social networks to initiate collaboration.
8691336
Effectiveness for Embedded Spheres and Balls
Abstract We consider arbitrary dimensional spheres and closed balls embedded in Rn as ⫫01 classes. Such a strong restriction on the topology of a ⫫01 class has computability theoretic repercussions. Algebraic topology plays a crucial role in our exploration of these consequences; the use of homology chains as computational objects allows us to take algorithmic advantage of the topological structure of our ⫫01 classes. We show that a sphere embedded as a ⫫01 class is necessarily located, i.e., the distance to the class is a computable function, or equivalently, the class contains a computably enumerable dense set of computable points. Similarly, a ball embedded as a ⫫01 class has a dense set of computable points, though not necessarily c.e. To prove location for balls, it is sufficient to assume that both it and its boundary sphere are ⫫01. However, the converse fails, even for arcs; using a priority argument, we prove that there is a located arc in R2 without computable endpoints. Finally, the requirement that the embedding map itself be computable is shown to be stronger than the other effectiveness criteria considered. A characterization in terms of computable local contractibility is stated the proof will be the subject of a sequel.
6477503
Exception Handling in Workflow Systems
In this paper, defeasible workflow is proposed as a framework to support exception handling for workflow management. By using the “justified” ECA rules to capture more contexts in workflow modeling, defeasible workflow uses context dependent reasoning to enhance the exception handling capability of workflow management systems. In particular, this limits possible alternative exception handler candidates in dealing with exceptional situations. Furthermore, a case-based reasoning (CBR) mechanism with integrated human involvement is used to improve the exception handling capabilities. This involves collecting cases to capture experiences in handling exceptions, retrieving similar prior exception handling cases, and reusing the exception handling experiences captured in those cases in new situations.
2527687
Performance Analysis and Simulation of Composite Web Services
The new paradigm for distributed computing over the Internet is that of Web services. They are Web accessible software components, which can be combined and linked together to create new functionality in the form of Web processes. This creates the need to compose services into processes that are efficient in terms of their performance. This paper describes our Service Composition and Execution Tool (SCET) and various methodologies that could be adopted for evaluating the performance of a Web process. SCET allows for composing services statically using its designer and storing them as Web Service Flow Language (WSFL) based specifications. Executing a process enables one to realize its functionality and also analyse its performance. For executing a process, SCET automatically generates execution code for a composed process. This paper discusses techniques for process execution time analysis and execution monitoring that can be used to evaluate the performance of individual Web services involved in a process...
7380263
Getting more from the data in a multinomial selection problem
We consider the problem of determining which of k simulated systems is most likely to be the best per former based on some objective performance measure. The standard experiment is to generate v in dependent vector observations (replications) across the k- systems. A classical multinomial selection pro cedure, BEM (Bechhofer, Elmaghraby, and Morse), prescribes a minimum number of replications so that the probability of correctly selecting the true best system meets or exceeds a prespecified probability. Assuming that larger is better, BEM selects as best the system having the largest value of the performance measure in more replications than any other. We propose using these same v replications across k systems to form vk pseudoreplications (no longer in dependent) that contain one observation from each system, and again select as best the system having the largest value of the performance measure in more pseudoreplications than any other. We expect that this new procedure, AVC (all vector comparisons), dominates BEM in the sense that AVC will never require more independent replications than DEM to meet a prespecified probability of correct selection. We present analytical and simulation results to show how AVC fares versus BEM for different underly ing distribution families, different numbers of populations and various values of v. We also present results for the closely related problem of estimating the probability that a specific system is the best.
16289956
Scenario management in Web-based simulation
Internet communications in general and the World-Wide Web specifically are revolutionizing the computer industry. Today, the Web is full of important documents and clever applets. Java applets and servlets are beginning to appear that provide useful and even mission critical applications. From the perspective of simulation, a future Web will be full of simulation models and large amounts of simulation-generated data. Many of the models will include two or three dimensional animation as well as virtual reality. Others will allow human interaction with simulation models to control or influence their execution no matter where the user is located in the world. Analysis of data from Web-based simulations involves greater degrees of freedom than traditional simulations. The number of simulation models available and the amount of simulation data are likely to be much greater. In order to assure the quality of data, the execution of models under a variety of scenarios should be well managed. Since the user community will also be larger, quality assurance should be delegated to agents responsible for defining scenarios and executing models. A major element of simulation analysis is the analysis of output data, which manages the execution of simulation models, in order to obtain statistical data of acceptable quality. Such data may be used to predict the performance of a single system, or to compare the performance of two or more alternative system designs using a single or multiple performance measures.