Before you start
- At the highest level, in one paragraph, what is a representative user's goal and the problem you are solving for them?
- If you can't answer this succinctly you have many, many features or you don't know your users well enough to continue.
- Slow down, answer #1 for each feature set before you go to #2.
What you need to design for them
- Verify you are building all the tools they need.
- Show the process they will use to reach goal - give them a map or trail to follow.
- Indication of progress toward the user's goal - "You are here"
- Make sure you build in escape hatches because they find a better way.
- Very few user's "flow" from point a to point b. You can force them into a wizard pattern, but its more likely you will bore them and/or lose them in your flow.
- Build in tracking of user activity so you can verify users are reaching goals.
- Build in an internal review process to periodically review how well the features you built are working. I always learn from usage metrics as much as talking to actual users.