[This post is the sixth of a series defining software quality].
The most visible aspect of software quality is ease of use, it is also the most difficult to achieve. Imagine a software product of perfect quality, bug free and loaded with powerful business tools. Imagine next that all this power was delivered by the Spanish Inquisition, productive use requiring mental anguish and contortion [ed. unfortunately this product only exists as bug free in our imaginations, but as big ERP* in our imperfect reality]. No matter the quality metric offered by the vendor – 1 bug per gazillion lines of code – no one would give it high marks for quality.
Marketing and analyst claims aside, ease of use is very difficult to define. There are certain technical approaches which help. Consistent presentation across all panels and functions leads to ease of use provided the user can learn the rules. Minimal keystrokes (or big button theory) help ease of use because it is easier to push one button than remember which three to push in the correct order, assuming whatever the big button does is what you need to do every single time you do it. Simpler screens are easier (those with less data and more space), assuming the task only requires one screen to perform. The list continues with good ideas followed by the it falls apart when clause. The definition of ease of use becomes following the rules makes the product easy to use except when it doesn’t.
Marketing and analysts tend to cherry pick relative strengths of different ease of use implementations to make big claims which fall apart under examination. For example the GUI is easier than green screen meme is plain silly – a green screen ATM is no harder to use than a GUI ATM [ed. and boasts fewer ads]. A better way to tell is whether a particular software product requires a For Dummies book. ESPN.com is used by millions, yet no ESPN for Dummies is available. That is a pretty good definition of easy to use. [ed. note that ESPN Fantasy Football does merit a for Dummies].
What is a software vendor to do? First set up standards that work for its products, standards will differ for green screen, GUI, web, and mobile interfaces. Second provide a means for user control of which and how many fields / columns / rows appear on screens. HarrisData Widgets provide one example. Third track customer calls about how to use the product. If customers are confused, ease of use needs improvement. Finally call customers to verify that they are achieving expected benefits, if they are not it may be because the users can’t find / use the key business tools – again ease of use needs improvement. This gets back to treating customers as partners and respecting their agendas – the customer defines ease of use and will help a vendor achieve it.
[* I recall, but cannot link, an old WSJ article about SAP's ERP causing users to cry].