netail.net
自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.
最近のお知らせ (古いものはこちら)
2004-03-19 古い日記からの変換データ [長年日記] ▲
_ ミーティング ▲
企業の人とミーティング.上流工程の人々なので,着眼点が面白い.
UML などの図とソースとの対応とか,工数見積もりとか,色々考えることは多いらしい.
将来的に,食べていくなら上流工程……のはずなので#研究職だったら別だけどこのあたり,色々学んでおきたい.
_ SIGSE ▲
IPSJ-SIGSE-144 の学生研究賞は松川文一ほか: ユースケースポイント計測支援ツールの実装とその適用.となった.
研究賞になりそうな「このあたりいいかな?」と思ったいくつかチェックを付けてた他の論文と見比べると,仕様書に自然言語処理を適用しているあたりの実現上の工夫と実際の結果が伴っているあたり,面白みがあって妥当という気がする.
#受賞した当の本人は,私が取るかも,と思っていたようだけど#私のは,どちらかというと Position Paper で,#いくら面白くても,"研究賞" というには#まだ研究途中という気がしてたので,一安心(?)
_ SIGSE ▲
一通り学生セッション終了.聞いた限りで面白いかな?と思ったのは:
木梨 充高ほか(茨城大),デザインパターン利用促進のためのモデリング支援開発ツール.
自然言語の仕様書からデザインパターンの手がかりになるような語を探して見せる,というもの.
全文検索と組み合わせるのとはどう違うか,というのもあるけれど,いわゆるドメインの言葉と,デザインパターン上の言葉の対応(ディレクトリ==階層構造のオブジェクトといったような)などはドメイン知識がないといけないので全文検索では無理なところがある,ということになるらしい.今後の展開が楽しみ.
もう1つは,新原敦介ほか(東工大),ゴール指向要求分析を用いたステークホルダの対立の検出.
各人の満足度を数値化して,行列として並べたときに同じ列上に+値と?値(満足と不満)があったら対立,とかいう形で対立を検出しようというもの.実験結果を聞いた限りでは,ゴールの誤解や思い込みなどが要求分析に影響を与える様子が分かって面白かった.
2004-03-17 古い日記からの変換データ [長年日記] ▲
_ 論文 ▲
SPLAT2004 残り2本.
Istvan Nagy, Lodewijk Bergmans, Mehmet Aksit:Declarative Aspect Composition.特定の join point に複数のアスペクトがくっつくとき,往々にして「アスペクトAの後に,アスペクトBは動く」とか「アスペクトAが動かないときだけアスペクトBが動く」といった関係が生じることがある.このような関係を,宣言的に記述することであとは言語処理系が勝手に処理しようというもの.Aが動く,動かないというのを boolean メソッドで判定するあたりいい加減なようで,わりと実用的かも.
_ 論文 ▲
Thomas Cottenier, TzillaLinguistic provisions for Aspect/Core semantic interactions.
Aspect と Core(ベースモジュール)の間を橋渡しするような何か(invariants とか)がないと,現在のような Syntax-based で記述する joinpoints になってしまって,Syntax-based ではクラスの改変にあわせて join points も変わってしまうのでうれしくない.
"Semantic" な記述ができるとうれしい,といいたいのだろうが,何をもって semantic と言っているのか分からないので,現状ではなんともいえない.
_ 論文 ▲
splat2004 つづき.
Bert Lagaisse, Wouter Joosen, Bart De Win:Managing semantic interference with aspect integration contracts.
アスペクトはコンポーネントに対して何を要求するか,コンポーネントはアスペクトに対して何を許すか,を記述することでアスペクトが不用意にコンポーネントの状態を破壊したりしないようにするという話.
Kasper B. Graversen:Role collaborations.
コラボレーションごとに,役割(Role)が用意されていて,コラボレーションのインスタンスごとに,その役割にオブジェクトを関連付けることでインタラクションをしようというもの.なんか昔考えた(けれど効果が疑わしいので捨てた)アイディアに近い.
Pengcheng Wu and Mitchell Wand:An Empirical Study of the Demeter System.
いわゆる Adaptive Programming を実際に使って,オブジェクトの Traverse 関連のコードがどれだけ減ったか,という論文.実際に Traverse 処理というのはプログラム中にけっこうあるらしく,結果としては,かなり効果があった,らしい.
Tom Tourwe and Andy Kellens:Inductively Generated Pointcuts to Support Refactoring to Aspects.
プログラム構造が改変されたら pointcut 定義も変更しなければならないので,アスペクトと Refactoring との相性の悪さが問題となっている.プログラムの情報を使って帰納的に pointcut を簡潔な形式に変換してやろう,というもの.ただ,自動生成が本当に正しいかどうか,とかを調べるのが難しいので,必ずしもうまくいっているわけではないよう.
_ 論文 ▲
SPLAT2004 ワークショップ参加前準備として論文読み.
Erik Ernst:Simple, eh?言語の単純さというのはどういう意味があるのか,というワークショップのテーマ的な論文.言語のコンセプト・文法の単純さがcomprehensibilityには重要.また,predictabilityは,「何が起きるか」という意味では言語がハードウェアに近いほど簡単となるが,それは情報隠蔽の性質でもある."semantic interactions"は,変数への代入文がその後のプログラム実行に影響を与えるような状態(依存関係の影響)をあらわしている言葉のつもりだったらしい.
_ 論文 ▲
Jonathan Aldrich:Open Modules: Reconciling Extensibility and Information Hiding.Proceedings of SPLAT 2004 in conjunction with AOSD 2004, March (2004).
アスペクトが追加できる範囲を・モジュールインタフェースとして宣言されたメソッドへの外部からの呼び出し・モジュールインタフェースとして宣言された pointcutに抑えることで,カプセル化を守ろうという提案.
_ 論文 ▲
Gustav Bostrom:A case study on estimating the software engineering properties of implementing Database Encryption as an aspect.
データの暗号化をアスペクトを使ってやってみた,という話.ところが,SQL の LIKE 文による部分文字列のマッチが,暗号化に対応できなくて困ったらしい.Comprehensibility と Evolvability は下がったが,ツールサポートが大きく影響を与えたらしい.また,Evolvability については,インタフェースが安定している(pointcut 定義が変わらない)ことが強く影響するみたい.