Dimensions of Software Quality


Software Quality has many dimensions and below are some of them:

  • Accessibility: The degree to which software can be used comfortably by a wide variety of people, including those who require assistive technologies like screen magnifiers or voice recognition.
  • Compatibility: The suitability of software for use in different environments like different Operating Systems, Browsers, etc.
  • Concurrency: The ability of software to service multiple requests to the same resources at the same time.
  • Efficiency: The ability of software to perform well or achieve a result without wasted energy, resources, effort, time or money.
  • Functionality: The ability of software to carry out the functions as specified or desired.
  • Installability: The ability of software to be installed in a specified environment.
  • Localizability: The ability of software to be used in different languages, time zones etc.
  • Maintainability: The ease with which software can be modified (adding features, enhancing features, fixing bugs, etc)
  • Performance: The speed at which software performs under a particular load.
  • Portability: The ability of software to be transferred easily from one location to another.
  • Reliability: The ability of software to perform a required function under stated conditions for stated period of time without any errors.
  • Scalability: The measure of software’s ability to increase or decrease in performance in response to changes in software’s processing demands.
  • Security: The extent of protection of software against unauthorized access, invasion of privacy, theft, loss of data, etc.
  • Testability: The ability of software to be easily tested.
  • Usability: The degree of software’s ease of use.
When someone says “This software is of a very high quality.”, you might want to ask “In which dimension of quality?”