Heuristic - Human-computer Interaction

Human-computer Interaction

This section is written like a personal reflection or essay rather than an encyclopedic description of the subject. Please help improve it by rewriting it in an encyclopedic style.

In human-computer interaction, heuristic evaluation is a usability-testing technique devised by expert usability consultants. In heuristic evaluation, the user interface is reviewed by experts and its compliance to usability heuristics (broadly stated characteristics of a good user interface, based on prior experience) is assessed, and any violating aspects are recorded.

In software development, the use of a heuristic approach can facilitate a well-designed user interface, enabling users to navigate complex systems intuitively and without difficulty. The interface may guide the user when necessary using tooltips, help buttons, invitations to chat with support, etc., providing help when needed. However, in practice, the designer of the user interface may not find it easy to strike the optimum balance for assistance of the user. An example of a heuristic approach is the search product of Google. Google's primary product, search, involves incredibly complex algorithms searching a massive amount of data. The User Interface is simplified hugely to make for an intuitive experience; the requested search data is entered into a box and submitted with a single click. Data is organised by searching both the precise term submitted and also by applying fuzzy logic; searching for near-matches and associations (e.g. a search for 'Jonathan Smith' will also return results for 'John Smith'). This means that Google is able to return the information that the user wants, but may not have asked for, with an incredibly simple and intuitive user interface. If however the results returned are incorrect, you are given the option of performing an "advanced search" to provide more information for a more targeted response.

Software developers and targeted end-users alike disregard heuristics at their own peril. End users often need to increase their understanding of the basic framework that a project entails (so that their expectations are realistic), and developers often need to push to learn more about their target audience (so that their learning styles can be judged). Business rules crucial to the organization are often so obvious to the end-user that they are not conveyed to the developer, who may lack domain knowledge in the particular field of endeavor the application is meant to serve.

A proper Software Requirements Specification (SRS) models the heuristics of how a user will process the information being rendered on-screen. An SRS is ideally shared with the end-user well before the actual Software Design Specification (SDS) is written and the application is developed, so users' feedback about their experience can be used to adapt the design of the application. This saves much time in the Software Development Life Cycle (SDLC). Unless heuristics are adequately considered, the project will likely suffer many implementation problems and setbacks.

Read more about this topic:  Heuristic

Famous quotes containing the word interaction:

    Just because multiples can turn to each other for companionship, and at times for comfort, don’t be fooled into thinking you’re not still vital to them. Don’t let or make multiples be parents as well as siblings to each other. . . . Parent interaction with infants and young children has everything to do with how those children develop on every level, including how they develop their identities.
    Pamela Patrick Novotny (20th century)