川村渇真の「知性の泉」

ソフトの進歩とは何か?


ハードウェアの進歩の陰に隠れて、ソフトウェアの基本的な部分がそれほど進歩していないことは、あまり知られていない。現在のソフトウェアが置かれている悲しい状況を、認識しよう。


 今回は、ちょっと視点を変えて、ソフトの進歩について論じる。動画などを扱えることと、ユーザーインタフェースの改良のおかげで、パソコンは大きく進歩したといわれている。しかし、根本的な部分では、まったく進歩してはいない。進歩を妨げている本当の原因を理解することで、ソフトの劇的な改善が可能となるのだが、現実は悲しくなるほど良くない。

高性能化するハードに比べ、ソフトの進歩は遅い

パソコンに搭載されるCPUの処理能力は、年ごとに増加している。特にMacintoshでは、RISCプロセッサであるPowerPCの採用によって、大きく向上した。より高速なチップの開発も発表されていて、これからも処理能力の向上は続く。シェアにおけるトップランナーである米インテルとの開発競争も、性能向上にとってプラスに働く。このように、ハードの中心であるCPUは、絶え間ない進歩が約束されているようなものだ。
 それに比べてソフトは、大きな変化を見せていない。もちろん、動画が扱えるようになるなど、部分的には新しい機能が追加されている。また、すべての分野のアプリケーションが高機能になり、ソフトで実現できることも増えている。これだけを見て、大きく進歩したと思っている人がほとんどだろう。
 しかし、全体として使いやすくなったかといえば、そう感じている人は少ないのではないだろうか。現時点で使いやすいといわれているNEXTSTEPやMac OSでさえ、機能が増えるに従って、複雑さを増している。よくよく観察すると、ファイルとアプリケーションという基本部分の仕組みは、ほとんど変化していないことがわかる。
 たいていの人は、「ソフトの進歩が遅いのは、ハードに比べて複雑で難しいからだ」という意見だろう。しかし、本当にそうだろうか。少なくとも筆者は、違うと思っている。筆者の分析結果は「根本的な部分で、大きな考え違いをしていて、一番大切な部分に気づいていない」だ。今回は、この部分に焦点を当ててみる。

ヘルプやアシスタント機能が巨大化、AppleGuideも悪くないが......

 Macintoshに比べて遅れているWindowsやUNIXを評価しても仕方がないので、Mac OSを対象に考えてみる(注:プリエンプティブなマルチタスキングを実現することが、進んでいるとは思っていない。これは必要ではあるものの、使いやすさの進歩の面の重要度は低い)。漢字Talk 7.5で新たに搭載したAppleGuideは、たんに使用説明を見せるだけでなく、選んだ機能を代わりに実行してくれる。アクティブ・アシスタントと呼ぶもので、より積極的なヘルプ機能だ。
 しかし、ここでちょっと考えてほしいのは、ヘルプの量である。AppleGuideによって、ヘルプ機能が提供する内容は大きく増えている。アプリケーションごとにも用意するため、システム全体としてのヘルプの量は、今までにないくらい多い。これだけ多量のヘルプ情報を提供しているが、ヘルプで提供する内容はソフトの操作方法でしかない。この点に注目してほしい。
 ほとんどのユーザーは、何かの目的でコンピュータを使っている。それを実現するためにソフトを動かすので、ソフトの操作に必要な知識は最小限ですませたい。ヘルプの量が増えることは、それだけ操作が複雑なことを意味する。使いやすい方向で進歩するのであれば、システムのバージョンアップによってヘルプの量も減るはずだ。ところが現実には、ヘルプの量は増え続けている。
 量が増える一番の原因は、機能が増えたためである。しかし、機能に比例してヘルプが増えるということは、基本的に進歩していないことを意味する。逆に、機能が増えたことが原因で、全体での複雑さは増し、結果として使いづらくなる。つまり、機能の豊富さでは前進したが、使い勝手では後退しているのだ。現に、漢字Talk 7になってからは、初心者にとって難しいとの評価が多い。

オブジェクト指向+エージェント指向では解決できない

 今後のMac OSとして、CoplandやGershwinが予定されている。特にGershwinでは、インテリジェント・エージェントと呼ぶアシスタント機能によって、操作の自動化を達成するという。Gershwinの基礎はOpenDocであり、小さなアプリケーションを組み合わせて、いろいろな書類を作成する。OSの分類としては、オブジェクト指向OSにエージェント指向技術を加えたものといえる。
 本連載で前回まで述べたように、ファイルとアプリケーションという仕組みを用いるかぎり、使い勝手は大きく進歩しない。機能が増えるに従って複雑さが増し、それをエージェント指向技術で解決しようとしても、ほんの少ししか改善できない。米アップルの技術発表によると、Gershwinでは使い勝手が大幅に向上するという。しかし、改善の度合いは、宣伝しているほどは大きくない。情報中心システムのレベルに達しなければ、使い勝手の大幅な改善は、実現できない。エージェント指向技術は、基本構造が悪いから必要となるのであって、後ろ向きの解決方法だ。基本構造を良くした情報中心システムと比べれば、雲泥の差がある。
 Mac OSでさえ、このレベルなのだから、ほかのOSはもっと寂しい状況にある。あとから追いかけるのが、やっとだろう。

きちんとした視点での機能評価が重要だ

 ソフトを大きく進歩させるためには、システムの基本機能を一度整理して、考え直す必要がある。既存システムを使っていて不便だと感じる部分を素直に見つめ、それを改善するように考えるべきだ。コンピュータの世界の常識を、一度忘れる必要がある。たとえば、各アプリケーションで作成したデータは、なぜデータベースで管理できないのか。あるソフトで作成したデータを、別のソフトで簡単に使えないのはなぜか。
 また、もっと素朴な要望も真面目に検討すべきだ。同じ種類のデータを集めて一覧表をつくるぐらいは、自動でやってほしいし、組織の構成を見たいときは、自動的に組織図を描いてほしい。なぜ、細かな部分までユーザーがつくらなければならないのか。
 さらには、見栄えまでユーザーが細かく作成せず、一番良い形で自動生成してほしい。良い結果が簡単に得られるほど、進歩したといえるのではないだろうか。情報をわかりやすく整えることも、今後のシステムでは重要ではないのか。
 これらの要望を満たすことが、進歩に値するシステムの条件となる。特に最後の、情報をわかりやすく表現する機能は、今までまったく考慮されていなかった。
 このような視点で評価すると、これから登場するオブジェクト指向OSも含めて、あまり良い点は与えられない(表1)。設計者はエージェント指向技術に期待しているようだが、基本構造が悪いため、改善できる範囲は限られる。

表1、コンピュータが実現する基本機能で、各OSを比較した結果。オブジェクト指向OS+エージェント指向技術でも、基本部分は大きく変わらないため、使い勝手が劇的には向上しない。どの部分を改良するかで、ソフトの進歩は決まる

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

表1

 開発でのアプローチ方法が悪すぎるのだ。原因は、ソフトを評価する視点にある。もっと根本的な機能を改善することに目を向けないと、悪循環からは抜け出せない。

動画やテレビ電話の機能が重要ではない

 パソコン上で動画が扱えることは、そんなに凄いことなのだろうか。どう考えても、凄いことには思えない。
 情報ハイウェイに関するテレビ番組で、米シリコングラフィックスが開発したテレビ電話ソフトをデモしていた。ウィンドウ内に相手の顔が動画で表示され、そのことに解説者はとても驚いていた。しかし、この種の機能は、驚くほどの内容ではない。CPUやネットワークが高速になれば、いつかは実現できることで、なおかつ、誰もが思いつく機能だからだ。
 それよりも、顔の動画の横に表示していたソフトが問題だ。高機能ワープロのようなもので、相手のカーソルと自分のカーソルを一緒に表示し、相手と自分が手書きした指示も、書類上に描かれる。この部分は、現在のワープロソフトと同じレベルで、ネットワーク的に新しい機能を持っていない。
 これから重要となるのは、テレビ電話機能ではなく、ワープロ代わりとなるソフトのほうだ。お互いに交換したデータを、何らかの基準で1つの書類にまとめる機能が必要だ。複数の人が発言した内容を、筋道を立てて整理し、完成した提案書や企画書に仕上げるまでを、サポートする機能である(図1)。そのためには、既存のワープロソフトでは無理だし、新しいコミュニケーションや整理ツールが求められる。このような部分の作成こそ、ほとんどの開発者が思いつかず、大きな創造力を必要とする。また、この新機能が便利であれば、顔の動画がなくても、質の高いコミュニケーションが可能なのだ。テレビ電話機能は、素人を驚かすのには最適でも、本当の問題解決にはほとんど関係ない。

図1、複数の人が関連づけて発言した内容を整理や統合して、まとまった内容に仕上げる機能。テレビ電話に比べて地味だが、実現には、比較にならないほど創造的なアイデアを要求される。残念ながら、まだ研究中で、実現のメドは立っていない

図1

基本構造の改善で、データの利用範囲が拡大

 情報中心システムのように基本構造を改善したシステムでも、動画を扱えるようにすることは簡単だし、いわれなくても組み込むのが当然だ。既存OSと大きく違うのは、動画データの幅広い利用である。いろいろな書類に張り付けるだけでなく、同時にデータベースへも入れられる。人の顔であれば、その人物データの一部として管理するので、取り出しも容易だ。
 このことが理解できると、動画を扱えることが、それほど大きな進歩ではないとわかるだろう。それよりも、より自由にデータを整理や加工でき、希望する形式に変換して情報を表現できることが重要だ。アプリケーションやファイルの制限によって、自由に加工や利用ができない現状は、明らかに使いづらい。そうでない環境が求められている(図2)。

図2、既存システムよりも使いやすい情報中心システムでは、基本構造から大きく異なり、高度な自動化も実現する

図2

 さらなる進歩のためには、情報をわかりやすく表現する機能も、標準で組み込まなければならない。表現ルールも追加可能にし、それを充実させることによって、機能強化も容易にする。わかりやすい情報表現は、次のレベルのコンピュータでは必須となる機能だが、そのことに気づいている開発者はどれだけいるのだろうか。この点にすら気づいていなければ、さらに先の重要な機能など、思いつくはずもない(図3)。

図3、本連載の第1回で説明した、コンピュータの今後の進歩。操作レベルから始まり、表現レベルや創造レベルの機能が段階的に加わる。各レベル内でも、新しい機能が追加される

図3

 今後のOSの機能やソフトの各種論文を見ている限り、何が大きな進歩につながるのか見えている人はいないようだ。一番重要な機能に気づかず、枝葉レベルのプログラミング技術ばかりを追いかけている。ユーザーインタフェースの権威も、進歩に大きく貢献する点については、まったく気づいていないようだ。これでは、新しいソフトウェア・パラダイムを創造するのは無理である。

「ユーザーインタフェースの権威も、         
   進歩に大きく貢献する点については、      
      まったく気づいていないようだ。     
  これでは、新しいソフトウェア・パラダイムを   
              創造するのは無理である」

このままではパソコンが使いづらいまま

 本連載で紹介している内容は、情報中心システムの1つの論理モデルとなるKIOSM-2だ。基本原理はできあがっていて、細かな仕様や画面デザインなどを決めれば、今からでもつくり始められる。OSをつくるとなると、データベースやネットワークなどの各分野の専門家を集めるとともに、それ相当の資金も必要となる。基本原理ができているため、優秀な人材さえ集められれば、知識ベースの中身まで含めて、約5年で開発できるだろう。大変なのは、人材集めのほうだ。
 CPUパワーは、1998年ごろのパソコン程度で、とりあえず動かせると思う。知識ベースを充実させるため、ハードディスクは大きな容量が求められる。ハード的には、困難な仕様ではない。
 どのような視点でソフトを評価するかは、ソフトの進歩を決めるうえでの、決定的な基盤となる。大きな進歩の実現には、何が重要かを見極める分析力が必要だ。にもかかわらず、ほとんどのOS開発者は、評価基準を決める視野が狭いし、どれが重要かを理解していない。
 正直なところ、このまま進めば、一般ユーザーが手にするパソコンは、使いづらいままだろう。進歩の可能性が一番高いMacintoshを使い続けたとしても、そこそこしか使いやすくならない。ハッキリいって、将来は明るくないと思う。読者をガッカリさせるようだが、きちんとした分析からは、この結論しか得られない。
 今回の説明は、筆者が新しいシステムを設計するとき、どのような考え方でアプローチをしているのか、伝える意味も込めてある。少しは理解してもらえただろうか。


下の飾り