Logo esteso della azienda noname.solutions. Il logo è composto da un ingranaggio con all'interno circuiti elettrici a cui segue il nome noname solutions.

What defines Software Quality? Standards, features, and ISO/IEC 25010

italiano: L'immagine rappresenta le nove caratteristiche principali di un software di qualità definite nella norma ISO/IEC 25010:2023 english: The image represents the nine main characteristics of quality software defined in the ISO/IEC 25010:2023 standard.

Today, as in the past, the success of a company lies in the performance of the goods or services it produces—success driven by two main factors: price and quality.

Although closely related—a low price often corresponds to low quality, and vice versa—there is a fundamental difference between the two. Price is measurable and easily comparable; quality, above all, is perceived, and therefore not easily measurable or comparable.

Yet, being aware of a product’s quality is one of the most important aspects when evaluating a purchase or an investment.

In this article, we will focus on the concept of quality, exploring its meaning and its application in the digital world.

Quality: meaning and classification

quality  The totality of the features and characteristics of a product or service that bear on its ability to satisfy stated or implied needs.

from Oxford English Dictionary

Starting from the main definition of the term and considering it from the perspective of a product’s buyer, we can state that the “quality of a good or service” refers to the overall set of its characteristics in relation to its consumption and/or use, particularly regarding its ability to meet the buyer’s needs and requirements.

A spontaneous question arises: is it really possible to measure the satisfaction of a product’s buyers in a uniform way?
The short answer is no; of course, there are tools and solutions designed to approximate an “objective” measurement, such as reviews or customer surveys. It is precisely by focusing on what we will henceforth call “Perceived Quality” that recent offerings have been built—years in which marketing has transformed aspects once overlooked into central elements today: user experience (packaging, complementary services, social status), environmental sustainability, social impact (production and delivery chain), inclusivity and accessibility of the product, and so on.

The more attentive reader will have already grasped the connection between perceived quality, price, and a product’s success; they have most likely also anticipated a fundamental piece deliberately omitted until now. In fact, perceived quality has from the beginning been directly linked to marketing activities, whose ultimate goal is to amplify the level of satisfaction experienced by the buyer. Nonetheless, one must ask: how much of this satisfaction is truly tied to the internal aspects of the product, such as good design, the materials used, and, more generally, its technical characteristics?

Undoubtedly, the internal aspects of a product influence the buyer’s level of satisfaction and, upon closer examination, are also part of the definition of quality; we are simply shifting the perspective—from the buyer’s satisfaction during use to the producer’s technical and design attention in creation. This set of characteristics inherent to the production process and the materials used is defined as the product’s Intrinsic Quality.

Intrinsic quality is generally easier to measure and compare. Take, for example, the comparison between two electrical conductors, one made of gold and the other of aluminum. The gold conductor will always be qualitatively superior to the aluminum one, not because of the market value of gold, but due to its intrinsic and measurable physical properties – at standard temperature, gold has a resistivity of 2.35 × 10⁻⁸ Ωm, while aluminum has a resistivity of 2.75 × 10⁻⁸ Ωm (a lower value indicates better electrical conductivity).

Infographic showing the elements that make up the perceived and intrinsic quality of software.
Elements that make up the Perceived Quality and Intrinsic Quality of a software product.

A new question arises: how can we extend the concept of intrinsic and measurable quality to services or digital goods?

In the case of services (in their generality), the concepts of SLA (Service Level Agreement) and KPI (Key Performance Indicator) come to our aid. The SLA defines the ground rules agreed upon between provider and client: what is being delivered, how, and in what manner; KPIs make it possible to measure the characteristics of the provided service in a shared way, both in relation to the SLA and to the customer’s perceived quality (e.g., waiting time, response time).

For digital goods, and specifically for software, the scenario becomes more complex. Defining both the intrinsic and perceived quality of software is challenging because:

  • During the creation phase: it depends on the initial design, as well as on the SLA between project teams during development (fix times, testing times).
  • During the release phase: it depends on the hardware on which it is installed or with which it must interact, as well as on any other software systems it needs to exchange data with.
  • During the usage phase: it depends on how it is used and on the skills of the end user; additionally, it depends on the simplicity of its GUI (Graphic User Interface), the complexity of the functions it can perform, and the accuracy of the results.
  • During the maintenance phase: it depends on its future extensibility and scalability, its security against known attacks and vulnerabilities, and the ability to patch unknown vulnerabilities.

And we could continue by delving into additional concepts such as performance (data loading, processing, and display), compatibility, and so on.

Naturally, many of these characteristics are common to both physical products and services; however, software permeates all of them and influences the perceived quality of physical goods and services, making it, ultimately, a complex, central, and delicate product.

For this reason, over the years it has become necessary to standardize quality requirements, the characteristics that influence them, and how to evaluate them. In the software field, the ISO/IEC 25000 standard, also known as SQuaRE (System and Software Quality Requirements and Evaluation), encompasses all references and best practices to consider when discussing quality. Below, we provide a brief overview of ISO/IEC 25010, which defines the characteristics considered for both perceived quality and intrinsic quality.

History snippets

The acronym ISO/IEC stands for the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC). These are two independent international organizations that collaborate in the development and publication of global standards—documents that define requirements, specifications, guidelines, or characteristics for products, services, and processes, with the aim of ensuring quality, safety, and compatibility.

ISO: The International Organization for Standardization, founded in 1947 and headquartered in Geneva. Currently, 173 countries participate. A fun fact: the term ISO does not come from the English acronym, but from the Greek word ἴσος (ísos), meaning “equal.”

IEC: The International Electrotechnical Commission, founded in London in 1906 and now based in Geneva, specializes in standards for electrical and electronic technologies. Currently, 89 countries participate.

The ISO/IEC 25010:2023 standard

The ISO/IEC 25010:2023 standard is the second edition of the ISO/IEC 25010 standard from 2011, which in turn fully replaces the previous ISO/IEC 9126 standard from 1991. The ISO/IEC 25010:2023 standard defines nine main software quality characteristics, briefly listed below:

The ISO/IEC 25010:2023 standard does an excellent job of outlining the key characteristics for defining both the intrinsic and perceived quality of software. However, it goes further by introducing an additional concept of quality: Quality in Use.” Quality in use (further detailed in ISO/IEC 25019) corresponds to the user’s everyday experience when interacting with and using the software. Unfortunately, this aspect is often overlooked or excluded during the software development process.

Conclusions

We have explored the concept of quality, refined it, and applied it to the software world. We have been able to recognize its complexity, true, but also the efforts made to define and measure it. In light of all this, what could be an effective answer to the question, and also the title of the article:

What defines Software Quality?
Infographic showing the elements that make up the perceived and intrinsic quality of a software.
The vision of noname.solutions: intrinsic and in-use quality are the foundations of perceived quality.

At noname.solutions, we believe that software must effectively meet the needs of the client for whom it was created and must be designed, developed, and documented with awareness of the functional and technical changes it will undergo over the years. Quality software is a product capable of facilitating work, extending it, and multiplying its efficiency, making it enjoyable and secure in every respect.

Quality is never an accident; it is always the result of intelligent efforts.

John Ruskin, British writer, painter, poet, restorer, and art critic.

💡👉🏻 Discover our software design and development services.