Instant Cafe: 手軽な議論用グループエディタ
原 謙治*

五十嵐 健夫**

東京大学大学院情報理工学系研究科* **{hara2001,takeo}@ui.is.s.u-tokyo.ac.jp

1. はじめにテレビ電話等が用いられている.

従来 WWW 上において複数人で議論を行う場合,ここで同窓会の日程を決めるといったような,ML(Mailing List), Wiki[1], 掲示板, IM(Instant

複数人で情報を提供し議論をして, なるべく都合Messaging), テレビ電話等が用いられているが,の良い日程を決めるといった用途を考えると 1)手グループエディタの利用が効果的である場合もあ軽に扱えること, 2)リアルタイム・コミュニケーシると考えられる.

ョンができること, 3) 協調編集可能で後に参照可

しかし, グループエディタを利用するには各ユ

能な(日程候補, 参加状況等の)ドキュメントが扱えーザがグループエディタを利用可能な環境を構築ること が必要であると考えられる. 第 1 の点につしなければならず, 一時的な用途のために気軽にいてはテレビ電話以外の全てのツールが, 第２の利用できるとは言い難い.

点は IM とテレビ電話が満たすと考えられるが, 第そこで我々は手軽に利用可能な議論用グループ

3 の点は満たすツールがなく Wiki 等で代用するこエ デ ィ タ Instant Cafe を 開 発 し た . ユ ー ザ はとが多いと考えられる. しかし, Wiki を用いて複instantcafe.org の任意のサブドメインへアクセス

数人で同時に編集すると更新の衝突が起きてしまし、ドキュメント ID を指定して協調編集ドキュメうため議論が混乱してしまうおそれがある.

ントを作成することができる. ここで作成された協調編集のためのツールとしてはグループエデ

ドキュメントは各ユーザが部分毎にロックして編ィタが挙げられるが, グループエディタを利用す集することができ, チャット機能を利用してリアるには各ユーザがグループエディタを利用可能なルタイムに議論を行うこともできる.

環境を構築しなければならず, 一時的な用途のために気軽に利用できるとは言い難い.
一方, ブラウザから利用可能なグループエディ編集エリア

タとしては REDUCE[2]が挙げられる. REDUCEにおいて協調編集用ドキュメントを作成するには
1)ログイン, 2)フォルダを選択あるいは作成, 3)ドキュメント名を指定して作成, 4)パーミッションのドキュメント内容指定 という手続きをする必要があり手軽に作成できるとは言い難い. また, REDUCE では唯一のテキストエリア内のドキュメントを複数人で同時に自由に編集可能なため 1)他人の編集の影響を受
チャットエリア

図 1 Instant Cafe クライアントの外観

2. 関連研究
インターネット上において多人数で議論を行う
場合, 様々な用途に応じて ML, Wiki, 掲示板, IM,Instant Group Editing with Instant Cafe
Kenji Hara, Takeo Igarashi
Graduate School of Information Science andTechnology, Tokyo Univ.

けて自分のカーソル位置が動く, 2) ユーザの編集している範囲・編集しようとしている範囲を他のユーザに編集される, といったことが起こり混乱を招く場合があるという問題が存在する.

3. インタフェース
Instant Cafe の特徴は 1)手軽なドキュメント作成, 2) ロックベースのドキュメント編集, 3)リアルタイムな議論のためのチャット機能の 3 点である.
以下ではそれらの特徴を順に説明し, さらに外部

機能としてのメール機能, Wiki 機能についても説明を加える.

4. 実装
Instant Cafe は Perl で実装された Web アプリケーション, Web アプリケーションとサーバの通信

3.1. ドキュメントの作成
Instant Cafe における協調編集ドキュメントの作成は 1)Instant Cafe サイトの作成, 2) 協調編集のための Docinfo XML 文書, Java で実装されたサーバ, Flash で実装されたクライアントで構成される.

ドキュメントの作成 の２つのステップに分けら

Web アプリケーションは Web 上でのドキュメンれる. 第 1 のステップは(任意のサブドメイン).

トの読み込み, 書き込み機能を提供し, サーバはinstantcafe.org にアクセスすることで行い, 第 2Docinfo XML 文書の内容に従って Web アプリケーのステップはドキュメント ID を指定してフォームションに対して読み込み・書き込み操作を行う.

から送信することで行う.

サーバが読み込む Docinfo XML 文書の URL は接続されたクライアントから送信され, 同じ URL

3.2. ドキュメントの閲覧・編集を指定したクライアント同士を同じドキュメント作成された協調編集ドキュメントの閲覧・編集を参照するグループとして扱い, サーバは主にテは Flash で実装された Instant Cafe クライアント

キスト送信・ロック・コミット・ブロードキャスから行う. ドキュメントの編集方法には 1)ドキュト機能を提供する. なお, サーバとクライアントメントの一部分を選択してロックし, 編集して更の通信は XML を用いて行われる.

新する方法, 2)ドキュメントの末尾に新たなテキス

クライアントは Docinfo XML 文書の URL の他トを付加する方法 の 2 つがある. 第 1 の方法におにユーザのロック・コミット操作情報をサーバにいてロックの取得はテキストの範囲選択の後ロッ送信し, ドキュメント・データ, ロック・データ等

クボタンを押すことで行う. ロックが取得できれを受信する. チャット機能はサーバのブロードキばその範囲のテキストが編集用テキストエリアにャスト機能を利用しており, 同時に接続している

コピーされ, ロックした範囲が下線付きの赤色でクライアントへメッセージをブロードキャストす表示される. なお, 他ユーザがロックしている範るという形で実現している.

囲は下線付きの青色で表示される. また, ドキュ
メントの更新はコミットボタンを押すことで行わ

5. 議論

れ, ロックの解放はリリースボタンを押すことで本手法ではロックをベースとした編集方法を提行われる. また, テキスト付加操作はロックを取供したが, CVS(Concurrent Versions System)のよ得せずに行うことができる.

うにマージを利用した編集方法も考えられる. しかし, マージを利用した場合は更新が衝突した時

3.3. チャットに手動で修正する必要があり, 議論のテンション

Instant Cafe におけるチャット機能はユーザがが下がってしまうおそれがあると考えられる. ロ

スムーズに利用できるように一般的な IM のインックを利用すれば項目毎に編集者が定まりスムー

タフェースを参考に設計されている.

ズな議論が行いやすいと考え, Instant Cafe ではロックを取得するという方法を採用した.

3.4. 外部機能
Instant Cafe から独立した外部機能として[ドキ参考文献[1]B.

LeufandW.

Cunningham.

TheWikiway.

ュメント名]@[ドメイン名]というアドレス宛のメ

Addison-Wesley Longman, March 2001.

ールを受け取り, メール本文をドキュメントに書[2] C. Sun, X. Jia, Y. Zhang, Y. Yang. REDUCE: a prototypical

き加えるメールサーバ(icmail)や, ドキュメント本

cooperative editing system, Proceedings of the 7th International

文を整形して表示する Web アプリケーション

Conference on Human-Computer Interaction , pp. 89-92, San(ICWiki)も利用可能である. ICWiki は更新の衝突

Francisco, USA, Aug. 24-30, 1997.のない Wiki として利用できる.