netail.net
自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.
最近のお知らせ (古いものはこちら)
2002-11-21 古い日記からの変換データ ▲
2003-11-21 古い日記からの変換データ ▲
2005-11-21 ▲
_ [論文] プログラム変換を使ったスライシング ▲
M. P. Ward, H. Zedan, and T. Hardcastle:
Conditioned Semantic Slicing via Abstraction and Refinement in FermaT.
Proceedings of 9th European Conference on Software Maintenance and Reengineering (CSMR 2005), pp.178-187, March 2005.
スライス基点として選択された変数集合に影響を与える文以外を削除する.if-(cond)-then-else を ((cond and then) or (not cond and else)) に置き換えるとか,入力時に,いくつかの変数の値域を指定することでその値を簡約化するといった変換操作をして出力を決定している様子.
_ [論文] クラスのフィーチャ固有/インフラ担当の分類 ▲
Orla Greevy and Stephane Ducasse: Characterizing the Functional Roles of Classes and Methods by Analyzing Feature Traces.
Proceedings of 6th Workshop on Object-Oriented Reengineering 2005.
ユーザが起動できる操作(主に,GUIから実行する各メニューの操作など)ひとつひとつを feature と呼び,それぞれについて実行履歴を取った結果を feature traces と呼ぶ.
feature traces に登場するクラス群を分析したとき,1つのfeatureにしか登場しないものを single feature,複数に登場するものを group feature,半分以上のfeatureに登場するものを infrastructural と分類することで,クラス群を分類して理解しようとしている.
feature の集合が,プログラムの全機能を完全にカバーしなくても,feature location 的な使い方には十分だろう,と書いている.また,手法自体は単純なので,スケーラビリティは高そう.
fan-in analysis で呼び出し元が多いものをアスペクトにしよう,という発想の研究に似ている気がする.
また,著者の人のページにあるほかの文献の abstract とかを見てたら,Latent Semantic Indexing (LSI) を適用したとか,他にも色々分析して論文を書いてる様子.
2009-11-21 ▲
_ [近況] ASEから帰ってきました ▲
主目的はワークショップ開催だったんですが,ASEも全参加してから帰ってきました.
ASEは,形式手法またはツール系,というイメージがあったんですが,今年は,テストと欠陥検出が多かった気がします.2日目の基調講演の人が「Instrumentation-based Verification」という,完全な検証ではなく,モデルのある一定のカバレッジ範囲だけを検証するという方式を説明してました.モデル上でテストしてるだけとも言えなくはないですが,形式的検証よりも現実的なアプローチという印象はありました.
また,欠陥検出のほうは,ライブラリのメソッド呼び出し順序の誤りを検出しようというネタが,静的解析・動的解析それぞれの手法が採録されています.わりと長いこと研究されてるネタではありますが,Tao Xie とか Andreas Zeller のグループが着実に成果を積み重ねている気がします.
今回の収穫:動的解析において,あるオブジェクトの使用方法が "typical" であるかどうか,というのを調べるのに,1プログラムで発見した使用方法が,別のプログラムでも発見できるか,というのを調べている研究がありました.この評価方式は使えそうです.