227

重回帰分析とプロジェクト類似性を用いたハイブリッド工数見積もり方法の提案
戸田 航史

角田 雅照 門田 暁人

松本 健一

本論文では，log-log 重回帰分析による見積もり方法と類似性に基づく工数見積もり方法 (analogy based estimation;ABE 法) を組み合わせた見積もり方法を提案する．提案方法では，見積もり対象プロジェクトに ABE 法を適用した場合の，見積もりの不確実度を算出する．次に，不確実度が低い場合は log-log 重回帰による見積もりを採用し，それ以外の場合は ABE 法の見積もり，もしくは ABE 法と log-log 重回帰による見積もりの平均値を採用する．従来法と見積もり精度を比較した結果，類似プロジェクトの実績工数の分散を不確実度として用いることにより，見積もり精度を示す BRE (Balanced Relative Error) の中央値が 47.2%から 39.7%に改善した．

We propose a hybrid eﬀort estimation method based on the multivariate liner regression analysis and theanalogy based estimation method (ABE). First, our method calculates the unreliability index of ABE on
an estimation target project. Next, our method selects log-log regression estimation when the value of theindex is low. Otherwise our method selects ABE estimation or combined estimation (the average of ABEand log-log regression estimation). In the experiment, we compared estimation accuracies of our methodwith conventional methods, and the results showed that the median of Balanced Relative Error (estimationaccuracy index) was improved from 47.2% to 39.7%, when the variance of similar projects’ eﬀort was usedas the reliability index.

ゆるプロジェクトの工数を 1 つの式により見積もる

1 はじめにため，見積もり精度が高くならない場合がある．そのソフトウェア開発において，開発工数の見積もり欠点を補うため，類似性に基づく工数見積もり方法

は人的資源やスケジュールの管理の基礎となるもの(analogy based estimation; ABE 法) [11] が提案されであり，できるだけ高い精度で見積もる必要がある．ている．ABE 法では，過去のプロジェクトデータかそのため，これまで様々な見積もり方法が提案されてら見積もり対象に似たプロジェクトを抽出し，それらきた．定量的な工数見積もり方法として，log-log 重に基づいて工数を見積もる．ただし，対象プロジェク

回帰分析による見積もり方法 [14] が広く用いられていトに似たプロジェクトが過去データにない場合，見積る．ただし，log-log 重回帰による見積もりは，あらもり精度が低下する可能性がある．

Hybrid Eﬀort Estimation based on Multivariate Liner
Regression and Analogy based Estimation.
Koji Toda, 福岡工業大学情報工学科, Department ofComputer Science and Engineering, Fukuoka Institute of Technology.
Masateru Tsunoda, 東洋大学総合情報学部, Faculty ofInformation Sciences and Arts, Toyo University.
Akito Monden, Kenichi Matsumoto, 奈良先端科学技術 大 学 院 大 学 情 報 科 学 研 究 科, Graduate School ofInformation Science, Nara Institute of Science andTechnology.
コンピュータソフトウェア, Vol.30, No.2 (2013),pp.227–233.
[研究論文 (レター)] 2012 年 10 月 6 日受付.

そこで本論文では，両者の見積もり方法の欠点を補い，見積もり精度を高めるために，両者を組み合わせた見積もり方法を提案する．提案方法は 2 つのステップからなる．ステップ 1 では，見積もり対象プロジェ
クトに ABE 法を適用した場合の見積もりの不確実度を算出する．ステップ 2 では，不確実度が高い場合はlog-log 重回帰による見積もりを採用し，それ以外の場合は ABE 法による見積もりを用いる (ABE 法の見積もりを採用する，もしくは ABE 法と log-log 重回帰による見積もりの平均値を採用する)．異なる見228

コンピュータソフトウェア

積もり方法を組み合わせることにより，精度向上が見(2) のように定義される．

込めると指摘されていることから [5]，提案方法によamp(pa , pi ) =る精度向上が期待される．
以降，2 章では組み合わせる見積もり方法 (ABE 法と log-log 重回帰) について述べ，3 章では提案するハイブリッド見積もり方法について説明する．4 章で√∑efforta =F Pa
F Pii∈k np (efforti × amp(pa , pi ))

k(1)

(2)

は提案方法に対する評価実験について説明し，5 章でここで k np は，プロジェクト pa に対する類似プロ関連研究について述べる．最後に 6 章で本論文のまジェクトの集合を表す．以降，efforti × amp(pa , pi )とめを述べる．

を補正工数と呼ぶ．

2 組み合わせる見積もり方法

2. 2 Log-log 重回帰分析に基づく工数見積もり

2. 1 類似性に基づく工数見積もり

Log-log 重回帰分析 [14] は，目的変数 (開発工数) とプロジェクトの類似性に基づく見積もり方法 (anal-

1 つ以上の説明変数 (開発規模など) が対数正規分布

ogy based estimation; ABE 法) [11] は，「類似するプとなっているデータセットに対して適用される方法でロジェクト (開発規模や対象業種などの特徴が互いにあり，定量的な工数見積もり方法として広く用いられ似たプロジェクト) は，工数も互いに類似するであろている．Log-log 重回帰では，目的変数と 1 つ以上のう」という仮定に基づいて見積もりを行う．

説明変数に対しそれぞれの対数をとり，それらを用いABE 法は 3 つのステップにより見積もりを行う．て見積もりモデルを作成する．対数変換により変数

ステップ 1 では，データに含まれる各変数の値域をの分布を正規分布に近づけ，見積もり精度の向上を図[0,1] に正規化する．これは値域の違いによる変数ごる．見積もり時にはモデルに対数変換した値を代入との類似度に対する影響の差を除外するためであり，し，得られた見積もり値を逆変換する．

各変数の最大値と最小値を利用して行う．

Log-log 重回帰におけるモデルの一般形を式 (3) にステップ 2 では，見積もり対象プロジェクトと過去示す．ここで m は説明変数の数，ki は偏回帰係数，プロジェクトとの類似度を計算する．類似度として，Ni は説明変数，Ŷ は目的変数，C は定数項である．

各変数の組を空間上の点とみなした，2 点間のユークlog(Ŷ ) =リッド距離を用いることが一般的であり，本稿でもこm∑ki log(Ni ) + C(3)i=1れを採用する．この場合，ユークリッド距離が短いほど類似したプロジェクトとみなされる．
ステップ 3 では，類似度が高い k 個のプロジェク

3 ハイブリッド見積もり方法
3. 1 手順

ト (以降これらを類似プロジェクトと呼ぶ) の工数の提案方法は，ABE 法と log-log 重回帰を組み合わ平均値を算出し，これを見積もり結果とする．類似プせた見積もり方法であり，それぞれの見積もりを選ロジェクト数 k はあらかじめ決めておく必要がある．

択，または平均して利用する．提案方法は以下の手順

ただし，類似プロジェクトとして，見積もり対象プロで見積もる．

ジェクトよりも規模が大きい，または小さいものが多く選ばれた場合，それらの工数をそのまま平均すると見積もり精度が低下しやすい．そこで本論文では，類似プロジェクトの工数を規模で補正してから平均する方法を採用する [12]．類似プロジェクト pi の実
績工数を efforti ，開発規模を F Pi とすると，見積もり対象プロジェクト pa の見積もり工数 efforta は式

1. 見積もり対象プロジェクトにおける，ABE 法による見積もりの不確実度を算出する．

2. 不確実度が閾値以下の場合には ABE 法を単独で，もしくは重回帰と併用して見積もる．

3. 不確実度が閾値より大きい場合，log-log 重回帰単独の見積もりを採用する．

Vol. 30 No. 2 May 2013
手順 2 では以下のどちらかの方法により見積もる．

229
res cv =• 択一法：ABE 法による見積もりを採用する．
• 合成法：ABE 法と log-log 重回帰による見積も

res varres av(8)式中における m eff orti は pi の補正工数である．類
似度平均，類似度分散は説明変数に着目した不確実度りの平均値を採用する．
本論文では次節で述べる 4 種類の不確実度を定義した．見積もり時にはうち 1 つの不確実度を利用すといえ，これらは目的変数に着目した不確実度といえる．

る．不確実度の閾値としては様々なもの (定数など)が考えられるが，本論文では，過去データに含まれる4 評価実験全てのプロジェクトに対し不確実度を計算し，その n提案方法の見積もり精度を評価するために，4 種類パーセンタイルを閾値とする．の不確実度それぞれを用いて閾値を変化させて見積もるとともに，従来法である log-log 重回帰，ABE 法，

3. 2 不確実度

ABE 法と log-log 重回帰の単純平均 [6](以降 ABE・

ABE 法による見積もりにおいて，見積もり対象プ重回帰単純平均とする) による見積もりを行い，それロジェクトと似たプロジェクトが過去データにないぞれの精度を比較した．

場合，絶対値では類似度が低い (ユークリッド距離が大きい) プロジェクトが類似プロジェクトとして採用

4. 1 データセットされ，見積もり精度が低くなる (不確実度が高くなISBSG(International Software Benchmarking Stan-る) 可能性がある．この場合，類似度の平均値や分散

dards Group) [2] が収集したデータセットを用いて評が大きくなると考えられるため，これらを不確実度

価実験を行った．データセットには 20 カ国のソフトの指標とした．類似度平均値 sim avg ，類似度分散ウェア開発企業から収集された，1989 年から 2004 年

sim var の定義を以下に示す．
∑simiasim avg =kまでの 3,026 件のプロジェクトが含まれており，それ∑sim var =(simia − sim avg)2k(4)ぞれ 99 種類の変数が記録されている．
実験では工数見積もりが設計終了時に行われると想定し，それまでに決定している 8 種類の変数 [13](ファ(5)ンクションポイント，計画工数，要件定義工数，開発種別，開発言語，工数計測手法，工数算入業務) を採

ここで simia は類似プロジェクト pi と見積もり対象用した．開発言語などの質的変数はダミー変数化しプロジェクトの pa との類似度，k は類似プロジェクた．文献 [3] と同様に，データセットからデータの質ト数である．

(Data Quality Rating) が C または D，FP の測定方

また，類似プロジェクトの補正工数が不均一 (変動法が IFPUG ではないプロジェクトを除外した．さら係数 (分散÷平均値) が大きい) の場合，見積もり精に欠損値が含まれるプロジェクトを除外し，232 件の度が低下することが指摘されている [10]．そこで，補プロジェクトを実験に用いた．

正工数の変動係数と分散を不確実度とした．補正工数
分散 res var ，補正工数変動係数 res cv の定義を以4. 2 精度評価指標下に示す．

見 積 も り 精 度 評 価 指 標 と し て ，AE (Absolute∑res avg =m eff ortik∑(m eff orti − res avg)2
res var =k(6)Error)，M RE (Magnitude of Relative Error) [1]，M ER (Magnitude of Error Relative to the estimate) [4]，BRE (Balanced Relative Error) [8] の(7)平均値と中央値を用いた．それぞれの指標の値が小さいほど，見積もり精度が高いことを示す．紙面のコンピュータソフトウェア

230

都合上，過大見積もりと過少見積もりをバランスよく評価する [9]BRE を重視し，BRE の中央値 (以降M dBRE とする) を中心に評価を行う．
BRE の算出式を以下に示す．式中，実測値を x，モデルから算出される見積もり値を x̂ で示す．

 |x̂ − x| , x̂ − x ≥ 0x
BRE = |x̂ − x| , x̂ − x < 0x̂

(9)

M RE は BRE の x̂ − x ≥ 0 の場合の式を用いて算出し，M ER は x̂ − x < 0 の場合の式を用いて算出する．AE は |x̂ − x| により算出する．

図1

択一法と従来法の見積もり精度

図2

合成法と従来法の見積もり精度

4. 3 手順
提案方法に対する実験手順を以下に示す．択一法，合成法それぞれについて各不確実度を組み合わせてleave-one-out 法により実験した．
1. データセット中のプロジェクト 1 件を見積もり対象 (テストデータ) とし，それ以外を見積もりの根拠 (フィットデータ) として使用する．

2. フイットデータ，テストデータそれぞれのプロジェクトに対し，ABE 法による見積もりの不確実度を計算する．

3. フィットデータを用いて log-log 重回帰による見積もりモデルを作成する．

4. 不確実度の閾値を，フィットデータにおける nパーセンタイル値 (初期値 n=10) とする．

従来法の見積もり精度を図 2 に示す (横軸は不確実度の閾値を示す)．従来法同士を比較すると，log-log 重

5. テストデータの不確実度が閾値以下の場合，回帰の M dBRE が最も小さく，ABE・重回帰単純平ABE 法による見積もり結果を用い，そうでない均がそれよりも若干大きく，ABE 法が最も大きかっ場合は log-log 重回帰による見積もり結果を採用た．また，M dBRE を含む 8 個の精度評価指標のうする．

ち，7 個において log-log 重回帰が最も小さかった．

6. 手順 1 から 5 を，データセットに含まれる全プロジェクトに対して行う．

7. n が 100%未満の場合，n を 10 増加させて手順1 から 6 を繰り返す．

そこで提案方法との見積もり精度の比較は log-log 重回帰とのみ行う．
提案法について見ると，択一法の場合，補正工数分散の閾値が 20 の時に log-log 重回帰よりも M dBRE

提案方法以外についても，同様に leave-one-out 法が小さくなっていたが，その差は 1.0%であり，8 個により実験を行った．ABE 法の類似ケース数は予備の精度評価指標のうち log-log 重回帰よりも値が小さ

分析に基づき 5 件とした．

かった個数は 4 個であった．よって，従来法よりも精度が明確に改善しているとはいえない．

4. 4 結果
択一法と従来法の見積もり精度を図 1 に，合成法と合成法の場合，どの不確実度を用いても M dBREが log-log 重回帰よりも小さい場合があり，特に補正Vol. 30 No. 2 May 2013

図3Log-log 重回帰よりも改善した指標の数 (合成法)

図4231

各不確実度と ABE 法の見積もり精度との関係工数分散が安定的に (閾値 70 以下の場合に)log-log 重を分析した．結果を図 4 に示す．補正工数分散と補正回帰よりも M dBRE が小さくなっていた．閾値が 60

工数変動係数の閾値が大きい場合，類似度平均と類似の場合に M dBRE が最も大きく改善 (7.4%) してお度分散の閾値が小さい場合では，おおむね不確実度り，統計的にも有意差があった (符号検定を用い，有が低いほど ABE 法の見積もり精度が高かった．よっ意水準を 5%とした．p=0.04)．て，「不確実度が ABE 法の見積もり精度を表してい図 3 に，log-log 重回帰よりも値が小さくなった精る」という前提はある程度正しいといえる．

度評価指標の個数を示す．補正工数分散の閾値が 60以下の場合，6 個以上指標が改善していた．6 個改善

5 関連研究した (2 個改善しなかった) 場合において，改善しな

MacDonell ら [6] は ABE 法，重回帰分析，熟練者かった指標のうち一方は，ごくわずかな差であったによる見積もりから，実工数と見積もり工数を比較(AE 平均の差が 1，MRE 平均の差が 0.01%)．

して最も精度が高い方法を選択した場合，精度が大M dBRE の改善度合い (図 2) と改善した指標の数きく改善することを示している．これは，これらの方(図 3) より，合成法を利用し補正工数分散の閾値を法から最適なものを選ぶことができれば，精度が改30 から 60 程度とするならば，従来法よりも精度が改善することを示唆しているが，実際の見積もり時に善することが期待される．また実験結果より，提案手は実工数と見積もり工数を比較できない．そのため，法間で比較すると，択一法よりも合成法のほうが精度

MacDonell らはこれらの見積もり方法を組み合わせ向上の効果が高いといえる．別のデータセットに適用る方法として，各方法の見積もりの単純平均を用いるし，提案方法の効果を確かめることは今後の課題で方法と，相関ルールを用いて見積もり方法を選択すある．

る方法を提案しているが，どちらの場合も精度が明確に改善しなかった．本論文は MacDonell らの研究

4. 5 考察をベースとしているが，相関ルールの代わりに不確提案方法は「不確実度が ABE 法の見積もり精度実度を定義して利用していることが異なる．さらに，を表している」という前提に基づいている．ただし，不確実度が低い場合に 2 つの見積もり方法を択一的実験ではその前提の正しさを直接確かめていない (不に用いることに加え，それらの平均値を用いることに確実度が低いプロジェクトにおいて，ABE 法よりもより，見積もり精度を改善した点が異なる．

log-log 重回帰のほうが精度が低ければ，ABE 法の精

Mittas ら [7] は ABE 法と重回帰分析を統合したモ

度が相対的に低くても提案方法の精度が高まる)．そデルを提案しており，前者では工数と非線形の関係

こで，各不確実度と ABE 法の見積もり精度との関係がある説明変数のみを扱い，後者では線形の関係が

232

コンピュータソフトウェアある説明変数のみを扱い，見積もり精度を高めている．Mittas らの手法は ABE 法と重回帰分析において別々の説明変数を用いており，本論文では同一の説明変数を用いているという違いがあるが，提案方法とMittas らの方法の見積もり精度を比較することは今後の課題である．

6 おわりに
本論文では，類似性に基づく方法 (ABE 法) と log-log 重回帰分析を組み合わせた見積もり方法を提案した．提案方法では，ABE 法による見積もりの不確実度に基づき，不確実度が低い場合には log-log 重回帰による見積もりを採用し，それ以外の場合には ABE法による見積もりを用いる (ABE 法の見積もりを採用する，または log-log 重回帰と ABE 法の平均値を採用する)．
実験において，補正工数分散を不確実度として用い，不確実度が全体の 60 パーセンタイル以下の場合に，log-log 重回帰と ABE 法の見積もりの平均値を採用し，それ以外では log-log 重回帰の見積もりを採用することにより，従来法よりも高い精度となることが示された．
謝辞 本研究の一部は，福岡工業大学情報科学研究所の支援を受けた．

参 考 文 献[ 1 ] Conte, S., Dunsmore, H. and Shen, Y.: Software
Engineering Metrics and Models, The BenjaminCummings Pub. Co., 1986.
[ 2 ] Estimating, I.: Benchmarking and Research
Suite Release 9, International Software Benchmarking Standards Group (ISBSG), 2004.
[ 3 ] Jeﬀery, R., Ruhe, M. and Wieczorek, I.: Using
Public Domain Metrics to Estimate Software Development Eﬀort, in Proc. of International Symposium
on Software Metrics, METRICS ’01, Washington,DC, USA, IEEE Computer Society, 2001, pp. 16–27.
[ 4 ] Kitchenham, B. A., Pickard, L. M., MacDonell,
S. G. and Shepperd, M. J.: What accuracy statistics really measure, IEE Proceedings - Software,Vol. 148, No. 3(2001), pp. 81–85.
[ 5 ] Kocaguneli, E., Menzies, T. and Keung, J. W.:
On the Value of Ensemble Eﬀort Estimation, Software Engineering, IEEE Transactions on, Vol. 38,No. 6(2012), pp. 1403–1416.
[ 6 ] MacDonell, S. G. and Shepperd, M. J.: Combining techniques to optimize eﬀort predictions insoftware project management, Journal of Systems
and Software, Vol. 66, No. 2(2003), pp. 91–98.
[ 7 ] Mittas, N. and Angelis, L.: LSEbA: least squares
regression and estimation by analogy in a semiparametric model for software cost estimation, Empirical Software Engineering, Vol. 15, No. 5(2010),
pp. 523–555.
[ 8 ] Miyazaki, Y., Terakado, M., Ozaki, K. andNozaki, H.: Robust regression for developing software estimation models, Journal of Systems andSoftware, Vol. 27, No. 1(1994), pp. 3–16.
[ 9 ] Molokken-Ostvold, K. and Jorgensen, M.: A
Comparison of Software Project Overruns-Flexible
versus Sequential Development Models, IEEE
Trans. Softw. Eng., Vol. 31, No. 9(2005), pp. 754–766.
[10] Ohsugi, N., Monden, A., Kikuchi, N., Barker,M., Tsunoda, M., Kakimoto, T. and Matsumoto,K.: Is This Cost Estimate Reliable? – the Relationship between Homogeneity of Analogues andEstimation Reliability, in Proc. of International
Symposium on Empirical Software Engineering andMeasurement (ESEM2007), Madrid, Spain, 2007,
pp. 384–392.
[11] Shepperd, M. and Schofield, C.: Estimating Software Project Eﬀort Using Analogies,IEEE Trans. on Software Engineering, Vol. 23,
No. 12(1997), pp. 736–743.
[12] Walkerden, F. and Jeﬀery, R.: An empirical study of analogy-based software eﬀort estimation, Empirical Software Engineering, Vol. 4,
No. 2(1999), pp. 135–158.
[13] 門田暁人, 小林健一 : 線形重回帰モデルを用いたソフトウェア開発工数予測における対数変換の効果, コン
ピュータソフトウェア, Vol. 27, No. 4(2010), pp. 234–239.
[14] 戸田航史, 門田暁人, 松本健一 : ソフトウェア開発
工数予測のためのフィットデータ選定方法, 情報処理学
会論文誌, Vol. 50, No. 11(2009), pp. 2699–2709.

戸田航史

2004 年 大 阪 大 学 基 礎 工 学 部 卒 業 ．
2009 年奈良先端科学技術大学院大学情報科学研究科博士後期課程修了．
同年同大学同研究科博士研究員．2012
年より福岡工業大学情報工学科助教．博士 (工学)．ソフトウェアメトリクスの研究に従事．情報処理学会，電子情報通信学会，IEEE 各会員．

Vol. 30 No. 2 May 2013角田雅照

1997 年 和 歌 山 大 学 経 済 学 部 卒 業 ．
2004 年奈良先端科学技術大学院大学情報科学研究科博士前期課程修了．

2007 年同大学同研究科博士後期課程修了．同年同大学同研究科特任助教．2012 年東洋大学総合情報学部助教．博士 (工学)．ソフトウェアメトリクスの研究に従事．電子情報通信学会，情報処
理学会，日本ソフトウェア科学会，ヒューマンインタ
フェース学会，教育システム情報学会，IEEE 各会員．
門田暁人

1994 年名古屋大学工学部電気学科卒
業．1998 年奈良先端科学技術大学院
大学情報科学研究科博士後期課程修了．同年同大学同研究科助手．2004
年同大学助教授．2007 年同大学准教授．2003〜2004

233

年 Auckland 大学客員研究員．博士 (工学)．ソフト
ウェアメトリクス，ソフトウェアプロテクション，ヒューマンファクタ等の研究に従事．電子情報通信学会，情報処理学会，日本ソフトウェア科学会，IEEE，ACM 各会員．
松本健一

1985 年大阪大学基礎工学部情報工学科卒業．1989 年同大学大学院博士課
程中退．同年同大学基礎工学部情報工学科助手．1993 年奈良先端科学技術大学院大学助教授．2001 年同大学教授．工学博士．
エンピリカルソフトウェア工学，特に，プロジェクトデータ収集／利用支援の研究に従事．電子情報通信学会，情報処理学会，日本ソフトウェア科学会，ACM各会員，IEEE Senior Member．