1. Usability Testing
With the advent of Consumer centric products, design and usability are fast proving to be a
"make-or-break" deal for most companies. It is usability which separates the over-priced
Apple iPad from its much cheaper and functionality-stuffed competitors. Gone are the days
when banking, trading, shopping, conferencing was unimaginable on hand held devices.
Providing these features at the fingertips of consumers, literally, is not only an added perk
but a differentiator and soon becoming a need. It differentiates your products from
competition and that is how consumers will judge you.
More often than not, unfortunately, consumers will judge a bank not based on its ledgers but
based on how their website is. So even when most ledgers are not in red, companies are
losing clientele for the lack of easily accessible services and representation.
Question is who is responsible to deliver systems which are user friendly and exciting. The
task now needs to be handled not only at the architecture or design level. Testing teams,
until recently, were restricted to check for Functionality and Conformance to requirements.
Well, Usability is now a requirement. Testing teams and test engineers need to now brace up
for checking the complete usability of the product.
I would like to categorise Usability testing under two major types.
Rule-Based usability testing
&
Judgement based Usability testing
The former is a very simple and a mechanical process. The idea is to follow a certain set of
rules defined at the start of the design based on the overall direction decided by the product
management under Rule-Based usability testing.
It is the judgement based usability testing which cannot be taught and every test engineer
needs to inculcate it as a way of life, so to say. Both the approaches combine to cover most
areas of Usability helping us to gauge the overall intuitive nature of the product.
Rule- Based Usability testing
As discussed earlier, testers can follow a set of rules/guidelines in order to gauge the overall
usability and “design-sanity” of the product.
1- Consistency in design
Every product should have an overarching design
template. This includes designing work flows and
individual form elements. Even though every
operation and form is different, a certain sense of
predictability should be achieved. User should not
have to spend a lot of time in learning a new
operation every time. Conformance to these pre-
defined design rules should be verified thoroughly.
2. 2- Alignment and placements
Another contributing factor towards predictability is the alignment and placement of
elements such as buttons and input fields across the product. Even the simplest
operations such as shifting the cursor from one field to another (by pressing TAB or
NEXT) should be common all across.
Having said this, misplaced and
un-aligned elements can not only
cause a functionality failures but at
times lead the user down the
wrong path contributing further to
bad user experience. Please see the
image here for a better idea.
Alignment checks should thus be
carried out across the board and
special exercise should be
dedicated for this.
3- Number of steps
The “Number of Steps” required to complete any transaction is again an important
factor which is generally ignored during usability testing. Every unnecessary
additional step rockets the user patience downwards exponentially.
Testing teams should provide feedback on operations which they feel utilise one too
many steps.
3. 4- Context sensitive help
Not every user is a novice nor is every user an expert. Context sensitive help should
be provided for those who are clueless of what happens next. Lack of such help is
actually a crime in the usability terms and should be tested for on all pages/forms of
the software. It is also rude to show the user generic help everywhere and expect him
to mine for the required information.
5- Accessibility
Testers should check if they can access the most important pages or links in the
software from any other location directly. There should always be a menu available to
the user to access important nodes such as “Home” or “Logout” or “Help”. These
should also be accessible from commonly used locations.
Judgement based usability testing
This is where the most interesting and most challenging exercise begins. Not only are there
no specific rules to tally against but there is also no single correct approach. Based purely on
judgement and experience, a tester needs to provide inputs which will eventually raise the
user experience.
1- First Impressions
The initial learning curve of any software is very vital in the overall user experience.
Users are tempted to explore more if they get going right from the start without
hurdles. A sense of expertise for any user contributes to the products likeability.
Testers should verify the intuitive nature of navigation right at the start of testing.
Once he or she gets accustomed to the work flows, it is difficult to find flaws in it. A
fresh pair of eyes can find the flaws better than well trained ones.
2- Functionality enhancement
There are countless examples of good design where functionality has not only been
enhanced but made more accessible.
So a good design should not
just look good but also add
to functionality delivery.
Testing teams should weigh
the overall value provided
by design enhancements
and ensure that it does not
diminish.
4. 3- Overall design feel
Lastly, how a user describes the software to his peers depends heavily on its freshness
and the confidence it instils in the user. Example: An overly flashy banking
application will not go down well end users and they might have doubts on the
security of the application even though these two things are completely disconnected.
So domain-specific cues should be adhered to while allowing creative enhancements.
A tester can enact an end-user and provide unbiased feedback on his overall
experience and rank his or her confidence levels. Collective feedback from the testing
team can go a long way in improving the software.
Testing team thus can and should contribute heavily in improving the overall User
Experience of the product. It is now that testers should judge not only right or wrong but
better or worse.