Skip to content

Latest commit

 

History

History
220 lines (183 loc) · 33.2 KB

tbl_worldwideweb_proposal.md

File metadata and controls

220 lines (183 loc) · 33.2 KB

WorldWideWeb: ハイパーテキストプロジェクトの提案(訳)

この文書は、1990年11月12日、最初のWebブラウザを開発したティム・バーナーズ・リー氏が、彼が所属する組織であるCERNの重役たちにむけて送った、メールによる提案書の日本語訳です。( 原文はここ: http://www.w3.org/Proposal ) この提案書が送られてから3ヶ月後に、当初の予定に遅れることなく、最初のWebブラウザ「WorldWideWeb」がリリースされることになりました。(スクリーンショット:http://www.w3.org/History/1994/WWW/Journals/CACM/screensnap2_24c.gif )

私がこの文書に興味を持ったのは、Webの発展の歴史上、非常に重要な文書であるということだけではなく、この文書が、プロジェクトを成功させるために必 要な、高品質の提案書を作成するための非常に良いヒントを多く含んでいるからです。

プロジェクト・マネジメントに関連して、この文書から読み取れる非常に大事なことは、以下のようにいくつかあります。

  • 最初から「世界を変える」といった大きな目標や、巨大なシステムの開発を掲げていないこと。
  • それでいて、世界を変えることができたこと。
  • 自分たちの能力とちょっとした工夫だけでできることを確認し、明記していること。
  • プロジェクトの実現にむけて具体的・物理的な必要条件を明確に記していること。
  • 期限が明確であること。
  • ステップを、極めてわかりやすく2つに分割していること。(1=読み、2=読みと書き)
  • 参加者の候補と、その全員についての*現在の*能力と、状態と、担当内容を明記していること。
  • やらないことを明記していること。
  • 概要→はじめに→コンセプト→用途→機能概要→やりたいこ と→やらないこと→必 要なもの→未来 という流れ。
  • 現在:未来=95:5という量のバランス。
  • (省略されていますが)図で説明をしていること。

この文書は、新規プロジェクトの提案文書として、これ以上ないというほど質が高いものです。多くの人の参考になると思います。


メール本文

To:
P.G. Innocenti/ECP, G. Kellner/ECP, D.O. Williams/CN
Cc:
R. Brun/CN, K. Gieselmann/ECP, R.€ Jones/ECP, T.€ Osborne/CN, P. Palazzi/ECP, N.€ Pellow/CN, B.€ Pollermann/CN, E.M.€ Rimmer/ECP
From:
T. Berners-Lee/CN, R. Cailliau/ECP
Date:
12 November 1990

添付ファイルで、ハイパーテキストプロジェクトについてもっと詳しく説明します。

ハイパーテキストは、さまざまな種類の情報を網の目のようにつないで、ユーザーが自由にアクセスできるようにするための方法です。レポート、ノート、デー タベース、コンピューターのドキュメント、オンラインヘルプなどの多種多様な情報に対して、統一的なユーザーインターフェイスを提供します。私たちは、 CERNですでに動いているサーバーをうまく組み合わせてこれを実現する方法を提案します。

プロジェクトは2段階に分かれます。まず最初に、すでにあるソフトウェアとハードウェアを利用して、CERNの実験をするためにどんな情報アクセスの手段 が必要なのかを分析して、ワークステーション用のシンプルなブラウザーを実装します。 次に、ユーザーが新しい素材をWWWに追加できるようにして、応用の範囲を拡げます。

フェーズ1のためには人材をフルに使って3ヶ月が必要です。フェーズ2のためにはさらに3ヶ月が必要ですが、この段階はむしろ終わりがなく、必要や要望に 応じて随時レビューされていきます。

必要な労働力は、4人のソフトウェア・エンジニアと、一人のプログラマ(うち一人は「フェロー」だといいな)です。

それぞれの人は、あるプラットフォーム向けといったような、部分を担当します。すばらしいワークステーションが必要ですが、サポートしたい種類ごとに必要 です。それぞれのエンジニアには1万から2万ドル、合計5万ドルが必要です。さらに、商用のソフトウェアもできるだけ使いたいです。開発中にはおそらく1 人分のライセンスを3万ドルで購入して、それを見て参考にします。

コストのかからない計算機資源も使います。すでにあるマシンを開発用のファイル置き場としたり、開発したデーモンソフトウェアをインストールしてシステム 上で運用させたりします。

T. Berners-Lee R. Cailliau

WorldWideWeb:

ハイパーテキスト・プロジェクトの提案

T. Berners-Lee / CN, R. Cailliau / ECP

概要

ハイパーテキストは、さまざまな種類の情報を網の目のようにつないで、ユーザーが自由にアクセスできるようにするための方法です。レポート、ノート、デー タベース、コンピューターのドキュメント、オンラインヘルプなどの多種多様な情報に対して、統一的なユーザーインターフェイスを提供します。私たちは、 CERNですでに機械的に情報を保管しているサーバー同士をうまく組み合わせる方法を提案します。

はじめに

現在は、プラットフォームやツール群の互換性がないために、情報を、共通のインタフェイスを通してアクセスすることができません。そのため、ちょっとした データを探したいときでさえ、時間の無駄や、イライラや古いデータに悩まされたりといったことが絶えません。情報の断片から断片へ、リンクをマウスでポイ ントしてたどることによって、いろいろな種類のシステムを統合することができたら、非常に大きなメリットがあると考えられます。このように、順番にリスト したり、木構造のもとに並べたりせず、情報のノード(端点)を網の目のような構造にすることが、ハイパーテキストの基本的な考え方です。

CERNでは、すでにさまざまな種類のデータが利用可能です:レポート、実験データ、人材データ、電子メール、アドレス帳、コンピュータードキュメント、 実験ドキュメントやさまざまなデータが、どんどんコンピューターのディスクに格納され続けています。しかし、ひとつのものから別のものへ、自動的にジャン プする手段がありません。たとえばもし、"Joe Bloggs"という名前がオンラインソフトウェアの不完全な説明書の中に含まれていても、その人の現在のメールアドレスを直ぐに発見することができない のです。これまでは、他のコンピューターを使って、異なるユーザーインターフェイスを使う必要がありました。一旦その情報のある場所がわかっても、後でも う一度発見するためのリンクを保存しておいたり、簡単なメモを残したりするのがむずかしいのです。

ハイパーテキストの考え方

ハイパーテキストの基本原理や、CERNへの導入方法については、文献1でもっと完璧に議論します。技術用語については文献2にあります。ここでは、ハイ パーテキストを手短かに説明します。

ハイパーテキストの世界にアクセスするためのプログラムを「ブラウザー」と言います。ハイパーテキストブラウザを起動したら、まず最初に自分用のハイパー テキストページが表示されます。このページは、自分用のメモにすることもできます。ハイパーテキストページには、ほかのテキストへの「参照」があります。 この参照は、(テキストの中では)強調表示され、マウスで選択できます。(ダム端末では、番号つきのリストになっていて、番号を入力することで選択できま す。)参照を選択したら、ブラウザはハイパーリンクをたどり、参照されているテキストを表示します:

(図1を見てください)

そのテキストそのものが、また他のテキストへのリンクを含んでいます。図1では、GHIの上をクリックしたら、そのミーティングの議事録に移動することが でき、そこでUPSに関する話しに興味が沸いたら、強調表示されているUPSという単語をクリックしてそれについてもっと知ることができます。

テキストは、ある概念から別の概念へとお互いにリンクされていて、必要な情報を入手できます。リンクのネットワークを「ウェブ」と呼びます。ウェブは階層 構造である必要はないので、異なっているけれども関係の深い主題を探すために、「木を登る」必要はありません。ウェブは不完全なので、テキストの著者がリ ンクを完全に作成できるわけでもありません。まあ、ちょっとしたホップ数でどこからどこへでもたどりつくためには、少ないリンク数が良さそうですが。

テキストを「ノード」と呼びます。ノードからノードへ進むことを「ナビゲーション」と言います。ノードは同じマシンにある必要はなく、マシンの境界を越え ることが可能です。いろいろな種類のプロトコルやフォーマットがあるので、ワールドワイドウェブを実現するためには、何らかの解決策が必要です。これらの 問題については提案文書の中で言及しています。

ノードは、図や写真や音声やアニメーションなどの、テキストでない情報を含むことも原理的にはできます。ハイパーメディアという用語は、ハイパーテキスト という考え方を単純にほかのメディアにひろげたものです。設備が整っていれば、画像を交換したりすることも(将来は)やりたいです。しかし今回のプロジェ クトでは、画像よりも、一般的なテキスト読者に集中したいと思います。

利用目的

統一的なハイパーテキストシステムがあれば、ドキュメントの登録や、オンラインヘルプ、プロジェクトのドキュメントやニュース形式などの多くのものをカ バーできます。ある特定の分野だけに対して提案するのは良くないかもしれませんが、実験用のオンラインヘルプや、加速器のオンラインヘルプ、コンピュー ターセンターのオペレータ、ユーザーオフィスやCNやECPなどの部門が情報を伝達するための中心的なシステムとして使うのは、明らかに候補になります。 ワールドワイドウェブ(W3)はこれらのサービスをHEPコミュニティ全体に対して提供したいと考えています。

見通し:やりたいこと、やりたくないこと

このプロジェクトは「ハイパーテキスト」に関連するものや、その一部について、きっちり決めた通りに実行します。ねらいは以下の通りです:

  • 遠隔のシステムに保存されている、人間が読める情報を、ネットワークを使ってやりとりするためのプロトコルを提供します。
  • 情報の提供側と取得側の両方で共通なフォーマットに自動的に変換してやりとりするプロトコルを提供します。
  • CERNにあるほとんどのコンピューターを使って画像ではなく文字を読むことができる方法を提供します。
  • 最低でも1個のドキュメントのコレクションを管理し、ユーザーがドキュメントを置けるようにします。
  • このコレクションは、既存のデータの多くを含みます。(このことによって自分たちがまず最初にこのシステムを使ってみることができるようになりますし、メ ンバーがすでに担当部分についてのドキュメントを持っているはずです)
  • 参照をたどったり、(CERNVM FINDインデックスのような)すでにある索引を使うだけでなく、キーワードを使って検索する方法を提供します。キー ワード検索の結果は、単にキーワード検索にマッチする参照のリストです。
  • 他のコレクションから、個別に独立に管理されているドキュメントのコレクションにリンクができるようにします。
  • 可能であればパブリックドメインのソフトウェアや、すでにあるプロプライエタリなシステムへのインターフェイスを使います。
  • 上記のソフトウェアは、誰にでも無料で利用できるようにします。

やらないこと

  • CERNで使われているドキュメント保存方式には存在しないような形式への変換。ただし、こうした変換を組み込むことができるフレームワークは作成しま す。
  • ユーザーに対して、特定のワープロソフトやマークアップフォーマットを使う事を強制すること。
  • 音声やビデオといった楽しげなマルチメディア機能を研究すること。
  • ネットワーク用の認証システムを使うこと。データは世界に対して文字通り開放されていて読むことができるか、1個のファイルシステムに閉じていてファイル システムの保護機能を使ってプライバシー保護をするかのどちらかです。ネットワーク上を流れるトラフィックはすべて公共のものとします。

必要なもの

実際のニーズに確実に応えるため、CERNの非常に多くの実験が必要としている情報アクセスのためにどういったことが必要かの分析を、プロジェクト初期の フェーズ1のときから並行して開始します。

この分析は、最初はAleph実験の参加しているメンバーの活動に限定しておこない、次にもうひとつ以上の実験にひろげます。分析結果の概要はおそらく、 形態(機械、紙)や最終目的(実験や管理)の如何をとわず、情報の生成、保存、取得についてのものになります。

結果は以下のようなものになります:

  • 情報の源、保存場所、消費されて消えていく先のリスト。
  • フォーマットのリスト
  • 流れ図
  • トラフィックの統計
  • 情報の流れの重要性レベルの推計
  • 利用者の願いや改善提案のリスト
  • プラットフォームの満足度レベル
  • 改善の優先度

この分析は、そのまま改善策になるわけではないでしょうが、プロジェクトの進行には役立つはずです。

構造

ハイパーテキスト世界の構造は、サーバーマシンに保存されているデータと、同じマシンか他のマシンで動いているクライアントプロセスです。マシンは何らか のネットワークで接続されています。(図2)図2は、提案するハイパーテキスト世界の構造です。ワークステーションはオフィスにあるワークステーションマ シンか、近くのコンピューターやネットワークに接続されている端末です。サーバーはリクエストに応えるアクティブなプロセスです。ハイパーテキストのデー タは明示的にそれらのサーバーからアクセス可能になっています。サーバーは、同じマシンの上で複数稼働することが可能ですが、それぞれのサーバーは、別々 にまとめられているハイパーテキストを提供します。クライアントはブラウザーのプロセスであって、通常は同じマシンの上で動いていますが、別のマシンの上 で動くことができるようになっている必要があります。やりとりされる情報は2種類で、ノードとリンクです。

構成要素

今回作成するのは、ブラウザとサーバーの2つです。

ブラウザ

ブラウザはネイティブなアプリケーションプログラムで、クライアントマシン上で動作します:

  • ブラウザは、クライアント(マシン)のハードウェアとソフトウェアの環境を使って、ハイパーテキストノード(ドキュメント)を表示するディスプレイとして ふるまいます。たとえば、Macintoshのブラウザは Macintosh のようなルック&フィールを使います。
  • ブラウザは、リンクを越えていきます。たとえば、Macintoshを使ってCERNVM FINDをブラウズする場合は、Macintosh ブラウザとなり、どのリンクを越えてきたのか、どうやって戻るか、などを記憶しています。しかしCERNVMのサーバーは、ノードをブラウザに返している だけで、ユーザーがどのノードをアクセスしているかについては関知しません。
  • ブラウザは、サーバーと対話するときに(コンテンツの)フォーマットを自動調整します。例えば、VT100端末用のブラウザは、いつもASCII textだけを要求するのに対して、Macintosh用のブラウザは、PostScriptやSGMLを受け入れるように作られます。

サーバー

サーバーは、サーバーマシン上で動作するネイティブアプリケーションです:

  • サーバーはそのマシン上にあるウェブノード(ドキュメント)を管理します。
  • サーバーはブラウザと対話して表示フォーマットを自動調整し、必要に応じて内部形式を変換します。

オペレーション

リンクはASCII文字列で指定されますが、その文字列によってブラウザはどのサーバーにどんな方法で接続すべきかを知ることができます。リンクをたどっ た場合は、ブラウザは、サーバーにあるノードに対するリクエストを発行します。このようにサーバーは、ほかのサーバーやウェブについて何も知らないので、 システムの単純さを維持することができます。

サーバーが、要求されたノードを発見したら、そのノードの内容から、そのノードがどういったファイル形式(たとえば、純粋なASCII、 マークアップされているもの、ワードプロセッサの保存形式、どのワードプロセッサであるのか等)になっているかを知ることができます。その後、サーバーは ブラウザと調整を開始し、ユーザーのスクリーン上ではどのような形式を表示することができるのかを決定します。この調整は、既存の変換プログラムとファイ ル形式に基づいていて、新しい形式を生み出すことはプロジェクトの目的には入っていません。調整の最後の段階では、ノードの内容をユーザーのファイルシス テムに転送します。内容を表示するための調整が、本プロジェクトの独特の部分です。

プロジェクトの段階

後で説明するリソースがあれば、最初の2ステップで以下の目標を達成できると考えます:

フェーズ1:開始から3ヶ月の目標

  • コンピューターまたはPCダム端末を使ってテキストを読めるブラウザ。
  • 人間用インターフェイスとナビゲーションについてのアイデアを早く試すためのプロトタイプとして、大部分の読者がカーソルを利用して読むことが出来る VT220端末上で動くブラウザと、Macintosh用のMacintoshスタイルのブラウザと、NeXT用のNeXTStepツールを使うブラウ ザ。
  • UsenetとInternetのニュース記事の世界にアクセスできるようにするためのサーバー。
  • CERNVMとFINDインデックスに保存されているすべての情報にアクセスできるようにするためのサーバー。これには、CERN実験プログラムのライブ ラリノートと、IBMとCERNのCMSヘルプスクリーンと、CERN/CNのドキュメントと、Computer Newsletterの記事などがあります。
  • どのマシンにもインストールできて、そのマシンに保存されているファイルをハイパーテキストとしてアクセスできるようにするためのサーバ。
  • ユーザーがマークアップタグを使って、独自のヘルプファイル用のハイパーテキストを書くことができる方法。他のハイパーテキスト操作の仕組みは、この段階 では必要ない。
  • InternetとDECnetプロトコルの世界にアクセスできるようにするためのゲートウェイプロセス。
  • ハイパーテキストサーバーを管理するためのガイドライン。
  • 大規模な実験をするために必要などんな情報アクセスが必要かの分析。

この段階では、ドキュメントを読むことは誰でもできるようになりますが、新しいドキュメントを作成する手段は、既存のものに依存してしまいます。例えば、 FINDインデックスに新しい素材を入れたり、ニュース記事をポストするには、現在と同じ手段を使う必要があります。既存のデータを、ハイパーテキストの 形式や、高エネルギー物理(研究所)のユーザーに受け入れられているような補助的な形式便利で見るときは、便利になります。

フェーズ2:開始から6ヶ月の目標

この重要な段階においては、以下のことができるようにします:

  • 読者が、新しいリンクと新しい素材を作成できるようにする。この段階では、誰でも著作ができるようになります。
  • CERNVMを使っている人たちや、他のHEP VMサイトのための、VM/XAで動くブラウザ。
  • Xウインドウ上で動くブラウザ・エディタ。NextStepで作成された最初のプロトタイプの洗練された機能を、Xベースのコミュニティに広げます。(現 在利用可能なので、OSF/Motifを使うことを想像しています)
  • 新しい素材が利用可能になったときに、ユーザーに自動的にお知らせを送ります。これはニュース記事については必須ですが、他の素材についても非常に便利で す。

読者がリンクを作成できる機能によって、ユーザーが既存のデータに対するアノテーションをすることができるようになり、またメーリングリストや索引などの リストに作成したドキュメントを追加できるようになります。ユーザーが、バグ報告やバグ修正記録、その他のドキュメントに対して、そのドキュメントの著者 が存在すらことすら知らなかった公開されているドキュメントを、リンクすることも可能になります。(つまり、)この段階では、共同著作が可能になるという ことです。これによって、どんな情報の断片でも、後で発見することができる場所を作ることができます。このようにウェブを変更しやすくすることは、情報が 古くなってしまうことを防ぐためには、極めて重要なことです。ウェブの欠けている部分を克服し修正していくためには、情報の源を発見することが可能でなけ ればならないのです。

必要な資源

1.人

以下のような能力が必要だということがわかっています。これらの能力は一人に一つ備わっている必要はありません。括弧の中にイニシャルで人名を記述してい ますが、これらの人々は、すでにこのプロジェクトに興味を示していて、必要なスキルを持っているものの、彼らの上司たちから許可を得ているというわけでは ありません。私たちは常に、他の人々の参加を募集しています。

  • システムアーキテクト。 開発に必要なものをそろえたり、プロトコルを定義する等を行います。デザインの完全性を維持します。(50% TBL : ティム?) マーケットリサーチと製品計画をします。あらゆる部署にいる潜在的な顧客と、プロジェクトそのものや機能について対話します。将来、何を開発 するか選択したり、優先順位を付けるための基準を作成します。(50% RCさん?)
  • ハイパー司書。利用可能なデータの面倒を見て、一貫性を維持します。ユーザーとやりとりをしたり、トレーニングをします。索引と、キーワード(検索)のシ ステムを管理します。プロジェクトそのものが生み出すデータを管理します。(100% KGさん?)
  • ソフトウェアエンジニア:NextStep. NextStep のヒューマンインターフェイスツールを使って、ブラウザ・エディタインターフェイスを作成します。ナビゲーションによる補助についての実験を行います。 NextStepの領域においてプロジェクトの進行に必要な知識を維持します。(50% TBL?)
  • ソフトウェアエンジニア:X-Windowとヒューマンインターフェイスを担当します。OSF/Motif上のヒューマンインターフェイスを作成します。 使いやすくするための改善や設定項目についてのユーザーからの提案に対応します。美しくて実際的なヒューマンインターフェイスを作ります。Xの領域におい て、プロジェクトの進行に必要な知識を維持します。
  • ソフトウェアエンジニア:IBMメインフレーム担当。CERNVMとその他のHEP VMサイト上で動くブラウザを作成します。 FINDサーバーソフトウェアを管理します。CMS, Rexxの領域において必要な知識を維持します。(75% BPさん?)
  • ソフトウェアエンジニア:Macintosh担当。Mac用のブラウザを作成します。必要なものなら何でも使います。(Think-C, HyperCard,など?) (50% RCさん?)
  • ソフトウェアエンジニア: C言語担当。VT100ダム端末用のコードを書き、ブラウザ間で共有することができる部分のブラウザコードを書きます。これは学生の技術プロジェクトを含 んでもよいです。(100% NP + A.N.Other? )

さまざまなシステム用のブラウザや、こまごまとしたカスタマイズや、ハイパーテキストとして利用可能なさまざまなデータに対応して欲しいという要望が、す ぐにあがってくるということが予想されます。これらのウェブを拡げていく作業については、できるだけ積極的にやっていきたいと思いますが、もちろん、その 場合には、マンパワーが必要になりますし、それぞれの場合ごとに専門的にとりくむ必要があります。

2. そのほかの資源

設備やサービスの面で以下のような助けが必要です:

  • このプロジェクトに関わる人たちが近い場所で働き、仕事のアイデアや問題を交換しやすくすることが必要だと感じています。オフィス、あるいは仕事場を近く に集めることが必要です。
  • プロジェクトにかかわる開発者のために、非常に優れたワークステーションが必要です。経験によると、ソフトウェアが大きくなり、メモリと速度がたくさん必 要になるので、ワークステーションは2年ぐらいでアップグレードする必要があります。ハードウェアの増強とソフトウェアの増強によって、ある程度の出費を 見こんでいます。
  • Next以外にも多くの種類のマシンにむけたソフトウェアを開発するので、多種類のワークステーションを利用することを想像しています。VMSマシンのた めには、開発工数を節約するため、すでにあるVACクラスタを利用したいと考えています。
  • 商用のハイパーテキストソフトウェアを購入したいです。プロジェクトでこれを使うことができれば、開発するものを少なくでき、メンテナンスの時間も節約で き、しかもそれを使うことで、応用のきく経験が得られると感じています。購入するのは、たとえば次のようなものかもしれません:ガイドライセンス: CHF750; KMS full author license CHF1500, 評価キットCHF100.フレームメーカー: CHF2000 など)
  • 計算機資源も必要となります。例えば、開発環境として、バックアップつきの、信頼できるNFSのようなファイルサーバーが必要です。インターネット、 DECnet BITNET接続をもつマシン上でデーモンソフトウェアを動作させることも必要です。これらは、オペレーターやシステム管理者に、ある程度手間をかけさせ ることになるでしょう。

将来の見通し

  • 上記の2つの段階によって、極めて便利なツールが手に入ります。やろうとしていることが大きすぎるかもしれませんが、それぞれのステップは、私たちの能力 と既存の技術の範囲で容易にできます。将来、以下のようなことによって、プロジェクトは、さらに進行していきます:
  • 夜中に動作して、利用可能な情報の索引を作るデーモンプログラム。
  • データベースから自動的にハイパーテキスト形式で表示するサーバー。テーブルの定義やSQLを用いてビューを定義することができるもの。
  • オンライン上の他のサイトにある、互換性のある情報にうまく接続できるようにする作業。
  • システムの正しい利用・不正な利用や、CERN内の人たちがどのように活用していくかについてのまじめな検討。

参照

[1] �
T. Berners-Lee/CN, HyperText and CERN . An explanation of hypertext, and why it is important for CERN. A background document explaining the ideas behind this project.
[2]
T. Berners-Lee/CN, Hypertext Design Issues . A detailed look at hypertext models and facilities, with a discussion of choices to be made in choosing or implementing a system.
[3]
Other documentation on the project is stored in hypertext form and which leads to further references.

著作権

原文の著作権は以下を参照のこと:

Copyright © [1990] World Wide Web Consortium, (Massachusetts Institute of Technology, European Research Consortium for Informatics and Mathematics, Keio University). All Rights Reserved. http://www.w3.org/Consortium/Legal/2002/copyright-documents-20021231

翻訳者

中嶋謙互 (なかじま けんご,コミュニティーエンジン )