Wednesday, January 04, 2012

Software Product Design with User in Mind

Too many software product ideas was born on a piece of napkin or on a white board. The software idea is usually conceived by an engineer and is almost always described to other engineers in terms of product functionality. As a result, the software which gets developed has loads of functionality and features - which is often unknown to the user. So when the end user gets confused and calls for support, he is often pointed to the user guide or install guide or troubleshooting guide etc.

The poor user at the other end has to read through several hundreds of pages, sit through training programs - just to know how to use the software!

Even everyday software products such as a simple text editor is made so complex, that it needs a user manual, a training guide, and loads of demonstration videos. (Just google for 'MS Office training guide')

And things get worse. Every time the software gets an update, new sets of guides are published and the users will have to be re-trained!

Imagine if all the products we use today would come with a similar user guides. Everytime Honda releases a new car, you have to learn how to drive all over again!!

This problem is not limited to software, the problem can be seen all across the board in all "engineered" products. But it is most obvious in software.

Why does this happen?

The main reason why companies develop such hard to use products is because the products were not designed to be easily used. In most product development, the user interface is an after thought & The usability of the interface is never tested with real users. Instead the product gets developed by engineers and the UI team (which has no idea on customer usage) develops the User Interface (UI), and the testing team tests the product for functional correctness, but there is no test plan for usability.

Today there are certain "usability" guidelines - published by US Fedral Government (http://www.Usability.gov), but that covers only the web design.

IBM has also published a usability guide for software development (see: http://www-01.ibm.com/software/ucd/designconcepts/files/Design_principles_checklist.pdf )

But these guidelines are very general - but it is good start.

Alternate approach

A new way to develop software will be start with customer usage, use cases and acutal usage, and then start developing the user interface, and then develop the product funcationality and features. In short change the order in which we develop products. Start with developing the user experience and end with a product.



Today we start with user needs/requirements - defined by functional requirements, and then put on a user interface on top of those functional features, and then, we give them (customers) the user guides - to train the user.

We need to relook at product development process and make products as user friendly and intutive as possible.

3 comments:

Shealin said...

Well i appreciate this initiative, indeed is a good way to keep people making more comments and to seem your blog is more active.
Preventative Maintenance Software

website design said...

Very Good website. I like the contents. I find it useful as well. Big thanks for sharing.
website design

marysummer said...

software products are very useful and helpful. thanks for good sharing.
software free download for pc 2012