Sembra che l'autore stia cercando di comunicare che la "qualità" di un prodotto software è spesso più legata alle percezioni e alle aspettative degli utenti finali, e non a qualche attributo quantificabile che è possibile applicare ad esso (ad esempio, gli standard di codifica , standard di progettazione, standard di sicurezza, ecc.) o le percezioni dei suoi creatori.
Ad esempio - uno sviluppatore competente indicherà un codice antico che è stato trasformato in una "grande palla di fango", scritto in un linguaggio obsoleto, viola ogni principio del design moderno, è straripante (gioco di parole non previsto) con difetti di sicurezza e backdoor, ed è fragile per gli ingegneri di manutenzione, e ha un'interfaccia utente complicata diabolicamente ostile, e dice "Questo software è terribile!".
Tuttavia, lo stesso bit del software agli occhi degli utenti finali potrebbe fare tutto ciò di cui gli utenti hanno bisogno o che si aspettano che faccia. Questi utenti non "vedranno" l'orrendo codice base sottostante, e gli eventuali difetti che appaiono possono spesso essere modificati in un modo o nell'altro.
Agli occhi degli utenti esperti di tale software (e in particolare delle persone che possiedono i diritti di utilizzo del software e potrebbero averne pagato milioni per il suo sviluppo / manutenzione per molti decenni), se è considerato "abbastanza buono" e " abbastanza stabile "e" fa il lavoro che è destinato a fare ", quindi spesso guadagnerà un grande timbro di gomma nella scatola di qualità.
Questa prospettiva non è unica per il software, anche se è più comunemente presente nel software perché ci sono milioni di aziende nel mondo che fanno ancora affidamento su software costruito decenni fa; e il loro giudizio sulla "qualità" tende ad essere - "Ci fa guadagnare più denaro di quello che ci costa? (e / o ci costerebbe sostituirlo)" e "Conserva la nostra reputazione in buona salute? "
Potresti applicare questo ad altri domini? Forse, ma è molto meno comune con "cose" che sono tangibili, che possono essere raccolte e tenute in mano ed esistono "nel mondo reale" - in particolare dove le cose fisiche / meccaniche tendono a decadere e svanire tempo (ad esempio, le automobili hanno un chilometraggio, le cose meccaniche si logorano, le cose vengono danneggiate da utenti troppo zelanti, ecc. - il software non ne risente!)
Quindi, a parte il fatto che il codice non "decaduta" (tranne che per negligenza da parte di ingegneri del software), i meccanismi interni del software sono così opachi, e gli utenti sono così lontani da loro, che la "qualità" di il codice, insieme ai difetti di sicurezza, i problemi di usabilità e gli oscuri bug / difetti tendono ad essere quasi invisibili all'utente medio.