Usability engineering during product development is taken much more seriously these days, with the realization that the pay-off is huge if it is done right. Unfortunately though, there are still many who think of usability as little more than the appearance of the UI and the ease of use of software.
For a software product to be usable, one needs to think about how and why people use a product. Understanding the user’s goals in the context of their environment and letting that determine the design is the first step to creating a usable product.
Usability engineering is an approach that puts the user, rather than the system, at the center of the process. Understanding the needs of users early is important to maintain the consistency of internal design of the software. Getting feedback through end-users’ interaction with the software at every stage and iterating based on observing users use the system is key to developing highly usable products, rather than relying on just designers’ experience.
Adoption of usability engineering throughout the development process gives users a chance to deliver feedback on the design before the product is released. Which means that even minor issues are rectified before it’s too late.
Experts believe that developers and designers should include certain essential usability characteristics for developing successful software. Interfaces are typically evaluated against a combination of these characteristics to determine how successful and satisfactory they are:
- Effectiveness – completeness and accuracy with which users achieve specified goals.
- Efficiency – speed (or accuracy) in which users can complete the task for which they use the product.
- Low Error Rate – ensures that users make fewer and easily rectifiable errors while using the system, and no catastrophic errors occur.
- Learnability – allows users to swiftly begin working with the system
Satisfaction – makes the system a pleasure to use. - Memorability – permits user to return to the system after a period of non-use without having to relearn everything.
Why should a development team adopt usability engineering?
- Increases productivity – allows users to focus on the tasks they want to complete with fewer distractions.
- Decreases training costs – usable systems require less training. In addition, usability testing can also identify the areas you need to focus on during training.
- Reduces development time and costs – missed requirements, workflow and design issues are identified earlier in the design meaning less cost to implement.
- Boosts sales and revenues – usability can help differentiate your software from those of your competitors. If two products are considerably equal in utility, the product with more usability will be regarded as superior.
Usability and user-centered design are iterative and typically proceeds in a cycle of hypothesis and evaluation. When followed correctly, design solutions build in richness and completeness and can provide a great user experience.
Read the entire digest contents


"Online communities, iterative methodologies and software scalability" with Andres Camacho - Vice President of Engineering at Vinfolio 