図のように,改良及び機能追加を繰り返すことによって利用者の要求の変動に柔軟に対処したシステム開発を行う開発モデルはどれか。 分析 → 設計 → プログラミング → テスト → 評価 (評価から分析へ戻る:改良及び機能追加)
平成26年度 秋期 ITパスポート試験 問42
This question's explanation and your answers so far.
問 42
Incorrectア
The waterfall model runs the phases — requirements definition → design → programming → testing — in one direction from upstream to downstream and, in principle, never returns to an earlier phase. As its name suggests (a waterfall does not flow backwards), going back is not assumed, so it is the opposite of the repeating arrow in the figure that returns from Evaluation to Analysis, and it cannot cope flexibly with changing requirements.
Incorrectイ
The reuse model is a way of thinking that focuses on reusing parts: existing program parts and modules are carried over to raise development productivity and quality. Its focus is the reuse of development assets, not the repetition of the process, so it does not explain the flow shown in the figure, where evaluation results are returned to the next round for improvements and added functions.
- ウ
正解 The correct answer is “ウ Spiral model”. In the figure, after one round of the development process — Analysis → Design → Programming → Testing → Evaluation — an arrow goes back from Evaluation to Analysis, and it is labeled “improvements and adding functions”. In other words, the system is not completed in a single pass: it is built in small units and evaluated, and the results are fed back into the analysis of the next round so that improvements and added functions accumulate. This way of working — repeating the development process in a spiral and growing the system little by little — is the spiral model, and because requirements that change partway through can be taken in on the next round, it responds flexibly to changing user requirements. The return arrow in the figure (the repetition) is exactly what identifies the spiral model.
Incorrectエ
The reengineering model is a maintenance-and-rebuild way of thinking: an existing system that is already in operation is analyzed, its specifications are worked out, and the system is remade (rebuilt). Since its starting point is remodeling an existing system, it differs from the flow in the figure, where the process is repeated from the beginning in new development and functions are built up round by round.
- Spiral model = an iterative development model that repeats the series of phases (analysis, design, programming, testing, evaluation) in a spiral many times, adding and improving functions on each turn. Because evaluation results can be fed back into the next round, it is strong against changes in user requirements.
- As a point of contrast, the waterfall model is linear: the phases proceed in one direction with no going back. If the figure contains an arrow returning to an earlier phase (repetition), judge it as the spiral type; if not, judge it as the waterfall model.