Designing an interface is not mearly a software engineering concept. It is more of a creative and artistic activity. By combining the engineering principles and methodogies with artistic view you can create a good GUI. The human factors affect the design of a user interface. These factors are:
Each of these factors is important in interface design. The lack of concentration on any one of these factors can prove to be fatal to the success of the interface.
- Human factors
i. Human factors or human factors engineering is the term mainly used in USA on place of ergonomics as used in Europe.
ii. Human factors is the study of human behavior, cognition, and ability. Research performed in human factors such as learning, memory recall, metaphors, consistency, and effects of system feedback are transferred into product design.
iii. Human factors techniques can be used to profile the user community, build product requirements, and ensure that valid data is collected and accurately interpreted.
iv. Often human factors research is delivered as design guidelines, style guides, and conformance check lists of do's and don'ts in interface design.
v. The most effective way to incorporate human factors is to include human factors specialists on the design team to assist with user interviews, requirements gathering, and user interface design.
- Software factors
i. Software factors that affect interface design concern the way the interface is designed, as well as the choices developers must make to create accurate and efficient software.
ii. The real world is huge and full of possibilities. All these possibilities cannot be emulated in the interface.
iii. Thus, many assumptions and simplifications are made about the user and the working environment, which limit these possibilities.
iv. Developing the interface involves designing and coding. Coding the interface takes up a major part of the software design.
v. An efficient code is one, which employs resources in a meaningful manner and responds quickly to actions.
vi. The time factor is also an important constraint. The interface must be quick in responding to user actions, although this is sometimes dependent on the hardware.
vii. The design and the code of the interface play equivalent roles. For example, it should not require many mouse clicks to perform a task.
- Hardware factors
i. Hardware factors deal with hardware support available in the users' working environment. These factors determine the technical working environment.
ii. The hardware depends on financial constraints and the architectural setup of the work place of the user.
iii. For instance, if an interface requires 3D effects, the developer must be aware of the available hardware and the financial constraints of the customers.
iv. Hardware also affects the speed of the interface. It is very important for an interface to respond quickly to the user actions.
v. Although speed depends on the interface design to some extent, physical factors also limit speed.
vi. An interface that uses many graphics requires a screen with a high resolution and a fast processor.
vii. A low-resolution screen and slow processor can cause a lot of flickering and make the graphical interface unusable.
viii. Effects such as shading, sound, and animation bring realism to the interface but greatly depend on the availability of efficient hardware.
ix. Though hardware and software factors are important, they may be sacrificed for the sake of user demands.