川村渇真の「知性の泉」

既存/次世代OSに見る情報中心システムの特徴


今回は予定を変更し、既存OSや次世代OSとの比較で、情報中心システムの特徴を鮮明にしてみる。次世代OSとは、オブジェクト指向OSにエージェント指向技術を加えたものを想定している。情報中心システムは、オブジェクト指向やエージェント指向の次の世代に位置する考え方である。「情報中心」という名前のとおり、ソフトウェア技術ではなく、情報自体の特性を重要視し、ユーザーの情報環境を向上させるのに大きく貢献する。その特徴や違いは、今回説明するOSの比較で理解してもらえるだろう。


オブジェクト指向OSの次は、情報中心OSだ

 コンピュータの今後の進歩については、いろいろな人が予測している。次に主流となるのは、オブジェクト指向OSだといわれている。また、エージェント指向技術が、今後10年の中心的な技術になるとも、多くの人が述べている。
 この種の意見に対する筆者のコメントは、「コンピュータ中心システムの範囲内で進歩を続けるとしたら、確かに正しいだろう。しかし、これから重要となるのは情報中心システムであり、そうなると正しいとはいえない」となる。その理由を説明する意味で、今回は、OSの比較について述べる。
 情報中心システムを提唱するのだから、OSの評価基準もほかの人と異なる。この評価基準をつくる視点も重要な部分といえる。ムービーが扱えるとか、アプリケーションが連携しているといった、コンピュータ中心システムの視点で選んだ項目だけでは不十分だ。それ以上に、ユーザーが本来の目的を達成するために、どのような貢献ができるかを重要視すべきだ。
 具体的には、情報をわかりやすく表現する機能や、表現形式を自由に変更する機能だ。また、無駄な操作をしなくてすむような仕組みも重要な項目となる。このような点を考慮して、既存OSからKIOSM-2までの評価を表にまとめてみた(表1)。次世代OSとしては、オブジェクト指向OSにエージェント指向技術を付加したものを想定している。この表の内容を順番に説明しよう。それによって、コンピュータ中心システムと情報中心システムの差が明確になるだろう。

表1、既存OSから情報中心OSまでの特徴の比較。オブジェクト指向OSは、実際の例が存在しないため、予測が中心となる。情報中心OSは、論理モデルであるKIOSM-2を用いたOSとして考えた。下側の3項目が、情報中心OSの特徴となる

           OSの進歩 =================>

表1

情報中心OSでは、ユーザー操作が激減

 最初に比較するのは、データ保存形式とソフト形態だ。既存OSでもオブジェクト指向OSでも、ファイルとしてデータを保存する。ただし、オブジェクト指向OSでは、小さなアプリケーションを連携させるため、小さなファイルを組み合わせて作業する。
 ところが情報中心OSでは、数値や日付といった個々のデータを1つの単位として保存する。複雑なデータ構造は、個々のデータをリンクすることで表現する。また、個々のデータには、単位や対象などの多くの属性を持つ。ソフトの形態も大きく違う。知識ベースを参照しながら、構造を持ったデータを生成する。そのデータの構造をもとに、わかりやすい表現ルールを用いて、最終的な表示内容をつくり出す。
 このような構造の違いは、ユーザーの操作内容や操作量の差となって現れる。既存OSでもオブジェクト指向OSでも、アプリケーションを操作しながらデータをつくる。オブジェクト指向OSでの改良点は、データを組み合わせるときの自由度だ。ダイナミックなリンクを用いて個々のファイルを組み合わせ、1つの書類のように扱うことができる。結果として、操作量が少しは減ることになる。既存OSでも、OLEやOpenDocによって似たような環境を実現しようとしている。しかし、オブジェクト指向OSになっても、データをつくる部分の省力化は難しい。
 これに比べて情報中心OSでは、最終的なデータの種類を最初に指定し、ほとんどが自動で処理される。ユーザーは、最小限の指示を与えるだけですむ。他の2種類のOSと比較すれば、操作量は極端に少ない。これを支えているのは、知識ベースと表現ルールだ。また、個々のデータを属性まで含めて持っていることが大きな特徴だ。

「オブジェクト指向OSになっても、  
  データをつくる部分の省力化は難しい」

基本構造が使いにくいから、エージェント指向技術が必要になる

 自動化への対応にも差が現れる。既存OSでは、プログラムによるバッチ処理が中心となる。AppleScriptのように複雑なものから、MS-DOSのバッチ処理言語のような単純なものまである。オブジェクト指向OSの時代になると、エージェント指向技術が手助けする。何度も繰り返す操作をシステムが学習して自動化するとか、状況を判断しながら最適な操作を自動的に選ぶとか、より高度な自動化が可能となる。
 ただし、エージェント指向技術による自動化にも限界がある。ユーザーがデータをつくる部分には、それほど大きくは役立てない。劇的に自動化するためには、データの持ち方や処理方法自体を根本的に改良する必要がある。その改良結果こそが、情報中心システムなのだ。
 情報中心OSでは、もともと操作量が少ないので、自動化の対象となる部分も少ない。基本構造が良いから、自動化はあまり必要ないのだ。逆の見方をすれば「既存OSのように細かな部分までユーザーの操作が必要だからこそ、エージェント指向技術のような自動化が求められる」ともいえる。つまり、基本構造が悪いからエージェント指向技術が必要なのだ。
 情報中心OSでも、少しはエージェント指向技術が役立つ。コンピュータである以上、故障などの対策としてデータのバックアップが必要となり、この種のコンピュータ的な部分が少し残るためだ。そこではエージェント指向技術による自動化が役立つ。
 余談だが、エージェント指向技術は、ネットワークの分野で大きく貢献するものだ。ネットワーク管理のように、ユーザーが考えながら行うような操作があまり入らない分野こそ、エージェント指向技術が向いている。

ヘルプ機能は、提供する内容が重要だ

どのOSでも、ヘルプ機能を重要視し始めている。既存OSでは、漢字Talk 7あたりからシステム側でヘルプ機能を備えた。その機能を利用する形で、アプリケーションがヘルプ内容を用意する。オブジェクト指向OSの時代になると、エージェント指向技術と組み合わせて、ヘルプ機能が自動操作機能と合体するだろう。その兆しは、漢字Talk 7.5のAppleGuideで見られる。オブジェクト指向OSでは、これがもっと高機能になるはずだ。
 ただし、ヘルプ機能で重要なのは、ヘルプで提供する内容である。既存OSやオブジェクト指向OSでは、アプリケーションなどのソフトの操作方法が中心となる。備えている各機能ごとに、機能の細かな内容と操作手順を教えてくれる。
 ところが情報中心OSでは、ソフトの操作方法ではなく、ユーザーが利用する処理や項目の意味を、ヘルプ機能が提供する。もともと操作量が少ないため、操作に関するヘルプはあるものの、比率としては少ない。主役は、あくまで処理や項目の意味だ。
 この差は、非常に大きい。処理や項目の意味を調べられるので、勉強や確認しながら処理を進めることが可能だからだ。また、自分が使用する処理の原理や利用条件を知ることは、処理のまちがった使用の防止にも役立つ。さらには、作成者とは別な人がデータを見るとき、ヘルプ機能で意味を調べながら読みとることも可能となる。システムの重点が、ソフトの操作から、データの意味へと移行する一例でもある。

情報表現機能を提供するのは情報中心OSだけ

 残りの2項目は、情報中心システムならではのものだ。既存OSとオブジェクト指向OSでは、まったく考慮していない部分でもある。
 1つは、作成する情報をわかりやすく表現する機能だ。情報中心OSでは、表現ルール集を参照しながら、データをわかりやすい内容に整えて表示する。その作業も、ほとんど自動で行われ、ユーザーが操作する部分は少ない。表示上のオプションを少し指定するぐらいだ。
 この機能は、既存OSやオブジェクト指向OSなら、ユーザーが手作業で行う。表計算ソフトの場合、セル配置を決めたり、見出しをつけたり、罫線で囲んだり、単位を加えたりする。このような操作は、かなり面倒だ。それに、わかりやすく表現することは、多くの人にとって非常に難しい。面倒なことと難しいことが相まって、わかりづらい内容としてできあがってくる可能性が高いのである。
 もうひとつの機能は、表現形式の変更に関するものだ。これは、同じ内容のデータを、別な形式で表現しなおす機能である。たとえば、組織の構成を表現するなら、階層構造図で表すことも、字下げテキストで表すことも、2次元の表で表すこともできる。これらをあとから簡単に切り替える機能だ。
 既存OSの場合は、最初に使用するソフトで表現形式が決まる(図1)。表としてまとめるなら表計算ソフトで、階層構造の構成図ならドローソフトで、字下げテキストならワープロかアウトラインプロセッサを使ってつくる。あとで表現形式を変えたい場合は、違うソフトでつくり直すしかない。この点は、オブジェクト指向OSになっても変わらないのである。

図1、既存OSとオブジェクト指向OSでの、データ作成の特徴。最終的な表示結果を意識して、使用するアプリケーションを選ぶ。作成結果と表示結果が等しく、別な表示結果を得たいなら、たいていはつくり直す必要がある

図1

 ところが、情報中心OSでは、非常に簡単に切り替えられる(図2)。目的のデータをつくるとき、最終的な表示形式でつくるのではなく、データの値と構造だけをつくるからだ。それをどのような形で表示するかは、情報表現機能(KIOSM-2では、AutoExpression機能が該当)の担当となる。最初に表示するときだけは、どれか1つの表現形式をシステム側が選ぶ。それが気に入らないなら、別な表現形式に変更するように、ユーザーが指示を出す。そこでは、表現形式を直接指定する方法と、違う表現形式をシステム側に選ばせる指定方法の2種類が使える。気に入るまで、何度も変更を繰り返せる。

図2、情報中心システムでのデータ作成の流れ。Object First機能を用いて、構造体データをつくる。これが作成結果であり、それをもとにAuto Expression機能が表示結果を生成する。ユーザーは、表示結果を簡単に変更することができる。また、各表現形式ごとの表示オプションも選べる

図2

設計思想における根本的な相違点

 比較の表を見てわかるように、コンピュータ中心システムと情報中心システムでは、根本的な違いがある。特に重要なのが、表の下側の3項目だ。これらは、情報に重点を置いた機能で、今後のコンピュータには欠かせないものといえる。
 この種の違いは、設計思想の違いからくる。システムに対する視点の違いといってもよいだろう。情報中心システムでは、人間が情報を処理する行為を深く分析するとともに、情報自体が持つ普遍的な特性を理解し、システム全体を設計する。その結果、コンピュータ技術が見えるのを極力嫌う。また、情報をわかりやすく表現するといった、人間から見て大切な機能を重要視する。このへんは、コンピュータ中心システムでは軽視されている部分だ。
 漢字Talk 7を例にして、コンピュータ中心的な悪い設計を説明してみよう。漢字Talk 7には、Finderというファイル操作のソフトが付属する。Finderを用いると、システムフォルダ内のファイルも移動や削除ができる。初心者が誤って操作し、システムフォルダ内のファイルを移動すると、システムが正常に起動できなくなる。このような操作ミスは、初心者だから起きるのだといって笑われることになる。
 しかし、別な視点で見ると、設計が悪いから起こるとも考えられる。システムフォルダ内のファイルやアプリケーションは、システムに機能を追加するファイルであって、ユーザーがつくったデータファイルとは別な種類のものだ。それなのに、どちらもファイルだからという理由で、Finderで操作できるようにつくってある。情報中心的な設計であれば、ユーザーのデータを扱う操作と、システムの機能を調整する操作を一緒にはしない。機能とデータを同列に扱ってはいけないのだ。どちらもファイルだからという発想こそ、コンピュータ中心的なものである。
 このような視点の違いに気づかないと、使いやすいシステムは設計できない。ところが、新しい視点に気づいている設計者は、非常に少ないのが現状だ。
 この例のような悪い設計は、漢字Talk 7に限ったことではなく、コンピュータ中心システム全般に共通するものだ。漢字Talk 7を例に使ったのは、本誌がMacintoshの専門誌だからで、それ以外の理由はない。誤解する人がいると困るので述べておくが、Finderの操作自体はかなり優れている。その点を悪いといっているのではない。
 オブジェクト指向OSまでは、ソフトの高機能化と操作性の向上がテーマである。それが情報中心OSになると、情報自体の質向上を支援することがメインテーマになる。それはヘルプ機能や情報表現機能として現れている。
 ここまで述べた違いにより、情報中心システムは、ユーザーが本来の目的に集中できる環境を提供できる。ここで比較した環境も、最終段階ではない。本連載の第1回で説明したように、情報中心システムはさらに進歩する。ユーザーの情報環境を向上させる方向でだ。

「どちらもファイルだからという発想こそ、 
     コンピュータ中心的なものである。
  このような視点の違いに気づかないと、 
     使いやすいシステムは設計できない」


下の飾り