«前の日(03-22) 最新 次の日(03-24)» 追記

netail.net

自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.

最近のお知らせ (古いものはこちら)


2005-03-23 全国大会3日目

_ Workshop on Dynamic Analysis

ICSE併設ワークショップの Workshop on Dynamic Analysis は 11/21 で約50%の採択率だったみたい.以前,妙にクオリティが高い(単に好みに合致しているだけかも)論文が固まってた年があった気がしたが,やっぱりそれなりの採択率だったらしい.

_ [論文]デザインパターン上の役割とコードの対応認識によるリファクタリング支援

Jan Hannemann, Gail C. Murphy, Gregor Kiczales: Role-Based Refactoring of Crosscutting Concerns.

Proceedings of AOSD 2005, pp.135-146, Chicago, Illinois, March 2005.

デザインパターンなどの横断的関心事をアスペクトとして抽出する作業を支援するために,パターンの雛形情報を保持しておく.たとえばObserverパターンなら,SubjectとObserverという2つのクラスがいて,Observerを引数に取るattachメソッドとdetachメソッドを持つ,といった情報を保持しておく.で,開発者が部分的に,抽出したいデザインパターンやクラス名を与えることで,残りの部分をできるだけ自動で補完してデザインパターンの構成要素とコードの対応関係を作成して,実際のリファクタリング作業に移るというもの.

observerとlistener,addやattach,deleteやdetachなど,メソッド名やフィールド名からある程度推測するといった工夫も行っているよう.パターン上の要素と実際のコードの対応関係さえできれば,自動的なコード変換+影響波及解析での変更支援となるらしい.あらかじめ作りたいアスペクトの構造が分かっているのであれば,うまく使える可能性が高い手法のように見える.

_ [論文]既存ソフトウェアのアスペクトでの拡張

Li-Te Cheng, John Patterson, Steven L. Rohall, Susanne Hupfer, Steven Ross: Weaving a Social Fabric into Existing Software.

Proceedings of AOSD 2005, pp.147-158, Chicago, Illinois, March 2005.

既存アプリケーションにいかに影響を与えずに新しい機能を追加するかということで,AOPを使いましょうという話.既存のアドレス帳アプリケーションに,ユーザがオンライン状態かどうかを表示する機能を追加するという例が載っている.

あんまり特別な話には見えないのだが,レガシーアプリケーションに対するパッチのようなアスペクトの利用を行う場合の利点(対象コードを変えなくてよい,アプリケーションの動作フローに対して機能を付加できる)と弱点(正しいjoin pointsの選択が難しい場合や,アプリケーションの実装に不用意に依存してしまう場合がある)とを参照したい場合にこの論文が登場することになるのかも.


2006-03-23

_ AOSD4日目(本会議2日目)

ドイツの人で,steamloomというDynamic AspectサポートVM環境を作ってる人たちが,動的スライスをまじめに実装したツールデモをやっていた.見たかぎり,完成度はそれなりに高そう.

動的スライスを選んだ理由は,omniscient debugging という実行時情報を全部保存するアプローチで元々研究をしているためか,Dynamic Deploy ができるアスペクト指向プログラムの実行環境なので動的スライスでないと(たぶん)ちゃんとした結果が出せないためか,どちらが直接の動機なのかは不明.

あとで少し聞いてみたら,けっこう開発工数はかかっているらしい.

メモリと実行時間がたくさん必要(例題でもMB単位のメモリ,実行時間が3〜25倍必要)というのがネックなものの,まだデータ構造の最適化などはしてないから,もうちょっと良くなるかもしれないとは言っていた.

また,動くものがあるので,実際にどのようにスライスを使えば(どこを基点にするか,intersectionとかunionを使うか,など)問題解決に役立つか調べられるし,問題の解決のためにどの範囲を解析する必要があるか,とか分かればもっと軽くなるかもしれない.

ツールも公開するし論文も publish するよ,と言っていたので楽しみ.

今回のバンケットは,料理はビュッフェ式だったけど,手品ショーとか付いて豪華だった.UBCの人々とか,同じテーブルにいた合気道やってるドイツ人とかと知り合いになった.