Guidelines

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 13

Shneiderman’s Eight Golden Rules

Ben Shneiderman, an American computer scientist consolidated some implicit facts about
designing and came up with the following eight general guidelines −

 Strive for Consistency.


 Cater to Universal Usability.
 Offer Informative feedback.
 Design Dialogs to yield closure.
 Prevent Errors.
 Permit easy reversal of actions.
 Support internal locus of control.
 Reduce short term memory load.
These guidelines are beneficial for normal designers as well as interface designers. Using these
eight guidelines, it is possible to differentiate a good interface design from a bad one. These are
beneficial in experimental assessment of identifying better GUIs.

Norman’s Seven Principles


To assess the interaction between human and computers, Donald Norman in 1988 proposed
seven principles. He proposed the seven stages that can be used to transform difficult tasks.
Following are the seven principles of Norman −
 Use both knowledge in world & knowledge in the head.
 Simplify task structures.
 Make things visible.
 Get the mapping right (User mental model = Conceptual model = Designed
model).
 Convert constrains into advantages (Physical constraints, Cultural constraints,
Technological constraints).
 Design for Error.
 When all else fails − Standardize.
Heuristic Evaluation
Heuristics evaluation is a methodical procedure to check user interface for usability problems.
Once a usability problem is detected in design, they are attended as an integral part of constant
design processes. Heuristic evaluation method includes some usability principles such as
Nielsen’s ten Usability principles.
Nielsen's Ten Heuristic Principles
 Visibility of system status.
 Match between system and real world.
 User control and freedom.
 Consistency and standards.
 Error prevention.
 Recognition rather than Recall.
 Flexibility and efficiency of use.
 Aesthetic and minimalist design.
 Help, diagnosis and recovery from errors.
 Documentation and Help
The above mentioned ten principles of Nielsen serve as a checklist in evaluating and explaining
problems for the heuristic evaluator while auditing an interface or a product.

Interface Design Guidelines


Some more important HCI design guidelines are presented in this section. General interaction,
information display, and data entry are three categories of HCI design guidelines that are
explained below.
General Interaction
Guidelines for general interaction are comprehensive advices that focus on general instructions
such as −
 Be consistent.
 Offer significant feedback.
 Ask for authentication of any non-trivial critical action.
 Authorize easy reversal of most actions.
 Lessen the amount of information that must be remembered in between actions.
 Seek competence in dialogue, motion and thought.
 Excuse mistakes.
 Classify activities by function and establish screen geography accordingly.
 Deliver help services that are context sensitive.
 Use simple action verbs or short verb phrases to name commands.

Information Display
Information provided by the HCI should not be incomplete or unclear or else the application will
not meet the requirements of the user. To provide better display, the following guidelines are
prepared −
 Exhibit only that information that is applicable to the present context.
 Don't burden the user with data, use a presentation layout that allows rapid
integration of information.
 Use standard labels, standard abbreviations and probable colors.
 Permit the user to maintain visual context.
 Generate meaningful error messages.
 Use upper and lower case, indentation and text grouping to aid in understanding.
 Use windows (if available) to classify different types of information.
 Use analog displays to characterize information that is more easily integrated with
this form of representation.
 Consider the available geography of the display screen and use it efficiently.
Data Entry
The following guidelines focus on data entry that is another important aspect of HCI −
 Reduce the number of input actions required of the user.
 Uphold steadiness between information display and data input.
 Let the user customize the input.
 Interaction should be flexible but also tuned to the user's favored mode of input.
 Disable commands that are unsuitable in the context of current actions.
 Allow the user to control the interactive flow.
 Offer help to assist with all input actions.
 Remove "mickey mouse" input.

The objective of this chapter is to learn all the aspects of design and development of interactive
systems, which are now an important part of our lives. The design and usability of these systems
leaves an effect on the quality of people’s relationship to technology. Web applications, games,
embedded devices, etc., are all a part of this system, which has become an integral part of our
lives. Let us now discuss on some major components of this system.

Concept of Usability Engineering


Usability Engineering is a method in the progress of software and systems, which includes user
contribution from the inception of the process and assures the effectiveness of the product
through the use of a usability requirement and metrics.
It thus refers to the Usability Function features of the entire process of abstracting, implementing
& testing hardware and software products. Requirements gathering stage to installation,
marketing and testing of products, all fall in this process.
Goals of Usability Engineering
 Effective to use − Functional
 Efficient to use − Efficient
 Error free in use − Safe
 Easy to use − Friendly
 Enjoyable in use − Delightful Experience
Usability
Usability has three components − effectiveness, efficiency and satisfaction, using which, users
accomplish their goals in particular environments. Let us look in brief about these components.
 Effectiveness − The completeness with which users achieve their goals.
 Efficiency − The competence used in using the resources to effectively achieve
the goals.
 Satisfaction − The ease of the work system to its users.
Usability Study
The methodical study on the interaction between people, products, and environment based on
experimental assessment. Example: Psychology, Behavioral Science, etc.

Usability Testing
The scientific evaluation of the stated usability parameters as per the user’s requirements,
competences, prospects, safety and satisfaction is known as usability testing.

Acceptance Testing
Acceptance testing also known as User Acceptance Testing (UAT), is a testing procedure that is
performed by the users as a final checkpoint before signing off from a vendor. Let us take an
example of the handheld barcode scanner.
Let us assume that a supermarket has bought barcode scanners from a vendor. The supermarket
gathers a team of counter employees and make them test the device in a mock store setting. By this
procedure, the users would determine if the product is acceptable for their needs. It is required that
the user acceptance testing "pass" before they receive the final product from the vendor.

Software Tools
A software tool is a programmatic software used to create, maintain, or otherwise support other
programs and applications. Some of the commonly used software tools in HCI are as follows −
 Specification Methods − The methods used to specify the GUI. Even though
these are lengthy and ambiguous methods, they are easy to understand.
 Grammars − Written Instructions or Expressions that a program would
understand. They provide confirmations for completeness and correctness.
 Transition Diagram − Set of nodes and links that can be displayed in text, link
frequency, state diagram, etc. They are difficult in evaluating usability, visibility,
modularity and synchronization.
 Statecharts − Chart methods developed for simultaneous user activities and
external actions. They provide link-specification with interface building tools.
 Interface Building Tools − Design methods that help in designing command
languages, data-entry structures, and widgets.
 Interface Mockup Tools − Tools to develop a quick sketch of GUI. E.g.,
Microsoft Visio, Visual Studio .Net, etc.
 Software Engineering Tools − Extensive programming tools to provide user
interface management system.
 Evaluation Tools − Tools to evaluate the correctness and completeness of
programs.
HCI and Software Engineering
Software engineering is the study of designing, development and preservation of software. It
comes in contact with HCI to make the man and machine interaction more vibrant and
interactive.
Let us see the following model in software engineering for interactive designing.
The Waterfall Method
Interactive System Design

The uni-directional movement of the waterfall model of Software Engineering shows that every
phase depends on the preceding phase and not vice-versa. However, this model is not suitable for
the interactive system design.
The interactive system design shows that every phase depends on each other to serve the purpose
of designing and product creation. It is a continuous process as there is so much to know and
users keep changing all the time. An interactive system designer should recognize this diversity.

Prototyping
Prototyping is another type of software engineering models that can have a complete range of
functionalities of the projected system.
In HCI, prototyping is a trial and partial design that helps users in testing design ideas without
executing a complete system.
Example of a prototype can be Sketches. Sketches of interactive design can later be produced
into graphical interface. See the following diagram.
The above diagram can be considered as a Low Fidelity Prototype as it uses manual procedures
like sketching in a paper.
A Medium Fidelity Prototype involves some but not all procedures of the system. E.g., first
screen of a GUI.
Finally, a Hi Fidelity Prototype simulates all the functionalities of the system in a design. This
prototype requires, time, money and work force.

User Centered Design (UCD)


The process of collecting feedback from users to improve the design is known as user centered
design or UCD.
UCD Drawbacks
 Passive user involvement.
 User’s perception about the new interface may be inappropriate.
 Designers may ask incorrect questions to users.
Interactive System Design Life Cycle (ISLC)
The stages in the following diagram are repeated until the solution is reached.
Diagram
GUI Design & Aesthetics
Graphic User Interface (GUI) is the interface from where a user can operate programs,
applications or devices in a computer system. This is where the icons, menus, widgets, labels
exist for the users to access.
It is significant that everything in the GUI is arranged in a way that is recognizable and pleasing
to the eye, which shows the aesthetic sense of the GUI designer. GUI aesthetics provides a
character and identity to any product.

HCI in Indian Industries


For the past couple of years, majority IT companies in India are hiring designers for HCI related
activities. Even multi-national companies started hiring for HCI from India as Indian designers
have proven their capabilities in architectural, visual and interaction designs. Thus, Indian HCI
designers are not only making a mark in the country, but also abroad.
The profession has boomed in the last decade even when the usability has been there forever.
And since new products are developed frequently, the durability prognosis also looks great.
As per an estimation made on usability specialists, there are mere 1,000 experts in India. The
overall requirement is around 60,000. Out of all the designers working in the country, HCI
designers count for approximately 2.77%.

HCI Analogy
Let us take a known analogy that can be understood by everyone. A film director is a person who
with his/her experience can work on script writing, acting, editing, and cinematography. He/She
can be considered as the only person accountable for all the creative phases of the film.
Similarly, HCI can be considered as the film director whose job is part creative and part
technical. An HCI designer have substantial understanding of all areas of designing. The
following diagram depicts the analogy −

Several interactive devices are used for the human computer interaction. Some of them are
known tools and some are recently developed or are a concept to be developed in the future. In
this chapter, we will discuss on some new and old interactive devices.

Touch Screen
The touch screen concept was prophesized decades ago, however the platform was acquired
recently. Today there are many devices that use touch screen. After vigilant selection of these
devices, developers customize their touch screen experiences.
The cheapest and relatively easy way of manufacturing touch screens are the ones using
electrodes and a voltage association. Other than the hardware differences, software alone can
bring major differences from one touch device to another, even when the same hardware is used.
Along with the innovative designs and new hardware and software, touch screens are likely to
grow in a big way in the future. A further development can be made by making a sync between
the touch and other devices.
In HCI, touch screen can be considered as a new interactive device.

Gesture Recognition
Gesture recognition is a subject in language technology that has the objective of understanding
human movement via mathematical procedures. Hand gesture recognition is currently the field of
focus. This technology is future based.
This new technology magnitudes an advanced association between human and computer where
no mechanical devices are used. This new interactive device might terminate the old devices like
keyboards and is also heavy on new devices like touch screens.

Speech Recognition
The technology of transcribing spoken phrases into written text is Speech Recognition. Such
technologies can be used in advanced control of many devices such as switching on and off the
electrical appliances. Only certain commands are required to be recognized for a complete
transcription. However, this cannot be beneficial for big vocabularies.
This HCI device help the user in hands free movement and keep the instruction based technology
up to date with the users.

Keyboard
A keyboard can be considered as a primitive device known to all of us today. Keyboard uses an
organization of keys/buttons that serves as a mechanical device for a computer. Each key in a
keyboard corresponds to a single written symbol or character.
This is the most effective and ancient interactive device between man and machine that has given
ideas to develop many more interactive devices as well as has made advancements in itself such
as soft screen keyboards for computers and mobile phones.

Response Time
Response time is the time taken by a device to respond to a request. The request can be anything
from a database query to loading a web page. The response time is the sum of the service time
and wait time. Transmission time becomes a part of the response time when the response has to
travel over a network.
In modern HCI devices, there are several applications installed and most of them function
simultaneously or as per the user’s usage. This makes a busier response time. All of that increase
in the response time is caused by increase in the wait time. The wait time is due to the running of
the requests and the queue of requests following it.
So, it is significant that the response time of a device is faster for which advanced processors are
used in modern devices.

HCI Design
HCI design is considered as a problem solving process that has components like planned usage,
target area, resources, cost, and viability. It decides on the requirement of product similarities to
balance trade-offs.
The following points are the four basic activities of interaction design −

 Identifying requirements
 Building alternative designs
 Developing interactive versions of the designs
 Evaluating designs
Three principles for user-centered approach are −

 Early focus on users and tasks


 Empirical Measurement
 Iterative Design
Design Methodologies
Various methodologies have materialized since the inception that outline the techniques for
human–computer interaction. Following are few design methodologies −
 Activity Theory − This is an HCI method that describes the framework where the
human-computer interactions take place. Activity theory provides reasoning,
analytical tools and interaction designs.
 User-Centered Design − It provides users the center-stage in designing where
they get the opportunity to work with designers and technical practitioners.
 Principles of User Interface Design − Tolerance, simplicity, visibility,
affordance, consistency, structure and feedback are the seven principles used in
interface designing.
 Value Sensitive Design − This method is used for developing technology and
includes three types of studies − conceptual, empirical and technical.
o Conceptual investigations works towards understanding the values
of the investors who use technology.
o Empirical investigations are qualitative or quantitative design
research studies that shows the designer’s understanding of the
users’ values.
o Technical investigations contain the use of technologies and designs
in the conceptual and empirical investigations.
Participatory Design
Participatory design process involves all stakeholders in the design process, so that the end result
meets the needs they are desiring. This design is used in various areas such as software design,
architecture, landscape architecture, product design, sustainability, graphic design, planning,
urban design, and even medicine.
Participatory design is not a style, but focus on processes and procedures of designing. It is seen
as a way of removing design accountability and origination by designers.

Task Analysis
Task Analysis plays an important part in User Requirements Analysis.

Task analysis is the procedure to learn the users and abstract frameworks, the patterns used in
workflows, and the chronological implementation of interaction with the GUI. It analyzes the
ways in which the user partitions the tasks and sequence them.
What is a TASK?
Human actions that contributes to a useful objective, aiming at the system, is a task. Task
analysis defines performance of users, not computers.
Hierarchical Task Analysis
Hierarchical Task Analysis is the procedure of disintegrating tasks into subtasks that could be
analyzed using the logical sequence for execution. This would help in achieving the goal in the
best possible way.
"A hierarchy is an organization of elements that, according to prerequisite relationships, describes the
path of experiences a learner must take to achieve any single behavior that appears higher in the
hierarchy. (Seels & Glasgow, 1990, p. 94)".

Techniques for Analysis


 Task decomposition − Splitting tasks into sub-tasks and in sequence.
 Knowledge-based techniques − Any instructions that users need to know.
‘User’ is always the beginning point for a task.
 Ethnography − Observation of users’ behavior in the use context.
 Protocol analysis − Observation and documentation of actions of the user. This is
achieved by authenticating the user’s thinking. The user is made to think aloud so
that the user’s mental logic can be understood.
Engineering Task Models
Unlike Hierarchical Task Analysis, Engineering Task Models can be specified formally and are
more useful.
Characteristics of Engineering Task Models
 Engineering task models have flexible notations, which describes the possible
activities clearly.
 They have organized approaches to support the requirement, analysis, and use of
task models in the design.
 They support the recycle of in-condition design solutions to problems that happen
throughout applications.
 Finally, they let the automatic tools accessible to support the different phases of
the design cycle.
ConcurTaskTree (CTT)
CTT is an engineering methodology used for modeling a task and consists of tasks and operators.
Operators in CTT are used to portray chronological associations between tasks. Following are
the key features of a CTT −

 Focus on actions that users wish to accomplish.


 Hierarchical structure.
 Graphical syntax.
 Rich set of sequential operators.

You might also like