Domestic Conference

コンポーネントの責務と依存制約に基づくリファクタリング支援

陽 文樹, 林 晋平, 佐伯 元司

In ソフトウェアエンジニアリングシンポジウム2016予稿集 (SES 2016), pp. 94–103, 東洋大学 白山キャンパス, 東京, August 2016.

Abstract

ソフトウェアアーキテクチャパターンに適合するコードの記述は保守コストの削減のために重要である.しかし,パターンで定義された制約に従うコードの記述は開発者の負担となり,実際にはこれに違反するコードが記述される.本稿では,アーキテクチャ適合のためのリファクタリングプロセスを支援するために,アーキテクチャ制約における違反コードを不吉な臭いとして検出する手法を提案する.提案手法はソースコードから抽出したコード片間の依存関係グラフ,およびアーキテクチャに則した推定規則を入力とし,グラフの各ノードに付加した所属可能なコンポーネントの集合の情報を段階的に更新していく.推定規則はコンポーネントの責務と依存制約を表現しており,周辺コード片の現推定状態から制約を満たさない各ノードのコンポーネント候補を除いていく.最終結果に現所属コンポーネントが含まれていない場合,そのコード片を違反として検出する.MVC2 アーキテクチャを対象として規則を定義し,Play Frameworkを用いたWebアプリケーション群に対して手法を適用したところ,高精度の検出結果を得た.

BibTeX

@incollection{minami-ses2016,
    author = {陽 文樹 and 林 晋平 and 佐伯 元司},
    title = {コンポーネントの責務と依存制約に基づくリファクタリング支援},
    booktitle = {ソフトウェアエンジニアリングシンポジウム2016予稿集},
    pages = {94--103},
    year = 2016,
}
Type
Domestic Conference
Conference
SES 2016
Location
東洋大学 白山キャンパス, 東京
Presented
September 1, 2016
Volume / Pages
pp. 94–103