CHAPTER 2- CLASSES OF USER INTERFACES
1. Command Line Interface
The command line interface is no longer common as a form of basic user interface in everyday
consumer products, but it is still in use under certain circumstances.
Command Line Interface requires users to type appropriate instructions into the command line.
The computer is commanded to first go to the required file or directory. From there, a whole host
of commands become available, from retrieving files to running programs.
The MS-DOS operating system and the command shell in the Windows operating system are
examples of command-line interfaces. In addition, programming language development
platforms such as Python can support command-line interfaces.
Advantages and Disadvantages
If the user knows the correct commands
For someone who has never used a
then this type of interface can be much
CLI, it can be very confusing
faster than other types of interface
This type of interface needs much less Commands have to be typed precisely.
memory (RAM) in order to use it than If there is a spelling error the command
other user interfaces will fail
If you mis-type an instruction, it is
This type of interface does not use as
often necessary to start from scratch
much CPU processing time as others
again
There are a large number of commands
A low resolution, cheaper monitor can be
which need to be learned - in the case
used with this type of interface
of Unix it can be hundreds
You can't just guess what the
A CLI does not require Windows to run instruction might be and you can't just
'have a go'.
2. Menu-Driven Interface
The menu-driven user interface provides you with a range of commands or options in the form of
a list or menu displayed in full-screen, pop-up, pull-down, or drop-down.
Menu driven interfaces can also be verbal rather than visual. Have you ever made a telephone
call and been asked to 'press 1 for abc, press 2 for def, press 3 for ghi'? eg safaricom cutomer
care service
An ATM is an example of a menu-driven interface.
Advantages and Disadvantages
Extremely easy to use. Someone who has never
A poorly designed menu interface may be
seen the interface before can work out what to
slow to use
do
There are no commands to learn or remember It can be irritating if there are too many
Advantages and Disadvantages
menu screens to work through - users get
annoyed or bored if it takes too long
You often can't go to the exact place you
Step-by-step options are given so that the user want right at the start. You have to work
doesn't have to remember anything your way through the menu screens even if
you know where you want to get to.
The menu can take up a large part of the
Even if you don't know what to do, you can
screen so you have to keep flicking back
usually guess your way round the options
and forwards between applications
If the menu is poorly designed it might be
Menu interfaces don't have to be visual, they hard to read e.g. writing is too small for
can be spoken - good for telephones or for people with poor sight, colours might clash
visually impaired people and be difficult to read, font style might be
hard to read.
They don't need huge amounts of processing
power or memory
It is fairly easy for the software programmer to
create the same menus in a different language
3. Natural language interfaces
Natural language interfaces allow the user to interact using written or spoken 'human'
commands instead of computer language. ... For example, Siri, Alexa, Google Assistant or
Cortana are natural language interfaces that allows you to interact with your device's
operating system using your own spoken language.
https://www.youtube.com/watch?v=eVAb_0OFjA8- video for Google assistant features eg
song humming, reminders for certain tasks eg to take your medicine etc
Advantages and Disadvantages
Advantages Disadvantages
Reliability remains an issue - the interface can
The user does not need to be trained on
only respond to commands that have been
how to use the interface
programmed
Highly complex to program and so only warrants
More flexibility than a dialogue interface this kind of interface where other types of
interface are unsuitable
Not widely available as other forms of interface
Suitable for physically handicapped people
are often superior
A voice interface might need training in order to
get the software to recognise what the user is
Advantages and Disadvantages
Advantages Disadvantages
saying
4. Forms Interface
This is a method of enabling you to interact with an application.
The form normally provides limited choices as to the use.
For example, a form interface for setting text characteristics in application software might offer
the choices of selecting font size, colour, style.
A form interface which will allow you to interact with the system software might offer choices
such as selecting your screen resolution, default language, keyboard style etc.
A form interface can also be used to enter data into a system, for example a database system will
usually allow you to create a form to enter data into tables.
Advantages and Disadvantages
Advantages Disadvantages
Easy to program Only limited options presented
Easy for user to see the Visually impaired people might have trouble seeing
options available the text or options
Not good for highly complex applications, for
Data validation can be used
example, a tax form might have 20 pages of options
on data entry forms
that need to be completed
Fast to enter data or to make
choices
Little or no training required
They don't need huge
amounts of processing power
or memory
5. Dialogue Interface
This is a way of interacting with your environment by means of the spoken word.
For example many modern cars have a dialogue interface to allow control of the radio and
mobile phone whilst driving. The driver simply says a certain command word such as 'Radio 2'
whilst the car is in 'listening mode'. The computer controlling the interface will make sense of the
command and take action, switching the radio to radio 2.
Another example might be in a 'smart home' where the user can control the temperature, light
intensity, sound systems or curtains being closed by the use of spoken commands.
In order for these interfaces to work effectively they need to be 'trained' with the user. This
involves the user speaking the commands until the system accepts the command and reacts
appropriately.
Once training is complete the system becomes quite reliable in understanding the user
commands. However, noise in the background can be a problem and may interfere with the
interface understanding the command.
Dialogue interfaces often have a limited vocabulary.
Advantages and Disadvantages
Allows hands free control - useful to ensure
Only limited uses
safety when driving for example.
Useful for physically disabled users Expensive to develop
Training session with user required
May not operate reliably if there is
background noise
Not suitable for safety critical
commands such as 'stop'
6. WIMP or GUI Interface
A graphical user interface is the most common type of user interface seen today. it is a very
friendly way for people to interact with the computer because it makes use of pictures, graphics
and icons - hence why it is called 'graphical'.
A GUI (pronounced gooey) is also known as a WIMP interface because it makes use of:
Windows - a rectangular area on the screen where the commonly used applications run
Icons - a picture or symbol which is used to represent a software application or hardware device
Menus - a list of options from which the user can choose what they require
Pointers - a symbol such as an arrow which moves around the screen as you move your mouse.
Helps you to select objects.
All modern operating systems have at least one type of GUI. For example Microsoft Windows is
a GUI, Apple Macintosh has another. Linux has a number of Graphical User Interfaces available.
Many programs that run in Windows are known as WYSIWYG - this stands
for What You See Is What You Get. In the early days of word-processors, you typed your essay
or letter on the screen, but it could look completely different on the printer. A GUI normally tries
to ensure that whatever you create on the screen will be very similar to what appears on the
printer or the web.
Advantages and Disadvantages
Advantages Disadvantages
This type of user interface is easy to GUIs take up a much larger amount of hard
use, especially for a beginner disk space than other interfaces
It is easy to explore and find your
They need significantly more memory
way around the system using a
(RAM) to run than other interface types
WIMP/ GUI interface
You do not have to learn They use more processing power than other
complicated commands types of interface
There are usually good help They can be slow for experienced
facilities provided with WIMP programmers to use. These people often find
interfaces CLI interfaces faster to use
You get the benefits of WYSIWYG
Advantages and Disadvantages
Advantages Disadvantages
They let you exchange data between
different software applications
7. Gesture based interfaces
- allows computers to capture and interprete human gestures as commands
- Refers to using specific gestures like scrolling, pinching and tapping an interface
- Gestural user interfaces and gesture recognition technology has evolved from very basic
motions and applications to the complex and is now a part of everyday life for a huge
number of people.
- The Samsung Galaxy S4 is an example of one smartphone that has taken gesture user
interface a step further. The phone tracks and recognizes your eye movement and
automatically scrolls down as your eyes reach the bottom of the page.
Merits Demerits
Computer can track the movement of each Less accuracy
eye
It can be used by some users who cannot use Needs to accurately interprete the movements
input devices made by the human user.
Tracking individual finger and eyeball
requires highly accurate cameras or sensors
It can be very difficult to control a pointer
when a finger is mid-air rather than firmly
fixed to touch screen.
User Interface Design Guidelines
1. Naturalness:
Dialogue which does not cause the user to significantly alter his or her approach to the
task in order to interact with the system
The ordering of the user input is important; it should be geared towards the normal
order of working of the user rather than whatever is easier for the programmer
Phrasing should be self-explanatory, e.g. print, copy end have obvious meanings
whereas „pip‟ (CP/M – control program for microcomputers- keyword for copy) or
„mv‟(UNIX keyword for rename) do not.
Use of non-standard abbreviations should be avoided since they slow down word
recognition and introduce unnecessary stress.
2. Consistency
A consistent dialogue ensures that expectations which the user builds up through using one part
of the system are not frustrated by idiosyncratic changes in the conventions used in another part.
Consistent layout for screens which fulfill a similar function ensures that the user knows where
to look for instructions, error messages etc
The dialogue should also be consistent with established norms.
Diversions from norms will cause confusion
3. Non-Redundancy:
A non- redundant dialogue requires the user to enter only the minimum information
for the system’s operation
Too much information on one screen is detrimental to the clarity of the screen and
will lead to unnecessarily delay when the user tries to „spot‟ a particular field or item.
4. Supportiveness:
Refers to the amount of assistance which the dialogue provides to the user in running
the system.
It has three major aspects: the quantity and quality of instructions provided; the
nature of the error messages produced and the confirmation of what the system is doing.
Inputs should be confirmed: if their acceptance will result in an irreversible action, for
example, delete file; if a code has been entered and the user has to check the associated
description or when confirmation of completion of particular actions is desirable.
5. Flexibility:
This depends largely on the skill and expertise of the user in relation to a given task. Different
types of dialogue may be used in different situations e.g. a hierarchical menu structure for use by
a first time user may be navigated using commands and parameters.