研究課題
本年度は、コードクローン分析および分析結果を用いたソフトウェア保守支援環境に関する多くの課題に対して取り組み、以下のような成果を得た。ソフトウェアのソースコードは近年大規模になってきており、また、実行時のパフォーマンスを稼ぐためにループを意図的に展開したコードクローンが作り込まれる場合があるなど、コードクローンの発生は避けられない問題となっている。そこで、コードクローン検出ツールCCFinderの出力結果を利用して、リファクタリングを目的としたコードクローンの分析を行うツールであるAriesを構築した。Ariesは対象となるプログラム言語の構文情報を利用することにより、プログラムとして意味のまとまりとなりうる部分のみを、検出したクローンから選び出すことが可能である。Ariesを用いることにより、検出したクローンに対して、種々のメトリクスを用いて分析することによって、既存のリファクタリングパターンのうち、どのパターンが適用可能であるかを自動的に判定することが可能となった。また、保守作業時における分析作業を支援するため、種々のメトリクスデータを用いて分析するツールGeminiを構築した。Geminiでは、コードクローンを対象とした種々のメトリクスをあらかじめ計算し、それをクローン散布図やメトリクスグラフとして表現する。これにより、視覚的にクローンの性質を容易に理解することが可能となった。また、Geminiを用いた分析手法について提案を行い、実例を通じてその有効性について検討を行うことによって、本ツールの有用性を確認した。
すべて 2005
すべて 雑誌論文 (5件)
The Proceedings of the 3rd Workshop of Software Quality, St.Louis, Missouri, USA, 2005.
ページ: 53-56
Proceedings of the 11th IEEE International Symposium on Software Metrics, 19-22 September 2005, Como Italy
ページ: 16-25
電子情報通信学会技術研究報告(SS2005-30) Vol.105, No.228
ページ: 37-42
組込みソフトウェアシンポジウム2005論文集(IPSJ Symposium Series) Vol.2005, No.12
ページ: 172-173
第5回クリティカルソフトウェアワークショップ(WOCS)予稿集
ページ: 211-218