[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/1029632.1029670acmconferencesArticle/Chapter ViewAbstractPublication PagesuistConference Proceedingsconference-collections
Article

An explanation-based, visual debugger for one-way constraints

Published: 24 October 2004 Publication History

Abstract

This paper describes a domain-specific debugger for one-way constraint solvers. The debugger makes use of several new techniques. First, the debugger displays only a portion of the dataflow graph, called a <i>constraint slice</i>, that is directly related to an incorrect variable. This technique helps the debugger scale to a system containing thousands of constraints. Second, the debugger presents a visual representation of the solver's data structures and uses color encodings to highlight changes to the data structures. Finally, the debugger allows the user to point to a variable that has an unexpected value and ask the debugger to suggest reasons for the unexpected value. The debugger makes use of information gathered during the constraint satisfaction process to generate plausible suggestions. Informal testing has shown that the explanatory capability and the color coding of the constraint solver's data structures are particularly useful in locating bugs in constraint code.

References

[1]
Bowen Alpern, Roger Hoover, Barry K. Rosen, Peter F. Sweeney, and F. Kenneth Zadeck. Incremental evaluation of computational circuits. In ACM SIGACT-SIAM'89 Conference on Discrete Algorithms, pages 32--42, Jan. 1990.
[2]
Polly S. Brown and John D. Gould. An experimental study of people creating spreadsheets. ACM Transactions on Office Information Systems, 5(3):258--272, 1987.
[3]
Margaret Burnett, Curtis Cook, Omkar Pendse, Gregg Rothermel, Jay Summet, and Chris Wallace. End-user software engineering with assertions in the spreadsheet paradigm. In Proceedings of the 2003 International Conference on Software Engineering, pages 93--103, Portland, OR, 2003.
[4]
Ralph D. Hill, Tom Brinck, Steven L. Rohall, John F. Patterson, and Wayne Wilner. The rendezvous architecture and language for constructing multiuser applications. ACM Transactions on Computer Human Interaction, 1:81--125, June 1994.
[5]
Jochen Hoenicke, Bernard Farrell, Jonathan Nash, and Tobias Rademacher. Jode: Java optimize and decompile environment.
[6]
Scott E. Hudson. A system for efficient and flexible one-way constraint evaluation in C++. Technical Report 93-15, Graphics Visualizaton and Usability Center, College of Computing, Georgia Institute of Technology, April 1993.
[7]
Scott E. Hudson. User interface specification using an enhanced spreadsheet model. ACM Transaction on Graphics, 13(3):209--239, July 1994.
[8]
Scott E. Hudson and Ian Smith. Ultra-lightweight constraints. In ACMSIGGRAPH Symposium on User Interface Software and Technology, pages 147--155, Seattle, WA, Nov 1996. Proceedings UIST'96.
[9]
Takeo Igarashi, Jock D. Mackinlay, Bay-Wei Chang, and Polle T. Zellweger. Fluid visualization of spread-sheet structures. In 1998 IEEE Symposium on Visual Languages, pages 118--125, Halifax, Nova Scotia, Canada, Sept 1998. IEEE Computer Society.
[10]
D. Knuth. Semantics of context-free languages. Mathematical Systems Theory, 2:127--145, June 1968.
[11]
Andrew J. Ko and Brad A. Myers. Designing the why-line: A debugging interface for asking questions about program behavior. CHI Letters, 6(1):151--158, April 2004. Proceedings SIGCHI'2004.
[12]
Brad A. Myers. Graphical techniques in a spreadsheet for specifying user interfaces. In Human Factors in Computing Systems, pages 243--249, New Orleans, LA, Apr 1991. Proceedings SIGCHI'91.
[13]
Brad A. Myers, Dario A. Giuse, Roger B. Dannenberg, Brad Vander Zanden, David S. Kosbie, Ed Pervin, Andrew Mickish, and Philippe Marchal. Garnet: Comprehensive support for graphical, highly-interactive user interfaces. IEEE Computer, 23(11):71--85, November 1990.
[14]
Brad A. Myers, Rich McDaniel, Robert Miller, Alan Ferrency, A. Faulring, Bruce Kyle, Andy Mickish, Alex Klimovitski, and P Doane. The Amulet environment: New models for effective user interface software development. IEEE Transactions on Software Engineering, 23(6), June 1997.
[15]
T. Reps, T. Teitelbaum, and A. Demers. Incremental context-dependent analysis for language-based editors. ACM TOPLAS, 5(3):449--477, July 1983.
[16]
T.J. Robertson, Shrinu Prabhakararao, Margaret Burnett, Curtis Cook, Joseph R. Ruthruff, Laura Beckwith, and Amit Phalgune. Impact of interruption style on end-user debugging. CHI Letters, 6(1):287--294, April 2004.
[17]
Michael Sannella. Analyzing and debugging hierar-chies of multi-way local propagation constraints. In Lecture Notes in Computer Science No. 874, pages 63--77. Proceedings of the 1994 Workshop on Principles and Practice of Constraint Programming, 1994.
[18]
Michael Sannella. Constraint Satisfaction and Debugging for Interactive User Interfaces. PhD thesis, Department of Computer Science and Engineering, University of Washington, Seattle, WA 98195, 1994. Also available as Technical Report 94-09-10.
[19]
Jos van Eijndhoven. Graphplace. 1994.
[20]
Brad Vander Zanden, Richard Halterman, Brad A. Myers, Rob Miller, Pedro Szekely, Dario Giuse, David Kosbie, and Rich McDaniel. Lessons learned from users' experiences with one-way constraints. Software Practice and Experience. To Appear.
[21]
Brad Vander Zanden, Brad A. Myers, Pedro Szekely, Dario Giuse, Rich McDaniel, Rob Miller, David Kosbie, and Richard Halterman. Lessons learned about one-way, dataflow constraints in the garnet and amulet graphical toolkits. ACM Transactions on Programming Languages and Systems, 23(6):776--796, Nov 2001.
[22]
Brad Vander Zanden and Scott Venckus. An empirical study of constraint usage in graphical applications. In ACM SIGGRAPH Symposium on User Interface Software and Technology, pages 137--146, Seattle, WA, November 1996. Proceedings UIST'96.
[23]
G.A. Venkatesh. The semantic approach to program slicing. sigplan, 26(6):107--119, June 1991.
[24]
Mark Weiser. Program slicing. IEEE Transactions on Software Engineering, SE-10(4):352--357, July 1984.

Cited By

View all
  • (2016)Constraints as polymorphic connectorsProceedings of the 15th International Conference on Modularity10.1145/2889443.2889456(134-145)Online publication date: 14-Mar-2016
  • (2006)NeL2Proceedings of the 2006 Asia-Pacific Symposium on Information Visualisation - Volume 6010.5555/1151903.1151920(109-115)Online publication date: 1-Jan-2006

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
UIST '04: Proceedings of the 17th annual ACM symposium on User interface software and technology
October 2004
312 pages
ISBN:1581139578
DOI:10.1145/1029632
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 24 October 2004

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. constraint satisfaction
  2. data structures
  3. one-way constraints
  4. software visualization
  5. visual debugging

Qualifiers

  • Article

Conference

UIST04

Acceptance Rates

Overall Acceptance Rate 561 of 2,567 submissions, 22%

Upcoming Conference

UIST '25
The 38th Annual ACM Symposium on User Interface Software and Technology
September 28 - October 1, 2025
Busan , Republic of Korea

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)4
  • Downloads (Last 6 weeks)0
Reflects downloads up to 19 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2016)Constraints as polymorphic connectorsProceedings of the 15th International Conference on Modularity10.1145/2889443.2889456(134-145)Online publication date: 14-Mar-2016
  • (2006)NeL2Proceedings of the 2006 Asia-Pacific Symposium on Information Visualisation - Volume 6010.5555/1151903.1151920(109-115)Online publication date: 1-Jan-2006

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media