Does NothingDoes NothingDoes NothingDoes Nothing NowtAdminCase Studiesmodule1Module2Module3Module4Module5Module6Glossary  
nowtPolicy / StrategySoftware evaluationDatabase managementDistributed SystemsNetwork security and accountingHuman Computer InteractionHuman Computer InterfaceSoftware DevelopmentSoftware reliabilityPortability of Datanowt
NowtHCIQuestionsNowt
 

Human Computer Interface

The human computer interface is the hardware and software that the user interacts with. It is responsible for the user's view of the system. The correct design of an HCI can be crucial to the overall success of the system since it responsible for the interaction with the end user.

HCI design must aim to provide information in a consistent way so that the user is presented with a recognisable pattern. This will allow the user to interact efficiently even when using new parts of the system. The design must be compatible with the user's perception of the task - for example by grouping data on the screen in a way that will be familiar to or expected by the user. It should be adaptable to the user's level of skill and it should allow the user to carry out a task with the minimum number of operations. It should guide the user through task, providing help and support as necessary and it should be structured in a way that allows the end user to have an overview of how the system works.

HCI design will deal with the way in which the user gives instructions to the computer system, the way in which he or she enters data and the way that information is presented to the user.

Data entry screens

A well designed data entry screen will have consistently placed prompts clearly identified with the data entry space. Data ranges or lists of permitted codes should be displayed - perhaps at the bottom of the screen when the cursor is in a data entry box. The data will be grouped - usually by sequence of entry and different groups may be boxed. Colour may be used to distinguish prompts from data. Required formats will be indicated and where possible data should be auto formatted so that the user does not have to enter redundant data. The screen should allow editing including the ability to undo a particular field or record, easy movement between data boxes and require confirmation of completion before data is passed to the system - e.g. an OK button. Data already known should be filled in automatically - e.g. name and address when customer account number is entered. The user should be allowed to enter data at their own pace.

Command Language

A command language can provide an expert user with a powerful way of giving instructions to a system. When a set of commands is being designed for an HCI the designer must aim to make the dialogue between the operator and the system as natural as possible. Command words should be chosen which relate to the task that they perform. The computer should respond to a command by providing the user with a status report so that each command will be followed by a response from the system. Error messages and prompts should be clear and the user should be able to cancel a command and possibly undo a previous command. The computer should not proceed with a command without explicit confirmation - such as the user pressing return. Help should always be available.

Menu Interfaces

There are two types of menu interface - hierarchical and independent. A hierarchical menu system has a series of related menus where a parent menu screen leads to one of a number of possible related child screens. In an independent menu system number of unrelated menus are available although the items within one menu are likely to be related. A menu interface could, of course, contain both independent and hierarchical menu systems. Menu system are useful for casual users since they present the user with a limited choice of clearly defined alternatives. If the system is complex then the user may have problems keeping track of whereabouts in the system they are and how to get back to an earlier position. Menu interfaces often have a single keystroke facility to backtrack menu by menu or to jump to the main menu in one go. Options should be structured into groups and the title of the menu should reflect its function.

GUI Systems

Graphic user interfaces allow the user to manipulate screen images in an intuitive manner. This type of system is easy to learn because the environment behaves in a way that the user expects and that relates to the task he or she is attempting to perform. A GUI may incorporate menus and commands to provide a variety of ways of performing the same task. Different methods may suit the abilities of different users or may be appropriate to performing the task under a particular set of circumstances.

The HCI is a part of the computer system and as such it requires system resources. A GUI makes particularly heavy demands on system resources. In general the HCI will require processor time when prompts are being displayed and responses interpreted. This will be over and above the processor time needed to carry out the required task. In addition the HCI will require both backing storage (unless stored in ROM) and central memory space. GUI's require more resources than other user interfaces because of the heavy memory and processor demands made when processing graphics.

Some application programs - notably databases - allow the user to completely customise the HCI by designing screen layouts and even including a customised help function and error messages. This allows faster system development since the basic processing engine is already up and working and the appropriate user interface is simply bolted on to it. This approach is useful for small scale implementations but can lead to slow working solutions when applied to more complex problems.

   

©LEV