Principle 1: Match the User’s Mental Model

Definition

Every program has an internal concept of what it’s doing. A good design makes sure the user’s mental model (how they think it works) aligns with the system model (how it actually works).

Why It Matters

When users can’t predict what will happen, they feel lost, frustrated, or mistrustful. Misaligned models create confusion and errors, which leads to more support costs, lower adoption, and wasted development. Aligning with the user’s expectations makes software feel “obvious” and easy.

Example – Good vs. Bad

  • Good: In a photo app, dragging a picture into the trash can icon deletes it. Users already know the trash can metaphor from the real world.
  • Bad: In some enterprise tools, deleting a “record” only hides it from a list but doesn’t actually remove it from the database. Users expect “delete” to mean gone forever — so the mismatch creates confusion and lost trust.

Do’s

  • Research user expectations before designing (interviews, observation, testing).
  • Use familiar metaphors (trash can, folder, shopping cart) instead of inventing new ones.
  • Make the system status visible — users should always know what’s going on.
  • Simplify system logic so users don’t need to understand technical details.

Don’ts

  • Don’t use technical jargon that only developers understand (“commit”, “rollback”, “object”).
  • Don’t force users to adapt to the system’s quirks.
  • Don’t surprise users with hidden rules (like “Save” working differently in two parts of the app).

Key Takeaway

Software feels intuitive when users don’t need a manual to guess what will happen. Align the product’s behavior with the way people naturally think, not the way programmers think.

more insights

Consistency means that similar things look and behave the same way, both within a product and across platforms.
Affordances are visual or physical cues that suggest how something can be used. A button looks “clickable.” A slider looks “draggable.” Good design makes functionality obvious at first glance.
Great UX strikes a balance: new users can succeed quickly without training, while experienced users can work efficiently without being slowed down.