2016 Fiscal Year Research-status Report
コードクローンの変化に対応するリファクタリング支援環境の構築
Project/Area Number |
16K16034
|
Research Institution | Nagoya University |
Principal Investigator |
吉田 則裕 名古屋大学, 情報科学研究科, 准教授 (00582545)
|
Project Period (FY) |
2016-04-01 – 2018-03-31
|
Keywords | コードクローン |
Outline of Annual Research Achievements |
本研究で提案する「開発者の作業内容をモニタリング・分析し,その結果に基づいてコードクローンのリファクタリングを支援する環境」の仕様策定を行った.本環境は,まず統合開発環境上で編集中のソースコードからコードクローンを検出しリファクタリング候補として提示する.次に,開発者が行うリファクタリング作業を検知し,作業対象のコード片のコードクローンに対して,同種のリファクタリングを推薦する. 本環境における即時コードクローン検出プラグインは,統合開発環境上でソースコードが変更されたことを検知し,コードクローンを検出する.編集が行われるたびにソースコード全体からコードクローンを検出していたのでは時間がかかりすぎるため,変更部分に関連するコードクローンのみをインクリメンタルに検出する. 本環境におけるコードクローンを対象としたプロアクティブ型リファクタリング支援プラグインは,統合開発環境上でリファクタリングが開始されたことを検知し,リファクタリング対象のコード片にコードクローンが存在したら,そのコードクローンに対しても同種のリファクタリングを行うように促す. ソースコードからコードクローンを自動検出する手法は既に数多く提案されてきており,コードクローン研究者の関心は,検出したコードクローンの活用方法に移りつつある.しかし,開発者の作業内容に応じて活用支援を行う研究は少なく,リリース版のソースコードを対象としてコードクローン検出を行い,そのフィルタリングの精度向上を目的としたものが多い.版管理システムとの連携を行う手法はいくつか存在するが,本研究のように作業内容を分析することで作業内容に応じた支援を行う研究は,コードクローンに関する研究において研究代表者が知る限り存在しない.
|
Current Status of Research Progress |
Current Status of Research Progress
3: Progress in research has been slightly delayed.
Reason
開発する環境の仕様策定を行うことができたものの,環境の実装に必要な情報が想定より多かったため,実装が遅れている.
|
Strategy for Future Research Activity |
効率的な実装を行うために,コードクローン管理機能を有するEclipseプラグインを収集し,それらのソースコードを参考に実装を行う.
|
Causes of Carryover |
開発する環境の仕様策定を行うことができたものの,環境の実装に必要な情報が想定より多かったため,実装が遅れている.そのため,今年度は実装に必要なソフトウェア等の消耗品を購入する必要がなくなり,購入しなかった.
|
Expenditure Plan for Carryover Budget |
次年度は今年度完了することができなかった実装を完了させるため,開発に必要なソフトウェア等消耗品を購入する.
|
Research Products
(7 results)
-
-
-
[Presentation] Frame-Based Behavior Preservation in Refactoring2017
Author(s)
Katsuhisa Maruyama, Shinpei Hayashi, Norihiro Yoshida, Eunjong Choi
Organizer
The 24th IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER 2017)
Place of Presentation
Klagenfurt (Austria)
Year and Date
2017-02-21 – 2017-02-24
Int'l Joint Research
-
-
-
-