«前の日記(2004-04-25) 最新 次の日記(2004-04-27)» 編集

netail.net

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

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


2004-04-26 古い日記からの変換データ [長年日記]

_ 論文

Thomas Reps and Genevieve Rosay:Precise Interprocedural Chopping.Proceedings of 3rd FSE, 1995.

Program Chopping というのは,プログラムスライシングの forward と backward を組み合わせて「ある文 s からある文 t までデータが到達する経路」となる.で,Jackson and Rollins がオリジナルを提案したのだが,彼らは intraprocedural なものしか考えていなかったので手続き間でも使えるように変更しました,というもの.

基本の考え方は,手続き内では依存関係を summary edge という形式で作成して,手続き間をcall,parameter in/out で接続したもの.

しかし,実験結果を見た限りでは,えらく時間がかかっている気がする.realizable path を探すために,メソッドの call/return の対応を取りながらグラフの traversal をする必要があるので,実はスライスよりも計算は難しいらしい.

単純にスライスで得られた頂点の積集合を取るだけだと「到達するかもしれない」集合が大きくなりすぎて駄目ということなのだろうか.

_ カウンタ

カウンタの集計結果を見られるようにしてみた.わりと偏りが出ていて怪しい.

_ 論文

Kim Mens, Bernard Poll, Sebastian Gonzalez:Using Intentional Source-Code Viewsto Aid Software Maintenance.Proceedings of ICSM 2003, pp.169-178.

"intentional source-code view" というのは開発者がある目的のためにソースコード中を抽出したもの.論理型言語を使って結果を抽出し,それに加えて incremental に例外要素の追加・削除を行う.

ケーススタディとして,コード自動生成した部分と手動部分の切り分けとか,コーディング基準が維持されているかどうかとか,実は AspectJ の declare warning などの活用でやっていることに近い気がする.

関連研究として一番近いものが Conceptual Module.論理型言語を使ってモジュールを抽出するという点で同じ.次に Concern Graph.ただし,粒度が違っていて,Conceptual Module は正規表現での行単位マッチに制約されていたりConcern Graph はエンティティ間の関係が限られているといった理由から,提案手法が一番使いやすい,と主張している.わりともっともらしい.ただ,論理型言語の性能は,使える述語次第という気もするが.

その他の関連研究としては,Aspect Browser,Subject-Oriented Programming,データベースにおけるビュー管理やGrundy らのソースコードビューに関する非一貫性の管理とかが挙げられている.

_ カウンタ

特に意味はないけれど日記にもカウンタを付けてみた.カウントされるのは私が一番多いかも.

_ Calendar

hyCalendar 0.7.3 リリース.今回のリリースはグループウェアなユーザの人からの要望で,特定の日を選んで,周期的な予定から除外できるようになった.

GUI のマイナーチェンジといえばそれまでなのでまだ 0.8 にはしていない.

次は TODO の優先度設定や順序変更で 0.7.4 にして,それから読み込み専用機能や,複数ファイルの取り扱い問題を扱うか…….だいぶ先送りされている.複数ファイルを扱えるようになるとグループウェアに近い運用ができて面白そうなのだけど.

長くなってる読む論文キュー(現在23本)と読書キュー(現在3冊)も早く片付けないといけない.

お名前:
E-mail:
右の画像に書かれている文字列を入力してください:
コメント: