Foley, James D.

Associated Organization(s)
Organizational Unit
ArchiveSpace Name Record

Publication Search Results

Now showing 1 - 10 of 25
  • Item
    Grouping and Ordering User Interface Components
    (Georgia Institute of Technology, 1994) Gray, Mark H. ; Foley, James D. ; Mullet, Kevin E.
    In automatically generating a user interface from a model of the target application, many factors that affect the resulting interface's quality must be considered. Any available semantic information that can improve the interface should be used. Application actions or action parameters may be related in ways that affect placement of their associated controls in dialogue boxes. Two relationships considered here are grouping and ordering. Grouped objects should appear together, possibly visually separated from other controls, and controls which have a logical sequential ordering should appear in that order. We present an algorithm for creating an ordering of controls which correctly satisfies these constraints.
  • Item
    A Pure Reasoning Engine for Programming by Demonstration
    (Georgia Institute of Technology, 1994) Frank, Martin Robert ; Foley, James D.
    We present an inference engine that can be used for creating Programming By Demonstration systems. The class of systems addressed are those which infer a state change description from examples of state. The engine can easily be incorporated into an existing design environment that provides an interactive object editor. The main design goals of the inference engine are responsiveness and generality. All demonstrational systems must respond quickly because of their interactive use. They should also be general- they should be able to make inferences for any attribute that the user may want to define by demonstration, and they should be able to treat any other attributes as parameters of this definition. The first goal, responsiveness, is best accommodated by limiting the number of attributes that the inference engine takes into consideration. This, however, is in obvious conflict with the second goal, generality. This conflict is intrinsic to the class of demonstrational system described above. The challenge is to find an algorithm which responds quickly, but does not heuristically limit the number of objects it looks at. We present such an algorithm in this paper. A companion paper describes Inference Bear, an actual demonstrational system that we have built using this inference engine and an existing user interface builder.
  • Item
    Visualizing Complex Hypermedia Networks through Multiple Hierarchical Views
    (Georgia Institute of Technology, 1995) Mukherjea, Sougata ; Foley, James D. ; Hudson, Scott E.
    Our work concerns visualizing the information space of hypermedia systems using multiple hierarchical views. Although overview diagrams are useful for helping the user to navigate in a hypermedia system, for any real-world system they become too complicated and large to be really useful. This is because these diagrams represent complex network structures which are very difficult to visualize and comprehend. On the other hand, effective visualizations of hierarchies have been developed. Our strategy is to provide the user with different hierarchies, each giving a different perspective to the underlying information space, to help the user better comprehend the information. We propose an algorithm based on content and structural analysis to form hierarchies from hypermedia networks. The algorithm is automatic but can be guided by the user. The multiple hierarchies can be visualized in various ways. We give examples of the implementation of the algorithm on two hypermedia systems.
  • Item
    Multimedia on-line help experiment
    (Georgia Institute of Technology, 1991) Foley, James D. ; Sukaviriya, Piyawadee "Noi" ; Georgia Institute of Technology. Office of Sponsored Programs ; Georgia Institute of Technology. College of Computing ; Georgia Institute of Technology. Office of Sponsored Programs
  • Item
    User Interface Software Tools
    (Georgia Institute of Technology, 1991) Foley, James D.
    Developing high-quality user interfaces is becoming the critical step in bringing many different computer applications to end users. Ease of learning and speed of use typically must be combined in an attractively-designed interface which appeals to application-oriented (not computer-oriented) end users. This is a complex undertaking, requiring skills of computer scientists, application specialists, graphic designers, human factors experts, and psychologists. User interface software is the foundation upon which the interface is built. The quality of the building blocks provided by the software establishes the framework within which an interface designer works. The tools should allow the designer to quickly experiment with different design approaches, and should be accessible to the non-programmer designer. In this paper we discuss important directions in software tools for building user interfaces: Unified representation serving multiple purposes; Integration with software engineering tools; Interaction programming and by-example creation of interfaces and interface components. Most of our focus is on the first two areas.
  • Item
    Coupling Application Design and User Interface Design
    (Georgia Institute of Technology, 1991) De Baar, Dennis J. M. J. ; Foley, James D. ; Mullet, Kevin E.
    Building an interactive application requires, amongst other activities, the design of both a data model and a user interface. These two designs are often done separately, frequently by different individuals or groups. However, there are strong similarities between the objects, actions and attributes of the data model and those of the user interface. This means that considerable specification work has to be done twice. Our approach is to automatically generate user interface elements directly from the data model. This saves time and effort and at the same time style rules can be applied automatically to the design of the user interface. This relieves the designer of the need to be familiar with certain style rules, while at the same time creating the consistency embodied in the rules.
  • Item
    Enhancing the Classroom Learning Experience with Web Lectures: A Quasi-Experiment
    (Georgia Institute of Technology, 2005) Day, Jason Allan ; Foley, James D.
    In this paper, we present continuing research into the use of web lectures to enhance the classroom learning experience. By using web lectures to present lecture material in advance of class, more in-class time can be spent engaging students with authentic learning activities; our goal is to use class time for more learning by doing, less learning by listening. A longitudinal quasi-experiment was conducted during the Spring 2005 semester with two sections of the same course: one using web lectures and one using traditional lectures. The web lecture section’s grades were significantly higher than the lecture section, and web lecture students reported increasingly strong positive attitudes about the intervention. We also present multiple threads of future work motivated by these positive results.
  • Item
    A Second Generation User Interface Design Environment: The Model and the Runtime Architecture
    (Georgia Institute of Technology, 1992) Sukaviriya, Piyawadee (Noi) ; Foley, James D. ; Griffith, Todd W.
    Several obstacles exist in the user interface design process which distract a developer from designing a good user interface. One of the problems is the lack of an application model to keep the designer in perspective with the application. The other problem is having to deal with massive user interface programming to achieve a desired interface and to provide users with correct help information on the interface. In this paper, we discuss an application model which captures information about an application at a high level, and maintains mappings from the application to specifications of a desired interface. The application model is then used to control the dialogues at runtime and can be used by a help component to automatically generate animated and textual help. Specification changes in the application model will automatically result in behavioral changes in the interface.
  • Item
    Providing High-Level Control and Expert Assistance in the User Interface Presentation Design
    (Georgia Institute of Technology, 1993) Kim, Won Chul ; Foley, James D.
    Current user interface builders provide only low-level assistance, because they have knowledge of neither the application nor the principles by which interface elements are combined effectively. We have developed a framework that unites the knowledge components essential for effective user interface presentation design. The framework consists of an application model (both a data model and a control model), a design process model that supports top-down iterative development, and graphic design knowledge that is used both to place dialog box elements such that their application dependent logical relationships are visually reinforced and to control design symmetry and balance. To demonstrate the framework's viability, we have constructed a tool based on encapsulated design knowledge that establishes high-level style preferences and provides expert assistance for the dialog box presentation design and menu structuring.
  • Item
    Supporting Adaptive Interfaces in a Knowledge-based User Interface Environment
    (Georgia Institute of Technology, 1992) Sukaviriya, Piyawadee (Noi) ; Foley, James D.
    Developing an adaptive interface requires a user interface that can be adapted, a user model, and an adaptation strategy. Research on adaptive interfaces in the past suffered from a lack of supporting tools which allow an interface to be easily created and modified. Also, adding adaptivity to a user interface so far has not been supported by any user interface systems or environments. In this paper, we present an overview of a knowledge-based model of the User Interface Design Environment (UIDE). UIDE uses the knowledge of an application to support the run-time execution of the application's interface and provides various kinds of automatic help. We present how the knowledge model can be used as a basic construct of a user model. Finally, we present adaptive interface and adaptive help behaviors that can be extended to the current UIDE architecture utilizing the user model. These behaviors are options from which an application designer can choose for an application interface.