Thursday, February 25, 2010

CS3216: A different GetHelp blog post

Recently, I read a book on User-Centred Design (User-centred Design Stories, Real-World UCD Case Studies, Authors: Carol Righi, Janice James. You can find some good books in the public libraries, and I'll post the title when I get the book back from my friend). I don't think many people have heard of the term before. I certainly was not one of them, but it's actually surprisingly quite important for good application design.

There are some basic but common sense principles which can be found here: http://www.usabilitynet.org/management/b_design.htm
  1. Design for the users and their tasks
  2. Be consistent
  3. Use simple and natural dialogue
  4. Reduce unnecessary mental effort by the user
  5. Provide adequate feedback
  6. Provide adequate navigation mechanisms
  7. Let the user drive
  8. Present information clearly
  9. Be helpful
  10. Reduce errors
There are some simple and cheap (almost free) practices that I want to share from the book. These are recommended practices before serious development to avoid massive re-writing/re-design.

This is where the non-programmers can really pull their weight. It just involves being human enough to understand that the general population is not as tech-savvy as people who work with computers everyday.

List of tasks - Can your app really help your users do what they want to do easily?
Create a list of tasks that you want your users to perform with the application within a timelimit and measure the completion rate. E.g. Registration, doing some work, creating a file, editing.. etc. Anything below 70% should be a huge warning sign.

Do Wire-framing - test the usability, intutiveness of the design
This just means drawing the design on paper and showing it to sample users. If the users are unable to complete the lists of tasks logically using the paper samples, something is not intuitive about your design/workflow.

Card-sorting - Improve your information flow within the app/website
If you are developing an application/website, write down the section headings/menu options on a series of cards, and let the users arrange the cards in a logical manner that makes sense to them. You'll realise that users might have a different information hierarchy from you.

Webcam
Record the users' reactions when using your application.

(I think the app is probably better than what I can do.. so sorry for making negative comments just for the sake of it).

1. Usability vs Aesthestics
Okie, the point about Reddit vs this app has been made. I think the design is graphically okie, although the top navigation menu is not easy to read. People read from left to right, so there's no need to make it slanted at an angle of 45 deg.

2. No. of options
Paralysis by analysis - User will be stymied by too many choices.
A simple way would be to reveal the following sections only when the user completes a section. E.g. After typing in the "need", the user will be shown the bottom half of the options.

Some options can be made default, such as location.
(Is it redundant to post it on twitter since you're already posting on FB? My twitter friends are not really the same group as my FB friends.. People use twitter more for semi-professional reasons and FB seems to be for keeping touch with friends.)

3. Incentives
I think it would make sense to allow custom badges to be made. E.g. CS4 Pro.. etc.
How to design user reputation systems: http://sharetheconversation.blogspot.com/2010/02/how-to-design-user-reputation-systems.html

4. Other problems
How to integrate user testing into development

The "Mum" test
Actually, I think the most useful test is the "Mum" test.

Lastly
Lastly, why did I read that textbook (totally unrelated to the case study.. picked it up during a random walk in the library)? We are using some of it to build a better application for our client and it is useful.

References/Further reading
Why I hate your web app: http://www.drawar.com/articles/why-i-hate-your-web-app/85/
Agile and UCD discussion: http://www.agilemodeling.com/essays/agileUsability.htm
Slideshare on Agile and UCD (125 slides): http://www.slideshare.net/abcd82/bringing-usercentereddesign-practices-intoagile-development-projects-presentation
Commando Usability Testing: http://www.astatespacetraveler.com/commando-usability-testing/
(Man, I finally figured out why people were posting funny blog posts with the same title. The reason: it's a assignment. Another hoop to jump through..
Sorry Prof Ben. Been busy reading other stuff as evidenced from my furious postings during the holidays. And I really sympathise with you having to read so many blog posts..
Anyway, since I'm late.. This is my take on it. I tried to make it informative and practical for you and the people who bother reading.
I understand why you set this case study.)

No comments:

Post a Comment