Lessons learned from programmers' experiences with one-way constraints: Research Articles

  • Authors:
  • Bradley T. Vander Zanden;Richard Halterman;Brad A. Myers;Rob Miller;Pedro Szekely;Dario A. Giuse;David Kosbie;Rich McDaniel

  • Affiliations:
  • Computer Science Department, University of Tennessee, Knoxville, TN 37996, U.S.A.;School of Computing, Southern Adventist University, P.O. Box 370, Collegedale, TN 37315, U.S.A.;School of Computer Science, Carnegie Mellon University, Pittsburgh, PA 15213, U.S.A.;MIT CSAIL, 32 Vassar St, Cambridge, MA 02139, U.S.A.;USC/Information Sciences Institute, 4676 Admiralty Way, Marina del Rey, CA 90292, U.S.A.;Vanderbilt University Medical Center, 2209 Garland Avenue, Nashville, TN 37232-8340, U.S.A.;720 Valleyview Road, Mt. Lebanon, PA 15243, U.S.A.;Siemens Technology-To-Business Center, 1995 University Avenue, Suite 375, Berkeley, CA 94704, U.S.A.

  • Venue:
  • Software—Practice & Experience
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

One-way constraints have been incorporated in many graphical user interface toolkits because they are simple to learn, easy to write, and can express many types of useful graphical relationships. This paper is an evaluative paper that examines users' experience with one-way constraints in two user interface development toolkits, Garnet and Amulet, over a 15-year time span. The lessons gained from this examination can help guide the design of future constraint systems. The most important lessons are that (1) constraints should be allowed to contain arbitrary code that is written in the underlying toolkit language and does not require any annotations, such as parameter declarations, (2) constraints are difficult to debug and better debugging tools are needed, and (3) programmers will readily use one-way constraints to specify the graphical layout of an application, but must be carefully and time-consumingly trained to use them for other purposes. Copyright © 2005 John Wiley & Sons, Ltd.