User Interface Design

  • Uploaded by: Muhammad Siddig Hassan
  • 0
  • 0
  • December 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View User Interface Design as PDF for free.

More details

  • Words: 5,498
  • Pages: 7
User Interface Design

Search: The Web

Page 1

Tripod

evaluation the+impact+of

Report Abuse

« Previous | Top 100 | Next »

share: del.icio.us | digg | reddit | furl | facebook

Take Our Survey!

Ads by Google

Adaptive Systems

Connect to U.S. Customs

Task Architect

CANbus to RS232

Study of Echo-State Network (ESN) and Least Mean-Square (LMS)

RJE SDLC software for connecting to U.S. Customs automated systems.

Hierarchical Task Analysis Tool built by Human Factors Specialists

Easy to use interface with flexible configuration for CANbus and FMS

www.TesiOnline.com

www.Serengeti.com

taskarchitect.com

www.squarell.com

The design of the user interface requires consideration of various psychological aspects of human behavior. This report discusses the psychological effects of interface components such as colour and visual objects. Other aspects which must be considered are the different levels of proficiency users have. Also an interface must be built to suit the system for which it was developed, it should not add complication to the achievement of simple tasks since this impacts negatively on users. This report also covers the characteristics of a good interface. It addresses issues of consistency, appropriateness of design and transparency of different types of user interfaces. Design guides for specific type s of interfaces as well as general guides for elements of the interface (for example forms, reports and dialogues) are discussed. A discussion on some of the consequences of bad user interface design is also included. This discussion shows how a badly designed user interface could lead to productivity losses. The methods and procedures used in the actual design of a user interface are covered. These are discussed in the context of general purpose as well as custom made software. Here the role of prototyping and the use of development tools for generating user interface screens, are covered. This report also covers Information about user interface design in Trinidad and Tobago obtained by interviewing professionals in the field of computer science. In Trinidad and Tobago, the majority of new software development is done for specialized software applications using fourth generation languages. The options for the user interface are formulated on the basis of the requirements obtained from the user at the analysis stage. As a result of the nature of software industry in Trinidad and Tobago, most user interfaces are developed inhouse using screen and menu builders. Newer methods of formulating the user interface requirements, such as prototyping are not in general use. User interfaces have evolved over time from the rudimentary command interpreter to the complex Graphical User Interfaces (GUIs) available on systems today. Currently the developers of today's main User Interface Management Systems (UIMSs) have released new versions of their products which feature major changes in the user interfaces. With the improvements being made to audio and visual technologies, multimedia applications are becoming more common. Multimedia has had an effect on user interface development since interfaces incorporating sound and animation as a standard feature are now being developed. This report discusses some of the design methodologies adopted by some of the developers of UIMSs. The impact multimedia had on user interface design is also discussed as well as what is expected from future user interface designs.

2.1 Definition of a User Interface The user interface of a computer system is the component of the system which facilitates interaction between the user and the system. Thus, the user interface must enable two-way communication by providing feedback to the user, as well as functions for entering data needed by the system. 2.2 The Need for a User Interface When the first computers were introduced in the 1950s, the only people who interacted with computers on a regular basis were highlytrained engineers and scientists in research facilities. The cost and size of these computers made their wide-spread use impractical. At this time, communicating with the computer was a very complex task which required a detailed knowledge of the computer's hardware. Advances made in technology allowed computers to be made smaller and affordable. As a result of this, and the increase in productivity gained by computers, their use became more widespread. With various people from diverse backgrounds now using computers in

http://members.tripod.com/the_packrat/ui_desgn.html

27/01/1430 06:46:25 ‫م‬

User Interface Design

Page 2

everyday life, came the need for a user-friendly interface through which the average person could interact productively with a computer system. This led to the development of various types of user interfaces which catered for different types of users. 2.3 Types of User Interfaces The major types of user interfaces are: 1. 2. 3. 4.

Command-driven interfaces Menu-driven interfaces Direct manipulation interfaces (DMI) Special purpose interfaces.

i.) Command-driven interfaces usually require the user to enter an explicit command which is then interpreted and executed by the system. The command must conform to the syntax rules defined by the system. ii.) Menu-driven interfaces provide the user with a list of options and a simple method of selecting between them. Such a method may involve entering a single letter or a number which represents the option. Examples of various types of menus include bar menus and pulldown menus. iii.) Direct manipulation interfaces (DMIs) presents users with a model of their information space and users can manipulate their information by direct action. Since these types of interfaces manipulate information by direct action, it is not necessary to issue explicit commands to modify information. The Graphical User Interface (GUI) is the most popular implementation of a DMI. This type of interface makes use of visual objects to implement its model and the user can manipulate these objects via a mouse or another pointing device. User Interface Management Systems (UIMS) are implemented mainly as GUIs so that the interface governs the entire system and not just a single application. GUI's are further discussed in section 4.3.3 later in this report. iv.) Special purpose interfaces are those which are used to control an embedded computer system (for example, an automatic bank machine). Such interfaces also control systems which combine the use of a general-purpose computer with special hardware and software for implementing the user interface.

3.1 The Power of Visual Communication What people see influences how they feel and what they understand. Visual information communicates non-verbally but very powerfully. This can be attributed to the emotional cues contained in visuals that motivate, direct or distract. This is shown by the way people tend to describe graphic information with adjectives like "fresh", "pretty", "boring", "conservative" and "wild". The advertising industry has taken advantage of this phenomenon for almost as long as publications have existed. A study conducted in the early stages of the Macintosh development compared a set of tasks performed on both the Lisa and a MS-DOS based computer [11]. These tasks were actually more complicated on the Lisa, but the subjects in the test perceived them as being as easier because the graphical interface made the tasks more fun. This is only one example of how visuals can motivate people. 3.2 Effects of Colour and Visual Objects The retina of the human eye contains special cones which respond to stimulation by one of three primary colours, red, green, or blueviolet. Mixing of these colours and variations of their intensities can produce many other colours visible to the human eye. Modern colour photography and colour display technology use this same principle of mixing three basic colours to produce all other visible colours. Colour can be described as having three physical properties which are hue, saturation (or chroma) and brightness. Hue is the name of a colour, saturation is its intensity and brightness is where it would fall on a scale of dark to light. Colour has emotional properties that helps to mould a person's opinion on something visual. Colours can be arranged to produce a harmonious effect, or they can be arranged to produce an unpleasant effect. There are many theories which explain both the pleasing and harmonious arrangement of colours and those co-ordinations of colours which clash and are displeasing. These rules are however always subject to an individual's personal taste. Some of the most respected rules are however described here. To make an element in a design stand out from its surroundings, a colour that is definitely lighter or darker than the surroundings should be chosen. Pleasing designs can be made of colours of the same hue, of definitely different but neighbouring hues, or of complementary hues. Designs involving two colours with opponent hues, for example red and green, should not be used because they appear to vibrate as the eye tries to focus on them. The use of bright colours on large areas also produces an unpleasant effect since this use of colour tend to leave opponent after images on the retina [2].

http://members.tripod.com/the_packrat/ui_desgn.html

27/01/1430 06:46:25 ‫م‬

User Interface Design

Page 3

Proper use of colour improves learning. This has been proven in various psychological tests [11]. If colours are well chosen and used in computer applications, they improve marketability of products and give an impression of friendliness. They also help reduce the learning curve for these applications. If they are poorly chosen, they can severely affect usability and create a circus like appearance that can confuse and irritate users. A metaphor, or analogy, relates two otherwise unrelated things. Metaphors are used in applications to develop the user's conceptual image or model of an application. Using metaphors that are familiar and real-world based allow users to transfer previous knowledge of their work environment to a particular application interface. The best known metaphor is the desktop metaphor where the screen represents a desktop and system entities are represented by folders on that desktop. The use of visual objects can be made in order to implement a metaphor. A visual object is simply a representation (either verbally described or drawn) of different system entities or actions that can be performed. For example in the desktop metaphor, a folder is an object representing a particular file. Visual objects that are represented pictorially are called icons. A folder is an icon in the desktop metaphor. Icons allow users to easily identify different applications, files associated with different applications or system components. Visual objects that are three dimensional and animate also have a very powerful effect on users. Objects that animate and perform a particular action after being acted on, give the user a feeling of total control over that action. An example of such an object is the button. If a user clicks on a button via a mouse or another pointing device, he expects that button to be pushed in. If the button does not respond as the user expects, the user thinks that something is wrong. That action of animating a button being depressed reassures the user that the system is functioning properly. The user gains a feeling of control in knowing that by pressing a single button or a combination of buttons results in a particular action being carried out by the computer. Overall, the advantages of using metaphors and colour in user interfaces are a reduction in learning time for an application, motivation of users to use the application and increased user confidence. 3.3 Types of Users and User Preferences Many people use computers for many different reasons. These people range from those with little or no skills to those with a great abundance of computer knowledge. Some people who are new to computers are also afraid of using them for a variety of reasons. Different types of interfaces are therefore needed to cater for all types of computer users. A computer user should be able to effectively accomplish any required tasks without having to worry about any interface issues since this leads to a loss in productivity. Finding an interface to cater for a particular user depends largely on that user's preferences. For example an experienced user may prefer to use a command driven interface whereas a not so experienced user may prefer to use a GUI. Command driven interfaces allow faster interaction with the computer and simplify the input of complex requests. This is why most experienced users prefer them. An inexperienced user however prefers a GUI environment because it is easier to use and adapt to. Inexperienced users are also attracted to GUI's because of their use of colours and visual objects which tend to hold their attention. Inexperienced users may also be overwhelmed by the syntax of the commands they will have to learn before they can use a command driven interface.

4.1 Methods Used in Formulating the User Interface Design There have been generally been two approaches in formulating the usability requirements or the tasks which the user interface is expected to perform. These are: 1. The Methodological approach 2. The Training approach 4.1.1 Methodological approach This approach emphasizes the use of good methods or tools in the design of the user interface. This includes the use of prototyping tools, iterative design techniques and empirical testing [1]. User Interface Prototyping User interface prototyping involves the simulation of the proposed screen layouts and system responses before the actual implementation. It is usually performed early in the design process and is done regularly. This reduces uncertainty and risk regarding interface performance and ease-of-use. This technique is primarily used in the design of interfaces for custom-made applications. Initially, in the design phase of the system development life cycle, rudimentary prototypes produced on word processors can be used, whereas subsequent prototypes could become progressively closer to the final product. Final implementation of the user interface occurs late in the development cycle so that it can receive the full benefit of the prototyping process.

http://members.tripod.com/the_packrat/ui_desgn.html

27/01/1430 06:46:25 ‫م‬

User Interface Design

Page 4

User interface prototypes should display the proposed screens in the standard sequence in which they will appear. This is particularly effective for menu-driven interfaces and GUIs. If the interface is operator-driven, the prototype must also accept input from the user and simulate the appropriate functions when they are selected by the user. Refinement of the prototype depends on the usability problems encountered by the end-users. Based on feedback from the user, the prototype may be modified, totally re-designed or accepted. The tools which are used in user interface prototyping can either be specialized or general-purpose. The following are some of these tools: General purpose tools: 1. Fourth-generation languages - These languages are used in conjunction with Database Management Systems (DBMSs) which have screen and application generators. Hence, they can be used to build a small-scale version of the actual application with interactive screens and executable programs. Examples of Fourth-generation languages include Foxpro and Paradox. 2. Presentation tools - These can be used to demonstrate the successive stages in a dialog between the system and the user. An example of such a tool is Aldus Presentation. 3. Standard applications - General purpose software such as word-processors and spreadsheets can also serve as prototyping tools. Word-processors with macro and hyper-textual capabilities can effectively simulate a user interface. Any package such as spreadsheets which can be programmed using macros, or some other type of pre-defined language, can produce interactive prototypes. Specialized tools There are specialized development aids which are designed specifically for user interface prototyping. Examples of such tools are ProtoScreens and ADEPT (Advanced Design Environment for Prototyping with Task Models). These tools usually generate the screen layouts, interface components and dialogues based on characteristics specified by the designer. For example, ADEPT uses abstract platform-independent models which provide the designer with a high-level specification of the interactions required between the user and the system, to perform the proposed tasks. The designer can then edit these models and translate them into 'concrete' models which contain detail-level descriptions of the interface objects, their behaviour and the screen layout. These models can then be implemented on any GUI platform [1]. Prototypes are usually discarded once they are no longer needed. However, if a specialized tool is used to create the prototype, it may be re-used in the actual implementation. Iterative design Iterative design techniques involve the production of components of the entire system, in small increments on a regular basis. Therefore small parts are of the entire system may be delivered every two to four weeks. This means that the user interface for each of these components must be repeatedly improved until the final iteration is achieved. Like prototyping, iterative design depends on feedback from the user when successive versions of the interface are to be formulated. When using iterative design methodology, these are some of the issues to be considered: 1. Recognize the usability problems of the interface based on feedback. 2. Once a problem is identified, the interface designer must make changes to correct it. The rationale for the changes should be explicit and should be recorded to form an audit trail. This prevents future changes from sacrificing major usability principles of the interface for a relatively minor gain. 3. The quality of the interfaces produced from successive iterations depends on the quality of the original. Thus iterative design may only improve problems in a limited range. The better the design to start with, the better the results after iterations. Even though some of the tools used in prototyping are also used in iterative development, there is an essential difference between these two methods with respect to the user interface. A prototype of a user interface is developed with the intention of discarding it once changes are to be made. However, iterative development involves repeatedly improving the actual user interface until a satisfactory design is achieved. Usability Testing This type of testing is used in conjunction with user interface prototyping and iterative design techniques. Basically, it is the evaluation of the interface based on results of experiments involving feedback from the test-users. There are two basic forms of usability testing: 1. Testing of a completed user interface to determine whether or not the usability requirements for the interface have been achieved. This involves quantitative measurement. 2. The evaluation of an interface which is still in the process of being designed. The objective of this evaluation is to determine which parts of the interface work properly and which parts have not met usability requirements. Usability testing may be conducted via several methods. For example, observation of users working on a set of standard tasks, the use of attitude questionnaires and the use of automatic computer detection and logging of the users' actions. From these tests, a list of the usability problems encountered, is produced. These problems are then categorized by their nature and frequency of occurrence. The impact of these problems on user-productivity and satisfaction is determined. Based on these attributes, the problems are prioritized and those with the highest priority are solved in the next iteration or prototype. In some cases solving a problem for one user may actually create unforeseen problems for another. In such cases, a compromise is necessary.

http://members.tripod.com/the_packrat/ui_desgn.html

27/01/1430 06:46:25 ‫م‬

User Interface Design

Page 5

4.1.2 Training Approach This approach to user interface design relies on the training and knowledge possessed by the designer. Emphasis is placed on the formulation of a good interface design through the expertise of the person responsible for designing the interface. This training may include various fields such as educational psychology, instructional design, and ergonomics (the scientific study of human comfort). Traditionally, user interfaces have been designed by specialists in the area of computer science. However, at present, the increasing use of professionals trained in human factors, shows that a fairly diverse sub-set of knowledge is necessary for a good interface design. This fact has been recognized by software industry leaders such as Microsoft who now employ psychologists in the design of their user-interfaces. [1] These methods of formulating the usability requirements. have certain drawbacks associated with them. Prototyping and iterative design depend on the quality of the initial design. If the quality of first iteration or prototype is poor, then a large number of successive iterations may be required to correct the design. Due to the lack of user-feedback in the training approach, it is very difficult to produce a design which can cater for the needs of a large number of users, if this approach is used. As a result of these disadvantages, a combination of these approaches is sometimes used. Such a combination will result in fewer iterations and prototypes since the initial design will contain fewer errors and will solve a larger number of usability problems. 4.2 General Design Guides for User Interface Elements 4.2.1 General Principles of Good User Interface Design User interface design must take into account the needs, experience and capabilities of the user. User interfaces should be designed so that useful interaction can be developed between the user and the system. The interface must be user friendly and must support the user through every stage of interaction. This can be accomplished by allowing users to develop a conceptual model of how an application should work. The user interface should confirm the conceptual model by providing the outcome users expect for any action. This occurs only when the application model is the same as the users' conceptual model. Since there are different types of user interfaces, different guidelines will apply specifically to each design. There are however some general principles which are applicable to all user interface designs and they are listed as follows: 1. 2. 3. 4. 5. 6.

The interface should be user driven The interface should be consistent The interface should avoid modes The interface should be transparent The interface should include error recovery mechanisms The interface should incorporate some form of user guidance

The interface should be user-driven Often the goal of an application is to automate what was a paper process. With more people beginning to use computers to do their work, an interface designer should try to make the transfer to the computer simple and natural. Applications should be designed to allow users to apply their previous real-world knowledge of the paper process to the application interface. The design can then support the users' work environment and goals. Potential users should therefore be involved in the design process of the user interface in a advisory capacity and their feedback should be incorporated in the user interface at each stage of its design. [6] The interface should be consistent Interface consistency means that system commands and menus should have the same format, parameters should be passed to all commands in the same way and command punctuation should be similar. Consistent interfaces reduces learning time since knowledge gained in one command or application can be applied to other parts of the system. [6] Consistency throughout an application can be supported by establishing the following: 1. 2. 3. 4.

Common presentation Common interaction Common process sequence Common actions

Common presentation is concerned mainly with a common appearance of the interface. Users can become familiar with interface components when the visual appearance of these components is consistent and, in some cases, when the location of these components are consistent. Common interaction deals with the interaction of the user with different interface components. After users can recognize interface components, they can interact with these components. Once interaction techniques associated with each component are consistently supported, users become familiar with these techniques.

http://members.tripod.com/the_packrat/ui_desgn.html

27/01/1430 06:46:25 ‫م‬

User Interface Design

Page 6

A process sequence defines a series of steps to follow when a user wants to perform a particular type of action. A common process sequence will define steps for a particular action which must be supported by all applications in the system. When an application consistently supports a common process sequence, users become familiar with the way to interact with the application. Common actions provide a language between users and the system so users can understand the meaning and result of actions. For example, when users select the OK action, they are telling the computer they have finished working with a particular entry, selection or window and want to continue with the application. Interface consistency across applications is also important. Applications should be designed so that commands with similar meanings in different applications can be expressed in the same way. The interface should avoid modes Users are in a mode whenever they must cancel what they are doing before they can do something else or when the same action has different results in different situations. Modes force users to focus on the way an application works instead of the task to be done. Modes, therefore, interfere with the user's ability to use his/her conceptual model of how he application should work. It is not always possible to design an application without modes, however when used, they should be made an exception and limited to the smallest possible scope. Whenever a user is in a mode, it should be made obvious by providing good visual cues. The method for ending modes should also be easy to learn and remember. Some types of modes are allowed by the user interface. They are: Modal Dialogs Spring-loaded Modes Tool-driven Modes Sometimes an application needs information to continue, such as the name of a file into which the user want to save something. When an error occurs, users may be required to perform some action before they can continue their task. The dialogs associated with these events are modal dialogs. Users are in a spring-loaded mode when they continually take some action that keeps them in the mode. For example, users are in a spring-loaded mode when they drag the mouse with a mouse button pressed to highlight a portion of text. Here, the visual cue for the mode is the highlighting. If users are in a drawing application, they must be able to choose a tool, such as a pencil or paintbrush, for drawing. After users select the tool, the mouse pointer shape may change to match the selected tool or the tool selection may remain highlighted. This type of mode is called a tool-driven mode because the selection of an application tool puts the user in a mode. Users are in a mode but they are not likely to be confused because the changed mouse pointer or highlighted selection is a constant reminder they are in a mode. [6] The interface should be transparent Users should not be made to focus on the mechanics of an application. A good user interface should not bother the user with mechanics. Users view the computer as a tool for completing tasks and should not have to know how an application works to get a task done. A goal of user interface design is to make the user interaction with the computer as simple as possible. A user interface should be so simple that users are not aware of the tools and mechanisms that make the application work. As applications become more complicated, users should be provided with a simple interface so that they can learn new applications easily. An application should reflect a real world model of the user goals and the tasks necessary to reach those goals. The user interface should therefore be so intuitive that users can anticipate what to do next by applying their previous knowledge of doing tasks without a computer. One way to provide an intuitive user interface is through the use of metaphors previously discussed in the psychological aspects of interface design of this report. The interface should include error recovery mechanisms Users inevitably make mistakes when using a system. The interface design can minimize these mistakes (for example using menus eliminates typing mistakes) but mistakes can never be completely eliminated. The interface should therefore provide facilities for recovering from these mistakes. These can be of two kinds: 1. Confirmation of destructive actions. If a specified action is potentially destructive, the system should prompt the user for confirmation of that action before any information is destroyed. 2. The inclusion of an undo facility which returns the system to a state before the action occurred. Many levels of undo are useful since users are not always immediately aware of mistakes. In practice, this is expensive to implement and most systems only allow the last command issued to be `undone'. The interface should incorporate some form of user guidance User interfaces should have built-in `help' facilities. These should be accessible from a terminal and should provide different levels of help and advice. Help facilities should be structured so that users are not overwhelmed with information when they ask for help. Principles that should be followed when designing messages of any type are:

http://members.tripod.com/the_packrat/ui_desgn.html

27/01/1430 06:46:25 ‫م‬

User Interface Design

Page 7

1. Messages should be tailored to the user's context. The user guidance system should be aware of what the user is doing and should alter the output message appropriately if it is context- dependent. 2. Messages should be tailored to the user's experience level. As users become more familiar with a particular system, they become irritated by long `meaningful' messages. Beginners, however, find it difficult to understand short, brief statements of a problem. The user guidance system should provide both types of messages and should allow the user to control the wordiness of the messages. 3. Messages should be tailored to the user's skills. Terminology used in messages should be understood by the users of the system. For example, complex programming terms or computer `jargon' should not be used in a system designed for use by a secretarial staff. 4. Messages should be positive rather than negative. They should use the active rather than the passive voice. Messages should never be insulting or funny. 4.2.2 Dialogue Design and Help Styles A dialogue is defined as communication between two or more different entities. Since the user interface deals with human - computer communication it would not be unreasonable to say that the conversation which occurs in the user interface, is a dialogue. Thus, it is important to have a properly thought out and designed dialogue. The designer must decide whether or not the dialogue is controlled mainly by the user or the computer. The style of help available to the user must also be considered. Types of Dialogues There are two types of dialogues: 1. Program-directed dialogues 2. Operator-directed dialogues Program-directed dialogues The flow of the dialogue is controlled by the application. The user is directed to enter commands and data as they are required by the system. Each screen presented to the user is fixed in format. [3] The most common forms of interaction which represent program-directed dialogues are: Menu systems The user is given a limited number of choices and is allowed to select one. The form-filling metaphor The application displays an on-screen form with text fields and captions indicating what data should be entered in each field. The user then fills in the form standard sequence from left to right and top to bottom. Prompting The program displays a question and asks the user to enter an answer. Operator-directed dialogues The application is directed by the user to perform tasks in a sequence which is determined by the user. The occurrence and nature of the current task to be performed is totally determined by the user. The methods commonly used to implement operator-directed dialogues are: Command languages The user enters an explicit command to initiate an action. Direct Manipulation Metaphors Tasks to be performed are represented as objects. The user manipulates these objects to accomplish tasks.[3] Standards for dialogue design A number of standards have been put forward by the International Standards Organization [8]. These may be grouped into several broad categories. These are: feedback, suitability, user control, error handling, and learning. Feedback provided by the dialogue should assist the user in gaining an understanding of the system so that their tasks are made easier. It should also be limited both in scope and content to the action being carried out by the user. In addition it should also minimize the user's need to consult any user manuals or external sources of information, thereby avoiding frequent media switches and confusion of the user. Feedback should also be self explanatory, that is the user should be able to tell what is being done rather than having to guess. Suitability covers many areas. It deals with the fact that the user should only be able to receive information, and carry out tasks that are applicable to what they are currently doing. To this end, consideration should be given to the context, type, and scope of information to be presented to the user. Terminology used should be consistent and context based rather than dialogue based. Also, input to and output from the dialogue should fit the task at hand. User control deals with the degree to which the dialogue permits the user to have control over itself. A properly designed dialogue should allow the user to have as much control as is feasible without burdening them with background activities not related to the user task. Whenever input is requested, the dialogue should give the user information about the expected input. The user should be supported when

http://members.tripod.com/the_packrat/ui_desgn.html

27/01/1430 06:46:25 ‫م‬

Related Documents


More Documents from ""

November 2019 27
Quality 01
December 2019 30
User Interface Design
December 2019 21
Mohamed~1
November 2019 26