Company
Date Published
Author
Bill McGee
Word count
1662
Language
English
Hacker News points
None

Summary

The concept of software quality is complex and ephemeral, making it difficult to define. It can be understood as the opposite of what causes unnecessary aggravation in users. The author proposes a dialectical theory of software quality, where opposing imperatives exist between developers, architects, and users. Independent QA engineers play a crucial role in enhancing product quality by identifying points of aggravation that developers may overlook. They use black-box testing to exercise the software's functionality without knowledge of its internals, focusing on user experience. This approach is complementary to white-box testing, which verifies individual pieces work, and together they form a dialectical relationship. The author argues that even in Agile development with continuous integration and deployment, independent QA remains essential for defining and executing user scenarios, identifying usage issues, and serving as an "entry point" for automated tests.