研究課題/領域番号 |
15H02685
|
研究機関 | 立命館大学 |
研究代表者 |
丸山 勝久 立命館大学, 情報理工学部, 教授 (30330012)
|
研究分担者 |
林 晋平 東京工業大学, 情報理工学院, 助教 (40541975)
|
研究期間 (年度) |
2015-04-01 – 2019-03-31
|
キーワード | ソフトウェアリファクタリング / ソフトウェア保守と進化 / ソフトウェア開発環境 / プログラム理解 |
研究実績の概要 |
リファクタリングにおいて、開発者や保守者の立場によって保存すべき外部的振る舞いは異なると考えるのが妥当である。本研究では、リファクタリングにおける外部的振る舞いの保存に対して、フレームという概念を導入することで、リファクタリングにおいて開発者が意識しているものと意識していないものを分離するための仕組みを確立する。平成28年度は、主に3つの研究項目を実施した。 1. プログラムの構成要素に関するインタフェースとそれに対するテストケースで空間的フレームを定義する手法を提案した。具体的には、ライブラリ開発者とライブラリ利用者という異なる2つの立場を想定し、同じリファクタリングを適用した結果において外部的振る舞いの保存に対する認識の違いが、テスト結果に現れる例を示した。さらに、このような状況において、テストケースの集合で空間フレームを定義することで、両者の認識の違いを一致させることができることを示した。 2. 外部的振る舞いの保存を常に保証したままでリファクタリングを達成することは、実際のソフトウェア開発や保守において現実的でない。そこで、リファクタリングの起動から完了までを時間的フレームとして捉え、その間に任意の編集操作を許容する仕組みを考案した。具体的には、リファクタリングの前提条件の検査をソースコードの編集操作に連動させ、利用者が起動したリファクタリングに関して、実際の適用を遅延させる仕組みを考案した。これにより、リファクタリング適用時の設定情報の再入力を不要とすることができ、自動リファクタリングの適用可能性が向上する。 3. リファクタリング操作およびその適用前後に行われたコードの編集操作を自動的に収集するツールの改良を実施し、記録情報の精度の向上を実現した。
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
平成28年度の計画は、主に(1)フレームに基づく外部的振る舞いの保存の定義、その保存手法の確立、プロトタイプツールの作成と、(2)リファクタリング操作収集ツールの開発と収集結果の検証である。 フレームに基づく外部的振る舞いの保存の定義という点では、開発者の立場によってその認識が異なる具体例を示し、プログラムの構成要素に関するインタフェースとそれに対するテストケースで空間的フレームを定義する手法を提案した。この研究成果は、国際会議SANER 2017のポスターセッションで発表した。また、リファクタリングを起動してから実際にそれが適用されるまでの時間を遅延させる手法に関して、そのプロトタイプツールを実装し、ソースコード共有ウェブサービスGitHubで一般に公開した。この研究成果は、国際会議ICSE 2017のポスターセッションでの発表が決定している。さらに、リファクタリング操作およびその適用前後に行われたコードの編集操作ツールを改良し、記録情報の精度の向上を達成した。このツールに関しても、引き続きGitHuBで一般に公開している。 平成28年度は、手法の考案のための研究討論よりも、主にプロトタイプツールの開発に力を入れ、その実装の公開に成功した。また、空間的フレームおよび時間的フレームの具体例の提示に成功した点も大きな進展である。その一方で、実装したツールを用いた実験、さらには実験結果の十分な検証までは達成できていない。以上より、計画の一部が未完了ではあるが、研究はおおむね順調に進展しているといえる。
|
今後の研究の推進方策 |
当初の予定通り、考案したそれぞれのフレームに対して、外部的振る舞いの保存を保証する手法の確立とプロトタイプツールの実装および洗練に取り組む。特に、テストケースに基づく空間的フレームに関しては、自動テストにおける入出力検査により機械的に外部的振る舞いの保存を判断可能な仕組みを確立し、それをソフトウェア開発環境に組み込む。その際、ツールの使用性も考慮し、利用者が容易にフレームを設定および確認できるような支援手法を考案する。遅延可能リファクタリングに関しては、この概念に基づく手法が適用可能なリファクタリングの種類を増やすこと、さらには手法の一般化に取り組み、国際会議での発表を達成する。 また、本研究をさらに発展させるためには、プロトタイプツールの実装を通して得られた知見やプロトタイプツールを用いた実験の結果を、フレーム定義の再検討やその保証手法の再検討にフィードバックする必要がある。このため、実験結果の分析にも力を入れる。 平成29年度は、研究成果の公開をさらに進めるために、数多くの国際会議と国内会議に参加する。研究経費は主に、研究成果発表(論文掲載料、会議参加費、旅費)、および、研究協力者との研究打合わせの旅費に使用する。
|