Systems are often designed so users have to stretch their thinking to understand a complicated machine logic rather than the other way around. Some of the most important concepts in HCI which help Ux designers to deal with this problem are mental models.
Here are the definitions:
An implementation model is the way of how a machine or program actually works, or in other words it describes the details of the way a program is implemented in code. (Alan Cooper, About Face)
A represented model is the way a system or program is presented which often has very little to do with what is actually going on inside the computer. It is the way the designer chooses to represent a program’s functioning to the user.
The last concept, the user mental model, is actually a cognitive shorthand for explaining how a complex machine works. To use a computer people don’t necessarily need to know the complex mechanism going on inside. Instead they create a mental model that gives them enough understanding to cover their interactions with it. Movie goers probably don’t know exactly how the projector actually works and they probably image that the projector reflects a picture onto the big screen. That’s all they need.
Don Norman gives the following explanation of mental models:
A mental model is what the user believes about the system at hand.
Note the two important elements of this definition:
A mental model is based on belief, not facts: that is, it’s a model of what users know (or think they know) about a system such as your website. Hopefully, users’ thinking is closely related to reality because they base their predictions about the system on their mental models and thus plan their future actions based on how that model predicts the appropriate course.
Individual users each have their own mental model. A mental model is internal to each user’s brain, and different users might construct different mental models of the same user interface. Further, one of usability’s big dilemmas is the common gap between designers’ and users’ mental models. Because designers know too much, they form wonderful mental models of their own creations, leading them to believe that each feature is easy to understand. Users’ mental models of the UI are likely to be somewhat more deficient, making them more likely to make mistakes and find the design much more difficult to use.
(Read the article here)
Implementation models shouldn’t be the ones presented to the end user. They are complex and confusing for the average person and do little to improve interaction with the product. A represented model should be quite different from the actual processing structure of the program.
The challenge is to create a represented model which aligns with a users’ mental model of the product. As above mentioned, the big dilemma is the gap between the designers’ model of the product (represented model) and the users’ model. It is important to remember that people tend to simplify reality by creating easy mental models. As designers we have to create represented models that are far simpler than the actual implementation models to help users understand our products better.
Users shouldn’t have to stretch to understand the complex workings and logic of the machine. One of the most significant ways a computer can assist a human being is by putting a simple face on complex processes and situations. Digital products which are consistent with the mental model of the user are far more successful than those who are a reflection of the implementation model.
I find the graphic below conveys the basic concept in a simple and effective way: