基本情報 平成21年度 秋期 問52:マネジメント系に関する問題
ソフトウェアの開発規模から開発工数を見積もる際に, 必要な情報はどれか。
- a開発期間
- b開発要員数
- c工程ごとの工数配分比率
- d生産性正答
AI解説(初心者・標準・上級)
理解度に合わせて3レベルの解説を無料で読めます。
答えは d「生産性」 です。
ソフトウェアの開発工数(=どれだけ時間がかかるか)を見積もるには、「1人が1か月でどのくらいプログラム書けるか」がわかれば計算できます。これが「生産性」。
例:開発規模が1000行、生産性が「100行/人月」なら、必要工数=1000÷100=10人月。
👉 覚え方:工数=規模÷生産性。生産性さえわかれば計算できる!
ほかの選択肢:a 開発期間(あとから出る結果)/b 要員数(あとから配分)/c 工程ごとの配分(全体工数が出てから割る)。どれも「生産性」がないと出せない数字なので、最初に必要なのは生産性。
なぜこれが正解か
正解は d。ソフトウェア開発工数(人月)の見積りは「規模÷生産性」の関係で行うため、まず必要な情報は生産性(例:何行/人月、何FP/人月)。これが定まって初めて「規模1000kステップ÷100kステップ/人月=10人月」のような計算ができる。
各選択肢の解説
- a 開発期間:工数が出てから、要員数で割って算出する結果。
- b 開発要員数:要員数=工数÷期間、これも工数算出後に決める変数。
- c 工程ごとの工数配分比率:全体工数を上流/下流に振り分ける比率。総工数が決まってから使う。
覚え方・ひっかけ注意
工数見積り3式の関係:工数=規模÷生産性、期間=工数÷要員数、コスト=工数×単価。最初に必要なのは生産性、次に期間/要員、最後に工程配分。「生産性は組織固有のノウハウ」で、過去プロジェクト実績から算出するのが定石。
理論的背景
見積技法は大別して (1) 類推法(過去類似プロジェクトから推定)、(2) パラメトリック法(COCOMO II等のモデル式で算出)、(3) ボトムアップ法(WBS分解後にタスクごとの工数を積上げ)、(4) 専門家判断(デルファイ法)。代表的なメトリクス:KLOC/KSLOC(千行単位コード量、言語依存)、ファンクションポイント法(FP)(IFPUG/COSMIC、機能量を言語非依存で計測)、ユースケースポイント法。COCOMO IIでは Effort = 2.94 × (KSLOC)^E × ΠEM_i のような形で、規模指数EにScale Factors(前例性、開発柔軟性、リスク解決度、チーム結合性、プロセス成熟度CMMI)、Effort Multipliersには製品・人員・プラットフォーム要因が乗ずる。
実務での使われ方
アジャイル開発では伝統的工数見積をストーリーポイント(相対見積、フィボナッチ数列)とベロシティ(スプリント当たり完了ポイント)に置き換える。プランニングポーカーで集団見積、ベロシティの実績から将来スプリント計画を立てる。LLM時代の生産性測定は革命的に変化中で、GitHub Copilot/Cursor導入での生産性向上は20〜55%との研究報告(GitHub 2024年Survey)。DORAメトリクスとSPACEフレームワーク(Satisfaction, Performance, Activity, Communication, Efficiency)が近年標準。
試験での位置づけ
FE科目Aで見積3要素の関係問題が頻出。応用情報・プロジェクトマネージャでは具体的なFP計算、COCOMOモデル適用、PERT/CPMでのクリティカルパス分析、見積誤差の確率分布(三点見積、ベータ分布)、EVM(Earned Value Management)でのCPI/SPI算出が必出。
選択肢の発展補足
見積精度の段階:ROM見積(Rough Order of Magnitude、-25%〜+75%)→予算見積(-10%〜+25%)→確定見積(-5%〜+10%)。Cone of Uncertainty(プロジェクト初期は不確実性大、進行と共に縮小)が原則。Brooks法則(「遅れたプロジェクトに人を投入するとさらに遅れる」、教育コスト・コミュニケーションオーバーヘッド O(n²) )はソフトウェア工学の古典。Mythical Man-Month(人月の神話、Brooks 1975)の教訓は現代も色褪せない。AIエージェント開発による「スタッフのレバレッジ」がソフトウェア生産性パラダイムを変えつつあり、見積もり手法も進化中(vibe coding の生産性測定など)。
出典:IPA(情報処理推進機構)公式 基本情報技術者試験 平成21年度 秋期 問52/ 公的機関配布資料につき出典明記の上引用。解説は合格ナビによる独自AI解説です。