システム開発の節目ごとに, プロジェクト全体に必要なコストの見積りを行った。 見積りの精度が最も高い時点はどれか。
平成25年度 春期 ITパスポート試験 問50
This question's explanation and your answers so far.
問 50
Incorrectア
The time of system planning is the earliest milestone among the choices, and the accuracy of the estimate is in fact the lowest. At this stage only the purpose of the system and the rough target business operations have been decided; the details of the functions to be realized, the technology and methods to be adopted, and the development scale are all undecided. The estimate therefore has to rely on a rough approximation such as analogy-based estimation from similar past projects, and the range of error is the largest. However, low accuracy does not mean the estimate is unnecessary: keep in mind that it is an estimate required for the investment decision.
Incorrectイ
At the end of design the accuracy is higher than at the time requirements are finalized, but it still does not reach that at the end of programming. Once design is finished, the composition of the functions and the structure of the programs are fixed, so the scale can be estimated fairly accurately with methods such as Function Point analysis. However, the effort of implementation, the productivity of the developers, and the technical problems that come to light during implementation are still guessed values that have not been actually measured. Compared with ウ, the point at which implementation has actually been finished, that many more factors remain unfixed.
- ウ
正解 The correct answer is ウ, at the end of programming. The accuracy of an estimate is determined by how much of the project content has been fixed at that point in time. The earlier in development, the more the scope of the functions, the complexity of the design, and the effort of implementation have to be guessed at, so the error is large; as the process advances and decisions and actual results accumulate, less has to be guessed and the range of error becomes smaller (because the estimation error tapers off as the process advances, this is called the cone of uncertainty). Arranged in the time order of the development process, the choices run: at the time of system planning, at the time requirements are finalized, at the end of design, at the end of programming, and the end of programming is the latest milestone. At that point the target functions and the design content are both fixed, and in addition the number and size of the programs and the effort actually spent up to that point are known as actual results. All that remains is the cost of later processes such as testing and migration, so the estimate of the total cost required for the project is the most accurate of the four.
Incorrectエ
At the time requirements are finalized the accuracy is higher than at the time of system planning, but lower than at the end of design or at the end of programming. Fixing the requirements settles the scope of what is to be developed, but the structure and methods by which those requirements will be realized, and how many programs there will be and how large they will be, are still at the stage of being designed from here on, so many of the factors that govern the development effort remain unfixed. From the principle that accuracy rises as the process advances, ウ, the later milestone, is the correct answer.
- The accuracy of a cost estimate rises as the development process advances (the cone of uncertainty). The earlier the milestone, the more factors are undecided and the larger the error, so reviewing the estimate at each milestone to raise its accuracy is a basic practice of project management. The time order of the processes is: system planning, requirements definition (requirements finalized), design, programming, testing.
- Typical estimation methods: analogy-based estimation infers the cost from the actual results of similar past projects; it is used at the proposal and planning stage where little information is available, but its accuracy is rough. Function Point analysis (the FP method) quantifies the size of a system from the number and difficulty of functions such as screens, reports, and files; used at a stage where the requirements or the design have been fixed, it can produce a highly accurate estimate.