Just a short note on this one, but there will be more later…
When you plan out your next release, or even if you are thinking of starting a new software project, put usability as your key feature.
Sure, I understand, you think that your excellent world-enhancing gorgeous software doesn’t count when it comes to this, but if you need a PhD in Physics to just get what your software does, let alone use it, then you need to consider this seriously.
Here’s an example.
When looking at configuration of your product, are you thinking of putting each “module” configuration into a separate screen? What about thinking about it on the lines of functional configuration from the user point of view?
For instance, let’s say you have your main program, which consists of four different modules (let’s say security providers)… each module has “reporting” functions (logging, on-screen notification, whatever).
The current way of thinking seems to be that, if you wanted to change reporting, you’d need to go to each module and tweak the settings for each one.
Why not have a reporting configuration screen that does it all in one place?
I understand how the going to each module comes about; each one is probably written by a different engineer, and therefore each is configured from each module, because that’s how disparate engineers set it all up.
Engineering with USE in mind, and not engineering complexity, however, is what makes usability a feature.
A little pain in the engineer phase goes a long way to reducing customer pain in the USE stage. And you don’t want pain there.
I admit, usability does not make for a good bullet point on the feature list.
But it does make for a lot more people happy they chose your product, and to recommend it to their friends.
Just something to keep in mind.
(Picture Credit: Andre Charland on Flickr under creative commons)