« November 2007 | Main | February 2008 »

December 31, 2007

2007年を振り返る

毎年恒例の今年のまとめ。

1月〜2月 修論を見据えたテーマ選びに悩む。うだうだと何をするでもない日々を過ごしていたような。昨年から通い始めていた自動車教習所通いに精を出して2月に免許取得。半分現実逃避か。まあ免許は免許で必要だが[1]。
3月 ようやくテーマがそれなりに見えてくる。沖縄に旅行。
4月 M2に進学するも特に感慨もなし。SWoPPに申し込んでとりあえずそれに向けて頑張ることにする。
5月〜6月 SWoPPに向けた実装と論文書きなど。
8月 SWoPP 2007に参加[2]。さすがに1年前よりは内容的にまともな発表ができたと考えているが。
9月 修論中間abstract提出。EuroSys 2008を夢想するもさすがに無謀。
10月 IPDPSに出そうと頑張るもdeadline miss。1ヶ月後のCCGridに向けて仕切り直すことにする。
11月 CCGrid 2008に投稿。論文投稿したのを記念して中部・関西方面に旅行にでかける。中部国際空港・関西国際空港・神戸空港・大阪国際空港を一気にまわり、かつ新幹線N700系にも乗ってくるという超ヲタ旅行。オプショナルツアーは淡路島での野島断層見学。
12月 修論abstract提出。忘年会続きで飲みすぎ。なんかCCGridですべて終わった気がしていたが激しく気のせいで、修論大丈夫なんだろうか・・?というのが最近の心配事。

さて、来年は研究をもっと頑張らないとな、と去年書いたわけだが、まあ自分で振り返ってM1のときよりは頑張ったといってよいのではないかと思う。が、理想値に達しているかと問われればまだまだな気もする。来年は当然これ以上。

1年を終えてみて思うのは、とりあえずシュウカツしてみてもよかったかなぁということ。実際にエントリーしないにしても、説明会とか見学会みたいなのはもっと積極的に顔を出して企業が何をやってるのか、という感触くらいはつかんでもよかったのではないかと今更ながらに思っている(なぜか気が向いてH社にだけは行ってみたが)。

来年はとりあえず、自分の視野を自分で狭めないよう注意しつつ、目の前の研究をがんばるという年になるといいな。実は重要なものが目の前にあるときにはそれほど重要に見えなかったりもするので、なかなか難しい問題ではあると思うのだが。


[1] 実際のところ教習期限ぎりぎりだったため精を出していなかったら危なかった。
[2] (1/7追記) 最初間違えてSWoPP 2008と書いていたので修正。

| | Comments (0) | TrackBack (0)

December 13, 2007

旅人をつなぐ"マルスシステム"開発ストーリー

久々におもしろい本を読んだので紹介しておく。

旅人をつなぐ"マルスシステム"開発ストーリー

JRの予約発券システムの裏にあるマルス(MARS)システムの開発についてまとめた本。そもそも何でこんな本が読みたくなったかというと、Project Xがこのシステムを扱った回の再放送をたまたまヒストリーチャンネルで見たからだ。

さてこの本、前書きには「コンピュータの知識がほとんどない人を対象に〜」などと書かれているが、「情報処理技術者教育センター」というところが出してるだけあって、結構読み応えのある内容であった。例えばシステムの説明のところにハードウェアのブロックダイアグラムが書かれていたり、予想外の性能のボトルネックが露見したというくだりではバッファメモリ(キャッシュ)がマルチプロセッサに共有されていることによってシングルプロセッサ環境よりも容量ミスが起きやすくなるためである[1]といったことについて解説されていたりする。

プロジェクトXを見て気になっていた「三重発券事故」についてもかかれていて、それによると、三重発券の原因はマルスのバグではなく、
1. 係員Aが客の要求によってある予約をキャンセル
2. 直後別の係員Bが別の端末からその席に予約を入れる
3. 係員Aが念のため正しくキャンセルできたか現在の座席表をチェック
4. 係員Aがキャンセルしたと思っている席には既にBによる予約が入っているが、Aはそれを知らず、キャンセルが正しく実行できなかったと思い込む
5. 係員Aが再度キャンセル操作を実行
6. その後係員Cが空席となっているこの席に予約を入れる
という感じで生じたものらしい。プロジェクトXではさかんに「マルスによる二重発券のトラブル」という語のみが登場してその原因について一切触れられなかったために、これを読むまではrace conditionを正しく考慮できなかったバグじゃないの、程度に考えていた。もちろんこうしたヒューマンエラーを起きにくくすることまで含めて「システム」であると思うので、マルスのせいといっても広い意味では間違いではないと思うが。

これまでシステム開発というととにかく下請け・孫請け・ひ孫請けで自分では何もしない大手ITベンダ、というイメージがあっただけに、こういう夢のあるシステム開発の話は新鮮味があった。このシステム開発は1960年代から70年代にかけての話で、経済の構造もIT業界の構造も何もかもが現在とは違ったころの話であるという点も考える必要があるとは思いながらも、この本を読んで、システム開発というものに対する見方が少し変わったような気がする。

実はもう一冊、みどりの窓口を支える「マルス」の謎—世界最大の座席予約システムの誕生と進化という本も同時に買ったので、こちらも読んでみようと思う。

[1] よく理解できなかったのはこのボトルネックを解消するad-hocな案としてキャッシュのフラッシュ("バッファキャンセル"と呼ばれている)を専用に行うファームウェアを用意した、というくだり。バッファメモリの内容は今日のキャッシュと異なり完全にCPUが制御していたようなので、その制御をoffloadしたということだろうか?

| | Comments (2) | TrackBack (0)

« November 2007 | Main | February 2008 »