L03: Verification Methods — Revision Questions

Format: Explain in your own words, give brief examples


Question 1: Four Verification Techniques — Definitions

List the four verification techniques (INCOSE taxonomy) and provide a one-sentence definition for each.

For each technique, give one example of when it would be the most appropriate choice.


Question 2: Inspection Techniques Spectrum

Inspection techniques range from formal (Fagan) to informal (ad-hoc).

Name four different inspection techniques in order from most formal to least formal. For each, describe when it would be appropriate to use.


Question 3: Inspection vs Testing

Inspection and testing are complementary verification techniques.

Compare and contrast inspection and testing across three dimensions (e.g., what they find, timing, detection method). Explain why using both is recommended.


Question 4: Safety vs Liveness Properties

Static analysis can verify different types of properties.

Define safety properties and liveness properties. Give one concrete software example of each type of property.


Question 5: Rice’s Theorem — Sound vs Complete

Explain the trade-off between soundness and completeness in static analysis tools.

What does Rice’s Theorem tell us about the fundamental limitations of static analysis? How do commercial tools typically handle this trade-off?


Question 6: Test Levels

Describe the four test levels: Unit, Integration, System, and Acceptance.

For each level, identify: (a) what is being tested, (b) who typically performs the testing, and (c) one example of a defect that would be found at that level.


Question 7: Test Doubles

Unit testing often requires isolating the unit under test using test doubles.

What is the role of mocks?


Question 8: Black Box vs White Box

Compare black box testing and white box testing.

For each approach, describe: (a) what knowledge the tester needs, (b) what types of defects it finds, and (c) one testing technique associated with it.


Question 9: Google’s Test Pyramid

Google recommends a test pyramid with a 70/20/10 ratio.

What do these percentages represent? Explain why this ratio is recommended. What is the “ice cream cone” anti-pattern and why is it problematic?


Question 10: Demonstration

Define demonstration and explain when it is the only appropriate verification method. Give two examples of demonstration activities in software development.


Question 11: Defense in Depth

Different verification techniques are suited to different quality characteristics.

For the following quality characteristics, identify which verification technique(s) are most effective and explain why:

  • Maintainability
  • Usability
  • Security

Topics Covered

Topic Questions
Four Verification Techniques Q1, Q11
Inspection Q2, Q3
Static Analysis Q4, Q5
Testing Fundamentals Q6, Q7, Q8
Test Pyramid Q9
Demonstration Q10

This site uses Just the Docs, a documentation theme for Jekyll.