Sometimes the simplest of functions can be overlooked and these may cause severe usability issues with your end solution. Previously, I was tasked with providing a customised banking (teller) module for a customer. The module functionality was system tested and delivered successfully however when we asked representative users to test this from a usability perspective, the first issue that arose related to the field tab sequencing, which was not set according to the order a user would find most efficient. We had to re-design the tab sequencing as per the end user’s needs, instead of sequentially, as the users found it met their requirement more if they could skip certain fields that were not used on a regular basis to speed up their regular work.
Usability testing is a very important part of testing the overall solution. This is conducted mostly to find improvement areas from end users and to help design a highly representative solution to match a customer’s requirements. Everybody likes to see a happy customer and usability testing helps us achieve this. A good measure of usability can be judged on the basis of the responses provided by the end users in relation to:
- The time taken to perform the task given
- The intuitiveness and simplicity of the process
- General feelings relating to the solution
Based on these parameters, a team can find useful insights into the usability of a prototype or solution design. This is essential learning, not just for a working project but also for future product designs. While reading some usability testing related articles, I came across this very good article written by Jakob Nielsen called “10 Usability Heuristics for User Interface”. Within the article, Nielsen provides an insight into the use of key heuristic measurements, which are a valuable tool in a testers’ toolbox. You can read about these in detail here: http://www.nngroup.com/articles/ten-usability-heuristics/
From my own personal experience, one of the most important points from the above given list was the ‘Visibility of system status’. As mentioned earlier, the solution being used should be as intuitive and as simple as possible. The ability for the system to keep you informed with your progression or any issues goes a long way to facilitate this. Getting updates on a user’s interaction with the system also allows for you to build an intuitive approach to solutions. It is also important to be aware of the level of understanding a user has about the application. When the solution is designed around this understanding, there is a stronger chance that all requirements to help navigate the user through the process have been met.
Another heuristic discussed by Nielsen which has been prevalent in my career as a tester to date is ‘User control and freedom’. Users generally choose to operate a system given to them in a manner which is perceived ‘right’ by them. For example, by pressing a digit in a phone call prior to a beep prompt. As this is a common action among representative users, it is a good idea to insert a script break to accept this action and not ignore it. These are the key points that need to be noted down. If the users are making common mistakes in understanding certain statuses or instructions in a similar manner, which was not originally intended design, then that functionality needs to be re-looked at. This is a good way to take quick steps and amend any issue that are likely to be seen at a later point in time.
‘Flexibility and efficiency of use’ as described by Nielsen, being the provision of accelerators or short cuts for a solution, is extremely beneficial to its end users. Especially during projects or daily routine, time is of the essence and any such accelerator can ease the pain for an end user. Also, it adds as an ‘extra’ feature for a novice user who picks these accelerators as a part of their learning. These features can help a user enjoy their experience with a solution rather than fight the introduction of a new solution.
The final heuristic measure that really struck a chord with me, was to ‘Help users recognize, diagnose, and recover from errors’. This is the most common mistake made during development of a solution. Not just for usability testing as part of its own phase but also for professional testers, error handling and messaging can help detect and perform root cause analysis at the test phase and in the long run save projects time and money. Error messages should be designed to express in plain language that a user can understand in order to perform corrective action. When users stumble upon an error message which is technical in nature, too technical an error response can leave a user confused and irritated. A simple error message guiding him to the corrective action required will instead keep a user at ease with the solution and reduce the annoyance at the error being presented.
It is a good idea to note down all the observations found during usability testing phases. Using common parameters allows for analysis to be carried out of the feedback across all users and generally gives holistic idea on the usability testing results and recommendations. Attached is a helpful template for web page usability testing which has the 10 Usability Heuristics defined by Jakob Nielsen, divided in three categories: usability, look and feel, and functionality.
Usability testing a great tool to identify and improvise on key features which can be an important part of functioning for end users of the system. When usability test information is gathered and implemented correctly, it can provide satisfaction to customers which is very important for business. The team must consider the findings, set priorities, and use the feedback to create a solution that adds value to the customer. As part of a test cycle, I firmly believe that usability testing should not be just a milestone to be checked off on the project schedule but a key component to success.
Add a Comment