T3 - qwik.jp

T3:
An Empirical Study on the Developers' Perception
of Software Coupling
Gabriele Bavota, Bogdan Dit, Rocco Oliveto,
Massimiliano Di Penta, Denys Poshyvanyk,
Andrea De Lucia
発表者:吉田(NAIST)
概要
• 結合度メトリクスが開発者が考える結合を表している
かどうか調査した
• 対象とした結合度メトリクス
– Semantic Coupling
• ソースコード中の語彙情報を使用
– Dynamic Coupling
• 実行履歴中の呼び出し情報を使用
– Logical Coupling
• 開発履歴中の同時修正に関する情報を使用
– Structural Coupling
• ソースコードの静的な構造情報を使用
アンケートベースの調査
OSSから抽出したクラス対を対象に,被験者に
結合度を5段階で回答してもらった
– 対象としたクラス対
• 各結合度メトリクスが最も高かった24対
• 各結合度メトリクスが最も低かった24対
– 被験者は2グループ
• Original developers:対象としたOSSの開発者
• External developers:学生,研究者,実務者
2グループともに,Semantic couplingが最も開発者
の意見と一致していた
パッケージ階層との比較
以下の2つの一致度を計測
– 対象OSSのパッケージ階層に基づくクラスの分類
• 同じパッケージのクラスを1つの分類とする
– 各結合度に基づくクラスの分類
• 分類間の各結合度が小さくなるようにクラスを分類
• Bunchアルゴリズム[1]を使用
Semantic couplingが最もパッケージ階層と近かった