Software Quality Doing the right things right at the right time Conformance to applicable standards Customer focus · Features vs. Flaws Engineering focus Maintainability, sustainability可维护, testability,etc Quality is defined as conformance一致to requirements, not as goodness”or“ elegance Quality also means“ meet customer needs
6 Software Quality • Doing the right things right at the right time • Conformance to applicable standards – Customer focus • Features vs. Flaws – Engineering focus • Maintainability, sustainability可维护, testability, etc. • Quality is defined as conformance一致 to requirements, not as “goodness” or “elegance” • Quality also means “meet customer needs
Role of testers Find bugs Break Software Keep Developers Honest Defect prevention Quality Measurement Drive quality upstream · Customer focus Goal: ensure the quality
7 Role of Testers • Find Bugs • Break Software • Keep Developers Honest • Defect Prevention • Quality Measurement • Drive quality upstream • Customer focus Goal: ensure the quality
Truths and realities The earlier a bug is fixed the less costly it is Before code review by code review by testing By beta testers After product is released Prevention vs. detection The mere act of designing a test is a powerful bug preventer
8 Truths and Realities • The earlier a bug is fixed, the less costly it is. – Before code review – By code review – By testing – By Beta testers – After product is released • Prevention vs. Detection – “The mere act of designing a test is a powerful bug preventer
Truths and realities Thorough Testing vS. Risk-based testing Thorough Testing: testing for everything Risk-based Testing Identify and analyze risks to enable informed and calculated decisions Look for the best use of test resource Risks can be categorized by severity and likelihood
9 Truths and Realities • Thorough Testing vs. Risk-based testing – Thorough Testing: testing for everything – Risk-based Testing • Identify and analyze risks to enable informed and calculated decisions • Look for the best use of test resource • Risks can be categorized by severity and likelihood
Software Testing Methods Black-box Testing White-box Testing Risk-based testing
10 Software Testing Methods • Black-box Testing • White-box Testing • Risk-based Testing