(57)【特許請求の範囲】
【請求項１】
複数のソフトウェアツールに関する異なるタイプの複数の文書を管理するためのコンピュータ実行方法であって、前記ソフトウェアツールは少なくとも２つのワークベンチでグループ化され、各ワークベンチはソフトウェアツールの異なるサブセットを含み、ワークベンチのソフトウェアツールが前記タイプを有する文書を作成し編集し又は修正するために使用可能である場合、文書のタイプはワークベンチに機能的に関連付けられており、前記方法は、
現在ワークベンチを表示するステップと、
ユーザの選択に応じて、ユーザから目標ワークベンチの選択を受信するステップと、
目標ワークベンチを切り換え、前記目標ワークベンチと関連付けられるタイプの複数の文書のうち前記現在ワークベンチによって決定される文書を編集するステップと
を備えることを特徴とするコンピュータ実行方法。
【請求項２】
前記現在ワークベンチにおける現在文書を編集するステップであって、目標ワークベンチに切り換えるときに、当該編集される文書が前記現在文書によってさらに決定されることを特徴とする請求項１に記載のコンピュータ実行方法。
【請求項３】
ワークベンチは、階層的に相関しており、ユーザによって実行されるタスクの階層を反映することを特徴とする請求項１又は２に記載のコンピュータ実行方法。
【請求項４】
前記編集される文書は、前記目標ワークベンチと関連付けられるタイプの新文書であることを特徴とする請求項１乃至３のいずれかに記載のコンピュータ実行方法。
【請求項５】
前記編集される文書は、前記目標ワークベンチと関連付けられるタイプの現存文書であることを特徴とする請求項１乃至３のいずれかに記載のコンピュータ実行方法。
【請求項６】
編集される現存文書は、前記現在文書に関連する文書間でさらに決定されることを特徴とする請求項２又は５に記載のコンピュータ実行方法。
【請求項７】
前記編集される文書は、前記現在文書内のオブジェクトの選択によってさらに決定されることを特徴とする請求項２乃至６のいずれかに記載のコンピュータ実行方法。
【請求項８】
前記現在文書の選択された前記オブジェクトは、編集されるべき文書のオブジェクトに関係することを特徴とする請求項７に記載のコンピュータ実行方法。
【請求項９】
前記編集される文書は、前記現在文書と前記編集される文書内のオブジェクトとの間の関係によってさらに決定されることを特徴とする請求項２乃至６のいずれかに記載のコンピュータ実行方法。
【請求項１０】
各ワークベンチは、ソフトウェアシステムの１つ又は複数のソフトウェアツールを含むことを特徴とする請求項１乃至９のいずれかに記載のコンピュータ実行方法。
【請求項１１】
前記ユーザは、前記ソフトウェアシステムのどのツールが各ワークベンチに含まれているかを決定することを特徴とする請求項１０に記載のコンピュータ実行方法。
【請求項１２】
前記ソフトウェアツールはＣＡＤ／ＣＡＭ／ＣＡＥソフトウェアシステムのツールであることを特徴とする請求項１０又は１１に記載のコンピュータ実行方法。
【請求項１３】
利用可能なワークベンチのリストをユーザに表示するステップをさらに含むことを特徴とする請求項１乃至１２のいずれかに記載のコンピュータ実行方法。
【請求項１４】
請求項１乃至１３のいずれかに記載のコンピュータ実行方法をコンピュータ上で実行するための命令を備えたコンピュータプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項１５】
複数のソフトウェアツールに関する異なるタイプの複数の文書を管理するためのコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記ソフトウェアツールは少なくとも２つのワークベンチでグループ化され、各ワークベンチはソフトウェアツールの異なるサブセットを含み、ワークベンチのソフトウェアツールが前記タイプを有する文書を作成し編集し又は修正するために使用可能である場合、文書のタイプはワークベンチに機能的に関連付けられており、前記コンピュータプログラムは、
現在ワークベンチを表示するステップと、
ユーザの選択に応じて、ユーザから目標ワークベンチの選択を受信するステップと、
目標ワークベンチを切り換え、前記目標ワークベンチと関連付けられるタイプの複数の文書のうち前記現在ワークベンチによって決定される文書を編集するステップと
をコンピュータに実行させる命令を備えたことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項１６】
前記コンピュータプログラムは、前記現在ワークベンチにおける現在文書を編集するステップの命令をさらに備えたことを特徴とする請求項１５に記載のコンピュータ読み取り可能な記録媒体。
【請求項１７】
前記コンピュータプログラムは、利用可能なワークベンチのリストをユーザに表示するステップの命令をさらに備えたことを特徴とする請求項１５又は１６に記載のコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ソフトウェアシステムを使用する方法および記録媒体に関する。
【０００２】
【従来の技術】
コンピュータシステムはデータまたは情報を、しばしば文書と呼ばれるデータファイルまたはデータセットに記憶することができる。文書は、コンピュータが動作しているときに一時的にコンピュータのメモリ（例えばＲＡＭ、ＲＯＭ等）に記憶させたり、あるいは文書をそこから検索してコンピュータに使用する物理的媒体（例えばハードディスク、フロッピーディスク等）により長期間にわたって記憶させることができる。文書は画像ファイル、プレゼンテーション、テキスト文書、データベース、音声ファイルおよびスプレッドシート（ｓｐｒｅａｄｓｈｅｅｔｓ）を含めたいくつかのデータタイプ（ｄａｔａ  ｔｙｐｅｓ）を格納することが可能である。
【０００３】
ソフトウェアアプリケーションによって、文書内のデータを作成、アクセスおよび修正することができる。それぞれ異なるアプリケーションはそれぞれ異なる文書タイプ（ｄｏｃｕｍｅｎｔ  ｔｙｐｅｓ）に関連し、関連する文書タイプのデータを作成、編集または修正するソフトウェアツールを含む。例えば、ユーザは、Ｍｉｃｒｏｓｏｆｔ  Ｗｏｒｄのようなワードプロセッシングアプリケーション（ｗｏｒｄ  ｐｒｏｃｅｓｓｉｎｇ  ａｐｐｌｉｃａｔｉｏｎ）を用いてテキスト文書を作成し、Ｍｉｃｒｏｓｏｆｔ  Ｗｏｒｄの「ファイル」プルダウンメニューの中にあるツール（例えば「新規作成」、「保存」、「印刷」ツール等）を使用してテキスト文書を作成、記憶および印刷する。同様にユーザは、Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌのような表計算アプリケーション（ｓｐｒｅａｄｓｈｅｅｔ  ａｐｐｌｉｃａｔｉｏｎ）を用いて表計算文書を作成し、数学関数ツールを使用して表計算文書内のデータを解析し、図形作成ツールを使用して表計算文書内に含まれるデータを図示する。テキスト文書および表計算文書の外観とユーティリティ（ｕｔｉｌｉｔｙ）は関連するワードプロセッシングアプリケーションおよび表計算アプリケーション内のツールによって決定される。
【０００４】
一般的に、ユーザが関連するアプリケーションのツールを使用して文書を処理する場合は、選択したアプリケーションに関連するタイプの文書だけを作成または修正することができる。例えば、ワードプロセッシングプログラムを使用する場合はテキスト文書だけを作成および修正することができ、表計算プログラムを使用する場合は表計算文書のみを処理することができる。したがって、アプリケーション機能は文書中心モデル（ｄｏｃｕｍｅｎｔ  ｃｅｎｔｒｉｃ−ｍｏｄｅｌ）に従う。文書中心モデルは、特定のアプリケーションが特定のタイプの文書に限定されること、およびその逆も同じであることをユーザが理解することを示唆する。
【０００５】
ユーザが、複数のアプリケーションを必要とし、そのために複数の文書の使用を必要とする複数のタスクを実行したい場合は、文書中心アプリケーションモデルはそのユーザにとって制約的なものとなりうる。例えば、ユーザが１つのアプリケーションを使用して文書を処理しタスクを実行しながらも、関連しているものの、異なるツールを必要とする異なるタスクを実行したい場合は、第２のアプリケーションのツールを使用しなければならない。第２のアプリケーションを使用するには、現行の文書から抜け出て、第２のアプリケーションに適応するタイプの第２の文書を開き、第２の文書内で所望のタスクを実行する必要がある。ユーザは、文書タイプの異なる２つの文書内に２つのアプリケーションの結果を記憶する。
【０００６】
文書が独立的に記憶されている場合は、１つのアプリケーション内で１つの文書を処理しながら他の関連文書を自動的に呼び出すことはできない。むしろ、他の関連文書を呼び出すには、異なるアプリケーションを使用してその関連文書を検索する必要がある。したがって、ユーザはマニュアルでカタログシステムを保持し、２つの異なる文書に関連データおよび関連情報が含まれていることを覚えておく必要がある。
【０００７】
関連する文書を個別的に記憶することに対する代替手段として、文書の埋込（Ｄｏｃｕｍｅｎｔ  ｅｍｂｅｄｄｉｎｇ）を利用することができる。埋込（ｅｍｂｅｄｄｉｎｇ）はオペレーティングシステムまたはソフトウェアアプリケーションによって支援される。例えば、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ９５／９８では、二次文書を一次文書に移送して埋め込むことができるように、しばしばＯＬＥ（ｏｂｊｅｃｔ  ｌｉｎｋｉｎｇ  ａｎｄ  ｅｍｂｅｄｄｉｎｇ）技術が使用される。
【０００８】
ユーザは第１に一次プログラムを使用して移送すべき二次文書を正確に判断し、第２にそのような文書を開き、第３に扱おうとするデータを二次文書に挿入し、第４に二次プログラムを使用して二次文書を編集し、第５に二次文書を一次文書に移送する必要がある。これは長く面倒なプロセスである。したがって、例えば、ユーザはワードプロセッシングアプリケーションを使用してテキスト文書を作成し、表計算アプリケーションを使用して、テキスト文書に移送および記憶する表計算文書を作成または修正することになるが、これはユーザフレンドリなプロセスであるとはいえない。
【０００９】
ユーザが一次的なソフトウェアアプリケーションを使用してそのソフトウェアアプリケーションに関連する特定タイプの文書を処理する場合は、その文書内に埋め込まれたオブジェクトを作成し、その特定文書タイプに関連しない二次的なアプリケーションのツールを用いてその文書を編集することができる。アプリケーション環境内のオブジェクトは文書の離散的要素、例えばスプレッドシート、グラフィックまたは一片のテキストであってもよい。図形空間がそのオブジェクトに関する文書に割り当てられ、そのオブジェクトが文書の一部として記憶される。ユーザが文書内に含まれるオブジェクトを選択することによって二次的なアプリケーションを動かし、オブジェクト内に含まれるデータを編集することができる。例えば、Ｍｉｃｒｏｓｏｆｔ Ｗｏｒｄを使用してテキスト文書を扱う場合、ユーザはテキスト文書内に表計算オブジェクトを作成し、Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌ（登録商標）のツールを用いてスプレッドシートを編集することができる。Ｗｏｒｄ文書内で表計算オブジェクトを選択することによって、Ｅｘｃｅｌのツールを動かし、スプレッドシートを編集することができる。
【００１０】
１つの文書タイプに従うオブジェクトが異なるタイプの文書内に埋め込まれる場合は、１つの文書タイプしか作成されない。１つの文書は、異なる文書タイプに従う多様な異なるアプリケーションの結果を記憶する。したがって、上述の例では、ユーザが一次的なアプリケーションとしてワードプロセッシングプログラムを使用していたため、テキスト作業および表計算作業がテキスト文書内に記憶されることになる。複数のユーザがコンピュータ上の複数の文書にアクセスすることを必要とするグループワーク環境では、単一文書に多くの異なるタスクの結果が記憶されることによって、アクセスと生産性が制限される。それは、複数のユーザが同時に利用できる文書の数を減少させる効果、またはそれぞれ異なるアプリケーションを使用する技能および経験を有するユーザに対して自分たちのアプリケーションで全く同一の文書を扱うことを強制する効果を有する。
【００１１】
アプリケーションおよび文書タイプと文書中心アプリケーションの機能的関係（ｆｕｎｃｔｉｏｎａｌ  ｒｅｌａｔｉｏｎｓｈｉｐ）は、標準的なオペレーティングシステム（例えば、Ｍｉｃｒｏｓｏｆｔ  ＮＴ、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ等）によりアプリケーションおよび文書タイプを使用する方法によって、さらに明確に示される。ユーザはアプリケーションで作業を開始できるように、オペレーティングシステムのコマンド行（ｃｏｍｍａｎｄ  ｌｉｎｅ）に命令を入力するか、またはそのアプリケーションを表すアイコンをマウスでクリックすることによって、アプリケーションを開く、すなわちアプリケーションを起動させてコンピュータディスプレイ上に表示させる。アプリケーションを開くとウィンドウが表示され、その中に文書を表示してアプリケーションのツールを用いて文書を処理することができる。通常は、アプリケーションを開くと、そのアプリケーションに関連するタイプの文書がコンピュータのウィンドウ内に自動的に表示される。文書は以前作成してコンピュータに記憶したものであってもよいし、またはユーザがアプリケーションソフトウェアのツールを用いて修正し、次いで保存する新規の空白文書であってもよい。したがって、オペレーティングシステムを用いてアプリケーションを開くと、そのアプリケーションに関連するタイプの文書が自動的に開かれる。
【００１２】
同様に、例えば文書のアイコンをクリックすることによってオペレーションシステムソフトウェア機能を有する文書を開くと、開かれる文書のタイプに機能的に関連するアプリケーションを開くことが自動的に起きる。このように、文書タイプとそれに関連するソフトウェアアプリケーションは基本的にリンクされている。
【００１３】
【発明が解決しようとする課題】
従来のシステムには上述したような種々の問題があり、さらなる改善が望まれている。
【００１４】
そこで本発明の目的は、従来装置の性能を改善することができるソフトウェアシステムを使用する方法および記録媒体を提供することにある。
【００１５】
【課題を解決するための手段】
ソフトウェアツールをワークベンチ（ｗｏｒｋｂｅｎｃｈｓ）として知られるタスク指向機能グループに集めることが可能である。ワークベンチを作成して異なるタスク、例えば、テキストを編集するタスク、部品を設計するタスク、部品を機械または装置に組み立てるタスク、および機械または装置の一部に作用する応力を分析するタスク等を実行することができる。さらに、ワークベンチを個々の文書タイプに関連づけ、ワークベンチを使用して特定の文書タイプを処理する。あるワークベンチがある文書内でそのタスクを実行することができれば、その文書タイプはそのワークベンチに関連付けられている。
【００１６】
一般に、本発明は１態様において、ユーザが文書を処理することを可能にするコンピュータシステムオペレーション（ｏｐｅｒａｔｉｏｎ）方法を特徴とする。その方法は、階層的に相互関連したワークベンチの集合体を使用することが含まれる。階層的に相互関連した文書の集合体はソフトウェアメソッド（ｓｏｆｔｗａｒｅ  ｍｅｔｈｏｄ）によっても使用され、各々の文書が少なくとも１つのワークベンチに関連する文書タイプを有する。さらに、ユーザが１つのワークベンチを選択すると、少なくとも１つの文書が呼び出される。新規文書を作成する場合、またはコンピュータ上の既存の文書を検索する場合に文書が呼び出される。
【００１７】
本発明の実施形態としては以下に示す１つまたは複数の特徴を挙げることができる。異なるワークベンチがソフトウェアシステムの異なるソフトウェアツールを含み、ユーザは各ワークベンチに含めるソフトウェアシステムのツールを決定する。ユーザがワークベンチを選択する場合に作成する文書は、ユーザがワークベンチの集合体から特定のワークベンチを選択することによって決定された文書タイプの文書であってもよい。そのコンピュ−タシステムオペレーション方法は、ＣＡＤ／ＣＡＭ／ＣＡＥソフトウェアシステムであってもよい。
【００１８】
一般に、本発明は他の態様において、ユーザが相互に関連した文書を処理することを可能にするコンピュータシステムオペレーション方法を特徴とする。その方法には、ユーザが第１のワークベンチを使用して第１の文書内に含まれるデータを処理する場合にユーザが第２のワークベンチを選択するのを監視すること、および第２の文書が第２のワークベンチに関連する文書タイプの文書である場合にユーザが第２のワークベンチを選択するのに応じて第２の文書を作成することが含まれる。
【００１９】
本発明の実施形態としては、以下に示す１つまたは複数の特徴を挙げることができる。第１および第２のワークベンチはソフトウェアシステムの異なるソフトウェアツールを含み、ユーザは各ワークベンチに含めるソフトウェアシステムのツールを決定する。また、第１の文書の文書タイプが第２の文書の文書タイプと異なっていてもよい。さらに、第２の文書は、ユーザが第２のワークベンチを選択することによって決定された文書タイプの文書であってもよい。第２の文書を作成するのに応じて引用データが生成されて第１の文書内に記憶され、そのデータが第２の文書内のデータのすべてまたは一部を引用する。あるいは、第２の文書を作成するのに応じて引用データが生成されて第２の文書内に記録され、そのデータが第１の文書内のデータのすべてまたは一部を引用する。
【００２０】
本発明の他の実施形態は、下記の特徴を１つまたは複数含んでもよい。１つまたは複数の文書に含まれたデータを表す１つまたは複数のオブジェクトは、コンピュータ表示装置の第１のウィンドウに表示してもよく、コンピュータ表示装置の第２のウィンドウは、その第１のウィンドウに表示された文書の１つからユーザがオブジェクトを選択する時に動かされていてもよい。１つまたは複数の文書に含まれたデータを表す１つまたは複数のオブジェクトは、コンピュータ表示装置の第１のウィンドウに表示してもよく、コンピュータ表示装置の第２のウィンドウは、ユーザがワークベンチを選択する時に動かされていてもよい。ソフトウェア動作方法は、ＣＡＤ／ＣＡＭ／ＣＡＥのソフトウェアシステムであってもよい。
【００２１】
一般に、別の態様において、本発明は、複数のソフトウェアツールを含むＣＡＤ／ＣＡＭ／ＣＡＥコンピュータシステムを動作させる方法を特徴とする。ユーザによるソフトウェアシステムの使用の一部として１つまたは複数の個々の動作を行うために、前記ソフトウェアツールの各々をユーザが使用する。その方法は、複数のソフトウェアツールを複数のワークベンチの中に組み入れるステップを含み、各ワークベンチは、特定のタスクを行うためにユーザが一般に必要とするソフトウェアツールの異なる部分集合を含む。さらに、その方法は、ワークベンチ間の階層を定義するステップを含み、その階層は、少なくとも１つのワークベンチから少なくとも１つの他のワークベンチへの少なくとも１つの参照（reference）を含む。その上、その方法は、コンピュータシステム上の階層のレコードを格納するステップを含む。さらに、その方法は、文書が、使用されるワークベンチと関連付けられた文書タイプのものである場合に、いくつかの所定の文書タイプの１つである文書に対して作業を行うためにワークベンチを使用するステップを含む。
【００２２】
本発明の１つの実施形態では、１つまたは複数のワークベンチが使用されて、１つまたは複数の文書上で作業を行う。これらドキュメントでは、各ワークベンチがいくつかの可能な文書タイプの少なくとも１つの文書タイプと関連付けられており、さらに各文書が文書タイプを有している。利用可能なワークベンチのリストがユーザに表示され、ユーザによるコマンドの入力が監視される。ユーザの入力したコマンドがワークベンチの選択を指示する場合は、新しい文書が作成される。ここで、新しい文書の型が選択されたワークベンチと関連付けられる。しかし、ユーザの入力したコマンドが、現存文書の選択を指示する場合は、その現存文書は検索され、現存文書の型と関連付けられたワークベンチに関連してユーザに表示される。
【００２３】
一般に、他の態様において、本発明は、コンピュータプログラムを特徴とする。コンピュータプログラムは、コンピュータ読取り可能な記録媒体に存在する。コンピュータプログラムは命令、すなわち、階層的に相互に関係付けられたワークベンチのセットおよび階層的に相互に関係付けられた文書のセットをコンピユータに作成させる命令を含む。各文書は、少なくとも１つの前記ワークベンチと関連付けられる文書タイプの文書であり、ユーザがその文書の型と関連付けられたワークベンチを選択する時に、少なくとも１つの文書が作成される。
【００２４】
一般に、他の態様において、本発明は、コンピュータプログラムを特徴とする。コンピュータプログラムは、コンピュータ読取り可能な記録媒体に存在し、使用すべき第２のワークベンチについてのユーザの選択をコンピュータに監視させる命令を含む。この時ユーザは、第１のワークベンチを使用して第１の文書に含まれたデータに対して作業を行い、および、ユーザの第２のワークベンチの選択に応じて、第２の文書を作成する。この時の第２の文書は第２のワークベンチと関連付けられた文書タイプの文書である。
【００２５】
一般に、他の態様において、本発明は、コンピュータプログラムを特徴とする。コンピュータプログラムは、コンピュータ読取り可能な記録媒体に存在し、ＣＡＤ／ＣＡＭ／ＣＡＥコンピュータソフトウェアシステムを動作させるための命令を含む。ＣＡＤ／ＣＡＭ／ＣＡＥコンピュータソフトウェアシステムは複数のソフトウェアツールを含む。ソフトウェアツールの各々をユーザが使用して１つまたは複数の個々の動作を、ユーザが使用するソフトウェアシステムの一部として実行する。コンピュータプログラムは、複数のワークベンチの中へ複数のソフトウェアツールを組み込む命令を含む。ここで各ワークベンチは複数のソフトウェアツールの異なるサブセットを含み、各異なるワークベンチは特定のタスクをユーザが実行するために一般的に必要なソフトウェアツールをも含む。コンピュータプログラムはワークベンチ間の階層を決定する命令を含む。ここで、階層は少なくとも１つのワークベンチから少なくとも１つの他のワークベンチへの少なくとも１つの参照を含む。コンピュータプログラムは、コンピュータシステム上の階層のレコードを格納する。コンピュータプログラムは、文書がワークベンチと関連付けられた文書タイプの文書である場合に、ワークベンチを使用してその文書上で作業を行うための命令をさらに含む。
【００２６】
本発明の実施形態は、下記の特徴の１つまたは複数を含んでもよい。本コンピュータプログラムは、１つまたは複数の文書に対して作業を行うために１つまたは複数のワークベンチを使用するための命令を含んでもよい。各ワークベンチは複数の所定の文書タイプの少なくとも１つの文書タイプと関連付けられ、さらに、各文書は文書タイプを有する。コンピュータプログラムは、利用可能なワークベンチのリストをユーザに表示する命令、およびユーザによるコマンドの入力を監視する命令を含んでもよい。ユーザの入力したコマンドがワークベンチの選択を指示する場合は、新しい文書を作成してもよい。上記新しい文書の型は前記ワークベンチと関連付けられた文書タイプである。ユーザが入力したコマンドが現存する文書の選択を指示する場合は、その現存文書が、検索され、その現存する文書の型と関連付けられたワークベンチに関連してユーザに表示されてもよい。
【００２７】
一般に、他の面で、本発明は、文書の作成および記憶を制御するためにソフトウェアシステムを使用する装置を特徴とする。装置は、そのソフトウェアシステムで動作する電子式ディジタルコンピュータシステム、文書を格納する手段、階層的に相互に関係付けられたワークベンチを作成する手段、階層的に相互に関係付けられた文書を作成する手段を含み、各文書が少なくとも１つのワークベンチと関連付けられた文書タイプを含み、さらに、ユーザがその文書の型と関連付けられたワークベンチを選択する時に、少なくとも１つの文書が作成される。さらに、
一般に、他の態様で、本発明は文書の作成および記憶を制御するためにソフトウェアシステムを使用する装置を特徴とする。装置は、ソフトウェアシステムをオペレーションする電子式ディジタルコンピュータシステム、文書を格納する手段、ユーザが第１の文書に含まれたデータに対して作業を行うために第１のワークベンチを使用する時に、使用するワークベンチのユーザによる選択を監視する手段、第２のワークベンチをユーザが選択する時に、第２の文書がその第２のワークベンチと関連付けられる文書タイプのものである場合に、その第２の文書を作成する手段を含む。
【００２８】
一般に、他の態様において、本発明は、複数のソフトウェアツールを含むＣＡＤ／ＣＡＭ／ＣＡＥソフトウェアシステムを使用する装置を特徴とする。ここで、そのソフトウェアツールは、ソフトウェアシステムのユーザによる使用の一部として１つまたは複数の特定の作用を行うためにユーザが使用するものである。本装置は、ソフトウェアシステムで動作する電子式ディジタルコンピュータシステム、各ワークベンチがソフトウェアツールの異なる部分集合を含み、各部分集合が特定のタスクを行うためにユーザが一般に必要とするソフトウェアツールを含む場合に、そのソフトウェアツールを複数のワークベンチの中に編成する手段、階層が少なくとも１つのワークベンチから少なくとも１つの他のワークベンチへの少なくとも１つの参照を含む場合に、その階層をワークベンチの間に定義する手段、コンピュータシステム上の階層を格納する手段、および、文書が使用されるワークベンチと関連付けられる文書タイプを有する場合に、文書に対して作業を行うためにワークベンチを使用する手段を含む。
【００２９】
１つの実施形態において、本発明は、各文書が文書タイプを有し、各ワークベンチが少なくとも１つの文書タイプと関連付けられる場合に、１つまたは複数の文書に対して作業を行うために１つまたは複数のワークベンチを使用する手段、利用可能なワークベンチのリストをユーザに表示する手段、ユーザによるコマンドの入力を監視する手段、ユーザの入力したコマンドがワークベンチの選択を指示する場合は、新しい文書の文書タイプがその選択されたワークベンチと関連付けられた文書タイプである場合に、その新しい文書を作成する手段、ユーザの入力したコマンドが現存文書の選択を指示する場合に、現存文書を検索する手段、および、前記現存文書の文書タイプと関連付けられたワークベンチと関連して現存文書をユーザに表示する手段を含む。
【００３０】
本発明の利点は、下記のものの１つまたは複数を含む。ソフトウェアシステムのユーザがソフトウェアシステムの中の文書に対して様々なタスクを行う時に、ワークベンチ環境により、文書およびオブジェクトの管理および編成が容易になる。ワークベンチ環境の中で、ユーザが異なるタスクの間を切り換える時に、ソフトウェアシステムは、必要な文書を作成することおよび、現存の内容およびデータを使用することに自動的に配慮する。
【００３１】
本発明の他の特徴および利点は、下記の説明および特許請求の範囲から明らかになるであろう。
【００３２】
【発明の実施の形態】
以下、図面を参照して本発明の実施形態を詳細に説明する。
【００３３】
図１は、コンピュータシステム１００の要素を図示する。コンピュータシステム１００は、データ信号、アドレス信号および制御信号を供給するプロセッサホストバス１０２に接続された中央処理装置（ＣＰＵ）１０１を有する。ＣＰＵ１０１は、Ｐｅｎｔｉｕｍ（登録商標）プロセッサ、ＰｅｎｔｉｕｍＰｒｏ（登録商標）プロセッサ、ＰｅｎｔｉｕｍＩＩ（登録商標）プロセッサ、ＭＩＰＳ（登録商標）プロセッサ、Ｐｏｗｅｒ  ＰＣ（登録商標）プロセッサ、またはＡＬＰＨＡ（登録商標）プロセッサなどの任意の従来の汎用のシングルチップまたはマルチチップのプロセッサであってよい。さらに、プロセッサ１０１は、ディジタル信号プロセッサまたはグラフィックスプロセッサなどの任意の従来の特殊目的マイクロプロセッサであってもよい。マイクロプロセッサ１０１は、それをプロセッサホストバス１０２に結合する従来のアドレスライン、データライン、および制御ラインを有する。
【００３４】
コンピュータシステム１００は、一体化されたメモリ制御装置１０４を有するシステム制御装置１０３を含む。システム制御装置１０３は、ホストバス１０２に接続され、ＲＡＭ１０５および読出し専用メモリ（ＲＯＭ）１０７に対するインタフェースを提供する。また、システム制御装置１０３は、周辺バスブリッジ機能に対してホストバスを提供する。これによって、システム制御装置１０３により、プロセッサのホストバス１０２上の信号は、周辺バス１１０上の信号と互換的に交換できるようになる。周辺バス１１０は、例えば、ペリフェラルコンポーネントインターコネクト（ＰＣＩ）バス、インダストリスタンダードアーキテクチャ（ＩＳＡ）バス、またはマイクロチャネルバスであってもよい。
【００３５】
例えば、ハードディスク駆動機構１１４に結合されたハードディスク駆動機構制御インタフェース１１１、ビデオディスプレイ１１５に結合されたビデオディスプレイ制御装置１１２、および、キーボードおよびマウスの制御装置１１３などのアクセサリ装置を周辺バス１１０に結合し、プロセッサ１０１で制御することができる。コンピュータシステムは、コンピュータシステムネットワーク、イントラネットまたはインタネットに対する接続を含んでもよい。そのような接続上で、データおよび情報の送信および受信を行ってもよい。
【００３６】
ＲＯＭメモリ１０７は、オペレーティングシステムがハードディスク１１４から「立ち上がる」ことができるようにするシステム１００の構成情報および基本コンピュータルーチンを格納してもよい。オペレーティングシステムは、例えば、Ｍｉｃｒｏｓｏｆｔ  Ｄｉｓｋ  Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ  （ＤＯＳ）（商標）、Ｗｉｎｄｏｕｓ９５／９８（商標）、Ｗｉｎｄｏｗｓ  ＮＴ（商標）、Ｕｎｉｘオペレーティングシステム、Ａｐｐｌｅ  ＭａｃＯＳ（商標）オペレーティングシステム、または他のオペレーティングシステムである。
【００３７】
オペレーティングシステムは、完全にＲＡＭメモリ１０５に含めてもよいし、または一部をＲＡＭ１０５、ＲＯＭ１０７およびディスク駆動機構記憶装置１１４に含んでもよい。例えば、ＭｉｃｒｏｓｏｆｔのＷｉｎｄｏｗｓ９５（商標）オペレーティングシステムは、Ｗｉｎｄｏｗｓ９５（商標）の使用中にＲＡＭ１０５の中に含むある機能と必要に応じてハードディスク１１４からＲＡＭ１０５に周期的にロードすることができる他の機能とを含む。Ｗｉｎｄｏｕｓ９５／９８（商標）またはＷｉｎｄｏｗｓ  ＮＴ（商標）などのオペレーティングシステムは、ソフトウェアアプリケーション、ソフトウェアシステムおよびソフトウェアシステムのツールを実行する機能を備えている。ソフトウェア機能は、コンピュータシステム１００のビデオ表示制御装置１１２およびその他の資源にアクセスして、ビデオ表示装置１１５に表示されるグラフィックユーザインタフェース（ＧＵＩ）を提供することができる。
【００３８】
図２は、ＧＵＩ表示画像２００を示す。画像２００は、メニュー２０２の形の表、ダイアログボックス２０４、およびアイコン２０６を通じてユーザがアセンブルする（assembled）ワークベンチを示す。各ワークベンチは、ソフトウェアツールのタスク指向の機能的組分けを含む。ワークベンチは、例えば、テキストを編集すること、部品を設計すること、部品を機械または装置にアセンブルすること、および機械または装置の部品にかかる応力を解析することについての様々なタスクを行うように作成してもよい。例えば、コンピュータ援用設計（ＣＡＤ）／コンピュータ援用製造（ＣＡＭ）／コンピュータ支援エンジニアリング（ＣＡＥ）用システムの中で、部品を設計するために使用される部品設計ワークベンチ２１２、様々な部品を機械または装置にアセンブルすることを編成するために使用される部品アセンブリワークベンチ２１４、および巨視的レベルで製品または機械を定義するための製品構造ワークベンチを形成するように、ソフトウェアツールを組分けしてもよい。
【００３９】
ソフトウェアシステムのツールは、ユーザが１つまたは複数のタスク固有のワークベンチの一部になるように個々に選んでもよい。ソフトウェアシステムにより、ユーザは誰でもソフトウェアツールのワークベンチを作成しまたは変更することができるようにしてもよく、或いは、ソフトウェアシステムで、ワークベンチの中のソフトウェアツールを作成しまたは変更するための許可をシステム管理者のために留保し、ワークベンチのツールをソフトウェアシステムの全てのユーザに対して標準化してもよい。ワークベンチがいったん作成されると、それはコンピュータ表示装置１１５上の対応するアイコン２０６またはメニュー項目２０３として表わしてもよい。ワークベンチは、特定の文書タイプと機能的に関連付けられ、その文書タイプに対して作業を行うために使用される。ワークベンチがその文書の中でそのタスクを行うことができる場合に、文書タイプはワークベンチと関連付けられる。このようにして、特定のワークベンチに向けられたタスクは、そのワークベンチが関連付けられる型の文書の中でだけ行えるようにしてもよい。例えば、ＣＡＤ／ＣＡＭ／ＣＡＥの実施の中で、部品ワークベンチは、部品設計文書と関連付けられてもよい。
【００４０】
さらに、図２を参照すると、ソフトウェアシステムは、ワークベンチへのアクセス方法、例えば、メニュー２０２、ダイアログボックス２０４またはアイコン２０６を表示してもよい。各アクセス方法は、特定のワークベンチで使用できる１つまたは複数の文書を列挙するサブメニュー２０８を有してもよい。ユーザは、ワークベンチまたはそのＧＵＩ表現をマウスでクリックすることで、または何か別な方法で選択することで、ワークベンチ、およびその中のソフトウェアツールにアクセスしてもよい。ワークベンチを選択する時に、文書またはオブジェクトを作成し、格納し、または変更するためのソフトウェア機能を動かしてもよい。
【００４１】
特定のワークベンチと関連付けられ、ビデオ表示装置１１５の現在ウィンドウで開かれている現在文書または現在オブジェクトを変更するために、その特定のワークベンチのツールを使用している間に、ユーザはメニュー２０２、ダイアログボックス２０４、またはアイコン２０６を通じて、他のワークベンチにアクセスしてもよい。ユーザは、現在文書に対して、異なる文書に対して、または現在文書か異なる文書かいずれかの中のオブジェクトに対してタスクを行うために、異なるワークベンチを選択してもよい。タスクを行うために異なるワークベンチを選択することで、新しい文書を作成するために、そのタスクを行う新しいウィンドウを作成するために、またはそのタスクを行う現存文書またはウィンドウを開くためにソフトウェア機能を起動してもよい。ワークベンチの選択で、文書を開くために、現存文書を検索するために、または現存文書を開くために、ソフトウェア機能を起動する時に、ワークベンチは文書を呼び出す。
【００４２】
図３を参照すると、ワークベンチ使用可能ソフトウェアシステムは、１つのワークベンチでタスクを行っているユーザが、異なるタスクを行うために異なるワークベンチを使用し始めるのを手助けするプロセス（ステップ３００）を含む。異なるタスクは、ユーザが異なるワークベンチに切り換える前に行っていたタスクに関係がある場合が多い。現在使用中のワークベンチは現在ワークベンチと呼び、選択されたワークベンチは目標ワークベンチと呼ぶ。ユーザが、目標ワークベンチを選択する前にワークベンチをそれまで使用していなかった場合は、ソフトウェアシステムは単に目標ワークベンチを開くだけであり、新しい文書を作成し、新しいウィンドウで編集する（ステップ３１２）。ソフトウェアシステムが初期設定された時に、デフォルト（default）ワークベンチが自動的に割り当てられるので、ステップ３１０の質問が否定で応答されることはない。例えば、ＣＡＤ／ＣＡＭ／ＣＡＥの実施の中で、デフォルトワークベンチは製品構造ワークベンチであってもよく、ユーザは、デフォルトワークベンチを使用するかまたは異なる目標ワークベンチを選択するかいずれかを選ばなければならない。
【００４３】
さらに、図３を参照すると、ユーザが目標ワークベンチを選択した時に、システムは、目標ワークベンチが現在ワークベンチで参照されているかを検査してもよく（ステップ３１４）、その場合には、システムはルーチンＡに入り、または目標ワークベンチが現在ワークベンチを参照しているかを検査してもよく（ステップ３２４）、その場合には、システムはルーチンＢに入る。ワークベンチが別のワークベンチを参照しているかどうか、またはワークベンチが別のワークベンチで参照されているかどうかは、現在ワークベンチおよび目標ワークベンチが関連付けられる文書タイプおよびオブジェクトタイプの間の関係で決定する。第１の文書またはオブジェクトが第２の文書またはオブジェクトの検索を可能にするデータを含む時に、その第１の文書またはオブジェクトは、その第２の文書またはオブジェクトを参照する。しかし、第１の文書は１つまたは複数の中間文書を介して第２の文書を参照してもよいという点から、文書の参照は間接的であってもよい。例えば、ＣＡＤ／ＣＡＭ／ＣＡＥの実施の中で、製品構造文書が別の製品構造文書を参照し、その別の製品構造文書が次に部品文書を参照する場合に、その製品構造文書はその部品文書を参照する。同様に、オブジェクトは間接的に参照し、参照される。したがって、参照は、直接的な参照と間接的な参照の両方を参照する。
【００４４】
文書が別の文書を参照することに加えて、文書がオブジェクトの検索を可能にするデータを含む場合は、その文書はそのオブジェクトを参照してもよい。同様に、オブジェクトが文書または別のオブジェクトの検索を可能にするデータを含む場合には、そのオブジェクトはその文書またはその別のオブジェクトを参照する。このようにして、図９に示されるように、４つのタイプの参照が可能になる。タイプ１は、文書が別の文書を参照する参照であり、タイプ２は、文書が文書の中のオブジェクトを参照する参照であり、タイプ３は、文書の中のオブジェクトが文書を参照する参照であり、タイプ４は、文書の中のオブジェクトが文書の中の別のオブジェクトを参照する参照である。
【００４５】
ソフトウェアシステムは、例えばルックアップテーブルによって、システムの各特定のワークベンチについて、特定のワークベンチを参照するワークベンチを列挙する方法、および、ワークベンチ間の各参照について、含まれる参照のタイプを列挙する方法を含む。１つのワークベンチから別のワークベンチへの参照のタイプは、その２つのワークベンチと関連付けられた文書間の参照のタイプによって定義される。ワークベンチは１つよりも多い文書と関連付けられてもよいが、任意の単一のワークベンチ間の参照に対してはただ１つだけの参照のタイプがソフトウェアシステムに存在する。さらに、ワークベンチＡがワークベンチＢを参照する場合に、ワークベンチＢは必ずしもワークベンチＡを参照しないという点で、参照は対称的ではない。このようにして、ワークベンチ間の参照は、ソフトウェアが行うタスク、およびソフトウェアが使用する文書に階層を課す。ワークベンチの間およびそのワークベンチが関連付けられる文書タイプの間のこの階層は、ソフトウェアシステムをインストールする時に選ばれ、編成されたユーザの特有の要求を反映する。ワークベンチの階層は、ソフトウェアシステムの個々の編成されたユーザが行うタスクの階層を反映する。ワークベンチの間の相互に関係付けられた階層、およびそのワークベンチの関連付けられた文書タイプの間の参照は、ソフトウェアシステムのユーザが様々なタスクを行うワークベンチ間を切り換える時に、文書およびオブジェクトの管理が容易になるような構造をつくるのに役立つ。ソフトウェアシステムをインストールした後で、そのソフトウェアシステムにワークベンチを追加する場合は、ソフトウェアシステムの中のワークベンチ間の階層を更新しなければならない。
【００４６】
図１０を参照すると、例えば、様々なワークベンチと関連付けられた文書タイプをレベルで編成することでワークベンチの階層を実地にさらに説明している。ある文書が、それが参照する他の文書よりも高いレベルにある。部品アセンブリ文書タイプ（例えば、文書Ａｓ）は、部品設計文書タイプ（例えば、文書Ｐ１、Ｐ２、Ｐ３）を参照し、その部品設計文書に含まれるデータを使用して複数の部品を単一の機械または装置に編成する。このようにして、その部品アセンブリ文書（文書Ａｓ）は、その部品設計文書（文書Ｐ１、Ｐ２、Ｐ３）よりも高いレベルにあり、部品文書を参照する。
【００４７】
再び図３を参照すると、目標ワークベンチが現在ワークベンチを参照せず、また、現在ワークベンチによって参照されてもいない場合は、システムは、現在文書がその目標ワークベンチと関連付けられる型のものであるかを検査する（ステップ３３０）。そうである場合は、現在文書および現在ウィンドウの中でそのタスクを行うために目標ワークベンチを使用する（ステップ３２２）。目標ワークベンチが現在文書の中でそのタスク行うことができない場合は、システムは、新しい文書を作成するか、または、その目標ワークベンチと関連付けられ、かつその目標ワークベンチが作業を行うことができる型のものである現存文書を検索し、新しいウィンドウの中でその文書を開き、目標ワークベンチでそれに対して作業を行うことを始める（ステップ３４０）。
【００４８】
図４を参照すると、目標ワークベンチが現在ワークベンチの中で参照される場合は、プロセスはルーチンＡに進む。プロセスがルーチンＡに進む時に、現在ワークベンチが、タイプ１またはタイプ２の参照のように、現在ワークベンチは目標ワークベンチを参照する全文書と関連付けられるかもしれないという意図で、システムは、現在ワークベンチが大域的に目標ワークベンチを参照しているかを検査する（ステップ４００）。そうである場合は、システムは、別のウィンドウで既に開かれている目標ワークベンチと関連つけられた参照された文書があるかを検査する（ステップ４１０）。そうである場合は、システムは、目標ワークベンチに切り換え、その別のウィンドウを動かし、参照された文書に対して作業を始める（ステップ４１２）。しかし、そうでない場合は、システムは新しい文書を作成しそれを現在（参照）文書の中で参照するか、または現存の参照された文書を検索し、次にルーチンＣに進む（ステップ４１４）。ステップ４１４の後でルーチンＣに進むことは、現在文書の中で参照された目標ワークベンチと関連付けられた文書が存在しているが、それは別のウィンドウで開かれていないことを意味している。
【００４９】
現在ワークベンチが大域的に目標ワークベンチを参照していない場合は（ステップ４００）、システムは、ユーザが目標ワークベンチで作業を行うべき現在文書の中のオブジェクトを選択したかを検査する（ステップ４２０）。そうでない場合は、システムは、目標ワークベンチに切り換え、新しい文書を作成するか、またはその目標ワークベンチと関連付けられた現存文書を取得し、新しいウィンドウの中で新しい文書の編集を始める（ステップ４２２）。現在ワークベンチの中に選択されたオブジェクトがある場合は（ステップ４２０）、システムは、選択されたオブジェクトが目標ワークベンチと関連付けられた型の文書の中に含まれるかを検査する（ステップ４２４）。そうでない場合は、システムはルーチンＤに進むが、そうである場合は、システムは、その文書が別のウィンドウで既に開かれているかを検査する（ステップ４２６）。その文書が別のウィンドウで既に開かれている場合は、システムはその別のウィンドウの中のその文書を動かし、目標ワークベンチでそれに対して作業を行うことを始める（ステップ４２８）。そうでない場合は、ルーチンＣに進む。
【００５０】
このようにして、現在ワークベンチが目標ワークベンチを参照する場合は、システムは、可能である限りで、その目標ワークベンチと関連付けられた参照された文書（ステップ４１２）かまたはその目標ワークベンチと関連付けられた参照されたオブジェクトを含む文書か（ステップ４２８）いずれかを含む現存ウィンドウを動かす。そうでなければ、その参照された文書またはその参照されたオブジェクトが存在するが、現在開いているウィンドウの中に存在しない場合は、システムはルーチンＣに進む（ステップ４１４または４２６）。さらに、その参照されたオブジェクトが目標ワークベンチと関連付けられた文書の中に含まれていない場合は、システムはルーチンＤに進む（ステップ４２４）。最後の手段として、システムは新しい文書を作成し、それを新しいウィンドウで編集する（ステップ４２２）。したがって、システムは、目標ワークベンチのユーザの選択で特徴付けられるように、タスクのユーザの選択に従って文書およびオブジェクトを管理する。システムは、ワークベンチの間の所定の参照および参照の型を使用して、文書とオブジェクトの表示、作成、および編成を効率的に管理する。
【００５１】
図５の（ａ）を参照すると、ルーチンＣで、目標ワークベンチと関連付けられた文書が適当に編集可能か検査する（ステップ５００）。文書が、目標ワークベンチが新しいウィンドウを開くことなしに作業を行うことができる型の文書である場合は、その文書は適当に編集可能である。したがって、文書が適当に編集可能である場合は、ユーザは、現在ワークベンチでこれまで使用していたのと同じウィンドウを目標ワークベンチで使用し続けることができる。例えば、ＣＡＤ／ＣＡＭ／ＣＡＥのシステムの中で、現在ワークベンチが部品アセンブリワークベンチであり、現在文書タイプが複数の部品設計オブジェクトを含む部品アセンブリ文書である場合は、ユーザは編集すべき部品を選択してもよい。部品を選択することで、選択された部品を編集するために部品設計ワークベンチを起動してもよい。しかし、部品設計オブジェクトは、部品アセンブリ文書に関連して、新しいウィンドウを開くことなしに編集可能であってもよい。このようにして、システムにより、ユーザは、ウィンドウを開いたり閉じたりすることなしに、編集すべき様々な文書の間を切り換えて、適当な文書に対して様々なタスクを行うことができるようになる。適当に編集可能な文書は、目標ワークベンチのソフトウェアツールを使って編集してもよい（ステップ５０２）。文書が適当に編集可能でない場合は、その時は、システムは目標ワークベンチを使用して新しいウィンドウの中で文書を編集する（ステップ５０４）。
【００５２】
さらに、図５の（ｂ）を参照すると、ルーチンＤで、選択されたオブジェクトが目標ワークベンチを参照することができるかを検査する（ステップ５１０）。そうである場合は、システムは、目標ワークベンチと関連付けられる型の新しい文書を作成し、現在オブジェクトの中でその文書を参照し（ステップ５１２）、次にルーチンＣに進む。そうでない場合は、システムは、目標ワークベンチに切り換えて、新しい文書を作成し、新しいウィンドウの中でその目標ワークベンチのツールで編集する（ステップ５１４）。
【００５３】
図６を参照すると、ルーチンＢがスタートする時に、タイプ１またはタイプ３の参照のように、現在ワークベンチが目標ワークベンチで参照される全文書と関連付けられているかもしれないという意図で、システムは、最初に、現在ワークベンチが目標ワークベンチによって大域的に参照されているかを検査する（ステップ６００）。そうである場合は、システムは、現在参照された文書が別の文書に含まれているか、または別の文書の一部になっているという意図で、その現在参照された文書が別の文書に関連して編集されているかを検査する（ステップ６１０）。そうである場合は、システムは、その別の文書がその目標ワークベンチと関連付けられるかを検査する（ステップ６１２）。そうである場合は、同時に同じウィンドウで開かれるより高い参照文書に関連して、その参照された文書が開かれ、したがって、システムは、新しいウィンドウを開くことなしに、目標ワークベンチに切り換え、参照する文書を適当に編集する（ステップ６２２）。
【００５４】
現在文書が別の文書に関連して編集されていない場合は、または現在文書が目標ワークベンチと関連つけられない文書で参照されている場合は、システムは、目標ワークベンチと関連付けられた参照する文書が別のウィンドウで開かれているかを検査する（ステップ６１４）。そうである場合は、システムは、目標ワークベンチに切り換え、その別のウィンドウを活動化してその参照する文書を編集する（ステップ６２４）。そうでない場合は、システムは、目標ワークベンチに切り換え、新しい高いレベルの文書を作成し、その新しい文書の中で現在文書を参照し、新しいウィンドウでその新しい文書を編集する（ステップ６２６）。
【００５５】
さらに、図６を参照すると、現在ワークベンチが目標ワークベンチによって大域的に参照されていない場合は、システムは、現在文書の中でこれまでオブジェクトが選択されたかを検査する（ステップ６３０）。そうである場合は、システムは、ルーチンＥ（後で説明される）に進むが、そうでない場合は、システムは目標ワークベンチに切り換え、目標ワークベンチと関連付けられた新しい文書を作成し、新しいウィンドウでその新しい文書を編集する（ステップ６４０）。
【００５６】
このようにして、現在ワークベンチが目標ワークベンチで参照される場合は、可能なかぎりで、システムは目標ワークベンチと関連付けられた参照する文書を適当に編集する（ステップ６２２）。参照する文書が存在するが、別のウィンドウで開かれている場合は、システムは、そのウィンドウに切り換え、参照する文書を編集する（ステップ６２４）。参照を見出すことができない場合は、システムは、新しい文書を作成し、その新しい文書の中で現在文書を参照し、目標ワークベンチを使って新しいウィンドウの中でその新しい文書を編集し始める（ステップ６２６）。全現在文書が目標ワークベンチで参照されていないが、現在文書の中のオブジェクトが参照されている場合は、システムはルーチンＥにはいる（ステップ６３０）。最後の手段として、システムは新しい参照しない文書を作成し、それを新しいウィンドウで編集する（ステップ６４０）。したがって、システムは、目標ワークベンチのユーザによる選択で特徴付けられるように、タスクのユーザによる選択に従って文書およびオブジェクトを管理する。システムは、ワークベンチ間の所定の参照を使用して文書とオブジェクトの表示、作成、および編成を効率的に管理する。
【００５７】
図７を参照すると、目標ワークベンチが現在ワークベンチを参照するが、その参照が大域的なものでない場合、および現在文書の中に選択されたオブジェクトがある場合は、ルーチンＥが始まる。システムは、最初に、選択されたオブジェクトが別の文書の中に含まれているかまたは別の文書の一部であるという意図で、現在選択されたオブジェクトが別の文書に関連して編集されているかを検査する（ステップ７００）。そうである場合は、システムは、その別の文書が目標ワークベンチと関連付けられているかを、および、その別の文書がその選択されたオブジェクトを参照するかを検査する（ステップ７１０）。そうである場合は、システムは目標ワークベンチに切り換え、参照する文書を適当に編集する（ステップ７１２）。そうでない場合は、または、選択されたオブジェクトが別の文書に関連して編集されていない場合は、システムは、その選択されたオブジェクトを参照しかつ目標ワークベンチと関連付けられた文書が、別のウィンドウで何処かで開かれているかを検査する（ステップ７１２）。そうである場合は、システムは目標ワークベンチに切り換え、その別のウィンドウの中の参照する文書を動かす（ステップ７２４）。そうでない場合は、システムは、目標ワークベンチに切り換え、新しい文書を作成し、その新しい文書の中で選択されたオブジェクトを参照し、目標ワークベンチを使って新しいウィンドウの中でその新しい文書を編集する（ステップ７２６）。
【００５８】
図８は、ワークベンチの概念のいくつかの態様、および、文書とオブジェクトの表示、作成および編成を管理するためにワークベンチ間の参照を使用する方法を実地に説明するために使用できる。図８の（ａ）は、「回転可能シャフト」８１０という名称のついた製品構造文書を示し、図８の（ｂ）および図８の（ｃ）は、それぞれ「軸受」８３０および「シャフト」８５０という名称のついた文書を示す。
【００５９】
図８の（ｂ）で、軸受８３０は製品構造文書であり、ローラー軸受オブジェクト８３２を含む。軸受８３０の中に含まれたローラー軸受オブジェクト８３２は、また、部品設計ワークベンチと関連付けられている。図８の（ｃ）に示されるシャフト製品構造文書８５０および軸受製品構造文書８３０は、回転可能シャフト製品構造文書８１０にアセンブルされる。製品構造文書８１０は、部品アセンブリワークベンチと関係つけられる。図８に実地に説明される例では、部品アセンブリワークベンチは、部品設計ワークベンチを参照するように定義してもよく、文書間の参照、すなわち図９に示されているようなタイプ１の参照によってそのようにすると定義してもよい。
【００６０】
図８の（ａ）を参照すると、ユーザが部品アセンブリワークベンチを使用して、部品アセンブリウィンドウ８０２の中で回転可能文書８１０に対して作業を行っている場合は、ユーザはシャフト８５０の長さを変更することに決めてもよい。そうするために、ユーザは部品設計ワークベンチを使用する必要がある。シャフト文書８５０が別のウィンドウで既に開いている場合は、部品設計ワークベンチを選ぶことで、シャフト部品設計ウィンドウおよび部品設計ワークベンチのツールが動かされる（ステップ４１２に従って）。シャフト部品設計文書８５０が存在するが、別のウィンドウで開かれていない場合は、システムはシャフト部品設計文書を取得し（ステップ４１４に従って）、それを部品設計ワークベンチのツールを使って部品アセンブリウィンドウ８０２で編集する（ステップ５０２に従って）。
【００６１】
図８の（ｃ）を参照すると、ユーザが部品設計ワークベンチを使用して、部品設計ウィンドウ８５２の中でシャフト部品設計文書８５０に対して作業を行っている場合は、ユーザはシャフトを軸受とアセンブルして回転可能シャフトにすることに決めてもよい。そうするために、ユーザは部品アセンブリワークベンチを使用する必要がある。回転可能シャフト製品構造文書がこれまで作成されていない場合は、システムはそれを作成し、その中でシャフト部品設計文書を参照する（ステップ６２６に従って）。回転可能シャフト部品アセンブリ文書が別のウィンドウで開かれている場合は、システムはそれを動かし、部品アセンブリワークベンチを使ってそれを編集し始める（ステップ６２４に従って）。
【００６２】
図８の（ａ）を参照すると、ユーザが部品設計ワークベンチを使用して、部品アセンブリウィンドウ８０２の中でシャフト部品設計文書８５０に作業を行っている場合は、ユーザは、回転可能シャフトを形成する軸受とのシャフトのアセンブリを変更することに決めてもよい。そうするために、ユーザは、部品アセンブリワークベンチを使用する必要がある。ユーザは既に部品アセンブリウィンドウの中にいるので、システムはただ単に部品アセンブリワークベンチに切り換え、回転可能シャフト製品構造文書を適当に編集するだけである。
【００６３】
【発明の効果】
以上、説明したように、本発明によれば、ソフトウェアシステムのユーザがソフトウェアシステムの中の文書に対して様々なタスクを行う時に、ワークベンチ環境により、文書およびオブジェクトの管理および編成が容易になる。ワークベンチ環境の中で、ユーザが異なるタスクの間を切り換える時に、ソフトウェアシステムは、必要な文書を作成することおよび、現存の内容およびデータを使用することに自動的に配慮する。
【図面の簡単な説明】
【図１】コンピュータシシテムのブロック図である。
【図２】例示的なグラフィカルユーザインタフェースソフトウェアシステムの表示を示す図である。
【図３】ソフトウェアシステムの機能のフローチャートである。
【図４】ソフトウェアシステムの機能のフローチャートである。
【図５】ソフトウェアシステムの機能のフローチャートである。
【図６】ソフトウェアシステムの機能のフローチャートである。
【図７】ソフトウェアシステムの機能のフローチャートである。
【図８】ワークベンチベースソフトウェアの機能の使用方法の例を示す図である。
【図９】ワークベンチの間の階層関係を示す図である。
【図１０】文書タイプの階層構造を示す図である。
【符号の説明】
１００  コンピュータシステム
１０１  中央処理装置（ＣＰＵ）
１０２  プロセッサホストバス
１０３  システム制御装置
１０４  メモリ制御装置
１０５  ＲＡＭメモリ
１０６  キャッシュＳＲＡＭ
１０７  読出し専用メモリ（ＲＯＭ）
１１０  周辺バス
１１１  ハードディスク駆動機構制御インタフェース
１１２  ビデオ表示制御装置
１１３  キーボードおよびマウス制御装置
１１４  ハードディスク駆動機構
１１５  ビデオディスプレイ
２００  ＧＵＩ表示画像
２０２  メニュー
２０３  メニュー項目
２０４  ダイアログボックス
２０６  アイコン
２０８  サブメニュー
２１２  部品設計ワークベンチ
２１４  部品アセンブリワークベンチ
８０２  部品アセンブリウィンドウ
８１０  回転可能シャフト製品構造文書
８３０  軸受製品構造文書
８３２  ローラー軸受オブジェクト
８５０  シャフト製品構造文書
８５２  部品設計ウィンドウ
【図１】
0003916836.tif 000002
【図２】
0003916836.tif 000003
【図３】
0003916836.tif 000004
【図４】
0003916836.tif 000005
【図５】
0003916836.tif 000006
【図６】
0003916836.tif 000007
【図７】
0003916836.tif 000008
【図８】
0003916836.tif 000009
【図９】
0003916836.tif 000010
【図１０】
0003916836.tif 000011