Budget Amount *help |
¥2,300,000 (Direct Cost: ¥2,000,000、Indirect Cost: ¥300,000)
Fiscal Year 2014: ¥1,300,000 (Direct Cost: ¥1,000,000、Indirect Cost: ¥300,000)
Fiscal Year 2013: ¥1,000,000 (Direct Cost: ¥1,000,000)
|
Outline of Annual Research Achievements |
当該年度は研究実施計画の通り, 『大幅に修正が加えられたコードクローンの追跡手法』に関する研究を中心に行った. コードクローン(ソースコード中の重複箇所)の検出を行うツールは多数開発されているが, コピーアンドペースト等によってコードクローンが生成された後に一方のコード片に大きな修正が加えられた場合, それらのコード片間の類似度が下がり, コードクローンとして検出されなくなる. しかし, コードクローンとして検出されなくなった後も, コード片の一部に類似した処理が残っている可能性がある. そのような類似処理に不具合が存在し, 複数のコード片に修正が必要となった場合, コードクローン検出ツールを用いるだけでは対応は難しい. そこで本研究では, ソフトウェアの開発履歴を分析し, 複数のコード片がある時点でコードクローンとなっていた場合, そのコード片が最新のソースコードのどこに相当するのかを特定する. この研究を実現するためには, 過去の複数時点のソースコードに対してコードクローン検出を行う必要があるため, 高速なコードクローン検出手法が必要不可欠である. 昨年度より高速なコードクローン検出ツールの開発に取り組んできたが, 本年度はこれまでの成果を論文としてまとめ, 公表した. また, この研究の実現には, 個々のコード片がどのように変化してきたのかを開発履歴情報から取得する, コード片の追跡技法が必要である. 本年度はその手法の詳細を検討し, ツールとして実装した. さらに, 実装したツールを用いた評価を行い, 手法の有用性を確認した. そして, この手法と高速なコードクローン検出手法を用いることで, 大幅な修正が加えられたコードクローン追跡手法を実現した. 今後は学術論文誌への投稿などを通じて本研究の成果を公表する予定である.
|