What is an User Interface?
User interface – the interaction between man and machine
Machines are part of our lives. They facilitate our work and our interaction. We communicate via smartphone and watch series on internet-enabled TV sets. The dishwasher performs valuable services and we get from A to B with the help of cars. This is made possible by interfaces through which a human being interacts with a concrete machine. This is called an user interface.
The way user interfaces work – sometimes also called man-machine interface (MMS) or human machine interface (HMI) – varies depending on the machine or system, the product or the software. This can be easily understood by looking at various examples of user interfaces:
- We unlock our smartphone by fingerprint, facial recognition or numerical code.
- We use a remote control to change TV stations on the television,
- we activate functions in software programmes via individual menu items,
- we use the control panel to set the duration of a dishwasher cycle
- and we communicate our wishes to virtual voice assistants by voice.
In cars, there are many user interfaces (often abbreviated to UI) with which a human being – the driver – interacts with the machine – the car:
- The car is accelerated by pressing the accelerator pedal,
- and brakes are applied by pressing the brake pedal.
- The gear is changed by simultaneously pressing the clutch and operating the gearstick,
- and the indicator of a change of direction is activated by the indicator lever.
- The high beam is switched on and off by the lever and
- and a suitable radio station is selected by turning a knob.
- The temperature of the seat heating can be influenced by pressing a button several times and
- and the room temperature is adjusted by means of a slider.
Obviously, a car is a system with many components that can be activated via different user interfaces. Usually, these components are described by many requirements and the implementation of these requirements has a great influence on the user experience, i.e. on the perceptions and reactions of a person when using the car or the components.
Types of user interfaces
There are different types of user interfaces. Here you will find a selection:
- The Command Line Interface (CLI) is the classic computer user interface. It is part of a computer program and accepts input from users via a text line. It is considered the precursor of the GUI.
- The Graphical User Interface (GUI) is the graphical user interface found in most common software programs. Primarily, the user interacts with the mouse and keyboard, with the actual interaction elements being menus, icons or toolbars that users recognise. Example: A floppy disk is the icon for storing information.
- The Tangible User Interface (TUI) interacts with a physical object as an input or output medium. This is found, for example, in museums that want to encourage visitors to take active actions. Example: In the Senckenberg Museum in Frankfurt/Main, the earth’s plates or continents can be moved on a display by means of a large steering wheel. This shows how the earth changes over millions of years.
- A Text User Interface (also TUI) is a purely text-based interface that, in contrast to the CLI, makes full use of the screen or a screen window. It is therefore also called a Terminal User Interface or Character-based User Interface (CHUI). Mainframe computers often have corresponding user interfaces.
- A Voice User Interface (VUI) is a voice-controlled interface that allows both voice input and voice output. Examples are Siri from Apple, Alexa from Amazon or speech-to-text apps.
In addition to these types, there are also combined approaches such as the Natural User Interface (NUI) as a combination of GUI, VUI and facial recognition, or the Perceptual User Interface (PUI) as a combination of GUI, VUI and gesture recognition. With the help of the Brain Computer Interface (BCI), a programme is supposed to react directly to the thoughts of the user without a “diversion” via an input device such as a keyboard or mouse.
Requirements for user interfaces
When it comes to the topic of what requirements user interfaces should fulfil, aspects such as “intuitive operation” or a “clear arrangement of controls” are often mentioned.¹ Of course, such requirements are not wrong per se, but they are also not very meaningful. What user A finds intuitive, user B may find confusing and illogical. Such different perceptions are influenced by personal preferences, knowledge and experience, for example. Example: On an Apple computer, external data media can be “ejected” by dragging and dropping them into the recycle bin. What is common and logical for Apple users might surprise some Windows users, because the recycle bin in the Microsoft world is merely a place where things end up before they are finally deleted.
Furthermore, the nature of a user interface determines the requirements for human-machine interaction. Example: A voice user interface must understand speech input in different pitches, speech rates, dialects or distances from the microphone before it can implement instructions accordingly. Whatever is considered “intuitive” in such an interface, it is certainly something different from a Graphical User Interface.
So when it comes to requirements for user interfaces, there are various approaches to finding out what these are in concrete terms:
- Concrete requirements elicitation and analysis in the course of a requirements engineering process.
- The study of standards and standards series such as DIN EN ISO 9241.²
- The early use of tools such as click dummies, with which layouts and designs can be tested and users better understood, or wireframes, which help in the design of websites, web applications or software screens.
- Collaboration with user interface designers or user experience experts.
And last but not least, the usability heuristics of Jakob Nielsen² can be used.
Usability heuristics for user interface design
Jakob Nielsen’s usability heuristics are a set of ten general principles for user interface design that help evaluate the usability of software, websites and other interactive systems.
- Visibility of system status: The system should always inform users about the current state of affairs, through appropriate feedback within a reasonable period of time.
- Consistency between the system and the real world: The system should speak the language of the user, using words, phrases and concepts that are familiar to the user, rather than system-oriented terms. It should follow the conventions of the real world so that information appears in a natural and logical order.
- User control and freedom: Since users often make mistakes, the system should allow them to easily undo their actions. The system should also provide clearly marked ’emergency exits’ to leave the undesirable state without having to go through a lengthy process.
- Consistency and standards: Users should not have to wonder whether different words, situations or actions mean the same thing.
- Error prevention: Even better than good error messages is careful design that prevents a problem from occurring in the first place. It’s a good idea to either check or eliminate error-prone conditions, or offer users a confirmation option before they perform an action.
- Recognise instead of remember: It is important to make objects, actions and options visible. The user should not have to remember information from one part of the interface to another. Instructions for using the system should be visible or easily retrievable whenever appropriate.
- Flexibility and efficiency of use: “Accelerators” such as short-cuts or keyboard shortcuts that are not visible to the inexperienced user can often speed up interaction for the experienced user, making the system suitable for both inexperienced and experienced users. Ideally, the system supports users in customising frequent actions.
- Aesthetic and minimalist design: Dialogues should not contain information that is irrelevant or rarely needed. Each additional unit of information in a dialogue competes with the relevant units of information and reduces their relative visibility.
- Help the user recognise, diagnose and correct errors: Error messages should be in simple language (no codes), accurately state the problem and constructively suggest a solution.
- Help and documentation: Although it is better if the system can be used without documentation, it may be necessary to provide documentation or FAQ. This information should be easy to find, focus on the user’s task, list concrete steps and not be too extensive.
Should manufacturers pay attention to the spirit of the times when designing user interfaces or would they rather stay true to their – possibly somewhat outdated – form of operation?
 The DIN EN ISO 9241 specifies requirements for the ergonomic design of electronic visual displays. These include, among others, recommendations for the visual presentation of information, guidelines for the individualisation of software, interaction principles, contactless counter control for human-system interaction, guidelines for the design of user interfaces for the World Wide Web, accessibility, guidelines for the accessibility of devices and services in information and communication technology or the human-centred design of interactive systems.
 Jakob Nielsen is a world-renowned usability expert and a specialist in the field of human-computer interaction (HCI). He is co-founder of the Nielsen Norman Group, a leading research firm that helps companies improve the usability of their products and services. Nielsen has written several books and is widely known for his 10 usability heuristics, which have become a widely used standard for evaluating the usability of software, websites and other interactive systems.
And here you will find additional information from the t2informatik Blog: