ウォータフォールモデルで開発を行うプロジェクトにおいて, システム要件定義の不具合を後続の工程で発見した。不具合を発見した工程のうち, 不具合の修正や修正に伴う手戻りが最も少なく済む工程はどれか。
平成27年度 秋期 ITパスポート試験 問43
This question's explanation and your answers so far.
問 43
- ア
正解 The waterfall model is a development method that proceeds through the stages “system requirements definition → system design → programming → testing → software acceptance” in order, without going back. A defect in an upstream stage (requirements definition) spreads to all deliverables of the downstream stages built on top of it, so the later it is found, the wider the range that must be redone (rework) and the greater the correction cost. Choices ア to エ are all stages after requirements definition, and the earliest among them is “system design.” If the defect is found in the design stage immediately after requirements definition, only the design deliverables need to be fixed, with no impact on the program or test deliverables, so the correction and rework are the least. Therefore the correct answer is ア.
Incorrectイ
Programming is a stage after system design. If a requirements-definition defect is found here, not only the requirements and design but also the already-written program must be fixed, so the rework is greater than when it is found in system design.
Incorrectウ
Testing is a stage even later than programming. If the requirements-definition defect remains until here, in addition to the requirements, design, and program, the test deliverables must also be redone, so the rework becomes even larger.
Incorrectエ
Software acceptance is the final stage. If the requirements-definition defect surfaces here, nearly all stages from upstream to downstream must be redone, making the correction and rework the largest. This is the exact opposite of the stage requiring the least effort that the question asks about.
- The stage order of the waterfall model (requirements definition → design → programming → testing → acceptance), and the principle that the earlier a defect is found, the smaller the rework — i.e., correction cost is lower the more upstream it is.
- A defect in an upstream stage (requirements definition) spreads to all downstream deliverables, so discovering and correcting it early in the immediately following stage is the lowest cost.