How Usability and (Software) Quality are Related
ISO 9241-11 defines usability as “the extent to which a product can be used by specified users to achieve specified goals with effectiveness, efficiency, and satisfaction in a specified context of use.” The four elements that define usability within this context are as follows:
- both the users and goals must be explicitly identified,
- the intended context of use must be identified and understood, and
- the user can use the system in question
- to meet those stated goals.
These same four elements are implied by the ISO 8402 definition of quality: stated and implied needs are relative to specific users with specific goals, are dependent upon a context of use, and the entity in question is the system being defined and developed in response.
Usability is the extent, or the degree, to which the above criteria are satisfied. Here’s an example from software development to make this a little more concrete. The software development lifecycle, regardless of what incarnation you’re using (even waterfall), inherently addresses usability through these four elements:
- the requirements process outlines the specified users, their goals, and the context of use
- the design process defines a specific technical solution to meet those needs, and
- the finished product provides evidence that the system can be used to achieve the goals of its users.
As a result, usability can be considered an implicit factor in software quality, ultimately reflecting how well the design process interpreted requirements within a specified context of use.