Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Toolkit Design for Interactive Structured Graphics

Published: 01 August 2004 Publication History

Abstract

In this paper, we analyze toolkit designs for building graphical applications with rich user interfaces, comparing polylithic and monolithic toolkit-based solutions. Polylithic toolkits encourage extension by composition and follow a design philosophy similar to 3D scene graphs supported by toolkits including Java3D and OpenInventor. Monolithic toolkits, on the other hand, encourage extension by inheritance, and are more akin to 2D Graphical User Interface toolkits such as Swing or MFC. We describe Jazz (a polylithic toolkit) and Piccolo (a monolithic toolkit), each of which we built to support interactive 2D structured graphics applications in general, and Zoomable User Interface applications in particular. We examine the trade offs of each approach in terms of performance, memory requirements, and programmability. We conclude that a polylithic approach is most suitable for toolkit builders, visual design software where code is automatically generated, and application builders where there is much customization of the toolkit. Correspondingly, we find that monolithic approaches appear to be best for application builders where there is not much customization of the toolkit.

References

[1]
3D Studio Max, http://www.3dmax.com, 2003.
[2]
Adobe SVG Viewer, http://www.adobe.com/svg/, 2003.
[3]
ECMA Script, http://www.ecma-international.org, 2003.
[4]
ILog, www.ilog.com, 2003.
[5]
Java3D, http://java.sun.com/products/java-media/3D/ 2003.
[6]
Macromedia Flash, http://www.macromedia.com/software/flash/, 2003.
[7]
SGI OpenInventor, http://www.sgi.com/software/inventor/, 2003.
[8]
SoftImage, http://www.softimage.com, 2003.
[9]
B.B. Bederson, “PhotoMesa: A Zoomable Image Browser Using Quantum Treemaps and Bubblemaps,” Proc. ACM Symp. User Interface Software and Technology, CHI Letters, vol. 3, no. 2, pp. 71-80, 2001.
[10]
B.B. Bederson A. Clamage M.P. Czerwinski and G.G. Robertson, “DateLens: A Fisheye Calendar Interface for PDAs,” ACM Trans. Computer-Human Interaction, vol. 11, no. 1, pp. 90-119, 2004.
[11]
B.B. Bederson and J.D. Hollan, “Pad++: A Zooming Graphical Interface for Exploring Alternate Interface Physics,” Proc. User Interface and Software Technology (UIST 94), pp. 17-26, 1994.
[12]
B.B. Bederson J.D. Hollan K. Perlin J. Meyer D. Bacon and G.W. Furnas, “Pad++: A Zoomable Graphical Sketchpad for Exploring Alternate Interface Physics,” J. Visual Languages and Computing, vol. 7, pp. 3-31, 1996.
[13]
B.B. Bederson and J. Meyer, “Implementing a Zooming User Interface: Experience Building Pad++,” Software: Practice and Experience, vol. 28, no. 10, pp. 1101-1135, 1998.
[14]
B.B. Bederson J. Meyer and L. Good, “Jazz: An Extensible Zoomable User Interface Graphics Toolkit in Java,” Proc. ACM Symp. User Interface Software and Technology, CHI Letters, vol. 2,no. 2, pp. 171-180, 2000.
[15]
B.B. Bederson and J.D. Hollan, “Pad++: A Zooming Graphical Interface System,” Proc. Conf. Human Factors in Computing Systems (CHI 95), 1995.
[16]
D. Fox, “Tabula Rasa: A Multi-Scale User Interface System,” doctoral dissertation, New York Univ., New York 1998.
[17]
G.W. Furnas, “Generalized Fisheye Views,” Proc. Conf. Human Factors in Computing Systems (CHI 86), pp. 16-23, 1986.
[18]
S.E. Hudson and J.T. Stasko, “Animation Support in a User Interface Toolkit,” Proc. Conf. User Interface and Software Technology (UIST 93), pp. 57-67, 1993.
[19]
J.K. Ousterhout, Tcl and the Tk Toolkit. Addison-Wesley, 1994.
[20]
B.E. Krasner and S.T. Pope, “A Description of the Model-View-Controller User Interface Paradigm in the Smalltalk-80 System,” J.nbspObject-Oriented Programming, vol. 1, no. 3, pp. 26-49, 1988.
[21]
M.A. Linton J.M. Vlissides and P.R. Calder, “Composing User Interfaces With InterViews,” IEEE Software, vol. 22, no. 2, pp. 8-22, 1989.
[22]
B.A. Myers R.G. McDaniel R.C. Miller A.S. Ferrency A. Faulring B.D. Kyle A. Mickish A. Klimovitski and P. Doane, “The Amulet Environment: New Models for Effective User Interface Software Development,” IEEE Trans. Software Eng., vol. 23,no. 6, pp. 347-365, 1997.
[23]
K. Perlin and D. Fox, “Pad: An Alternative Approach to the Computer Interface,” Proc. Computer Graphics Conf. (SIGGRAPH), pp. 57-64, 1993.
[24]
K. Perlin and J. Meyer, “Nested User Interface Components,” Proc. ACM Symp. User Interface Software and Technology, CHI Letters, vol. 1,no. 1, pp. 11-18, 1999.
[25]
S. Pook E. Lecolinet G. Vaysseix and E. Barillot, “Context and Interaction in Zoomable User Interfaces,” Proc. Conf. Advanced Visual Interfaces (AVI 2000), pp. 227-231, 2000.
[26]
J. Raskin, The Humane Interface. Addison Wesley, 2000.
[27]
R.B. Smith J. Maloney and D. Ungar, “The Self-4. 0 User Interface: Manifesting a System-Wide Vision of Concreteness, Uniformity, and Flexibility,” Proc. Conf. Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 95), pp. 47-60, 1995.
[28]
M.C. Stone K. Fishkin and E.A. Bier, “The Movable Filter as a User Interface Tool,” Proc. Conf. Human Factors in Computing Systems (CHI 94), pp. 306-312, 1994.
[29]
S.H. Tang and M.A. Linton, “Blending Structured Graphics and Layout,” Proc. Conf. User Interface and Software Technology (UISTnbsp94), pp. 167-174, 1994.
[30]
D. Ungar and R.B. Smith, “Self: The Power of Simplicity,” Proc. Conf. Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 87), pp. 227-241, 1987.

Cited By

View all
  • (2024)ProtoBricks: A Research Toolkit for Tangible Prototyping & Data PhysicalizationProceedings of the 2024 ACM Designing Interactive Systems Conference10.1145/3643834.3661573(476-495)Online publication date: 1-Jul-2024
  • (2022)HawkEye-HMI-Generation: A Method to Synthesize Zoomable Process Automation User Interfaces2022 IEEE 27th International Conference on Emerging Technologies and Factory Automation (ETFA)10.1109/ETFA52439.2022.9921514(1-8)Online publication date: 6-Sep-2022
  • (2022)Visual design elements based on digital visualizationSoft Computing - A Fusion of Foundations, Methodologies and Applications10.1007/s00500-022-06811-826:16(7855-7863)Online publication date: 1-Aug-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering  Volume 30, Issue 8
August 2004
72 pages

Publisher

IEEE Press

Publication History

Published: 01 August 2004

Author Tags

  1. 65
  2. GUIs
  3. Graphical User Interfaces
  4. Graphical User Interfaces (GUIs)
  5. Index Terms- Monolithic toolkits
  6. Jazz
  7. Pad++
  8. Piccolo.
  9. ZUIs
  10. Zoomable User Interfaces
  11. Zoomable User Interfaces (ZUIs)
  12. animation
  13. composition
  14. inheritance
  15. object-oriented design
  16. polylithic toolkits
  17. structured graphics

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 30 Aug 2024

Other Metrics

Citations

Cited By

View all
  • (2024)ProtoBricks: A Research Toolkit for Tangible Prototyping & Data PhysicalizationProceedings of the 2024 ACM Designing Interactive Systems Conference10.1145/3643834.3661573(476-495)Online publication date: 1-Jul-2024
  • (2022)HawkEye-HMI-Generation: A Method to Synthesize Zoomable Process Automation User Interfaces2022 IEEE 27th International Conference on Emerging Technologies and Factory Automation (ETFA)10.1109/ETFA52439.2022.9921514(1-8)Online publication date: 6-Sep-2022
  • (2022)Visual design elements based on digital visualizationSoft Computing - A Fusion of Foundations, Methodologies and Applications10.1007/s00500-022-06811-826:16(7855-7863)Online publication date: 1-Aug-2022
  • (2019)PolyphonyProceedings of the ACM on Human-Computer Interaction10.1145/33311503:EICS(1-22)Online publication date: 13-Jun-2019
  • (2019)Towards Democratizing Relational Data VisualizationProceedings of the 2019 International Conference on Management of Data10.1145/3299869.3314029(2025-2030)Online publication date: 25-Jun-2019
  • (2018)Applying the entity-component-system model to interaction programmingProceedings of the 30th Conference on l'Interaction Homme-Machine10.1145/3286689.3286703(42-51)Online publication date: 23-Oct-2018
  • (2018)Visualization of genome rearrangements using DCJ operationsProceedings of the 3rd International Workshop on Interactive and Spatial Computing10.1145/3191801.3191808(15-22)Online publication date: 12-Apr-2018
  • (2018)Evaluation Strategies for HCI Toolkit ResearchProceedings of the 2018 CHI Conference on Human Factors in Computing Systems10.1145/3173574.3173610(1-17)Online publication date: 21-Apr-2018
  • (2017)Influence-based Twitter browsing with NavigTweetInformation Systems10.1016/j.is.2016.07.01264:C(119-131)Online publication date: 1-Mar-2017
  • (2015)SketcholutionInternational Journal of Human-Computer Studies10.1016/j.ijhcs.2015.04.00382:C(11-20)Online publication date: 1-Oct-2015
  • Show More Cited By

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media