研究課題/領域番号 |
24500050
|
研究機関 | 立命館大学 |
研究代表者 |
丸山 勝久 立命館大学, 情報理工学部, 教授 (30330012)
|
研究分担者 |
大森 隆行 立命館大学, 情報理工学部, 助教 (90532903)
|
研究期間 (年度) |
2012-04-01 – 2016-03-31
|
キーワード | プログラム変更支援 / ソフトウェア保守と進化 / ソフトウェア開発環境 / プログラム理解 |
研究実績の概要 |
本研究では、開発者や保守者が過去に行ったプログラムのソースコードの編集操作をすべて記録し、その編集操作履歴から将来のプログラム保守に役立つ情報を抽出する手法を確立する。平成26年度は、主に3つの研究を実施した。 1. 現在記録している編集操作は、開発者が過去のソースコード変更を理解するためには細かすぎる。そこで、編集操作からソースコードの変化を検出した上で、それらの変化を集約するアルゴリズムを提案した。これにより、開発者は断片化されたコード変更ではなく、より抽象度の高いプログラム変更が把握しやすくなる。評価実験を行うことで、自動的に検出したプログラム変更が、実際に開発者が実施したタスクとどの程度一致するのかを示した。結果として、編集操作間の時間間隔に基づく集約が比較的有効であること分かった。 2. 平成25年度から継続して、編集履歴のスライシング手法とその活用を検討した。さらに、スライシングを自動で行うツールの改良を行い、実際の開発において記録した編集履歴からスライスを抽出する実験を行った。抽出したスライスを分析した結果、開発者が特定のプログラム要素を理解する際に、調査すべき空間を削減できることを確認した。 3. 編集操作の依存関係を再検討した。具体的には、複数の開発者が行った編集操作を細粒度で合成できるように、従来から提案している編集操作グラフの節点の粒度をクラスメンバから編集操作に変更し、それらの間の依存関係を検出するアルゴリズムを考案および実装した。依存関係をたどることで編集操作のさまざまなスライスを抽出することが可能となった。これにより、編集操作を部分的に自動集約できる可能性を示すことに成功した。
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
交付申請書によると、平成26年度には編集操作を活用したプログラム変更支援ツールプラットフォームの構築とプログラム変更支援ツールの開発である。編集操作を記録するツールの全面的改訂を行い、現在ソースコードの公開に向けて準備を進めている。 プログラム変更支援ツールとしては、研究実績の概要の(1)に示した、プログラム変更の理解支援ツールにおけるツールを構築し、それを用いて評価実験を行った。この研究成果を情報処理学会論文誌に投稿し採録された。また、連携研究者との共同作業により、編集操作をリファクタリングする変更支援ツールを開発し、その成果をSANER2015で発表した。 クラウド環境を利用した変更操作の収集に関しては概念の提案だけで、まだ実装が完了してしないものの、ツールプラットフォームの構築とプログラム変更支援ツールの開発に成功しており、当初の目的はおおむね達成している。また、研究成果の発表も順調に実施した。以上より、研究はおおむね順調に進展しているといえる。
|
今後の研究の推進方策 |
開発したツールプラットフォームやツールに関するソースコードを公開し、新たな変更支援ツールの構築に努める。さらに、研究実績の概要の(2)に示した研究成果を論文にまとめる。現在、実験データの分析を行っており、平成27年前半での論文投稿を目指す。
|
次年度使用額が生じた理由 |
編集操作スライシングツールの改良を行い、そのツールを用いて評価実験を行った。その際、編集操作履歴データの一部に欠損があることが判明し、データの補正が必要になった。そのため、投稿を予定していた論文原稿の作成を一旦休止し、履歴データの補正と評価実験のやり直しを行うように計画を変更した。計画の変更により、評価実験の成果を発表するための出張旅費と原稿掲載料に関して未使用額が発生した。
|
次年度使用額の使用計画 |
評価実験が完了し次第、その成果を会議で発表する。同時に、論文原稿を完成させ投稿する。未使用額は成果発表のための出張旅費と論文掲載料に充てる。
|