■PMBOK ドリルダウン!_No.18
PM定量化の実践技術(2)
2005.02.09
前回は、ソフトウェア開発における定量化の重要性について説明しました。
本日は、定量化のベースとなるソフトウェア規模の尺度について説明します。
では教室の戸を開けましょう。
【01】ソフトウェア規模の定量化尺度“KLOC”と“FP”
ソフトウェアの規模は長い間プログラム行数(命令ステップ数)で表現されてきました。これを、
KLOC(K Line of code)という単位で表しています。
これに対して10年ほど前からソフトウェアの持つ機能量で規模を表現するファンクション・ポイント法が普及し、使用されています。これを、
FP(Function Point)という単位で表しています。
現在のところこの2種類がソフトウェアの規模を表現する単位となっています。
【02】ファンクションポイント(FP)法とは
IBMのA.J.Albrechtが1970年代半ばに 考案した尺度です。
(1)FP法はソフトウェアの
規模を表す尺度法である。従来の行数に代わる画期的なものであり、ソフトウェアの
定量化の基本となるものです。
(2)FP法はソフトウェアが持っている
機能に着目した尺度法ですが、アプリケーションの分野に関わりなく共通の方法で、
機能の量を測定できます。
(3)FP法を導入することにより、ソフトウェア開発を、客観的に定量化把握可能にすると同時に、
ユーザにとってソフトウェアの価値を表す指標となり得ます。
【03】ファンクションポイントの特徴
(1)「情報処理技術」と言えるものはブラックボックスとして扱い、ソフトウェア規模測定対象のアプリケーション(以降AP)が持つ
「情報処理機能」を抽出して定量化します。
(2)開発者の視点ではなくユーザの視点でソフトウェア規模を測定します。
(3)また、以下の特徴があります。
- 開発に使用する技術から独立していることにより、ユーザが理解しやすく、情報処理担当部門以外での利用もできます。
- 開発工程においては、論理(外部)設計の終了時点から適用開始できます。
- 開発したソフトウェアの規模が測定でき、この規模をもとにしての、品質や開発生産性の分析ができます。
- 購入したアプリケーションのソフトウェア規模が測定できます。
- 異なる方法で開発したソフトウェア同士を共通尺度で比較することができます。
(4)将来的には、ソフトウェア開発の価格交渉において、
工数単価に代わってFP単価を採用したり、
仕様変更の場でFPをベースに金額や期間を見積もるようになると予想されます。
【本日のまとめ】
- 工学的に開発するためにはさまざまな量を測る必要がありますが、その中でも最も基本的な「量」は「ソフトウェアの規模」です。
- 見積り、開発計画、生産性、品質などすべてが開発対象のソフトウェアがどれほどの「大きさ」なのか、の上に成立っています。
- 規模を計測する尺度には、ステップとFPがありますが、今後、ユーザにとっての機能価値を計測する手段として、FPがますます重要となっています。
FPは1970年代からその重要性が叫ばれていますが、いまだにFP計測を知らない(あるいはやろうとしない)エンジニアが多いのは残念な限りです。根拠のある見積を実践するには、必須の基礎技術ではないでしょうか?
次回は、FPを含めた様々な見積手法について概観してみましょう。
リスクマネジメント (18)
前回まで、「リスク識別」プロセスの手順を説明しました。
本日は、「定性的リスク分析」の説明をします。
では教室の戸を開けましょう。
【01】定性的リスク分析とは
まず、定性的リスク分析の目的と目標について説明します。
(1) 目的
識別されたリスクの影響度とその起こり易さを評価します。
具体的には、影響度と発生確率を評価することになります。
(2) 目標
- リスクの優先順位リストを作成します。(例えば、組織でリスクTOP10リストを作成するなどです)
- 定量的リスク分析や対応を行うリクスのリストを作成します
- プロジェクトで抱えられるリスクと、そうでないリスク(母体組織にお願いするリスク)を分類します。
【02】定性的リスク分析を進める上での留意事項
これから、定性的リスク分析を始める上で、どんなことに気をつける必要があるのでしょうか?
- まず、影響度と発生確率は、せいぜい5段階で表現します。例えば、影響が大きい、やや大きい、普通、やや小さい、小さいなどです。その決定作業は、かなり感覚的な議論をすることになります。よってあまりにも、時間をかけて厳密な議論をすることは避ける必要があります。
- それから、例えば、リスク上位TOP20を各付けした場合、それ以外を捨ててしまっては、いけません。
リスクは、時間がたつと確率と影響度が変化するのです。また、同じリスクが識別できない可能性もあります。
- また、感覚的に各付けしたリスクをあたかも「確定情報」として取り扱わないことです。これも、同上の理由からです。