Software Systems Architecture

The Usability Perspective

Applying the Usability perspective ensures that the system allows those who interact with it to do so effectively. This perspective tends to focus on the end users of the system but should also address the concerns of any others who interact with it directly or indirectly, such as maintainers and support personnel.

Getting usability right can have a significant impact on the success of the system, so it is perhaps surprising that this perspective is all too often neglected. Usability is not just about making life easier for your stakeholders: it can significantly affect the success of your system. If you design a system that is awkward to use, meets users’ needs poorly, or fails to help them do their jobs better, your users will do everything in their power not to use the system. You may find yourself deploying a white elephant-destined never to see the light of day.

It is easy to get bogged down in details here that are more appropriate to consider during design. With the Usability perspective, focus on architecturally significant issues, that is, ones that involve multiple stakeholders or have far-reaching impact.

Desired Quality The ease with which people who interact with the system can work effectively
Applicability Any system which has significant interaction with humans (users, operational staff etc) or which is exposed to members of the public
  • user interface usability
  • business process flow
  • information quality
  • alignment of HCI (human-computer interface) with working practices
  • alignment of HCI with users’ skills
  • maximization of the perceived usability
  • ease of changing user interfaces
  • user interface design
  • participatory design
  • interface evaluation
  • prototyping
  • separation of user interface from functional processing
  • failure to consider user capabilities
  • failure to use human–computer interface specialists
  • failure to consider how concerns from other perspectives affect usability
  • overly complex interfaces
  • assumption of a single type of user access
  • design based on technology rather than needs
  • inconsistent interfaces
  • disregard for organizational standards
  • failure to separate interface and processing implementations

← The Regulation Perspective     |     Perspectives