- 著者
-
門田暁人
佐藤慎一
神谷 年洋
松本 健一
- 雑誌
- 情報処理学会論文誌 (ISSN:18827764)
- 巻号頁・発行日
- vol.44, no.8, pp.2178-2188, 2003-08-15
ソフトウェアに含まれるコードクローン(重複するコード列)は,ソフトウェアの構造を複雑にし,ソフトウェア品質に悪影響を与えるといわれている.しかし,コードクローンとソフトウェア品質の関係はこれまで定量的に明らかにされていない.本論文では,20年以上前に開発され,拡張COBOL言語で記述されたある大規模なレガシーソフトウェアを題材とし,代表的なソフトウェア品質である信頼性・保守性とコードクローンとの関係を定量的に分析した.信頼性の尺度として保守工程で発見された「フォールト数/LOC(Lines of Code)」を用い,保守性の尺度として「モジュールの改版数」を用いた.分析の結果,コードクローンを含むモジュール(clone-includedモジュール)は含まないモジュール(non-cloneモジュール)よりも信頼性(平均値)が約40%高いが,200行を超える大きさのコードクローンを含むモジュールは逆に信頼性が低いことが分かった.また,clone-includedモジュールはnon-cloneモジュールよりも改版数(平均値)が約40%大きく(すなわち,改版のためにより多くの保守コストが費やされてきた),さらに,モジュールに含まれるコードクローンのサイズが大きいほど改版数がより大きい傾向にあることが分かった.