A-Z Popular Blog Software Quality Search »
Hardcoding vs Softcoding
Related Guides
Software Quality
Key Concepts
Software Entropy

Software Quality
Software Quality




Cost Of Poor Quality

Critical To Quality

Document Quality

Ease Of Use


Fit For Purpose

45 Examples of Software Quality

 , updated on
Software quality is the degree to which software serves its purpose. This includes business functionality, usability and operational characteristics such as availability. The following are common examples of software quality.


User interfaces that are accessible to people with disabilities.


Software that implements requirements correctly. In many cases, requirements are open to interpretation making this a bit tricky. It is possible to design requirements as logical statements and then prove that an implementing procedure is correct. In practice, correctness is usually something of a judgement call.


Software that easily adjusts to change. For example, an application that can be adapted to use different data sources.


In many cases, users will end up spending thousands or perhaps millions of hours looking at a user interface. As such, aesthetics are often considered a software quality factor.


Algorithms are procedures that have a rigorous design. In order to be truly rigorous, they are hardened with techniques such as peer review and mathematical proofs. In many cases, quality control of algorithms requires novel approaches due to their complexity and need for high performance and correctness.


The structure of software and how it fits into an enterprise architecture.

Audit Trail

Logs and other recordings that allow events to be reconstructed for the purposes of audit or investigation.

Authentication And Authorization

Determining the identity of people and things and using identity to control access to information and actions. A focus of security assurance.


Software that is designed for high availability.


Conformance to behavioral specifications such as use cases.

Code Readability

Code that is intelligently documented and formatted with clearly named variables. Programming style and skillful use of language facilities are also readability factors.

Code Smell

A term for code that is generally sloppy with problems such as lack of structure and source that looks as if it has been pasted from somewhere with little thought or skill.


Complexity tends to increase costs to maintain, support and extend. Ideally code is no more complex than required to achieve its functionality, behavior and quality.


Compliance to laws, regulations and standards.


Software that is easily consumed meaning that users and business units can adopt it with little effort. Think of a mobile application that feels intuitive from the start.


Software that has undergone rigorous testing and is free of defects meaning that it conforms to specifications.


Software that has a cohesive design that achieves both short term and long term needs of a business. This typically requires a skilled architect well versed in your business and practices such as patterns.


Documentation such as requirements, non-functional requirements, architecture, design, test cases and operational tools such as a runbook.


Software that resists the effects of software entropy or the tendency for software to become error prone and brittle with time.


Software that uses resources such as memory, computing cycles and bandwidth efficiently.


Code that is remarkable for its unusual power and simplicity. At its best, programming is more art than science with vast differences in ability between programmers. The elegance of code is a qualitative judgement that can be established by peer review.

Error Reporting

The usefulness and security of error messages, logs and other error reporting mechanisms.


Software that is easy to extend with new functionality.

Fault Tolerance

The ability to continue to operate when errors are encountered. Fault tolerance is often left to the programmer but it has a significant business impact that calls for requirements such as expected behavior when resources such as a network connection are lost.


Conformance to functional requirements such as business rules.

Hardcoding vs Softcoding

Hardcoding is the practice of embedding functions and values in code. Softcoding is the placement of values in configuration and parameters. Both inappropriate hardcoding and excessive softcoding are common software quality problems.

Human Factors

Designs and features that incorporate human cognitive factors such as validations to prevent human error.


The ability to work seamlessly with other software and devices.


Easy, inexpensive and low risk to maintain.


Software that is divided into independent reusable components.


Interfaces, tools and reporting that reduce the operating overhead of software. For example, an administration console that simplifies common operational tasks.


Speed of execution under a variety of load conditions.


Software that can be used in different environments such as operating systems, platforms and devices.


Privacy controls on data.


Performs consistently without seemingly intermittent or unpredictable behavior and errors.

Requirements Quality

Software is garbage in garbage out and depends on the quality of its requirements. As such, the common definition of software quality as "conformance to specifications" represents a narrow viewpoint.


Platforms, libraries, components and methods that encapsulate reusable functionality behind a useful interface.

Risk Managed

The practice of identifying and treating risks related to software.


Another common term for fault tolerance, or the ability to continue when errors are encountered.


Software that performs proportionally to available resources. Associated with distributed systems such as cloud platforms or peer-to-peer software.


Software that doesn't crash. Stability is commonly measured with nines such as 99.99% or 99.999% uptime.


Testability mostly relates to documentation such as requirements and test cases. In many cases, legacy software lacks the information required to properly regression test.

Transactional Integrity

The integrity of transactions at the business level such as a money transfer that either succeeds or fails with nothing inbetween.


A user interface that is pleasing and productive to use.


A vulnerability is a flaw or weakness in software that can be exploited by a security threat. In many cases, software undergoes a security assurance process that validates designs and tests for vulnerabilities.

Software Quality

This is the complete list of articles we have written about software quality.
IT Examples
Software Quality
If you enjoyed this page, please consider bookmarking Simplicable.

Software Quality

A list of software quality factors.

Design Debt

An overview of design debt.

Software Examples

An overview of software with real-world examples.

Problem Solving

An overview of problem solving with examples.

Thought Processes

A list of thinking approaches and types.


A definition of workaround with examples.

Creative Thinking

A list of common creative thinking techniques.


A list of common types of problems.

Analysis Paralysis

The definition of analysis paralysis with examples.

Arrow Of Time

The definition of the arrow of time with examples.

Business Problems

An overview of common business problems.

Decision Framing

The definition of decision framing with examples.


The common types of research.
The most popular articles on Simplicable in the past day.

New Articles

Recent posts or updates on Simplicable.
Site Map