If thorough testing and 100 experts can’t find a problem, the thing is probably perfect.
If you can get 100 experts to agree on something then you've cracked a much harder problem than software quality.
onion2k
I disagree with the initial premise
>Quality is the absence of problems
A low quality code base can be problem free if surrounding circumstances are forgiving enough. Conversely, a high quality codebase can have a lot of problems in difficult circumstances.
I haven't thought about it long enough to have a definition of quality that I'm really happy with, but I think a "resilience to hardships" would be a better definition of quality. Hardships can come in many forms, and often you're prepared for some of them but not all. Occasionally you'll be prepared for hardships that never occur. There is something to be said for being resilient against the correct kinds of hardships, which is why I'm not entirely pleased with my definition either.
But absence of problems is not it. That might be entirely circumstantial and is therefore orthogonal to quality.
amarant
> Some people don’t care enough
>
> The more people you hire, the more likely you are to hire people who don’t care enough about good interface design. Good interface design needs to be valued by everyone who can affect the work. That includes developers, designers, product managers, and often the CEO.
I know where you're going with this, but here's a twist:
A CEO who cares about interface _design_ is path to micromanaging and pain. A CEO should care about interface _designers_, who are (hopefully) the people trained on how do it well.
Even better: CEOs should care about developers with UI/UX skills, because too often CEOs adopt designers like a pet and keep them busy 24/7 asking for mockups.
manoDev
I assume this is written by a UI designer or something, and it certainly feels like "notes" and not a cohesive article. Claiming "The six signals of quality in software" and then listing only user-facing concerns and including subjective items like "Beauty: Is the software as aesthetically pleasing as possible?" is questionable.
I'm interested in quality, but I didn't find these notes enlightening, and couldn't even finish the article.
chickensong
Keep in mind that there are people for whom thinking about quality has been their whole career, for decades. There've been long-running industry studies on software quality that have gathered metrics across thousands of businesses on what works and what doesn't. People have been focusing on quality in businesses in general for centuries. It's not a solved problem, but it has been tackled by experts for a long time. It's a good idea to look to their work first before taking a swing at it yourself.
Personally I find quality to have a fundamental impact on everything every human does. It affects mental state, motivation, affects ability, necessity, and time to do things, creates or reduces costs, availability of resources, clarifies or complicates, makes life easier or harder, etc. It can save or destroy a business, make someone's life feel easy as pie or insanely frustrating. But it's not always easy to do right; you need a system to apply quality intelligently or you risk your efforts being wasted (https://global.toyota/en/company/vision-and-philosophy/produ...).
0xbadcafebee
Right off the bat, I disagree with the assertion that software quality is merely a concept of how it functions now. In reality software is a living thing and quality is so much more than whether there is a glaring issue right now.
christina97
I tend to agree with a few others here, Quality is not just the absence of problems, it is something deeper.
For me it means care and attention were paid while developing, the rough edges have been smoothed off for want of a better phrase. This doesn't mean using the latest and greatest framework or library, usually quality will come from a deep understanding of the basics and concepts like design patterns .
You can spot quality code in the same way to can tell a fake Rolex from a real one but the quality of the movement.
kwakker35
> Quality is impossible at scale
That's a "yes and no" thing. Handmade quality, yes, but some companies get pretty good at finding a "sweet spot," between better-than-average quality, and "Rolls Royce" quality.
Source: I worked for a company that was pretty much renowned for Quality. We made stuff that is pretty near the top shelf, but still a rung or two under the top.
It's not easy.
Also, customers are willing to pay for garbage. As long as that continues, garbage producers will drive quality producers out of business.
ChrisMarshallNY
"Quality is the absence of problems" is an example of the reification fallacy, because a problem is not a fixed thing. A problem is only a problem because someone decides it is so.
This is why a better definition is "quality is value to some person who matters." This definition instantly places you at the crux of the matter, which is not about a state of the world or of your product in the world, but rather about WHO matters and how they FEEL about your product.
satisfice
A more rigorous definition of software quality can be found in ISO 25010.
> The quality of a system is the degree to which the system satisfies the stated and implied needs of its various stakeholders, and thus provides value. Those stakeholders' needs (functionality, performance, security, maintainability, etc.) are precisely what is represented in the quality model...
comments (10)
If you can get 100 experts to agree on something then you've cracked a much harder problem than software quality.
onion2k
>Quality is the absence of problems
A low quality code base can be problem free if surrounding circumstances are forgiving enough. Conversely, a high quality codebase can have a lot of problems in difficult circumstances.
I haven't thought about it long enough to have a definition of quality that I'm really happy with, but I think a "resilience to hardships" would be a better definition of quality. Hardships can come in many forms, and often you're prepared for some of them but not all. Occasionally you'll be prepared for hardships that never occur. There is something to be said for being resilient against the correct kinds of hardships, which is why I'm not entirely pleased with my definition either.
But absence of problems is not it. That might be entirely circumstantial and is therefore orthogonal to quality.
amarant
I know where you're going with this, but here's a twist:
A CEO who cares about interface _design_ is path to micromanaging and pain. A CEO should care about interface _designers_, who are (hopefully) the people trained on how do it well.
Even better: CEOs should care about developers with UI/UX skills, because too often CEOs adopt designers like a pet and keep them busy 24/7 asking for mockups.
manoDev
I'm interested in quality, but I didn't find these notes enlightening, and couldn't even finish the article.
chickensong
Personally I find quality to have a fundamental impact on everything every human does. It affects mental state, motivation, affects ability, necessity, and time to do things, creates or reduces costs, availability of resources, clarifies or complicates, makes life easier or harder, etc. It can save or destroy a business, make someone's life feel easy as pie or insanely frustrating. But it's not always easy to do right; you need a system to apply quality intelligently or you risk your efforts being wasted (https://global.toyota/en/company/vision-and-philosophy/produ...).
0xbadcafebee
christina97
For me it means care and attention were paid while developing, the rough edges have been smoothed off for want of a better phrase. This doesn't mean using the latest and greatest framework or library, usually quality will come from a deep understanding of the basics and concepts like design patterns .
You can spot quality code in the same way to can tell a fake Rolex from a real one but the quality of the movement.
kwakker35
That's a "yes and no" thing. Handmade quality, yes, but some companies get pretty good at finding a "sweet spot," between better-than-average quality, and "Rolls Royce" quality.
Source: I worked for a company that was pretty much renowned for Quality. We made stuff that is pretty near the top shelf, but still a rung or two under the top.
It's not easy.
Also, customers are willing to pay for garbage. As long as that continues, garbage producers will drive quality producers out of business.
ChrisMarshallNY
This is why a better definition is "quality is value to some person who matters." This definition instantly places you at the crux of the matter, which is not about a state of the world or of your product in the world, but rather about WHO matters and how they FEEL about your product.
satisfice
> The quality of a system is the degree to which the system satisfies the stated and implied needs of its various stakeholders, and thus provides value. Those stakeholders' needs (functionality, performance, security, maintainability, etc.) are precisely what is represented in the quality model...
Here is a decent summary: https://iso25000.com/en/iso-25000-standards/iso-25010
Not exactly software quality, but adjacent, is the capability catalog of dora: https://dora.dev/capabilities/
Dora is about 'software delivery and operations performance' and has a vast body of empirical research underpinning it.
Lutger