netail.net
自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.
最近のお知らせ (古いものはこちら)
2005-06-02 [長年日記] ▲
_ [Java] XML操作 ▲
XMLファイルを手軽に読み書きする方法を探してたら,XML Data Binding Resourcesというページを発見.ざっと見た限りでは,XMLの好きな要素とJavaクラスのメソッドを任意に対応付けられるCastorがかなりよさそう.XMLの構造がまだ固まってない間でも,マッピングだけ変えたらクラス側が影響を受けないのが嬉しい.
_ [論文] 動的影響波及解析 ▲
Taweesup Apiwattanapong, Alessandro Orso, and Mary Jean Harrold: Efficient and Precise Dynamic Impact Analysis Using Execute-After Sequences.
Proceedings of International Conference of Software Engineering 2005, pp.432-441, May 2005.
輪講で紹介した論文.あるメソッドAが実行された後に実行された(returnで戻った先含む)メソッドすべてはAに影響を受ける,という基準での動的な影響波及解析の方法.各メソッドが最初に実行された時間と最後に実行された時間だけを覚えておくことで,低コストで解析を実現している.
シーケンス図上で影響を受けた部分を図示するといったデバッグ用途では使えそう.
しかし,影響波及と言われて想像する回帰テストの範囲の特定などには使えなさそう.テストしないと計測できないし,テストケースが揃わなかったら取りこぼしが起きる.影響波及解析という名前でなければあまり気にしないのかもしれないが.
_ [論文] クラスとアスペクトを1つにしたclasspects ▲
Hridesh Rajan, Kevin J. Sullivan: Classpects: Unifying Aspect- and Object-Oriented Language Design.
Proceedings of International Conference on Software Engineering 2005, pp.59-68.
クラスとアスペクトという別々のモジュール単位ではなく1個のモジュール単位に統一しようという意欲的だけれど怪しい論文.
ポイントカットに関連付けられるアドバイスをメソッドに限定しているので,クラスが通常のメソッドと,特定のJoin Pointsに反応するイベントハンドラを両方持った形になる.アドバイスの本体はメソッドとして実装されるので,オーバーライドなどは簡単に実現できる. アスペクト自体がインスタンスとして明確に管理されることになるので,アスペクトに貼りつく階層的なアスペクトは定義しやすそう.Java でのイベントリスナのような相互接続の仕組みが不要になるという利点もある.
そのかわり,クラスとアスペクトの区別がないので,new Logging(obj)
といったコンストラクタ呼び出し(=アドバイスの接続)がobj
の機能を変更するかもしれない,ということになるので,開発者の負担は上がりそうな気が.