この人頭いいなと思ったエピソード

通常開発規模が大きくなれば生産性は下がるものと思われるのですが、「ソフトウェア開発データ白書2009」の「SLOC生産性」を見るとSLOC規模が大きくなるほど生産性(SLOC/人時)が上がっています。これはどのように考えれば良いでしょうか?
ちなみに「FP生産性」ではFP規模が大きくなるほど生産性(FP/人時)は下がっています。

A 回答 (2件)

No.1です



>
> ただ、「データ白書」は見積もり値ではなく実績値が・・・
>

なるほど・・・

同一メンバーが同一言語で同一期間で
同一要求仕様で開発するシステムは
同じFP数で同じステップであるはずです。

つまり規模が大きいほどFP当たりのステップ数が
大きくなるのではないでしょうか?

1.SLOCベースでの開発総工数

40Kの場合 40,000÷5.5= 7,273時間
100Kの場合 100,000÷7.9=12,658時間
300Kの場合 300,000÷8.8=34,091時間

2.開発総工数からFP生産より総FP数を推定

  40K( 7,273時間)

400FP未満→0.167×7,273≒1214.55FP
1000FP未満→0.142×7,273≒1032.73FP → ◎
3000FP未満→0.137×7,273≒ 996.36FP
3000FP以上→0.081×7,273≒ 589.09FP

このシステムはちょうど1000FP規模
1FP≒40STEPと想定される



 100K(12,658時間)

400FP未満→0.167×12,658≒2113.92FP
1000FP未満→0.142×12,658≒1797.47FP → ○
3000FP未満→0.137×12,658≒1734.18FP → ○
3000FP以上→0.081×12,658≒1025.32FP

このシステムは1000FP以上3000FP未満の規模
仮に2000FP規模とすれば1FP≒50STEP



 300K(34,091時間)

400FP未満→0.167×34,091≒5693.18FP
1000FP未満→0.142×34,091≒4840.91FP
3000FP未満→0.137×34,091≒4670.45FP
3000FP以上→0.081×34,091≒2761.36FP → ◎

このシステムは3000FP以上の規模
仮に4000FP規模とすれば1FP≒75STEP
    • good
    • 0

「ソフトウェア開発データ白書2009」は見たことがないです。


それぞれの調査結果のの母数がわからないので、
あくまで推測(解釈)ですが

ステップ換算で見積もった場合に、
規模が大きければ、ソースの流用や部品の共通化などの効果が大きくなり
結果として実績工数が少なくなるのではないでしょうか?
SLOCは過大に見積もられる傾向があり、それを補正するために
生産性を小さくする操作がなされているのかなという気がします

逆にFPで見積もる場合はすでに個々のアプリの機能が見えているので
共通部品も想定済みで見積もりに加味されているのではないでしょうか?

規模が大きくなると生産性が低くなるのは当然のことと解釈すると
FPのほうが見積精度は高いという言葉と合致すると思います
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
確かに「ソースの流用」や「部品の共通化」の影響は大きそうです。
気が付きませんでした。

ただ、「データ白書」は見積もり値ではなく実績値が載っているはずなので、これをそのまま受け取ると、開発規模が大きくなるにしたがって、プロジェクト全体に占めるステップ数の割合は増え、逆に機能数(FP値)の割合は減ってしまうことになってしまいます。
もしかしたら、ステップ数は開発終了後の数字を、FP値については見積もり段階の数字を回答するような会社が多いのかも知れません。
(FP値の計測は手間がかかるので何度も行わないでしょう。)

ちなみに数字は以下の通りです。

・SLOC規模別SLOC生産性(SLOC/人時の平均値)
40KSLOC未満→5.5
100KSLOC未満→7.9
300KSLOC未満→8.8
300KSLOC以上→9.7

・FP規模別FP生産性(FP/人時の平均値)
400FP未満→0.167
1000FP未満→0.142
3000FP未満→0.137
3000FP以上→0.081

お礼日時:2009/11/16 15:19

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報