リポジトリマイニングに基づくアンチパターン検出手法

この論文をさがす

抄録

長年の開発により大規模化したソフトウェアに対する,効果的なリファクタリングを支援するためのアンチパターン検出手法を提案する.提案手法は,リポジトリマイニングを用いたロジカルカップリング分析に基づき,変更の分散(Shotgun Surgery),肥満児(The Blob),重複したコード(Duplicated Code)の3種類のアンチパターンを検出する.提案手法の評価のため,C言語およびC++言語で記述された,大規模なオープンソースソフトウェア(OSS)および組込みシステム製品のソフトウェアを用いた適用実験を行った.組込システム製品の開発者ヒアリングにより,開発者の問題意識に適合したアンチパターンを検出できることを確認した.

We propose an anti-pattern detection approach based on software repository mining for supporting effective refactoring against long-lived, large-scale software systems. Our method detects Shotgun Surgery, The Blob and Duplicated Code using logical coupling analysis based on repository mining. As a case study, we detect anti-patterns from an open-source software system and industrial embedded software systems written in C or C++ language using our method. In addition, we had an interview with the developers of the embedded software systems about the detected anti-pattern instances. The result indicates that our method successfully detects the anti-pattern instances where the developers consider that some design issues exist.

収録刊行物

詳細情報 詳細情報について

問題の指摘

ページトップへ