One of the most important requirements for any new product is that it should be ‘Usable’ or ‘Easy to Use.’ But in my role as Product Manager at Lattice Engines, I have always been puzzled about what this means to the product. There are really three different flavors for a product being easy to use; in this blog post, I discuss each of them.
Easy to get started
The most common meaning of easy to use, is easy to get started with. The most important criterion are:
1. The various controls you want to user to use more frequently, are easily available
2. The feature works as the user expects
For example, if you are creating a new feature that enables a user to search a e-commerce website. The expectations for this feature would be:
1. The search box is in the normal place - top and center, or top and right
2. The user can enter a text and just click enter, and expect the search to give you results
3. There is potential auto-fill and/or auto-correct functionality available
4. This feature works in a similar manner across all platforms and devices used to access your site.
In other words, the control and behavior mirror the mental model of how users expect your feature to behave.
Easy to learn/master
Let’s say you are designing a product with lots of advanced features. Your users need to often achieve a certain level of mastery to start using those features. These require a different set of consideration; you need to provide everything to the user to learn and master these features. This includes
1. Training/tutorials to walk through the advanced features
2. Clear separation of advanced features from the most common features
3. A non-threatening learning environment; by this, I mean that the consequences of using the features should be clearly visible to the user, and he/she must have enough information to decide whether to take an unfamiliar action, and ideally know that they can always reverse any change they make
High productivity after Mastery
A last important aspect of ease of use is what sort of productivity can the user achieve after he/she has learned the advanced features. A prime example is excel; there are tons of shortcuts which require lot of effort on part of the user to learn. But for the advanced users of excel (e.g., consultants, investment bankers) the shortcuts increase their productivity tremendously.
There is a trade-off
These three objectives are not mutually exclusive; given limited resources, and design considerations, you have to decide which is most important, and design for that case. For example, I was recently designing an advanced module at Lattice. My initial instinct was to design a very simple, intuitive interface, and I got pretty good feedback from most potential users. What I did not realize that a very small percentage of our users would use this module; those that would, use excel for such tasks. Designing an excel-like interface increases the effort required to learn the interface upfront, but helps them be much more productive when they have gained mastery.