Usability
- Usability
- the utility quality factor representing
the degree to which a product’s human user interface enables a specified group of users
achieve specified goals in a specified context of use
As illustrated in the preceding figure, Robustness is part of the following inheritance hierarchy:
- Type: Abstract
- Superclass: Utility
- Subclasses:
- Data Usability
- Hardware Usability
- Software Usability
The typical responsibilities of Usability are to:
- Model the degree to which a product’s human user interface enables a specified group of users
achieve specified goals in a specified context of use.
- Support the analysis and specification of
usability requirements.
- Provide a foundation for evaluating the quality of an architecture.
As illustrated in the following graphic, usability can be
decomposed into the following aggregation hierarchy of subfactors:
- Attractiveness (a.k.a., engagability, preference, stickiness)
The degree to which users find the product to:
- Be attractive or appealing
- Engage their attention
- Provide a positive user experience
- Make them continue to use it
- Make them return to use it in the future
- Credibility (a.k.a., trustworthiness)
The degree to which users are confident with and have trust in the product including that its:
- Output and behavior are correct
- Content is authoritative
- Owner’s motives are trustworthy
- Developers are competent
- Differentiation
The degree to which the product differentiates itself from competing products
- Ease of Entry
The ease with which users can start using the product
(e.g., can log on and begin using their desired functionality without taking forever to be identified,
authenticated, and navigate to the point where they can start performing their tasks)
- Ease of Learning
The degree to which representatives users can learn to use the product to achieve their goals
(e.g., to find desired content and to perform their tasks)
- Ease of Location
The ease with which users can find the product’s content or services
(e.g., finding Web applications such as websites using search engines)
- Ease of Remembering
Either the degree to which occasional users can remember how to use the product
to perform common tasks or the degree to which regular users to can remember how to use
the product to perform infrequent tasks
- Effectiveness (a.k.a., operability)
The degree to which the product its enables users to successfully achieve their goals
- Efficiency
The degree to which the product minimizes the resources expended in relation to the
accuracy and completeness with which users achieve their goals
- Error Minimization
The degree to which the product minimizes the number of errors that its users make
- Navigability
The degree to which the product enables users to easily move through the user interface
or documentation to achieve their goals
- Preference
The degree to which users prefer the product over its alternatives
- Retrievability
The ease with which the product enables users to obtain information in a form that
is useful to them (e.g., print out a paper report, make a copy of a multimedia file)
- Suitability
The degree to which users find that the product to be suitable for the performance of their tasks
- Understandability
The degree to which users find the product’s user interface and output
to be clear, legible, unambiguous, and comprehensible (especially during unusual situations)
- User-Satisfaction
The degree to which users are satisfied with the product and consider it to be beneficial to them
Usability is typically measured in terms of the:
Typical mechanisms for implementing usability include:
The following guidelines have been found to be useful with regard to usability:
- When usability requirements are specified as the desires
and needs of the customer organization and user
organizations, the tend to be at ambiguous and not
validatable and therefore inadequate for their other
stakeholders, especially the architecture team and the user
experience team that must perform system usability testing.
On the other hand, if the usability requirements are
specified in the necessary detail to make them truly
unambiguous and validatable, then the tend to be so long and
complex that they are difficult for the customer
representatives and user representatives to understand. Thus,
usability requirements should typically be specified in two
parts:
- A brief potentially ambiguous statement of the intent
of the requirement that is easy for the customer and user
representatives to read, understand, and approve.
- A longer, complete requirement (the validation
criteria) that provides the detail required by the
architecture, development, and testing teams.
- By adding validation criteria to the basic usability
requirements, a formal consensus is produced as to the exact
meaning of the requirement and the effort to produce
usability test cases is minimized.
- Usability is typically specified and measured in terms of
the:
- Amount of time it takes for different types of users to
learn to effectively use the application or component.
- Productivity of the different types of users when they
perform their tasks.
- Number and types of errors (and associated defects)
that the different types of users make (and
introduce).
- Learnability and ease of remembering are important for
functions that are infrequently performed and thus may be
forgotten between being performed.
- Error minimizing is related to robustness in that error
minimizing prevents human errors from being made whereas
robustness either prevents or properly handles failures
caused by defects that in turn were caused by human
errors.
- Usability testing is typically used to iteratively and
incrementally validate the usability requirements.
- Usability failures found during usability
testing can be classified by severity:
- Total Failure. Either the user cannot
complete the task on his or her own, or else erroneously
believes that the task has been completed.
- Major Failure. Although the user
successfully completes the task, the user also complains
that the application is annoying or difficult to use.
- Medium Failure. Although the user does not
complain, the user nevertheless requires multiple attempts
to successfully complete the task.
- Minor Failure. The user requires a few
short attempts to successfully complete the task.
- Usability depends greatly on the:
- Type of user.
- User’s training.
- User’s experience level.
- The scope of product usability should include the
application or component’s:
- User interface.
- Help facilities.
- User documentation.
- Usability requirements are related to (and should not
redundantly specify) other quality requirements.
- An application or component is not usable if it is so
inefficient (i.e., efficiency requirements) that its
performance (i.e., response time and throughput
requirements) prevents the user from using it.
- Personalization makes a user interface more engaging
(i.e., engagability requirements).