Constraint solving for beautiful user interfaces: how solving strategies support layout aesthetics

Layout managers provide an automatic way to place controls in a graphical user interface (GUI). With the wide distribution of fully GUI-enabled smartphones, as well as very large or even multiple personal desktop monitors, the logical size of commonly used GUIs has become highly variable. A layout manager can cope with different size requirements and rearrange controls depending on the new layout size. However, there has been no research on how the distribution of additional or lacking space, to all controls in the layout, effects aesthetics. Much of the previous research focuses on discrete changes to layout. This includes changing the layout elements [15], or swapping around layout elements [7]. In this paper we focus strictly on the optimization of resizing of GUI components, and in this area we focus on rather subtle changes. This paper describes and compares strategies to distribute available space in a visual appealing way. All strategies are modeled with a constraint-based layout manager, since such a layout manager can be used to describe a wide range of layouts. Some aesthetic problems of constraint based layout managers have been identified and solutions have been provided. In a user evaluation three solving strategies, equal distribution, weighted distribution and a minimal deviation, have been compared. As a result, the minimal deviation approach seems to be a good strategy for large and small layout sizes. The minimal deviation and the equal distribution strategy is best at large layout sizes while the weighted distribution approach seems to perform better at small layout sizes. Furthermore, the evaluation shows that layouts with a high degree of symmetry are clearly preferred by the users.

[1]  Steven Heim The Resonant Interface: HCI Foundations for Interaction Design , 2007 .

[2]  Donald E. Knuth,et al.  The TeXbook , 1984 .

[3]  Peter J. Stuckey,et al.  The Cassowary linear arithmetic constraint solving algorithm , 2001, TCHI.

[4]  Christof Lutteroth,et al.  Modular Specification of GUI Layout Using Constraints , 2008, 19th Australian Conference on Software Engineering (aswec 2008).

[5]  James Fogarty,et al.  GADGET: a toolkit for optimization-based approaches to interface and display generation , 2003, UIST '03.

[6]  Douglas Stott Parker Aesthetics-Based Graph Layout for Human Consumption , 1996, Softw. Pract. Exp..

[7]  Matthew MacDonald User Interfaces in VB .NET: Windows Forms and Custom Controls , 2002, Apress.

[8]  Roger Fletcher,et al.  Practical methods of optimization; (2nd ed.) , 1987 .

[9]  Christof Lutteroth,et al.  Domain Specific High-Level Constraints for User Interface Layout , 2008, Constraints.

[10]  Nesa L'abbe Wu,et al.  Linear programming and extensions , 1981 .

[11]  Donald Ervin Knuth,et al.  The Computers & Typesetting, Vol. A: The Texbook , 1986 .

[12]  R. Fletcher Practical Methods of Optimization , 1988 .

[13]  John Zukowski Java AWT Reference , 1997 .

[14]  Michael Frederick Plass,et al.  Optimal pagination techniques for automatic typesetting systems , 1981 .

[15]  Krzysztof Z. Gajos,et al.  Automatically personalizing user interfaces , 2003, IJCAI 2003.

[16]  Oliver Deussen,et al.  Layout rules for graphical web documents , 1996, Comput. Graph..