Software Testing Verification and Validation:软件测试验证和确认.
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
System specification
System design
Detailed design
Acceptance test plan
System integration test plan
Sub-system integration test plan
Service
Acceptance test
Ch.19 - Verification & Validation
Tuesday, September 15, 2020
1
Verification and Validation
Techniques
• Static Techniques
– Software Inspections (against source code)
• System, sub-system tests can be written against designs
Ch.19 - Verification & Validation
Tuesday, September 15, 2020
8
The Test Plan
Requir ements specification
Ch.19 - Verification & Validation
Tuesday, September 15, 2020
3
Verification and Validation
Dynamic techniques
• Software Testing
– specification vs. implementation
Ch.19 - Verification & Validation
Tuesday, September 15, 2020
6
Regression Testing
• Canned test runs to verify that new defects were not introduced during “debugging” session.
5
Testing vs. Debugging
• Verification and Validation
– looking and categorizing existence of system defects [example] [bug list]
– “What?”
• Debugging
– locating and correcting these defects – “Why?”
Ch.19 - Verification & Validation
Tuesday, September 15, 2020
7
The Test Plan
• Planning should begin right after requirements specification
– Acceptance tests can be written then
• “Good enough” depends on:
– Software function (critical nature?) – User expectations – Market
• competition, price
Ch.19 - Verification & Validation
Tuesday, September 15, 2020
Static techniques
• Software Inspections
– of requirements documents – of design documents (design reviews) – of source code (code reviews) – automated static analysis
Ch.19 - Verification & Validation
Tuesday, September 15, 2020
4
Verification and Validation
Goals
• Establish that software is fit for purpose, not “bug-free”
• Dynamic Techniques
– Software Testing (requires executable program)
Ch.19 - Verification & Validation
Tuesday, September 15, 2020
2
Verification and Validation
• Defect testing [Ch.20]
– verifying non-functional requirements (e.g. performance; reliability)
• Statistical testing [Ch.21]
– automated dynamic analysis (iBaidu Nhomakorabea applicable)
• >60% of program errors can be detected in code review [Fagan86]
System integration test
Sub-system integration test
Module and unit code and tess
Ch.19 - Verification & Validation
Tuesday, September 15, 2020
9
Software Inspections (code reviews)
• Not exhaustive • Targeted to a particular interface
– components, sub-systems, integrated system
• Different levels (lengths) of regression tests
– Targeted regressions
Software Testing: Verification and Validation
• Verification “Are we building the product right?”
• Validation “Are we building the right product?”
Barry Boehm, 1979