volume_mute
TDD Benefits vs. Limitations
publish date: 2026/06/19 10:51:12.113930 UTC
volume_muteWhich of the following are documented benefits of TDD, and which are documented limitations? Classify each.
drag and drop the selected option to the right place
Correct Answer
(1) Every code increment has at least one associated test - high code coverage,TDD Benefit
(2) Regression testing is continuously supported by the growing test suite,TDD Benefit
(3) TDD is difficult to apply when reusing large legacy code components,TDD Limitation
(4) Test-driven development may be ineffective with multithreaded systems,TDD Limitation
(5) Tests serve as a form of executable system documentation,TDD Benefit
Explanation
TDD benefits: high code coverage (all code has tests); continuous regression testing; tests as documentation. TDD limitations: difficulty with legacy systems (code not designed for testability); ineffectiveness with multithreaded systems (non-deterministic scheduling makes tests unreliable). Understanding both benefits and limitations is essential for deciding when to apply TDD.
Reference
Software Engineering, Ian Sommerville, 10th edition
