Multiple choice technology testing

The later in the development life cycle a fault is discovered, the more expensive it is to fix. why?

  1. the documentation is poor, so it takes longer to find out what the software is doing.

  2. wages are rising

  3. the fault has been built into more documentation,code,tests, etc

  4. none of the above

Reveal answer Fill a bubble to check yourself
C Correct answer
Explanation

Faults discovered later require rework across more artifacts: code that depends on the faulty logic, tests that assumed incorrect behavior, documentation describing the wrong behavior, and potentially deployed systems. This cascade increases cost exponentially. Option A is a specific case, not the general principle.

AI explanation

To answer this question, you need to understand the concept of the development life cycle and the implications of discovering faults at different stages.

Option A) The documentation is poor, so it takes longer to find out what the software is doing. This option is incorrect because the quality of documentation does not directly affect the cost of fixing a fault. While poor documentation may make it more challenging to understand the software, it does not directly contribute to the increased cost of fixing faults later in the development life cycle.

Option B) Wages are rising. This option is incorrect because the cost of fixing a fault is not directly related to rising wages. While wage increases may contribute to overall project costs, they do not specifically drive up the cost of fixing faults.

Option C) The fault has been built into more documentation, code, tests, etc. This option is correct because as the development life cycle progresses, the fault becomes embedded in various aspects of the software, such as the documentation, code, tests, etc. Fixing the fault at this stage requires identifying and correcting all the affected components, which can be time-consuming and complex. Additionally, fixing a fault later in the development life cycle may require retesting and revalidating various aspects of the software, further adding to the cost.

Option D) None of the above. This option is incorrect because option C correctly explains why discovering faults later in the development life cycle is more expensive.

Therefore, the correct answer is C) The fault has been built into more documentation, code, tests, etc. This option is correct because as the fault becomes embedded in various aspects of the software, fixing it later in the development life cycle requires addressing and correcting multiple components, leading to increased costs.