«前7日分 最新 次7日分» 追記

netail.net

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

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


2005-06-21 [長年日記]

_ Musical Baton

遅くなりましたが書いておきます.

●Total volume of music files on my computer (コンピュータに入ってる音楽ファイルの容量)

6GBくらい.

●Song playing right now (今聞いている曲)

最近は,ニュース系のラジオを流しておくことが多いような.

●The last CD I bought (最後に買った CD)

さくら "Cherry-A-La-Mode −ここにいるよ−".

●Five songs(tunes) I listen to a lot, or that mean a lot to me (よく聞く、または特別な思い入れのある 5 曲)

  • The Beatles "Yellow Submarine".
  • NAMCO "さいごにサンバ".塊魂エンディングその1.
  • 岡本真夜 "Forever".
  • 丹下桜 "Little Wing".当時ドラゴンマガジンとの連動企画(?)だったラジオ "ドラゴン探偵局" の縁.
  • Falcom Sound Team JDK "誰かがあなたを愛してる".日本ファルコムのアクションRPG「ぽっぷるメイル」のエンディングテーマ.

●Five people to whom I'm passing the baton (バトンを渡す 5 名)

とりあえず挙げてしまうので,もしこれに気づいて,お暇があったら書いてみてください.

そのほかの系統(RPG研関連とか)では,ダイレクトに渡して大丈夫そうな人には既に他のルートで回っているようなのでとりあえず止めときます.


2005-06-20 [長年日記]

_ Musical Baton

こっそり回されていたようなので,明日か明後日には書きます.

_ [hyCalendar] ぼちぼち実装中.

1.1.2 向けの修正事項をいくぶんか消化.オプション画面にさらにタブが1個増えてしまった.そろそろオプション画面も整理が必要.

_ Python Challenge つづき

Level 19 まで来て詰まった.データは作れたのに,音声の意味が分からない.


2005-06-17 [長年日記]

_ [授業] ゼミA

コードレビューを,コード読んで悪いところを直す反省会のようなものだというように説明した人がいて,ちょっと新鮮な印象を受けた(コード品質の向上が主目的としても,教育効果はある?).

アンチパターンでは,コードを書くとか読むという話はプログラミング演習などの影響もあって理解しやすく,わりと活発に話が進む.しかし,どんな技術を開発に採用するかとかいった話は,さすがに実感が湧かない様子で,解説もなかなか難しい.

_ ソフトウェア・アーキテクチャ

アーキテクチャと言われて,特定ソフトウェアの構造を指す場合と,一般的なソフトウェアで取るべき構造(どのような構成要素を使うかといったメタモデル)とがごっちゃになっている気がする.

定義らしきものがあるのかと思って検索してみたら,ソフトウェア・アーキテクチャをみんながどう定義しているかまとめたサイト(英語)を発見.基本的には,ソフトウェアの構成要素と,それらの間の関係を定義したものであると考えてよさそう.

_ [ゲーム] ファミコン

スターソルジャーを遊んでみたら,16面を初めてクリア.ちょっと感動.


2005-06-16 [長年日記]

_ [hyCalendar] 基本のウィンドウサイズ

hyCalendar は初回起動時,デフォルトのウィンドウサイズが小さかったせいで,予定を入力しても表示されないんですけど……という質問をいただきました.

次リリースまでに忘れなければ,画面サイズに合わせてもうちょっと良いサイズで出るようにしてみます.いちおう XGA 推奨ということで.

_ [ツール] Python Imaging Library + Cygwin

Python Challenge 用に,Cygwin 上の Python 2.4 で Imaging Library をセットアップしようとしたら,謎のエラー(dll ロード時に gcc が死んだようなメッセージ)が出てしまった.うーむ.

ちょっと検索したくらいでは解決できそうになかったので,素直に Python の Windows インストーラ付きバイナリを使って,Imaging のほうもインストーラ付きを使うことに.

_ [論文] シーケンス図生成向け,静的解析でのインスタンスの区別

Atanas Rountev, Beth Harkness Connell: Object Naming Analysis for Reverse-Engineered Sequence Diagrams.

Proceedings of International Conference on Software Engineering 2005, St. Louis, Missouri, May 2005.

輪講で紹介された論文.

ある1つのメソッドに注目したシーケンス図を静的解析から作るとき,引数や this として渡されたオブジェクトを,定数伝播の手法を使って各参照変数に伝播させ,同じオブジェクトを参照している部分だけ見つけようというもの.スタート地点を決めて処理を行うので,エイリアスグラフを使った解析より簡単?

1つのオブジェクトが多数のインスタンス変数にコピーされるような状況がそうそうあるとは思えないが,手続き間で,引数として参照を渡していく場合には有効そう.


2005-06-15 [長年日記]

_ Update

月例 Windows Update で,ここしばらく電源すら入れてないPCを久々に立ち上げ.きっと次の Window Update まで使わないんだろうなー.

_ ESEC/FSE,IWPSE

Call for Participation が来ていたのでESEC/FSE 2005のサイトを見てみたら,Registration が open したようです.Early Registration は 7月29日まで.


2005-06-14 [長年日記]

_ [読書] C++ in 2005

Stroustrup: The Design and Evolution of C++のページに置いてあるC++ in 2005(Added to Japanese translation of D&E) を読んでみた.STLが作られたときの話や,Embedded C++のようなsubset規格に対する態度や,C++の標準に取り込みたいと考えているフィーチャーなどの話が書いてあって,けっこう面白かった.本を買う気は別に起きなかったけど.

_ [論文]実行履歴のベクトル類似度に基づくフェイズ認識

Steven P. Reiss: Dynamic Detection and Visualization of Software Phases.

Proceedings of Workshop on Dynamic Analysis (WODA 2005), St. Louis, MO, USA, May 2005.

ソフトウェアはいくつかのフェイズによって構成されているので,それをプログラム実行中に認識しようという試み.10ミリ秒を1コマとして,各クラスごとに何回メソッドが呼ばれているかでベクトルを作っておいて,過去何コマぶんかを取り出してきて和を取り,絶対値が1になるように正規化してベクトルを作成する.

パラメータを経験的に決定して,実際のプログラムで見つかった6つのフェイズが,それぞれどのような処理だったかを説明している.時間枠で区切られるので,入力待ちなどがフェイズとして出てくるものの,CPU負荷などに応じて検出されるフェイズが変わってしまうのではないかという恐れもある.そのあたりはちょっと怪しい.


2005-06-13 [長年日記]

_ [work] 論文集めとか

ワークショップの存在ごと忘れていた IWPC の論文いくつかをリストに追加した.アサーションまわりの論文については一通り読み終えた気がする.PPL2005発表内容のうち,新規性のある部分というのは限定されたので,原稿の構成なんかは見直す必要がありそう.

_ [論文] コンポーネントに対するアサーション検査

G. T. Heineman: Integrating Interface Assertion Checkers into Component Models.

Proceedings of Sixth International Component-Based Software Engineering (CBSE) Workshop, Portland, Oregon, May 2003.

ラッパーオブジェクトなどでのアサーション検査では,コンポーネント内部のメソッド呼び出し(protected とか private メンバー)に対してアサーションの検査ができないので,active interface という AspectJ の before/after + call pointcut のような仕組みを使って表明の検査を行おうと主張している.こういう仕組みを使うと,コンポーネント local の性質とアプリケーション定義の global な性質とを両方取り扱える,と述べている.

_ [論文] 時相論理で記述した表明のチェック

Tanton H. Gibbs and Brian A. Malloy: Weaving Aspects into C++ Applications for Validation of Temporal Invariants.

Prooceedings of Conference on Software Maintenance and Reverse Engineering (CSMR 2003), Benevento, Italy, March 2003.

Edward B. Duffy, J. Paul Gibson, Brian A. Malloy: Applying the Decorator Pattern for Profiling Object-Oriented Software.

Proceedings of International Workshop on Program Comprehension (IWPC 2003), Portland, Oregon, May 2003.

時相論理で書いたアサーションを,アスペクトあるいは Decorator パターンを適用するプログラム変換で検証しましたという同じような論文.色々なプログラムに対するテストケースを実行して,パフォーマンスの効率を評価している.また,traditional なアサーションでは発見できないエラーが発見できたことを述べている.前者の論文のほうが,temporal invariants の説明が丁寧だった.

表明の表現力としては,enventually (注目しているクラスのインスタンスが破壊されるときまでに成立すればよい条件)が使えることが大きいと言えそう.