netail.net
自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.
最近のお知らせ (古いものはこちら)
2003-06-30 古い日記からの変換データ ▲
_ AspectJ ▲
sorceforge.net で公開されている AspectJ を使ったプログラムだが,
http://sourceforge.net/projects/barter/はポリシー記述などから AspectJ プログラムを生成するコードジェネレータっぽい様子なので役に立たず.
http://sourceforge.net/projects/cricketcage/のほうも,テストケース生成とかがメインで,AspectJ を実装に有効に使っている様子はなかった.
結局,Roberto E. Lopez-Herrejon and Don Batory:"Using AspectJ to Implement Product-Lines: A Case Study"という論文で使われていた AspectJ のコードが一番有望そう.規模としては約2000行.グラフオブジェクト+グラフの特性アスペクトという構成をしている,面白い実装ではある.全部が全部アスペクトとして実装されてるあたりが怪しくはあるが…….http://www.cs.utexas.edu/users/rlopez/Publications.html
2004-06-30 古い日記からの変換データ ▲
_ [論文]欠陥の原因として疑わしい文の可視化 ▲
James A. Jones , Mary Jean Harrold, John Stasko:Visualization of Test Information to Assist Fault Localization.Proceedings of ICSE 2002,pp.467-477, Orlando, Florida, May 2002.
ICSE2004 の Doctoral Paper で出ていたもの の Full paper バージョン.2年前のものだが,内容としてはこちらのほうが充実している.
ある文 s について,その文が実行された回数が多いほど色を明るくし,そのうち失敗したテストケースが多いほど色を赤くしてソースコードのビューを作る.
で,結果としては,テストケースを準備することで,疑わしいレベルが高いものにバグが含まれていたらしい.
たまに,バグがあるけれど緑色(安全)な方向に振られていたものもあったようなので,そう簡単に実用というわけにはいかないかもしれないが.プログラムスライシングなどと組み合わせて,バグがないのに赤色に振られたものをチェックするとか,future work に色々書いている.
パスしたテストケースで実行された文の集合 P と失敗したテストケースで実行された文の集合 F で,F⊃P である(Pに含まれずFに含まれる文が1つ以上ある)ことが前提条件になる.また,実験結果ではだいたい1〜2割程度の文に絞っていたが,プログラムスライスの場合と同様,その結果が十分小さいと言えるのかどうかについては不明.