IPA


開発成果一覧へ

 



2005年度下期 未踏ソフトウェア創造事業  採択案件評価書

 


1.担当PM

   長尾 確 (名古屋大学 情報メディア教育センター 教授)


2.採択者氏名

開発代表者

 鈴木 真一朗  (公立はこだて未来大学 システム情報科学部 情報アーキテクチャ学科 学生)

共同開発者

 高橋 和之  (同上)


3.プロジェクト管理組織


  株式会社 リオ


4.委託金支払額


 3,985 ,958


5.テーマ名


  Blographerの開発

 


6.関連Webサイト


  なし


7.テーマ概要


 コミュニケーションの中で発想は生まれ、発想はコミュニケーションを活性化する。Blographerは文章によるオンラインコミュニケーションと発想力の活性化を目指すWebサービスである。

 当初、我々はLife Storming Engineというシステムを提案した。 Life Storming Engineはオンライン上で複数人が非同期でのブレインストーミングを行うことができる、ユーザ同士のコミュニケーションを重視した創造支援システムであった。
 しかし長尾PMからのアドバイスにより計画を変更し、新たにBlographerとして提案することとした。

 Blographerの基本的な機能はBlogのように各々のユーザが投稿した文章を公開し、広く閲覧できるようにするものである。Blographerの特徴は、オンラインコミュニケーションの他に、文章のマップ化による発想力の活性化というもう1つの軸を持つことである。
 昨年度、我々は未踏ソフトウェア創造事業未踏ユースにおいて「ブレインストーミング支援ツール "BSE -Brain Storming Engine-"」の開発を行った。BlographerはテキストエディタとBSEで扱ったような二次元ワードマップエディタを統合し、シームレスに連携させる。ユーザはテキストエディタとワードマップエディタを行き来しながら文章とマップを組み上げていく。2つのエディタは緩く連携していて、片方のエディタで編集を行った結果をもう一方のエディタにも反映する、といった作業を少ない操作量で行えるようサポートする。


 文章とワードマップの連携によるメリットは主に2点ある。
1
つに、文章をマップ化する効用により文章作成時にユーザの思考をまとめ、発想力を大きく広げる点である。
2
つに、ワードマップによってキーワードが抽出された形式は、機械的な処理も容易になる点である。
これらにより、ユーザによって投稿された膨大な数のテキストをテーマごとに分類し、類似トピックを扱うテキスト間に自動的にリンクを設定するなどの、コミュニケーションを促進する機能をもたせることが可能である。

 Blographerはこの両者を1つのシステムとして実装することにより、さらなるコミュニケーションと発想の相乗効果を狙う。


8.採択理由


 何気ない雑談の中で突然いいアイディアが浮かぶことはままある。雑談感覚で複数人が非同期にブレインストーミング的な活動を行うという発想はよい。しかし、マインドマップ的な図を複数人で非同期的に書いていくのは参加者の負担が大きく、またシステムの実現も困難であるので、ブログ等のテキスト入力作業中に簡単なインタフェースで図(ワードマップ)が描かれるように工夫するのがよいと思われる。当初の計画を大幅に変更し、仕組みが簡単で、既存ツールとの親和性の高いシステム開発にシフトすることで、できるだけ作業を単純化することを条件に採択とする。




9.開発目標


近年,多くの人間がBlogを利用し,情報発信または情報収集を行っている.Blogにはコメント機能やトラックバック機能を有するものがあり,それらの機能がBlogユーザー間のコミュニケーションを促進していると考えられる.しかしBlogの普及に伴って問題も発生している.本プロジェクトでは特にBlogを公開しているユーザーと閲覧するユーザーの間に存在する問題に着目した.

 文章を上手に書くことができないと嘆く人間は少なくない.その理由は「論理的な思考に慣れていない」といったものから「何を書けば良いかわからない」といったようなものまで様々である.これらの問題に対して情報処理技術を用いた支援としてはアウトラインエディタなどに代表される文章の構造化支援システムや,創造性支援システムなどが挙げられる.文章を上手に書ける人間にとっても,一般的に言われる「筆が止まる」状況が必ず存在し,そのたびにこれまで自分がどのような文章を書いてきたか,何を書きたかったかなどを考えているのである.

 Blogに限らず文章を閲覧する際にも,幾つかの問題が存在する.それらの多くは文章というメディアの特性に依った問題である.たとえば,文章に記されている内容をすべて理解するためには最初から最後まで読まなければならず,書き手によって異なる文章表現を読み手が柔軟に解釈しなければならないなどである.情報処理の観点から言えば,特に解釈に関しては自然言語処理などをもってしても支援することが困難である.

前述の問題点がありながらも,文章を用いた情報発信および情報収集は今後も在り続けると考えられる.なぜならば文章を書いて何かを表現することに人間は古くから馴染んでおり,同様に読むことも日常的な行為であるからである.文章は単に情報をやりとりするだけでなく,書き手が自身の考えをまとめるための一時的な記憶の外部化,または読み手が要約や引用といった編集がしやすいといった利点もある.

これらの特徴をふまえて,書き手および読み手双方を支援することができないかと考える中で,グラフと組み合わせることを思いついた.ここで述べるグラフとは二次元平面上に展開される無向グラフである.グラフは主に頂点(ノード)とそれらをつなぐ線(コネクション)によって表現され,関係性などを可視化するのに適している.またグラフを用いた創造技法が幾つか普及しており(マインドマップ法など),発散的な思考をするには制約の大きい文章執筆よりも適していると考えられている.したがって,文章の意味構造を基にしたグラフを執筆作業中のユーザーに提示することで,書き手の文章執筆支援や筆止まりの解消,文脈に依存しない情報を付加できるのではないかと考えた.また文章を閲覧するユーザーに対してもグラフを提示することで,書き手の意図を解釈する助けになり,文章を最後まで読まずともある程度の概要を短時間で知ることができるようになれば情報収集効率の向上につながるのではないかと考えた.しかしグラフの編集作業はあまり一般的とはいえず,使いやすいインタフェースおよび編集の支援を備えたシステムが必要となるため,本プロジェクトではテキストの編集とグラフの編集を同時に行えるシステムの開発を目標とした.双方の編集は緩く連携しており,片方の編集がもう片方へ反映されるなど,ユーザーへの付加を考慮したシステムである.


10.進捗概要


本プロジェクトでは文章を編集しながら,それに応じて二次元無向グラフも編集できるシステムを開発した.また編集した文章およびグラフを基にして他のユーザーとのコミュニケーションを促すサービスを構築することを目標とした.

開発期間内では,当初Webサービスとして開発する予定であった編集機能をユーザのPC上で動作するクライアントツールとして切り分け,Web上へのアップロード機能で補うことにした.これにより,スタンドアロン環境でも編集できながら,Webを用いたコミュニケーションも可能なシステムとすることができた.

開発期間内にクライアントツールの基本機能およびアップロード機能の実装を行った.閲覧者向けにグラフを提示する部分は既存の一般的なBlogサービスに対応させることができたため,サーバサイド側の開発はシステムの動作サンプルとクライアントツールの配布を目的とした簡易なものにとどまった(cf. http://blographer.jp/)

 これにより既存のBlogサービスと共存しながらグラフを用いた新しい表現も行えるシステムとして,より充実したコミュニケーション機能と編集機能を開発する上の基盤を作ることができた.


11.成果


Blographer
のシステム構成は文章およびグラフを編集するためのクライアントツールと,閲覧およびコミュニケーションのためのサーバ部分に大別できる(図6−1)

図6−1:システム構成概観

 

      i.       サーバサイド開発

当初は,後述するテキストエディタ機能およびワードマップエディタ機能をすべてサーバ側に実装することを予定していたが,当初の予想よりも文章の解析などに時間がかかったため,それら編集機能をクライアントツールとして切り分けることにした.そのため,クライアントツールとの通信機能や動作サンプルの提示,およびテストを目的としたサーバの開発となった.

サーバのOSにはFedora Core 5(cf. http://fedora.jp/)を用い,NucleusP_BLOGXOOPSなど現在一般的に利用されているオープンソースCMSを構築してテストした.クライアントツールとの通信にはXML-RPC規格を参考に実装した.サーバ上のグラフ提示機能には,後述するワードマップエディタ機能を機能的に制限したものを用いることで,開発の効率を向上させた.

 

  ii.       テキストエディタ機能開発

テキストエディタ機能および後述するワードエディタ機能はユーザーのPC上で動作するクライアントツールとして実装した.本契約期間内ではBlogのエントリを編集する場面に限らず,汎用的な文書を編集することを想定した.

テキストエディタ機能は,Microsoft社が提供するC#を用いて開発した.これにより.Net Frameworkに対応する環境で動作するクライアントツールとして作成することができた(図6−2).

図6−2:クライアントツール全体

 

テキストの編集にはリッチテキスト形式を編集するためのコンポーネントを流用し(図6−3),編集過程に想定されるイベント(. 改行の入力,文章のコピーアンドペースト)をきっかけにバックグラウンドで文章を解析することによって,編集作業を妨げずにワードマップエディタとの連携を行えるよう実装した.解析に関しては,特に文章中の単語間に存在する関係性を抽出することを主眼としており,そのために形態素解析を用いた関係性類推機能を実装した.形態素解析にはオープンソース形態素解析エンジンであるMeCabを用い,C#からMeCabを操作するためのDLLを作成することで実現した.文章から名詞を抽出して,その単語の出現位置から関係性の類推を行うアプローチをとっている.出現位置による類推とは,同じ行に存在する単語ならば関係性があるのではないか,冒頭に出てきた単語ならば重要度が高いのではないかなどである.自動的な類推だけでは不十分なため,ユーザが任意に関係性の設定を行えるよう配慮した.

編集後のデータをサーバへアップロードする必要があったため,オープンソースで提供されているライブラリを用いてXML-RPC規格に準じた通信機能を実装した.これにより現行の多くのBlogサービスはXML-RPC規格をサポートしているため,特別に用意したサーバでなくてもBlographerを利用できるようになった.

図6−3:テキストエディタ部

 

iii.       ワードマップエディタ機能開発

前述したテキストエディタ機能と連携することにより,現在編集中の文章における単語間の関係性などの情報を可視化することを目的とした機能である.ワードマップ上ではキーワードが頂点要素,それらの関係性が線で表現されている.テキストエディタ機能に実装された関係性類推部分から解析結果を受け取ることによって,グラフを動的に描画する.グラフだけの編集も可能であり,これによりマインドマップなどに代表されるグラフを用いた創造技法を応用することができる.またグラフを編集した際にテキストエディタ機能へ通知することでテキストエディタ機能との同期をとっている.実装にはAdobe社のFlashを用いて,C#で実装されているクライアントツール上でShockwave Objectとして動作するよう開発した(図6−4)

図6−4:ワードマップエディタ

これによりFlashを表示可能なBlogサービスでは編集時に使用するワードマップエディタ機能とサーバ上で閲覧するためのワードマップエディタを共用することが可能になり,開発工数を少なくすることができた.以下に主要な機能を図示する.

図6−5:要素の編集

 

ワードマップエディタ上の各要素はマウスで操作することができる.基本的には各要素をクリックしフォーカスを当てることで,メニューが表示される設計になっている(5).上図のメニューボタンはそれぞれ左上が要素の削除,右上が要素のラベル名変更,右下が他の要素との結線,左下が新しい要素の作成に対応している.ワードマップエディタ上で新しい要素が作成された場合はテキストエディタ機能へ通知し,それに応じて処理を施すことも可能とした.これにより,文章編集よりグラフ編集を得意とするユーザーも支援できると考えられる.任意の要素間を線でつなぐことができるため,テキストエディタ機能側で類推できなかった場合の関係性補完も容易に行うことができる.他にもユーザーへの負荷を最小限にするためのGUIを考え,バネモデルを用いた自動整形機能や,サイズの最適化機能,スクロール機能を実装した(図6−6)

図6−6:自動整形,サイズ最適化後のグラフ例

編集後のグラフはアップロードする際,PNG形式の画像として書き出すことができる.これはアップロード先のBlogサービスがFlashの表示に対応していない可能性を考え,閲覧時の動的なインタラクションは期待できないものの,画像として静的にユーザーへ提示するだけでも読み手の支援になると考えたためである.


12.プロジェクト評価


本プロジェクトでは、Blographerと呼ばれる、ブログのテキスト入力作業中に簡単なインタフェースで図(語をノードとしたグラフ)が描くことができ、その結果を、テキストと共にイメージとしてブログに投稿できるシステムを開発した。ただし、もともとの構想にあった、グラフを引用・統合することによって、複数の人のアイディアが組み合わさって、可視化され、コミュニケーションを促進させるという部分はまったく手付かずであった。この点は非常に残念である。


13.今後の課題


開発当初に予定していたWeb上で完結する形態とは異なり,クライアントツールとサーバにまたがるシステムとなった.この形態による利点もあるものの,ブラウザ上ですべての編集作業を行える手軽さも重要であり,今後はWebサービスとしての開発を行うべきである.Webサービスとしての開発の中でも特に課題となるのが,インタラクション機能の拡充である.具体的には同一ユーザー,異なるユーザーに依らず,文章またはグラフの部分引用に対応する機能を実装することにより,複数人でワードマップを拡張し,互いの情報を共有できるようになるなどの利点を実現させるのがよいだろう.

またインタラクション機能の拡充の他に,もう一つのアプローチとして文章執筆支援ツールまたはアイデアプロセッサとして特化させることも考えられる.当初Blographerは複数人で共有またはコミュニケーションを行うことを目的としていたが,個人的な作業である執筆の支援も需要があることが感じられた.この要求に対して,現在のBlographerのクライアントツールは文章の解析などで充分とはいえないため,今後はより多くの文章解析アルゴリズムを実装し,執筆する文章の対象やユーザーの個性に応じたカスタマイズ性を備えるべきだろう.

また,公開しているWebサイト(cf. http://blographer.jp/)を拡張すべきである.現在は動作サンプルの公開程度に留まっているため,多くのユーザーにBlographerを利用してもらうきっかけを提供しきれていない.すなわちWebサービスとして稼働するBlographerを利用するユーザーのエントリポイント,またはクライアントツールおよびカスタマイズするためのプラグインの配布,Blographerの共同開発者の応募などを展開するWebサイトとなるべきである.



  ページトップへ   

 

 

 


  Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2004