User Interface (UI) Definition
User Interface refers to space where the interaction between the device and the human being takes place. It’s the visual part of a computer application, software or an operating system through which a human being interacts with the system or software. The user interface can be of different natures with some key similarities. User experiences largely depend on the design of the user interface. Users give commands to a device through the user interface and the machine feeds back information accordingly. The aim of designing a user interface is to provide users with a hassle-free experience. The design must be easy to understand, enjoyable and efficient. It must produce the desired result with minimum inputs from the user, at the same time it should minimize the undesired outputs.
A Little more on What is User Interface
User Interface may include physical interfaces such as keyboards, mouse, membrane switches, rubber keypad, and touch screen and it may also include the command language, graphics, and others.
Three main types of the user interface are Command Language interface, Menu based interface, and Graphical user interface.
In Command Language interface the user gives commands to the computer through specific computer language code. This interface is highly technical, and the user needs to have proper knowledge of the program specific code or language in order to interact with the machine. This kind of interface demands technical skill and knowledge.
Menu-based interfaces are easier to use. Here the users are required to choose the command from the menu displayed on the screen. It doesn’t need much technical expertise to interact through menu-based interfaces. You already have the choices displayed on the screen and you need to select the appropriate one to get the desired output.
In Graphical user interface the user gives the command to the machine by clicking on the icons displayed on the screen. It is quite simple to use and requires no technical knowledge. Any layman can use and enjoy this interface.
Eight qualities that make an interface user-friendly and efficient are:
Clarity is one of the prime qualities of any great user interface. The design of a user interface should never be ambiguous. The language, flow, hierarchy, and metaphors of visual elements should be designed in a way that is clear and easily understandable.
A user interface must always be concise. In order to make the user interface clear, someone may over-clarify by labeling everything. Then the interface will look cluttered with too much information on the screen. It makes it difficult for the users to find out the relevant information from an over-crowded screen. The main challenge of developing a good user interface is to make it clear as well as concise.
The elements of a user interface should be familiar, even to first-time users. The user shouldn’t have to have the prior technical knowledge to interact with the device through the interface. Common real-life metaphors can be used as the icons in the display so that the users can easily understand which icon t use for a specific function.
A user interface should respond quickly and appropriately. Using a sluggish interface is tedious and annoying. The interface should provide feedback to the user clearly and fast. It should communicate about what is happening and whether the command of the user is processed successfully or not.
The interface should be consistent across a particular application or software. It helps the users to understand and follow the pattern of the interface design.
An aesthetically appealing interface is always good to use. Although the aesthetics largely depends on the nature of the application, it should always be clean and simple.
An interface should always be efficient enough to make the user more productive.
A good interface forgives the user for making any mistakes and provides means to undo those mistakes easily. The users shouldn’t have to face any hardship for making a mistake while giving input to communicate with a machine.
References for User Interface
Academic Research on User Interface (UI)
• EXPGUI, a graphical user interface for GSAS, Toby, B. H. (2001).Journal of applied crystallography, 34(2), 210-213. This article describes the EXPGUI program and provides justification for the program. It is a platform independent program that applies a graphical user interface and shell for the GSASsingle-crystal and Rietveld package. Tcl/Tk scripting language is used in this program which makes it platform independent. The article also provides a synopsis about the implementation of the program.
• ORTEP‐3 for Windows ‐ a version of ORTEP‐III with a Graphical User Interface (GUI), Farrugia, L. J. (1997). Journal of Applied Crystallography, 30(5‐1), 565-565. ORTEP is one of the most popular computer programs for generating thermal ellipsoid drawings for publication. This article discusses the features of ORTEP-3 for Microsoft Windows. This version of ORTEP-III retains all facilities of ORTEP-III but has a number of extra features. It uses Graphical User Interface, so the user need not have any knowledge of the inner working of ORTEP. The Graphical User Interface writes the ORTEP-III input flies.
• Computer vision face tracking for use in a perceptual user interface, Bradski, G. R. (1998). The authors develop a computer vision color tracking algorithm and apply it to tracking human faces. The algorithm is base on a robust nonparametric technique for climbing density gradients to find the mode (peak) of probability distributions called the mean shift algorithm. The aim was to find the mode of a color distribution within a video scene. So, the mean shift algorithm is modified accordingly. This modified version is called the Continuously Adaptive Mean Shift (CAMSHIFT) algorithm.
• A description of the model-view-controller user interface paradigm in the smalltalk-80 system, Krasner, G. E., & Pope, S. T. (1988). Journal of object oriented programming, 1(3), 26-49. This article presents a description of the Model-View-Controller (MVC) user interface paradigm and methodology that is used in the Smalltalk-80TM programming system.
• MacMolPlt: a graphical user interface for GAMESS, Bode, B. M., & Gordon, M. S. (1998). Journal of Molecular Graphics and Modelling, 16(3), 133-138. This article describes the MacMolPlt which is a graphical user interface for the General Atomic and Molecular Electronic Structure System (GAMESS). The main features of this interface include an input builder for GAMESS; display and animation of molecular structure, total electron densities, density differences, reaction paths, orbitals, normal modes of vibration, and molecular electrostatic potentials. The article also discusses molecular electrostatic potential surfaces, the strategy for direct computation of orbital and total electron density.
• De signing the User Interface, Shneiderman, B., & Plaisant, C. (1992). Addison-Wesley Publishing Company USA. This book offers practical techniques and guidelines for interface design. It further discusses the underlying issues and reaches to the conclusions based on empirical results. The book provides guidelines for creating systems that facilitate rapid learning and performance, lowers the error rates, and provide high user satisfaction. Human factors of interactive software tested methods for developing and reviewing interfaces, interaction styles, and design considerations are discussed in detail in the book.
• 10 usability heuristics for user interface design, Nielsen, J. (1995). Nielsen Norman Group, 1(1). This article describes 10 most general principles for designing the user interface. These are called “heuristics” because these principles are like thumb rules and not specific usability guideline. These principles include: System status visibility, Match between system and the real world, User control and freedom, Consistency and standards, Prevention of error, Recognition rather than recall, Flexibility and efficiency of use, Aesthetic and minimalist design, Help users recognize, diagnose, and recover from errors, Help, and documentation.
• Crosscurrents: cultural dimensions and global Web user–interface design, Marcus, A., & Gould, E. W. (2000). interactions, 7(4), 32-46. The dimension of culture as analyzed by Geert Hofstede in his classic study of cultures in organizations is introduced and discusses in the paper. It analyzes how these dimensions of culture affect the user interface design. It provides examples from the Web illustrate the cultural dimension.
• A graphical user interface to the CCP4 program suite, Potterton, E., Briggs, P., Turkenburg, M., & Dodson, E. (2003). This paper discusses the features of the CCP4i, a graphical user interface that helps to run programs from the CCP4 suite quickly and in a simple way. This interface is specifically designed for the inexperienced users and it is closely linked to introductory and scientific documentation. A simple project-management system and visualization tools are also provided. This system is not specific to CCP4 software and can be extended.
• Guidelines for designing user interface software, Smith, S. L., & Mosier, J. N. (1986). A total number of 944 guidelines for designing software that supports the user interface to computer-based information systems are proposed in this article. Six functional areas are covered in these design guidelines, those are data entry, data display, sequence control, user guidance, data transmission, and data protection. It is the final compilation of the guidelines under current Air Force sponsorship and extends previously published guidelines.
Survey on user interface programming, Myers, B. A., & Rosson, M. B. (1992, June). This report presents the results of a survey on user interface programming. The survey collected 74 responses and the results suggest an average 48% of the code in today’s application is devoted to the user interface. It also suggests that during the design phase on an average 45% of the time is dedicated to the user interface part, in the implementation phase it is 50% of the time and during the maintenance phase the average time spent on the user interface is 37%. The results further show 34% of the systems were implemented using a toolkit, UIMS is used in 27% of the system, interface builder is used 14% and 26% didn’t use any tool.