研究課題
特別研究員奨励費
本年度は、プログラムスライシングを、ソフトウェアの部品間の相互作用を解析するという用途に絞っての拡張を行った。大規模ソフトウェアに対する保守作業であっても、開発者が調査するメソッドの数は限られることから、ソフトウェアの中で開発者が注目したメソッド群とそれ以外の個々のメソッドとの意味的な関連の強さを経験的な指標を用いて評価し、関連が強いと判定されたメソッドだけを解析の対象として自動的に選択する手法を実現した。ここで用いた経験的な指標は、個々のメソッドが参照するメソッド、変数の名称の集合の類似度である。この指標は、メソッド単位での局所的な解析によって計算可能であり、大規模ソフトウェアに対して適用可能である。適用実験を行った結果、提案手法が、開発者の目的に合致した重要なソフトウェア部品の相互作用に限定した情報を抽出できることを示した。上記の手法で得られた結果を開発者に提示する方法については、ブリティッシュコロンビア大学のGail Murphy教授との共同研究により、関心事グラフという抽象表現への自動変換を実現した。一般的なソフトウェアの設計図の記法であるUMLを拡張した形式で関心事グラフを可視化することにより、開発者にとっての理解容易性を達成した。また、複数のグラフ間での差分の抽出を実現し、異なる条件で得られた結果を比較することを可能とした。これらの研究と並行して、以前より継続的に開発している、ソフトウェアの実行時の動作を可視化するツールの改良を行った。具体的には、過去に提案した手法である、ソフトウェアの実行開始から終了までの実行系列を実行している機能ごとの実行系列に分割する手法の特性を分析した。この分析結果に従って手法の改良を行った結果、ツールの出力結果が人間による手動での分割結果と一致する確率が向上した。
すべて 2007 2006 2005
すべて 雑誌論文 (8件) 図書 (1件)
日本ソフトウェア科学会第9回プログラミングおよびプログラミング言語ワークショップ(PPL2007)論文集
ページ: 173-186
情報処理学会第69回全国大会講演論文集
コンピュータソフトウェア Vol.24(印刷中)
The 2nd Asian Workshop on Aspect-Oriented Software Development (AOAsia 2006)
電子情報通信学会技術研究報告(SS2005-38) Vo.105, No.229
ページ: 31-34
Proceedings of the 12th Asia-Pacific Software Engineering Conference(ASPEC 2005), Taipei, Taiwan, December 2005
ページ: 744-751
Proceedings of the 8th International Workshop on Principles of Software Evolution(IWPSE 2005), Lisbon, Portugal, September 2005
ページ: 148-151
電子情報通信学会論文誌D-I Vol.J88-D-I, No.12
ページ: 1810-1812