For an application to be successful, the design must be user-friendly and work according to the user’s expectations. This makes usability testing, together with functional testing, a fundamental tool to implement improvements in the products and applications we develop, and also to understand how users interact with them and how easy it is for them to use them.
In this article, we will explain what usability is and the sub-characteristics that compose it, according to international standards, as well as what usability testing consists of.
In addition, we will provide a proposal on how to proceed with the evaluation through the application of techniques that allow time and cost savings in the different stages of development. Finally, we will give some recommendations on which support tools to use in testing.
Concepts related to usability
What is Usability?
There are many definitions of what usability is, the most popular are as follows:
The quality attribute that measures how easy Web interfaces are to use.
Jakob Nielsen, Web usability expert.
The ability of a software product to be understood, learned, used, and appealing to the user, when used under certain conditions.
The quality model is an essential element around which the system for product quality evaluation is established. This model specifies the quality characteristics to be taken into account when evaluating the system.
The product quality model defined by the Cuban standard NC ISO/IEC 25010:2016, is composed of eight quality characteristics:
- Software Product Quality
- Functional Adaptation
- Performance Efficiency
In relation to the Usability characteristic, NC ISO/IEC 25010:2016 specifies as sub-characteristics:
- Recognizability: Capability of the product that allows the user to understand if the software is suitable for his needs.
- Cognizability: Capability of the product that enables the user to learn its application.
- Operability: Capability of the product that allows the user to operate and control it with ease.
- Error protection: Ability of the system to protect users from making errors.
- User interface aesthetics: Ability of the user interface to be visually pleasing, and to satisfy user interaction.
- Accessibility: Ability of the product to be used by users with certain characteristics and disabilities.
What is a Usability Test?
Usability testing is the set of practices and tests that are performed on a website or an application in order to check the comfort, ease or complexity with which it is handled.
These tests are focused on ensuring that the design and functionality of the product to be evaluated are suitable for the intended user.
Usability tests benefits
There are multiple ways to apply a usability test, but a well-designed one can have many benefits:
- It allows you to detect and correct potential problems before the product is put into production.
- It helps to visualize how visitors would use and act on the website, system or application.
- It indicates what might be the most frequent errors that could happen and how to minimize them.
- It helps to understand how much the application has improved in terms of usability, learning curve, satisfaction, efficiency and effectiveness from one version to another.
Which are the techniques that allows saving time and cost?
When developing an application, you start with a set budget that must cover development and quality activities. One of the major concerns of project managers regarding the introduction of usability testing is that it can lead to additional costs.
Many usability testing techniques that are easy to learn and quick to perform have been proposed by usability experts. These are what are known today as low-cost techniques.
To find usability problems economically in a system, Nielsen and other experts proposed and applied techniques such as card sorting, think-aloud, walkthroughs, scenarios and heuristic evaluations.
The quality of a product must be guaranteed at the same time that the agreed budgets and delivery times are respected, so it is worth taking into account some low-cost usability evaluation technique that allows delivering a user-friendly application that is easy to interact with.
Usability development and evaluation process
The concept of heuristic evaluation as a low-cost technique for usability evaluation was introduced by Nielsen and is best suited to projects that are extremely limited in time and budget.
Heuristic evaluation will be the technique that we propose to always use in principle and, if more time is available, to evaluate the introduction of other techniques, since they will provide more elements for the implementation of improvements to the product design.
In heuristic evaluation, a few evaluators are given a small set of “heuristic” principles and asked to independently analyze a user interface using these as a standard.
What is its main objective?
To highlight the specific usability problems of a platform, allowing a critical review in new projects or redesigns.
The main advantage of heuristic evaluations is their excellent quality-cost ratio. A minimum number of three evaluators allows an evaluation by criteria.
Up to 80% of usability problems can be identified before launching to the public.
How do we apply it?
We deliver evaluation guidelines to usability experts, in order to determine the errors that may occur in the website, system or application.
Heuristic evaluation is an efficient and accessible way to ensure the usability of an interface, allowing us to find a large number of errors through a series of checks. To perform a heuristic review, we must take into account the following steps:
- Know and understand the usability principles to be evaluated.
- Perform an analysis of the application interfaces.
- Document and share the results.
Know and understand the usability principles to be evaluated
The principles that will be taken into account to evaluate the applications and systems developed will be: usability, accessibility, user control over the web, page performance (speed) and aesthetics and minimalism that will be reflected in the set of heuristics to be verified during the tests.
Perform an analysis of the application interfaces
A Checklist is used to perform a heuristic evaluation. This Checklist helps the experts performing the evaluation to ensure that the usability principles are considered in an interface.
We recommend, for the performance of evaluations, to have checklists defined according to the type of application or system evaluated and that each one has a series of questions that help to evaluate the interfaces of the application according to its specific characteristics.
It is also important to take into account the one elaborated with the criteria evaluated by Calisoft for the national products that will be submitted for evaluation by that entity.
Document and share the results
Finally, we must document the findings found, so we must:
- Indicate the criterion that is not met.
- Add evidence. Point out the element that does not comply with the rule.
Usability Tests in the Development Stages
The execution of usability tests will be present during the whole development process of the applications or systems with a higher or lower level of impact depending on the stage of the process. Below is a diagram where the proposal is represented:
- Process 1
- Analysis and specification of requirements
- Analysis of characteristics from the desired system and the final user to identify usability requirements (High)
- Process 2
- Design of the system
- Heuristic evaluation of the design proposal to implement improvements. (High)
- Process 3
- Implementation of the solution
- Usability testing to measure compliance with specifications and interactions, verification of performance efficiency. (Medium)
- Process 4
- Put in production
- Usability assessment during the process of Acceptance to identify possible improvements to be implemented during support and maintenance. (Low)
- Process 5
- Heuristic evaluation of the improvements implemented or new design solutions developed. (Medium)
- Process 2, 3, and 4 Usability Assessment
Tools to be used
In addition to the checklists, it is important to use tools that support the work of the experts who will be performing the usability tests. The following is a proposal of tools that can be used:
Colour Contrast Analyzer (CCA): Free color contrast checker tool that allows you to easily determine the contrast ratio of two colors.
Pingdom: It is a performance and availability monitoring solution for websites and applications. It can test load time to find bottlenecks that affect user experience.
PageSpeed: Google tools designed to help optimize the performance of a website.
Responsive and crossbrowser
mobiReady: The mobiReady score represents how well a particular web page will perform across the full spectrum of mobile devices on the Internet.
Protofluid: Allows us to see how our website appears in different browsers and sizes. We only have to indicate the url, the device and the size, showing a popup with the result.
Cross Browser Testing: Tool that allows testing on real iOS and Android devices. Providing the functions, speed and access you will need for all tests in different environments.
BrowserStack: A testing platform that allows developers to test their websites and mobile applications across web browsers, operating systems and mobile devices.
Wave: Can identify many accessibility and Web Content Accessibility Guidelines (WCAG) errors, but also facilitates human evaluation of Web content.
W3C Markup Validation Service: A validator created by the W3C that allows users to analyze well-formatted and valid HTML and XHTML documents.
Legible: Text readability analyzer.
Website reports and evaluation
Seigoo: Online tool that allows you to check if your website loading time is optimal, check if it displays correctly on mobile devices, find any broken links that need to be repaired among many other aspects.
Website Grader: A free online tool that rates your site based on key metrics such as performance, mobile readiness, SEO and security.
Nibbler: Free tool to test how good your website is and what you can do to improve it. Check accessibility, SEO, social media, compliance and more.
Checking the deliverability of mailings
Mail-Tester: Allows spam testing. Simply send an email to receive an extensive analysis of different points, such as authentication, blacklisting or broken link detection.
Preview of mail inboxes.
SubjectLine: Allows you to test your subject lines and receive a free rating out of 100. The tool considers total length, word length, urgency and more.
Inbox Analyzer: Free tool with which you can send your emails to the most popular inbox providers to see how they appear and whether they are delivered.
Putsmail: A free email testing tool that allows you to see how your email will look on over 50 different platforms and devices.
Emailtooltester: A tool that offers to check how emails are displayed in the inbox for users when opening them on different mobile devices.
Languagetool: This Spanish proofreading tool allows you to check spelling and grammar quickly and free of charge.
In order to achieve the success of a software product, it is essential that usability is a fundamental characteristic and that its evaluation is incorporated in the different stages of development.
Usability testing with low-cost techniques can be applied at the beginning of the design phase using prototypes, or during the implementation phase in an agile work system, where requirements elicitation is a continuous process and customer satisfaction is the ultimate goal.
A variety of low-cost usability techniques can be used at any point in the project life cycle, since a functional system is likely to be available.
Heuristic evaluations are not a substitute for other evaluation techniques, such as those using users, but they do provide a solid criterion for usability improvements to be made to the application being developed early in the process.