kur.jp

バイオリンと自転車をこよなく愛するkurのチラシの裏。たまには技術的なことを書いたりするかも知れません。

未踏開発成果報告 ~5.EM開発~

BBMの開発やESPer2008等を経て,EMで実現するべきものが見えてきました.

実際に開発を開始してから最初の目標は「BBMとして,とりあえず動くものをつくろう」ということでした.やっぱり,動くものがないと,今後の開発方針も考えにくいです.

というわけでBBMの開発を行いました.BBM開発中の9月にはESPer2008という未踏界隈の人が集まるイベントがありましたのでライトニングトークで参加させて頂きました.

以下,それぞれについて書いていきます.

EM開発

EMとはEngineering Modelの略です.

BBMで私が問題と感じた点は以下の通り.

  1. ユーザが閲覧しているWebページの情報を片っ端から収集してサーバに送信しているため,ブラウザにかかる負荷が高い.
  2. Webサイト閲覧中のユーザ行動を可視化すると言いながら,再生してるだけ.

1については,Webページの情報を収集する際のブラウザ負荷を小さくする事を目的として,ツリー構造とハッシュを用いた高速なXML差分検出アルゴリズムを考案し,実装しました.これについてはNAISTの某教授からも大絶賛して頂きました.実際,論文とか検索しても,XMLの差分検出アルゴリズムって,あんまり良いのがないんですよね.まぁ,私が検索した範囲内なんて,たかが知れてると言われてしまえばそれまでなんですが.

2については,ユーザの行動を統計的に処理して,様々な情報の提示を行う機能を実装しました.機能実装と言っても,既にユーザの行動情報データはサーバに蓄積される仕組みになっていましたので,これを利用すれば良いことになります.

で,これらの機能を実装することと,他の大小の気になる点を修正するためにリファクタリングでは手に負えないと判断したため,BBMを参考にしながらEMをフルスクラッチで実装しました.おかげで,ソースコードがだいぶすっきりしましたし,今後の機能拡張などもやりやすくなったので,結果的によかったと思います.

グループウェアとネットワークサービス研究会

こちらのエントリこちらのエントリでも触れましたが,11月中旬に行われたグループウェアとネットワークサービス研究会でWebjigの発表を行いました.

他の方の発表が面白かったと言うことももちろんですが,研究者が集まる場ということで,Webjigに対するアカデミックな視点からの意見を頂けたりということも大きな収穫です.また,ベストペーパー賞を頂けたと言うことも,とても嬉しく思っています.

中間報告会

こちらのエントリでも触れましたが,中間報告会は福井高専で行われました.

中間報告会では,開発中のソフトウェアを,このままの方向で開発を続けても大丈夫か?等と言った点を確認するためのもの(だと思っています)ので,現在の進捗状況と,今後の予定を中心にプレゼンで説明しました.

キックオフミーティングからの懸念事項については若干突っ込まれまして,今後どうするかが課題となってしまいましたが,大きな軌道修正要求もなく,今後の開発のモチベーションとなりました.