楠本研究室

業績一覧

ホーム業績一覧

コードクローンの自動集約に基づく削減可能なソースコード行数の測定

コードクローンの自動集約に基づく削減可能なソースコード行数の測定
情報処理学会論文誌, vol.62, no.4, pp.1065-1075 (2021)
概要: コードクローン(以下,クローン)とは,ソースコード中に存在する互いに一致または類似しているコード片を指す.クローンはソフトウェア保守を困難にする要因の一つとして知られている.リファクタリングを行い,クローンを一つのメソッドやクラスなどのモジュールに集約することにより保守が容易になる.しかし,リファクタリングは正常に稼働しているソースコードに手を加える作業であり,またリファクタリングによりかえってバグが混入する可能性がある.そのため,リファクタリングを行う動機となる指標が必要となる.クローンのリファクタリングによる削減可能な行数がその指標として用いられる.既存研究では,クローンの情報や行数の解析に基づいて削減可能なソースコード行数を推定する手法を提案している.しかし,削減行数の推定にとどまっているため,リファクタリングにより実際に削減される行数とは乖離が存在する場合があるのではないかと著者らは考えた.そこで本研究では,削減可能なソースコード行数をより正確に推定する手法を提案する.提案手法では,クローンの検出,集約,ソースコードのコンパイル,テストを繰り返し自動で行い,削減行数を測定する.また,提案手法をJavaプロジェクトに対して適用し,既存手法との比較を行った.その結果,既存手法と比較してより正確にソースコードの削減行数を測定できた. タグ: ソフトウェア保守,コードクローン,リファクタリング
@article{中川将2021,
  author = {中川 将 and 肥後 芳樹 and 松本 淳之介 and 楠本 真二},
  title = {コードクローンの自動集約に基づく削減可能なソースコード行数の測定},
  journal = {情報処理学会論文誌},
  volume = {62},
  number = {4},
  pages = {1065--1075},
  year = {2021},
  month = {apr}
}