netail.net
自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.
最近のお知らせ (古いものはこちら)
2005-10-05 [長年日記] ▲
_ [ツール] Tortoise SVN のセットアップ ▲
前のPCで使っていて,しばらくツール開発から離れていたので,いまさらながらインストール.前のPCでローカルに作ってたリポジトリを持ってきたら,subversion と bdb のバージョンが合わない(?)といったエラーが出てきた.
cygwin の subversion などもかなり古かった(今はもう1.2.3が出ているのに1.1系だった)ので,一回リポジトリを再構築してみた.
svnadmin dump Subversion/ > dumpfile.txt # 情報のエクスポート Subversion/ ディレクトリを移動 cygwin の subversion をアップグレード TortoiseSVN から新しいリポジトリ作成 (このとき,ついでに bdb をやめて fsfs にした) svnadmin load Subversion/ < dumpfile.txt
_ [論文] アスペクトが与える影響をどう表示するか問題 ▲
Wesley Coelho, Gail C. Murphy: ActiveAspect: Presenting Crosscutting Structure.
Proceedings of Workshop on Modeling and Analysis of Concerns in Software (MACS 2005).
AJDTのツリービューとかでは横断的関心事の構造は見づらいし,Composition patterns (下の論文)の記法ではアスペクトが実際にどこに接続されているかが分からないので困る.ということで新しくビューアを作りたい,というショートペーパー.
基本的にはアスペクトが貼りついている先(callポイントカットならメソッドの呼び出し側と呼び出し先のクラス)と,その継承階層,アスペクトが直接参照しているクラス,ぐらいを関係図として示す.また,対象の数が多いときはパッケージ単位などでクラス表示をまとめる,といったアイディアも示している.
グラフ表現だといかに要素数が増えるのを防ぐか,という問題がメインなのかも.
_ [論文] UML的表現でアスペクトを書く ▲
S. Clarke and R. J. Walker: Composition patterns: An approach to designing reusable aspects.
Proceedings of International Conference on Software Engineering 2001 (ICSE 2001), pp.5-14, 2001.
昔読んだはずなのにメモに入ってなかったので読み直し.
横断的関心事について図で記述するために,クラス図とシーケンス図を使って,横断的関心事のテンプレートを書こうというもの.ステレオタイプ「subject」としてアスペクトの名前を書き,包含する要素としてそのアスペクトに参加するクラス(そのクラスが持つメンバーのリスト)と,そのクラス群が起こす動作のシーケンス図を記述する.
クラス図側が,クラスがどのようなメンバーを持っているべきかという制約の記述とインタータイプ宣言を担当し,シーケンス図側が,そのメンバーの振舞い(pointcutとアドバイスの動き方)を指定する.
この状態で,アスペクトの中の各クラスやメンバー名に,実際にどのクラスやメソッドが該当するかを bind する.
アスペクトを,結合対象のクラスから分離して記述するのは,接続対象が多いロギングなどのアスペクトについては有効だと思われる.ただ,bind 結果の具体例くらいは一緒に書き添えないと理解が難しいかもしれない.