All systems have common problem: new user should understand how to work with the system. This is a matter of usability. Usual objects like cup and hummer do provide some valuable hints. Let’s take a knife. It has handle and blade. Handle designed specially for human hand and even if you never seen a knife, you’ll likely take it for handle. This is a good design. But knife is a very simple system, while all enterprise software systems are complex. Very, very complex indeed.
You can’t touch them and find physical hints. You get feedback via monitor only, so all possible hints should be visual. Basically, software should provide feedback on all user actions:
- What can be dragged?
- What can be clicked?
- What can be hovered?
- Did I hover something interesting?
- What happened after I’d clicked this large red button with strange title “Delete & Erase”?
- What can I do on this screen?
- What can I do with this software?
Two latter questions are the most general and important for us. In most cases system should support two types of users: Novice and Expert. Novice knows a little and system should guide him. Expert knows a lot and system should help him to perform frequent tasks fast, with fewer clicks and less reloads. We are talking about novice users, so let’s forget about expert for awhile.
It’s funny, but in vast majority cases software developers design systems for expert users first. Software released and then developers try to put something that can simplify Novice life. Yes, they put the following things for sure:
- Huge manual somewhere on installation disk
- Help (the same manual, but slightly shortened)
Less usual, but still popular:
- Quick Start (the same manual, but shortened significantly)
- Tutorials (at least something usable, flash would be great!)
Looks good, isn’t it? There are many help materials, so with luck even dumbest human being should understand how to use the system! No, no, no, that’s not true. What’s the problem? Here is it:
· 0.00% will read Huge Manual
· 1% will read Help (but it will not help 🙂
· 2% will scan Quick Start
· 5% will see one or two tutorials
So only about 10% of novice users will know something about system. Other 90% will start right from login page. Let’s try to look at real application from novice user’s side.
“I am Mike. I want to review this good-looking project management system. I have it installed and logged in. I want to create and plan first project to see system in action. Here what I see on first page after login:
Hmm… What we have there? Empty ToDo list. It seems something can be assigned on me. Dashboard is active, so I am in Dashboard. In top menu we have Projects and Users. Well, let’s add new project first. Click on Projects link.
Quite clear, click add link and create new project.
What’s next? Most likely I should go inside created project and investigate possibilities. OK, click on project name.
Hmm, new dashboard… Project dashboard. I don’t like it. Why another dashboard? OK, I see one new tab Planning. Also the system has Team and Time Tracking. What Time Tracking means? Ah, nevermind, it is not important for now. Maybe I should click Planning or try Team first?”
As you see, Mike slows down very quickly. It seems he will be able to create project plan, but his first impression is not great. He will have a feeling that system is not easy to use at the first look and maybe he’ll throw it away.
What about solution? In general it sounds pretty easy: system should guide user. It is easier to say than do. How system can guide user at all? How system can predict user actions? It can’t, but you as system developer can. Here are novice user’s life-savers:
- Wizards. Well-known solution for tasks with narrow focus and several steps. Wizard guide you through all the steps and any novice can accomplish the task.
- Advices about next possible steps. For tasks with broad focus wizard will not work perfectly. It is better to show next possible actions for user.
- Context help. Less important, but may be considered for complex actions.
Let’s try again.
“I am logged in.”
“Wow! Nice picture! Here are all steps I need to do to reach the goal. I even can click steps right on the picture! Project added, now add two users.”
“Current step filled green! Oh, so neat feedback! I like it!”
This is not pure wizard, but a mix of context help and “next step adviser”. Novice instantly knows what can be done after all. Novice sees all steps to reach the goal. Novice can navigate to any step from anywhere at any time (if step is available in current system state). First steps became No-brainer even for novice.
Don’t make users think, just make them happy.