Understanding Software Quality: From Usability to Test Modeling and Cost Analysis
Understanding software quality involves three layers—Usable, Good‑to‑use, and Love‑to‑use—linked to business value, a quantitative loss model, testing’s feedback role, risk‑based test classification, defect‑handling costs, and emerging AI tools like TestGPT that automate test generation and decision‑making.
This article provides a comprehensive overview of software quality, explaining its three-layered interpretation—Usable, Good-to-use, and Love-to-use—and how each layer contributes to business value and loss control.
It introduces a quality model that quantifies loss caused by software changes, incorporating factors such as change count, problem density, development and test leak rates, and handling efficiency (MTTR). The model helps identify where quality improvements can reduce business impact.
The relationship between quality and testing is clarified: quality is not directly measured by tests, but testing provides feedback that drives quality improvement. The testing process is broken down into input, execution, analysis, localization, and evaluation, each with specific responsibilities and technical challenges.
Various classifications of testing are discussed, including functional, performance, security, regression, and new‑feature testing, as well as the importance of risk‑based testing to prioritize test effort and improve ROI.
Cost considerations are examined, defining the total cost of defect handling (recall, localization, and fix) and highlighting how different recall levels (white‑box, module‑level, system‑level) have vastly different cost implications.
Strategies for reducing cost are presented, focusing on minimizing ineffective test actions, adjusting defect distribution across code, module, and system levels, and leveraging automation and AI to increase recall efficiency.
The article also explores the emerging role of large language models (e.g., TestGPT) in automating test case generation, risk assessment, and decision‑making, suggesting a future where QA relies more on creativity and AI assistance than on individual experience.
Baidu Tech Salon
Baidu Tech Salon, organized by Baidu's Technology Management Department, is a monthly offline event that shares cutting‑edge tech trends from Baidu and the industry, providing a free platform for mid‑to‑senior engineers to exchange ideas.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.