(57)【特許請求の範囲】
【請求項１】
情報を処理するコンピュータに用いられるプログラムにおいて、
コンピュータに、
記憶部に記憶した許諾数内で実行が許可されたソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いた第１状態に係る識別情報を制御部により抽出し、
前記ソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いていない第２状態に係る識別情報を前記制御部により抽出し、
前記許諾数に達した後に他のコンピュータからソフトウェアの実行要求を受け付けた場合に、抽出した前記第１状態に係る識別情報を参照し、前記制御部により第１情報を出力し、
前記許諾数に達した後にソフトウェアの実行要求を受け付けた場合に、抽出した前記第２状態に係る識別情報を参照し、前記制御部により第２情報を前記第１情報とは異なる形態で出力する
処理を実行させるプログラム。
【請求項２】
第１状態に係る識別情報を抽出する処理において、編集可能なファイルを開いている編集状態に係る識別情報と、編集可能ではないファイルを開いている場合の第１状態に係る識別情報とを前記制御部により抽出し、
前記制御部により抽出した編集状態に係る識別情報と前記編集可能ではないファイルを開いている場合の第１状態に係る識別情報とで異なる形態にて前記第１情報を出力する
請求項１に記載のプログラム。
【請求項３】
前記第２状態に係る識別情報を参照して第２情報を出力した後に、前記制御部により前記第２状態に係る識別情報に対応する操作情報を受け付けたか否かを判断し、
所定時間内に操作情報を受け付けていないと判断した場合に、前記識別情報を参照し、前記制御部によりソフトウェアの終了命令を出力する
請求項１に記載のプログラム。
【請求項４】
前記第２状態に係る識別情報を参照して第２情報を出力した後に、前記制御部により前記第２状態に係る識別情報に対応する操作情報を受け付けたか否かを判断し、
所定時間内に操作情報を受け付けていないと判断した場合に、前記識別情報を参照し、前記制御部によりソフトウェアの終了命令を出力する
請求項２に記載のプログラム。
【請求項５】
前記編集可能ではないファイルを開いている場合の第１状態に係る識別情報を参照して第１情報を出力した後に、前記制御部により前記第１状態に係る識別情報に対応する操作情報を受け付けたか否かを判断し、
前記所定時間よりも長い第１所定時間内に操作情報を受け付けていないと判断した場合に、前記識別情報を参照し、前記制御部によりソフトウェアの終了命令を出力する
請求項４に記載のプログラム。
【請求項６】
前記第１情報を出力する場合、
前記第２情報を出力した後に、許諾数に達し、かつ、ソフトウェアの実行要求を受け付けているか否かを判断し、
前記許諾数に達し、かつ、ソフトウェアの実行要求を受け付けていると判断した場合に、抽出した前記第１状態に係る識別情報を参照し、前記制御部により前記第１情報を出力する
請求項１または２に記載のプログラム。
【請求項７】
前記第１情報を出力する場合、
前記第２情報を出力した後に、許諾数に達し、かつ、ソフトウェアの実行要求を受け付けているか否かを判断し、
前記許諾数に達し、かつ、ソフトウェアの実行要求を受け付けていると判断した場合に、抽出した編集可能ではないファイルを開いている場合の前記第１状態に係る識別情報を参照し、前記制御部により前記第１情報を出力し、
該第１情報を出力した後に、許諾数に達し、かつ、ソフトウェアの実行要求を受け付けているか否かを判断し、
前記許諾数に達し、かつ、ソフトウェアの実行要求を受け付けていると判断した場合に、抽出した編集状態に係る識別情報を参照し、前記制御部により前記第１情報を出力する
請求項２に記載のプログラム。
【請求項８】
情報を処理するコンピュータにおいて、
ソフトウェアと対応付けて同時に実行可能な許諾数を記憶した記憶部と、
前記記憶部に記憶された許諾数内で前記ソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いた第１状態に係る識別情報と、該ソフトウェアによりファイルを開いていない第２状態に係る識別情報とを抽出する制御部と、
実行中である前記ソフトウェアの数が前記許諾数に達した後に他のコンピュータから該ソフトウェアの実行要求を受け付けた場合に、前記第１状態に係る識別情報により特定される第１のコンピュータへ第１情報を出力し、前記第２状態に係る識別情報により特定される第２のコンピュータへ第２情報を前記第１情報とは異なる形態で出力する通信部と
を有することを特徴とするコンピュータ。 
【請求項９】
制御部を有するコンピュータにより情報を処理する情報処理方法において、
記憶部に記憶した許諾数内で実行が許可されたソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いた第１状態に係る識別情報を制御部により抽出し、
前記ソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いていない第２状態に係る識別情報を前記制御部により抽出し、
前記許諾数に達した後に他のコンピュータからソフトウェアの実行要求を受け付けた場合に、抽出した前記第１状態に係る識別情報を参照し、前記制御部により第１情報を出力し、
前記許諾数に達した後にソフトウェアの実行要求を受け付けた場合に、抽出した前記第２状態に係る識別情報を参照し、前記制御部により第２情報を前記第１情報とは異なる形態で出力する
情報処理方法。
【請求項１０】
中央装置及び複数の端末装置が通信網を介して接続された通信システムにおいて、
前記中央装置は、
第一の端末装置および第二の端末装置に、同時に実行される許諾数が設定されたソフトウェアの実行を許可する制御部と、
前記ソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いた第１状態に係る識別情報と、該ソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いていない第２状態に係る識別情報を記憶する記憶部と、
前記記憶部から前記第１状態に係る識別情報および前記第２状態に係る識別情報を抽出する抽出部と、
前記許諾数に達した後にソフトウェアの実行要求を第三の端末装置から受け付けた場合に、前記第１状態に係る識別情報に対応する前記第一の端末装置へ、第１情報を出力する第１出力部と、
前記許諾数に達した後にソフトウェアの実行要求を受け付けた場合に、前記第２状態に係る識別情報に対応する前記第二の端末装置へ、第２情報を前記第１情報とは異なる形態で出力する第２出力部と
を有することを特徴とする通信システム。
【請求項１１】
情報を処理するコンピュータに用いられるプログラムにおいて、
コンピュータに、
記憶部に記憶した許諾数内で実行が許可されたソフトウェアを実行するとともに、該ソフトウェアの利用状態として複数に分類された状態のうちの第１状態に係る識別情報と、該複数に分類された状態のうちの第２状態に係る識別情報とを制御部により抽出し、
実行中である前記ソフトウェアの数が前記許諾数に達した後に他のコンピュータから該ソフトウェアの実行要求を受け付けた場合に、抽出した前記第１状態に係る識別情報により特定される第１のコンピュータへ前記制御部により第１情報を出力し、抽出した前記第２状態に係る識別情報により特定される第２のコンピュータへ前記制御部により第２情報を前記第１情報とは異なる形態で出力する
処理を実行させるプログラム。
【請求項１２】
情報を処理するコンピュータにおいて、
ソフトウェアと対応付けて同時に実行可能な許諾数を記憶した記憶部と、
前記記憶部に記憶された許諾数内で前記ソフトウェアを実行するとともに、該ソフトウェアの利用状態として複数に分類された状態のうちの第１状態に係る識別情報と、該複数に分類された状態のうちの第２状態に係る識別情報とを抽出する制御部と、
実行中である前記ソフトウェアの数が前記許諾数に達した後に他のコンピュータから該ソフトウェアの実行要求を受け付けた場合に、前記第１状態に係る識別情報により特定される第１のコンピュータへ第１情報を出力し、前記第２状態に係る識別情報により特定される第２のコンピュータへ第２情報を前記第１情報とは異なる形態で出力する通信部と
を有することを特徴とするコンピュータ。 
【請求項１３】
情報を処理するコンピュータにより実行される方法において、
記憶部に記憶した許諾数内で実行が許可されたソフトウェアを実行するとともに、該ソフトウェアの利用状態として複数に分類された状態のうちの第１状態に係る識別情報と、該複数に分類された状態のうちの第２状態に係る識別情報とを制御部により抽出し、
実行中である前記ソフトウェアの数が前記許諾数に達した後に他のコンピュータから該ソフトウェアの実行要求を受け付けた場合に、抽出した前記第１状態に係る識別情報により特定される第１のコンピュータへ前記制御部により第１情報を出力し、抽出した前記第２状態に係る識別情報により特定される第２のコンピュータへ前記制御部により第２情報を前記第１情報とは異なる形態で出力する
ことを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報を処理するコンピュータに用いられるプログラム、コンピュータ、情報処理方法、及び、通信システムに関する。
【背景技術】
【０００２】
予め定めた許諾数内でのみソフトウェアの実行を認めるソフトウェアの利用形態が普及している。ライセンス数を超える実行要求を受け付けた場合、実行中のユーザに警告を与え、設定時間経過後にライセンスを開放するライセンス管理装置が知られている（例えば、特許文献１参照）
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−２９７２５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術では、設定時間を経過した場合、一律にライセンスが開放されてしまうという問題があった。
【０００５】
本発明は斯かる事情に鑑みてなされたものである。その目的は、ソフトウェアによりファイルを開いているか否かにより、許諾数を超えたことを示す情報を異なる形態で出力することにより、ソフトウェアの使用状況に即した処理が可能となるプログラム等を提供することにある。
【課題を解決するための手段】
【０００６】
本願に開示するプログラムは、情報を処理するコンピュータに用いられるプログラムにおいて、コンピュータに、記憶部に記憶した許諾数内で実行が許可されたソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いた第１状態に係る識別情報を制御部により抽出し、前記ソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いていない第２状態に係る識別情報を前記制御部により抽出し、前記許諾数に達した後に他のコンピュータからソフトウェアの実行要求を受け付けた場合に、抽出した前記第１状態に係る識別情報を参照し、前記制御部により第１情報を出力し、前記許諾数に達した後にソフトウェアの実行要求を受け付けた場合に、抽出した前記第２状態に係る識別情報を参照し、前記制御部により第２情報を前記第１情報とは異なる形態で出力する処理を実行させる。
【発明の効果】
【０００７】
本願の一観点によれば、異なる形態で情報を出力することにより、ソフトウェアの使用状況に即して、ソフトウェアの実行を要求するユーザの待ち時間を低減することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】通信システムの概要を示す模式図である。
【図２】サーバコンピュータのハードウェア群を示すブロック図である。
【図３】利用テーブルのレコードレイアウトを示す説明図である。
【図４】利用状態のイメージを示す説明図である。
【図５】ファイルテーブルのレコードレイアウトを示す説明図である。
【図６】待機テーブルのレコードレイアウトを示す説明図である。
【図７】パーソナルコンピュータのハードウェア群を示すブロック図である。
【図８】ログイン処理を示すフローチャートである。
【図９】ログイン処理を示すフローチャートである。
【図１０】利用状態の記憶処理手順を示すフローチャートである。
【図１１】利用状態の記憶処理手順を示すフローチャートである。
【図１２】通知処理の手順を示すフローチャートである。
【図１３】通知処理の手順を示すフローチャートである。
【図１４】通知情報の表示イメージを示す説明図である。
【図１５】通知情報の表示イメージを示す説明図である。
【図１６】通知情報の表示イメージを示す説明図である。
【図１７】ファイルの終了処理の手順を示すフローチャートである。
【図１８】許諾プログラムの終了処理手順を示すフローチャートである。
【図１９】実施の形態２に係るサーバコンピュータのハードウェア群を示すブロック図である。
【図２０】時間テーブルのレコードレイアウトを示す説明図である。
【図２１】終了処理の手順を示すフローチャートである。
【図２２】終了処理の手順を示すフローチャートである。
【図２３】終了処理の手順を示すフローチャートである。
【図２４】終了処理の手順を示すフローチャートである。
【図２５】通知情報出力処理の手順を示すフローチャートである。
【図２６】通知情報出力処理の手順を示すフローチャートである。
【図２７】通知情報出力処理の手順を示すフローチャートである。
【図２８】実施の形態４に係るサーバコンピュータのハードウェア群を示すブロック図である。
【図２９】待機レベルテーブルのレコードレイアウトを示す説明図である。
【図３０】通知情報の表示処理手順を示すフローチャートである。
【図３１】通知情報の表示処理手順を示すフローチャートである。
【図３２】実施の形態５に係る利用テーブルのレコードレイアウトを示す説明図である。
【図３３】実施の形態５に係るファイルテーブルのレコードレイアウトを示す説明図である。
【図３４】変換処理命令を受け付けた際の処理手順を示すフローチャートである。
【図３５】通知情報の表示処理手順を示すフローチャートである。
【図３６】通知情報の表示イメージを示す説明図である。
【図３７】実施の形態６に係るサーバコンピュータのハードウェア群を示すブロック図である。
【図３８】サーバコンピュータの機能ブロック図である。
【図３９】サーバコンピュータの機能ブロック図である。
【発明を実施するための形態】
【０００９】
実施の形態１
以下実施の形態を、図面を参照して説明する。図１は通信システムの概要を示す模式図である。通信システムは中央装置１及び複数の端末装置２Ａ〜２Ｅ（以下、場合により２で代表する）を含む。中央装置１は例えばサーバコンピュータまたはパーソナルコンピュータ等である。以下では中央装置１をサーバコンピュータ１という。端末装置２は例えばパーソナルコンピュータ、ＰＤＡ（Personal Digital Assistance）、携帯電話機またはブックリーダ等である。以下では端末装置２をパーソナルコンピュータ２という。サーバコンピュータ１とパーソナルコンピュータ２とはインターネット等の通信網Ｎを介して接続されている。
【００１０】
サーバコンピュータ１は許諾を受けたソフトウェア（以下、許諾プログラムという）の許諾数を管理している。図１の例では許諾数（上限）が３であり、パーソナルコンピュータ２Ａ〜２Ｃのユーザが許諾プログラムを利用している。許諾プログラムを実行した場合、許諾プログラムに関連するファイルが列記される第１状態となる。すなわち、この状態では許諾プログラムは実行されているが、当該許諾プログラムによりファイルを開いていない第１状態にある。また許諾プログラムによりファイルを開いた場合、ファイルが開かれた第２状態へと移行する。図１の例では、パーソナルコンピュータ２Ａ及び２Ｂが第１状態にあり、パーソナルコンピュータ２Ｃが第２状態にある。
【００１１】
パーソナルコンピュータ２Ｄ及び２Ｅのユーザは、パーソナルコンピュータ２Ａ〜２Ｃのユーザが許諾プログラムの利用を終了しない限り、許諾プログラムを利用することができない。例えばパーソナルコンピュータ２Ｅが許諾プログラムの実行要求をサーバコンピュータ１へ出力した場合、サーバコンピュータ１は第１状態にあるパーソナルコンピュータ２Ａ及び２Ｂへ、許諾状況に関する第１情報を出力する。パーソナルコンピュータ２Ａ及び２Ｂの表示部には第１情報が表示される。一方、サーバコンピュータ１は第２状態にあるパーソナルコンピュータ２Ｃへ、許諾状況に関する第２情報を、第１情報とは異なる形態で出力する。パーソナルコンピュータ２Ｃの表示部には第２情報が表示される。以下、詳細を説明する。
【００１２】
図２はサーバコンピュータ１のハードウェア群を示すブロック図である。サーバコンピュータ１は制御部としてＣＰＵ(Central Processing Unit)１１、ＲＡＭ（Random Access Memory）１２、入力部１３、表示部１４、記憶部１５、時計部１８及び通信部１６等を含む。ＣＰＵ１１は、バス１７を介してハードウェア各部と接続されている。ＣＰＵ１１は各ハードウェアを制御すると共に、記憶部１５に格納された許諾プログラム１５１Ｐ及び制御プログラム１５Ｐに従って、ソフトウェア機能を実行する。
【００１３】
通信部１６はファイアウォールとしての機能を果たすゲートウェイ等であり、パーソナルコンピュータ２または図示しない他のコンピュータとの間でＨＴＴＰ（HyperText Transfer Protocol）等により情報を送受信する。入力部１３はマウス及びキーボード、または、タッチパネル等の入力デバイスである。入力部１３は、受け付けた操作情報をＣＰＵ１１へ出力する。表示部１４は液晶ディスプレイまたは有機ＥＬ（electroluminescence）ディスプレイ等であり、ＣＰＵ１１の指示に従い各種情報を表示する。時計部１８は時間情報をＣＰＵ１１へ出力する。ＲＡＭ１２は例えばＳＲＡＭ（Static ＲＡＭ）、ＤＲＡＭ（Dynamic ＲＡＭ）、フラッシュメモリ等である。ＲＡＭ１２は、記憶部としても機能し、ＣＰＵ１１による各種プログラムの実行時に発生する種々のデータを一時的に記憶する。
【００１４】
記憶部１５は例えばハードディスクまたは大容量メモリ等である。記憶部１５には許諾プログラム１５１Ｐ、ユーザデータファイル１５１、制御プログラム１５Ｐ、許諾数ファイル１５２、利用テーブル１５３、ファイルテーブル１５４及び待機テーブル１５５等を含む。許諾プログラム１５１Ｐは、許諾数ファイル１５２に記憶された上限となる許諾数の範囲内で、実行されるプログラムが記憶されている。許諾プログラム１５１Ｐは例えば、ＣＡＤ（Computer Aided Design）プログラム、文章作成プログラム、表計算プログラム、ファイル管理プログラム、音声または映像編集プログラム、または会計支援プログラム等である。本実施形態では許諾プログラム１５１ＰがＣＡＤプログラムである例を一例として説明する。許諾数ファイル１５２には、上限となる許諾数が記憶されている。なお、許諾数はオペレータが入力部１３または図示しない他のコンピュータから適宜の値を設定し、許諾数ファイル１５２に値を記憶することができる。
【００１５】
ユーザデータファイル１５１には許諾プログラム１５１Ｐにより開かれるファイルが記憶されている。具体的には、ユーザを特定するための識別情報（以下、ユーザＩＤという）に対応付けて、許諾プログラム１５１Ｐにより開かれるＣＡＤファイル、文書ファイルまたはＰＤＦ（Portable Document Format、登録商標）ファイル等が記憶されている。なお、本実施形態においては、許諾プログラム１５１Ｐ及びユーザデータファイル１５１をサーバコンピュータ１に記憶し、パーソナルコンピュータ２をシンクライアントとして利用する形態を挙げて説明するがこれに限るものではない。パーソナルコンピュータ２に許諾プログラム１５１Ｐを予めインストールしておき、使用に際し、サーバコンピュータ１による使用許可を得た場合にのみパーソナルコンピュータ２で実行させる形態であっても良い。
【００１６】
図３は利用テーブル１５３のレコードレイアウトを示す説明図である。利用テーブル１５３は、許諾ＩＤフィールド、ＰＣＩＤフィールド、ユーザＩＤフィールド、起動日時フィールド及び利用状態フィールド等を含む。許諾ＩＤフィールドには、許諾により実行が許可されている許諾プログラム１５１Ｐを特定するための識別情報が記憶されている。図３の例では、３ユーザがログインし、許諾ＩＤ「０１」、「０２」、「０３」で特定される許諾プログラム１５１Ｐが実行中であることが示されている。ＰＣＩＤフィールドには、許諾プログラム１５１Ｐを実行中のパーソナルコンピュータ２を特定するための識別情報が、許諾ＩＤに対応付けて記憶されている。なお、ＰＣＩＤは例えば、パーソナルコンピュータ２に予め付与されたコンピュータ名、ＩＰ（Internet Protocol）アドレス、またはＭＡＣ（Media Access Control）アドレス等を用いればよい。ユーザＩＤフィールドには、許諾プログラム１５１Ｐを実行中のユーザを特定するための識別情報が、許諾ＩＤに対応づけて記憶されている。
【００１７】
起動日時フィールドには、各ユーザが許諾プログラム１５１Ｐを起動した日時を許諾ＩＤに対応付けて記憶している。ＣＰＵ１１は、パーソナルコンピュータ２から許諾プログラム１５１Ｐの起動要求を受け付けた場合、許諾プログラム１５１Ｐを起動し、新たな許諾ＩＤを生成する。また起動要求を出力したパーソナルコンピュータ２のＰＣＩＤ及びユーザＩＤを生成した許諾ＩＤに対応付けて利用テーブル１５３に記憶する。ＣＰＵ１１は時計部１８を参照し、起動日時を起動日時フィールドに記憶する。利用状態フィールドには、許諾プログラム１５１Ｐの利用状態が、許諾ＩＤに対応付けて記憶されている。利用状態は、許諾プログラム１５１Ｐを起動しただけで、ファイルを開いていない第２状態（以下、未オープン状態という）と、ファイルを開いている第１状態とを含む。
【００１８】
図４は利用状態のイメージを示す説明図である。図４Ａは未オープン状態のイメージを示す説明図である。許諾プログラム１５１Ｐを実行した場合、ユーザデータファイル１５１に記憶したファイルを格納するフォルダ群がツリー構造で、左側に表示される。以下では、図４Ａに示したウィンドウを基本画面という。基本画面上でフォルダを選択した場合、右側に、フォルダ内のファイルが一覧表示される。なお、本実施形態で示した画面例はあくまで一例であり、これに限るものではない。図４Ａに示すように、ファイルとして、ＣＡＤファイル及びＰＤＦファイルが一覧表示されている。許諾プログラム１５１Ｐにより開かれるファイルには、編集を行うことが可能なファイルと、編集可能でないファイルとに大別される。以下では、編集可能でないファイルを、編集を行うことが可能なファイル以外のファイルという。
【００１９】
編集を行うことが可能なファイルは例えば、書き込み権限が付与されたＣＡＤファイル、テキストファイル等の文書作成ファイル、プレゼンテーションスライド作成ファイル、または表計算ファイル等である。編集を行うことが可能なファイルを開いた場合、ＣＰＵ１１は、未オープン状態から編集状態へと移行する。図４Ｂは編集状態のイメージを示す説明図である。基本画面に加えて表示部１４には、編集状態にあるＣＡＤ編集画面が表示されている。ＣＰＵ１１は編集状態へ移行した場合、利用状態フィールドに「編集」を記憶する。
【００２０】
編集を行うことが可能なファイル以外のファイルとしては、書き込み権限がない、または、書き込み制限が課せられているＰＤＦファイル、文書作成ファイル、プレゼンテーションスライド作成ファイル、または表計算ファイル等である。その他、書き込みが制限されている操作説明を記したヘルプファイル、メールファイル、画像データファイル、動画データファイル、音声データ、または部品リストファイル等である。本実施形態においては、説明を容易にするために、編集を行うことが可能なファイル以外のファイルとしてＰＤＦファイルを用いる例を挙げて説明する。ＣＰＵ１１は、書き込み権限のないＰＤＦファイルが開かれた場合、当該ＰＤＦファイルの属性情報を参照し、書き込み制限が付与されているか否かを判断する。ＣＰＵ１１は書き込み制限が付与されていると判断した場合、利用状態を、未オープンから閲覧状態へ変更する。なお、許諾プログラム１５１Ｐにより開かれるファイルは、許諾プログラム１５１Ｐ上で動作するファイルに限るものではない。その他、許諾プログラム１５１Ｐのファイルを選択する基本画面から選択され、開かれたファイルであって、他の表計算プログラムまたはメーラ上で動作するファイルであっても良い。すなわち、許諾プログラム１５１Ｐにより開かれるファイルは、許諾プログラム１５１Ｐを実行した場合に表示されるファイルを選択する基本画面を通じて、選択及び開くことのできるファイルであればよい。以下では、許諾プログラム１５１Ｐ上で動作するファイル、及び、基本画面から選択され他のプログラム上で動作するファイルを含めて許諾プログラム１５１Ｐに関連するファイルという。
【００２１】
図４Ｃは閲覧状態にある画面イメージを示す説明図である。基本画面に加えて表示部１４には、閲覧状態にあるＰＤＦに係る文書が表示されている。ＣＰＵ１１は閲覧状態へ移行した場合、利用状態フィールドに「閲覧」を記憶する。以上のとおり、第２状態には、編集を行うことが可能なファイルを開いた状態（編集状態）及び編集可能でないファイルを開いた状態（閲覧状態）が含まれる。なお、本実施形態ではファイルに書き込み制限が付与されているか否かを参照して、利用状態を「閲覧」または「編集」と、判断することとしたがこれに限るものではない。ＣＰＵ１１は、ファイルの拡張子の種類に応じて利用状態を「閲覧」または「編集」のいずれかと判断しても良い。
【００２２】
図５はファイルテーブル１５４のレコードレイアウトを示す説明図である。ファイルテーブル１５４は、許諾ＩＤフィールド、ユーザＩＤフィールド、ファイル名フィールド、起動日時フィールド及び利用状態フィールド等を含む。ファイルテーブル１５４は、ユーザが開いているファイルの状態を記憶している。ファイル名フィールドには、許諾ＩＤ及びユーザＩＤに対応付けて、対応するユーザが開いているファイル名が記憶されている。起動日時フィールドには、各ファイルの起動日時が、ファイル名に対応付けて記憶されている。利用状態フィールドにはファイル名に対応付けて利用状態が記憶されている。
【００２３】
ＣＰＵ１１は許諾プログラム１５１Ｐを起動後に、パーソナルコンピュータ２から許諾プログラム１５１Ｐに関連するファイルを開く命令を受け付けた場合、許諾ＩＤ及びユーザＩＤに対応付けてファイル名を記憶する。また、ＣＰＵ１１は時計部１８を参照し起動日時を記憶する。ＣＰＵ１１はファイルの属性を参照し、書き込み権限を有する場合は、利用状態「編集」と記憶し、それ以外は「閲覧」と記憶する。図５の例ではユーザＩＤ「Ｕ０１」のユーザはファイル名「ＸＸＰＤＦ」及び「ＯＯＣＡＤ」を開いている。利用状態は「ＸＸＰＤＦ」が「閲覧」、「ＯＯＣＡＤ」が「編集」である。ＣＰＵ１１は、ファイルテーブル１５４の許諾ＩＤに対応して複数のファイルが記憶された場合、一の編集状態を抽出する。ＣＰＵ１１は複数の利用状態の内、「編集」が存在する場合、「編集」を抽出する。ＣＰＵ１１は複数の利用状態の内、「編集」が存在しない場合、「閲覧」を抽出する。ＣＰＵ１１は抽出した一の利用状態を、利用テーブル１５３の利用状態フィールドに許諾ＩＤに対応付けて記憶する。
【００２４】
図６は待機テーブル１５５のレコードレイアウトを示す説明図である。待機テーブル１５５は上限となる許諾数に達した後にさらに、実行要求を受け付けた場合に、当該実行要求を出力したパーソナルコンピュータ２に関する情報を記憶している。待機テーブル１５５は待機ＩＤフィールド、ＰＣＩＤフィールド、ユーザＩＤフィールド及び待機日時フィールドを含む。待機ＩＤフィールドには、一の待機状態を特定するための識別情報として待機ＩＤが記憶されている。ＰＣＩＤフィールドには、待機ＩＤに対応付けて待機状態にあるＰＣＩＤが記憶されている。ユーザＩＤフィールドには、待機ＩＤに対応付けて待機状態にあるユーザＩＤが記憶されている。
【００２５】
待機日時フィールドには、実行要求を受け付けた際の日時を記憶している。ＣＰＵ１１は実行要求を、パーソナルコンピュータ２から通信部１６を介して受け付けた場合、利用テーブル１５３及び許諾数ファイル１５２を参照する。ＣＰＵ１１は利用テーブル１５３に記憶した許諾ＩＤの総数が、許諾数ファイル１５２に記憶した許諾数以下であるか否かを判断する。ＣＰＵ１１は許諾ＩＤの総数が許諾数以下でないと判断した場合、すなわち、許諾数に達した後に実行要求を受け付けたと判断した場合、待機ＩＤを生成する。ＣＰＵ１１は実行要求を出力したパーソナルコンピュータ２のＰＣＩＤ及びユーザＩＤを待機ＩＤに対応付けて待機テーブル１５５に記憶する。
【００２６】
ＣＰＵ１１は実行要求があった際の日時を、時計部１８を参照し待機日時として、待機テーブル１５５に記憶する。図６の例では、ユーザＩＤ「Ｕ０４」及び「Ｕ０５」の２ユーザが待機していることが理解できる。なお、上述した各ファイル及びテーブルはあくまで一例であり、この形態に限るものではない。各データ間の関係が保持されているのであれば、他の記憶形態としても良い。また、各ファイルまたはテーブルは記憶部１５に記憶する以外に、外部のデータベースに記憶しても良い。この場合ＣＰＵ１１はＳＱＬ（Structured Query Language）等を用いて、外部のデータベースから必要な情報に対し読み出し処理、または、書き込み処理を行う。その他、本実施形態においては一つのサーバコンピュータ１により処理を実行する例を挙げて説明したがこれに限るものではなく、複数のサーバコンピュータ（図示せず）により分散処理を行っても良い。例えば、許諾プログラム１５１Ｐ及びユーザデータファイル１５１を他のアプリケーションサーバコンピュータ（図示せず）に設けてもよい。アプリケーションサーバコンピュータは、許諾プログラム１５１Ｐの実行に伴う各種処理を、サーバコンピュータ１の代わりに実行する。
【００２７】
図７はパーソナルコンピュータ２のハードウェア群を示すブロック図である。パーソナルコンピュータ２は制御部としてのＣＰＵ２１、ＲＡＭ２２、入力部２３、表示部２４、記憶部２５、通信部２６、及び、時計部２８等を含む。ＣＰＵ２１は、バス２７を介してハードウェア各部と接続されている。ＣＰＵ２１はハードウェア各部を制御する。
【００２８】
入力部２３はマウス、キーボード、またはタッチパネル等の入力デバイスであり、受け付けた操作情報をＣＰＵ２１へ出力する。表示部２４は液晶ディスプレイまたは有機ＥＬディスプレイ等であり、ＣＰＵ２１の指示に従い各種情報を表示する。ＲＡＭ２２は例えばＳＲＡＭ、ＤＲＡＭ、フラッシュメモリ等である。ＲＡＭ２２は、ＣＰＵ２１による各種プログラムの実行時に発生する種々のデータを一時的に記憶する。通信部２６は有線または無線ＬＡＮカード等であり、通信網Ｎを介してサーバコンピュータ１との間で情報の送受信を行う。時計部２８は日時をＣＰＵ２１へ出力する。記憶部２５は例えば、ハードディスクまたは大容量フラッシュメモリ等である。
【００２９】
以上のハードウェア群においてソフトウェア処理を、フローチャートを用いて説明する。図８及び図９はログイン処理を示すフローチャートである。許諾プログラム１５１Ｐの実行を希望するユーザは、パーソナルコンピュータ２からサーバコンピュータ１へアクセスする。ユーザは入力部２３から予め付与されたユーザＩＤ及びパスワードを入力する。パーソナルコンピュータ２のＣＰＵ２１は、入力部２３からユーザＩＤ及びパスワードの入力を受け付ける（ステップＳ８１）。ＣＰＵ２１はユーザＩＤ、パスワード、ＰＣＩＤ及び実行要求を、通信部２６を介して、サーバコンピュータ１へ送信する（ステップＳ８２）。
【００３０】
ＣＰＵ１１は通信部１６を介して、ユーザＩＤ、パスワード、ＰＣＩＤ及び実行要求を受信する（ステップＳ８３）。ＣＰＵ１１は受信したユーザＩＤ及びパスワードが、記憶部１５に予め記憶したユーザＩＤ及びパスワードに一致するか否かを判断する（ステップＳ８４）。ＣＰＵ１１は一致しないと判断した場合（ステップＳ８４でＮＯ）、不正なアクセスであるとして処理を終了する。一方、ＣＰＵ１１はユーザＩＤ及びパスワードが一致すると判断した場合（ステップＳ８４でＹＥＳ）、ステップＳ８５へ移行する。
【００３１】
ＣＰＵ１１は利用テーブル１５３から許諾ＩＤ数を読み出し、許諾ＩＤの総数を計数する（ステップＳ８５）。ＣＰＵ１１は許諾数ファイル１５２から許諾数を読み出す（ステップＳ８６）。ＣＰＵ１１は許諾ＩＤの総数が、許諾数に達しているか否かを判断する（ステップＳ８７）。ＣＰＵ１１は許諾ＩＤの総数が、許諾数に達していないと判断した場合（ステップＳ８７でＮＯ）、許諾プログラム１５１Ｐの利用を許可する旨の、利用許可情報をパーソナルコンピュータ２へ送信する（ステップＳ８８）。パーソナルコンピュータ２のＣＰＵ２１は、利用許可情報を受信する（ステップＳ８９）。これにより、パーソナルコンピュータ２のユーザは、許諾プログラム１５１Ｐの実行が可能となる。
【００３２】
ＣＰＵ１１は許諾ＩＤを生成する（ステップＳ９１）。ＣＰＵ１１は許諾ＩＤに対応付けて、ＰＣＩＤ、ユーザＩＤ、起動日時及び利用状態を利用テーブル１５３に記憶する（ステップＳ９２）。利用状態は、ファイルが開かれていないため、「未オープン」と記憶される。ＣＰＵ１１は許諾ＩＤの総数が、許諾数に達していると判断した場合（ステップＳ８７でＹＥＳ）、ステップＳ９３へ移行する。ＣＰＵ１１は許諾数を超えているため、現在実行できないことを示す待機情報を送信する（ステップＳ９３）。パーソナルコンピュータ２のＣＰＵ２１は、待機情報を受信する（ステップＳ９４）。ＣＰＵ２１は表示部２４に待機情報を表示する。例えば、「許諾数に達しています。多数の方が使用中ですので、暫くお待ち下さい。」等のテキスト文を表示する。
【００３３】
サーバコンピュータ１のＣＰＵ１１は待機ＩＤを生成する（ステップＳ９５）。ＣＰＵ１１は待機ＩＤに対応付けてＰＣＩＤ、ユーザＩＤ及び待機日時を待機テーブル１５５に記憶する（ステップＳ９６）。
【００３４】
図１０及び図１１は利用状態の記憶処理手順を示すフローチャートである。ＣＰＵ１１はパーソナルコンピュータ２のログインを許可した後、ステップＳ９２で述べたように、利用テーブル１５３の利用状態を「未オープン」と記憶する（ステップＳ１０１）。許諾プログラム１５１Ｐの使用が可能なユーザは、パーソナルコンピュータ２の入力部２３から、使用を希望するファイルを選択する。パーソナルコンピュータ２のＣＰＵ２１は、入力部２３から選択されたファイルの起動命令を、通信部２６を介して、サーバコンピュータ１へ出力する（ステップＳ１０２）。
【００３５】
サーバコンピュータ１のＣＰＵ１１は、通信部１６を介して、ファイルの起動命令を受信する。ＣＰＵ１１は選択されたファイルを、ユーザデータファイル１５１を参照し、起動する（ステップＳ１０３）。ＣＰＵ１１は起動したファイルの属性を抽出する。ＣＰＵ１１は抽出した属性に基づき、起動したファイルが編集可能であるか否かを判断する（ステップＳ１０４）。ＣＰＵ１１は編集可能であると判断した場合（ステップＳ１０４でＹＥＳ）、許諾ＩＤに対応づけて、ユーザＩＤ、ファイル名、起動日時及び利用状態として「編集」を、ファイルテーブル１５４に記憶する（ステップＳ１０５）。
【００３６】
ＣＰＵ１１は編集可能なファイルでないと判断した場合（ステップＳ１０４でＮＯ）、許諾ＩＤに対応づけて、ユーザＩＤ、ファイル名、起動日時及び利用状態として「閲覧」を、ファイルテーブル１５４に記憶する（ステップＳ１０６）。ステップＳ１０５及びＳ１０６の後、処理をステップＳ１０７に進める。ＣＰＵ１１は同一ユーザについて、他に開いているファイルが存在するか否かを、ファイルテーブル１５４を参照し判断する（ステップＳ１０７）。ＣＰＵ１１は他に開いているファイルが存在しない場合（ステップＳ１０７でＮＯ）、ファイルテーブル１５４の利用状態を、許諾ＩＤに対応づけて記憶する（ステップＳ１０８）。
【００３７】
ＣＰＵ１１は他に開いているファイルが存在すると判断した場合（ステップＳ１０７でＹＥＳ）、ファイルテーブル１５４を参照し、同一許諾ＩＤ内に、少なくとも一つの利用状態「編集」のファイルが存在するか否かを判断する（ステップＳ１０９）。ＣＰＵ１１は、利用状態「編集」のファイルが存在すると判断した場合（ステップＳ１０９でＹＥＳ）、許諾ＩＤに対応づけて、利用状態「編集」を利用テーブル１５３に記憶する（ステップＳ１１１）。一方、ＣＰＵ１１は、利用状態「編集」のファイルが一つも存在しないと判断した場合（ステップＳ１０９でＮＯ）、許諾ＩＤに対応づけて、利用状態「閲覧」を利用テーブル１５３に記憶する（ステップＳ１１２）。これにより、複数のファイルが開いており、少なくとも一つのファイルの利用状態が「編集」の場合、利用テーブル１５３の利用状態は、「閲覧」となる。なお、利用テーブル１５３またはファイルテーブル１５４へのファイルの利用状態の記憶処理は、ファイルが開かれ、または、閉じられる度に行っても良い。その他、ステップＳ８７において許諾ＩＤ総数が許諾数に達していると判断した場合に、各パーソナルコンピュータ２が開いているファイルの属性を参照し、利用状態を判断するようにしても良い。
【００３８】
図１２及び図１３は通知処理の手順を示すフローチャートである。ステップＳ８７において許諾ＩＤ総数が許諾数に達していると判断した場合、現在ログイン中のユーザの許諾プログラム１５１Ｐの使用終了を促進すべく、以下の処理を実行する。ＣＰＵ１１は、利用テーブル１５３を参照し、利用状態「編集」の識別情報であるＰＣＩＤを抽出する（ステップＳ１２１）。なお、ＰＣＩＤに変えて識別情報であるユーザＩＤを抽出しても良い。ＣＰＵ１１は、利用テーブル１５３を参照し、利用状態「閲覧」のＰＣＩＤを抽出する（ステップＳ１２２）。ＣＰＵ１１は、利用テーブル１５３を参照し、利用状態「未オープン」のＰＣＩＤを抽出する（ステップＳ１２３）。これによりログイン中の全ユーザの利用状態及びＰＣＩＤが抽出される。なお、ステップＳ１２１〜Ｓ１２３の順序はこれに限るものではなく、適宜順序を入れ替えて実行しても良い。
【００３９】
ＣＰＵ１１は利用状態「未オープン」に対応する通知情報を、記憶部１５から読み出す（ステップＳ１２４）。ＣＰＵ１１は利用状態「未オープン」のＰＣＩＤ宛へ、利用状態「未オープン」に対応する通知情報を出力する（ステップＳ１２５）。パーソナルコンピュータ２のＣＰＵ２１は、利用状態「未オープン」に対応する通知情報を受信する（ステップＳ１２６）。ＣＰＵ２１は、利用状態「未オープン」に対応する通知情報を表示部２４に表示する（ステップＳ１２７）。
【００４０】
図１４は通知情報の表示イメージを示す説明図である。通知情報は利用状態毎に、予め記憶部１５に記憶されている。例えば「待ちユーザがいます。終了しますか。」等のテキスト文を、ポップアップ表示する。なお、通知情報の出力はあくまで一例であり、利用状態に応じて相違するものであれば、これに限るものではない。本実施形態では許諾状況に関する情報として、テキスト文をパーソナルコンピュータ２の表示部２４に表示する例を挙げて説明する。なお、表示部２４へ出力する形態を示すが、何らかの情報を出力するものであれば良く、これに限るものではない。例えば、ＣＰＵ２１は、図示しないスピーカから音声により通知情報を出力しても良い。その他、ＣＰＵ２１は、図示しないＬＥＤ(Light-Emitting Diode)等の発光素子を所定周期で利用状態に応じて点滅させても良い。さらに、図示しない振動モータを利用状態に応じたリズムで動作させても良い。
【００４１】
ＣＰＵ１１は利用状態「閲覧」に対応する通知情報を、記憶部１５から読み出す（ステップＳ１２８）。ＣＰＵ１１は利用状態「閲覧」のＰＣＩＤ宛へ、利用状態「閲覧」に対応する通知情報を出力する（ステップＳ１２９）。パーソナルコンピュータ２のＣＰＵ２１は、利用状態「閲覧」に対応する通知情報を受信する（ステップＳ１３１）。ＣＰＵ２１は、利用状態「閲覧」に対応する通知情報を表示部２４に表示する（ステップＳ１３２）。
【００４２】
図１５は通知情報の表示イメージを示す説明図である。利用状態「閲覧」の際の通知情報は、例えば図１５のように表示しても良い。パーソナルコンピュータ２のＣＰＵ２１は、「待ちユーザがいます。なるべく早く終了してください。」等のテキスト文を通知情報として、表示部２４にポップアップ表示する。なお、ポップアップ表示することなく、許諾プログラム１５１Ｐの基本画面に係るウィンドウ内または開いているファイルのウィンドウ内に表示しても良い。
【００４３】
ＣＰＵ１１は利用状態「編集」に対応する通知情報を、記憶部１５から読み出す（ステップＳ１３３）。ＣＰＵ１１は利用状態「編集」のＰＣＩＤ宛へ、利用状態「編集」に対応する通知情報を出力する（ステップＳ１３４）。パーソナルコンピュータ２のＣＰＵ２１は、利用状態「編集」に対応する通知情報を受信する（ステップＳ１３５）。ＣＰＵ２１は、利用状態「編集」に対応する通知情報を表示部２４に表示する（ステップＳ１３６）。
【００４４】
図１６は通知情報の表示イメージを示す説明図である。利用状態「閲覧」の際の通知情報は、例えば図１６のように表示しても良い。パーソナルコンピュータ２のＣＰＵ２１は、「待ちユーザがいます。」等のテキスト文を通知情報として、開いているファイルのウィンドウ内に表示する。なお、ＣＰＵ２１は複数のファイルが開いている場合、全てのファイルのウィンドウに通知情報を表示しても良い。その他、ＣＰＵ２１は通知情報をポップアップ表示しても良い。なお、本実施の形態においては、最初に利用状態「未オープン」のパーソナルコンピュータ２へ通知情報を出力し、次いで、利用状態「閲覧」のパーソナルコンピュータ２へ通知情報を出力している。そして最後に利用状態「編集」のパーソナルコンピュータ２へ通知情報を出力するが、この順序に限るものではない。設計に応じて同時または適宜順序を入れ替えて実行すればよい。また、本実施形態においては、利用状態「閲覧」及び「編集」に対する通知情報を異なる形態としたが、同一の形態としても良い。
【００４５】
図１７はファイルの終了処理の手順を示すフローチャートである。ファイルを閉じる場合、ユーザは入力部２３からファイルを閉じる操作を行う。パーソナルコンピュータ２のＣＰＵ２１は入力部２３からファイルを閉じる操作信号を受け付ける。ＣＰＵ２１はファイルを閉じる命令をサーバコンピュータ１へ出力する（ステップＳ１７１）。サーバコンピュータ１のＣＰＵ１１は、対象となるファイルを閉じる（ステップＳ１７２）。ＣＰＵ１１は閉じる対象となるファイルに対応するレコードを、ファイルテーブル１５４から削除する（ステップＳ１７３）。ＣＰＵ１１は他に開いているファイルが存在するか否かを判断する（ステップＳ１７４）。
【００４６】
ＣＰＵ１１は他に開いているファイルが存在しないと判断した場合（ステップＳ１７４でＮＯ）、利用テーブル１５３の許諾ＩＤ及びＰＣＩＤに対応する利用状態を「未オープン」と変更する（ステップＳ１７７）。ＣＰＵ１１は他に開いているファイルが存在していると判断した場合（ステップＳ１７４でＹＥＳ）、ファイルテーブル１５４中に未だ利用状態「編集」のファイルが開いているか否かを判断する（ステップＳ１７５）。ＣＰＵ１１は、利用状態「編集」のファイルが、存在しないと判断した場合（ステップＳ１７５でＮＯ）、ステップＳ１７６へ移行する。
【００４７】
ＣＰＵ１１は利用テーブル１５３を参照し、ステップＳ１７１で閉じる命令を出力したパーソナルコンピュータ２に係るＰＣＩＤに対応する利用状態を「閲覧」へ変更する（ステップＳ１７６）。ＣＰＵ１１は利用状態「編集」のファイルを開いていると判断した場合（ステップＳ１７５でＹＥＳ）、ステップＳ１７６の処理をスキップし処理を終了する。
【００４８】
図１８は許諾プログラム１５１Ｐの終了処理手順を示すフローチャートである。許諾プログラム１５１Ｐを終了する場合、ユーザは入力部２３から許諾プログラム１５１Ｐを終了する操作を行う。パーソナルコンピュータ２のＣＰＵ２１は入力部２３から許諾プログラム１５１Ｐを終了する操作信号を受け付ける。ＣＰＵ２１は許諾プログラム１５１Ｐを終了する命令をサーバコンピュータ１へ出力する（ステップＳ１８１）。サーバコンピュータ１のＣＰＵ１１は、開いているファイルを全て閉じる（ステップＳ１８２）。ＣＰＵ１１はファイルテーブル１５４から終了命令を出力したパーソナルコンピュータ２のＰＣＩＤに対応するレコードを削除する（ステップＳ１８３）。なお、ファイルが開いていない場合は、ステップＳ１８２及びＳ１８３の処理を行う必要はない。
【００４９】
ＣＰＵ１１はＰＣＩＤに対応するレコードを利用テーブル１５３から削除する（ステップＳ１８４）。ＣＰＵ１１は待機テーブル１５５から待機中のパーソナルコンピュータ２に係るＰＣＩＤを読み出す（ステップＳ１８５）。ＣＰＵ１１は読み出したＰＣＩＤ宛へ、許諾プログラム１５１Ｐの実行が可能であることを示す案内情報を送信する（ステップＳ１８６）。パーソナルコンピュータ２のＣＰＵ２１は、案内情報を受信する（ステップＳ１８７）。ＣＰＵ２１は案内情報を表示部２４に表示する（ステップＳ１８８）。これにより、許諾プログラム１５１Ｐに関連するファイルの開閉またはファイルの種類に応じて、許諾プログラム１５１Ｐの終了を促進することが可能となる。
【００５０】
実施の形態２
実施の形態２は一定時間経過後に許諾プログラム１５１Ｐを終了する形態に関する。図１９は実施の形態２に係るサーバコンピュータ１のハードウェア群を示すブロック図である。時間テーブル１５６が新たに設けられている。図２０は時間テーブル１５６のレコードレイアウトを示す説明図である。時間テーブル１５６は第１時間フィールド、第２時間フィールド及び第３時間フィールドを含む。第１時間フィールドには１０分、第２時間フィールドには２０分、第３時間フィールドには３０分と記憶されている。時間テーブル１５６の記憶内容はオペレータが入力部１３または外部の図示しないコンピュータから適宜値を変更することが可能である。
【００５１】
ＣＰＵ１１は通知情報送信後、利用状態「未オープン」のパーソナルコンピュータ２の入力部２３から第１時間（本例では１０分）以上操作信号を受け付けていない場合、実行中の許諾プログラム１５１Ｐを強制的に終了する。ＣＰＵ１１は通知情報送信後、利用状態「閲覧」のパーソナルコンピュータ２の入力部２３から第２時間（本例では２０分）以上操作信号を受け付けていない場合、実行中の許諾プログラム１５１Ｐを強制的に終了する。同様に、ＣＰＵ１１は通知情報送信後、利用状態「編集」のパーソナルコンピュータ２の入力部２３から第２時間（本例では３０分）以上操作信号を受け付けていない場合、実行中の許諾プログラム１５１Ｐを強制的に終了する。なお、本実施形態で述べた数値は一例でありこれに限るものではない。また、第１時間、第２時間、第３時間の順で、時間を長くする例を挙げて説明するがこれに限るものではない。全て同じ時間としても良い。また第２時間と第３時間とを等しい時間とし、第１時間を第２時間及び第３時間よりも短くしても良い。
【００５２】
図２１乃至図２４は終了処理の手順を示すフローチャートである。ＣＰＵ１１は実施の形態１で述べた通知情報の出力は利用状態「未オープン」のＰＣＩＤ宛であるか否かを判断する（ステップＳ２１１）。ＣＰＵ１１は利用状態「未オープン」のＰＣＩＤ宛であると判断した場合（ステップＳ２１１でＹＥＳ）、時間テーブル１５６から第１時間を読み出す（ステップＳ２１２）。ＣＰＵ１１は通知情報を出力したＰＣＩＤに対応するパーソナルコンピュータ２の入力部２３から操作信号を受け付けたか否かを判断する（ステップＳ２１３）。ＣＰＵ１１は操作信号を受け付けたと判断した場合（ステップＳ２１３でＹＥＳ）、処理を終了する。
【００５３】
ＣＰＵ１１は操作信号を受け付けていないと判断した場合（ステップＳ２１３でＮＯ）、待機テーブル１５５に待機ＩＤが記憶されているか否かを判断する（ステップＳ２１４）。待機ＩＤが記憶されていないと判断した場合（ステップＳ２１４でＮＯ）、もはや終了の必要はないので処理を終了する。ＣＰＵ１１は待機ＩＤが記憶されていると判断した場合（ステップＳ２１４でＹＥＳ）、第１時間以上経過したか否かを判断する（ステップＳ２１５）。ＣＰＵ１１は第１時間以上経過していないと判断した場合（ステップＳ２１５でＮＯ）、ステップＳ２１３へ移行し、以上の処理を繰り返す。
【００５４】
ＣＰＵ１１は第１時間を経過したと判断した場合（ステップＳ２１５でＹＥＳ）、記憶部１５から終了警告情報を読み出す（ステップＳ２１６）。この終了警告情報は例えば、「まもなく許諾プログラムを終了します。」等のテキスト文、または音声データである。その他、パーソナルコンピュータ２の図示しない振動モータを動作させる信号等であっても良い。本実施形態ではテキスト文を、表示部２４に表示する形態を一例として説明する。ＣＰＵ１１はＰＣＩＤ宛のパーソナルコンピュータ２へ終了警告情報を出力する（ステップＳ２１７）。
【００５５】
パーソナルコンピュータ２のＣＰＵ２１は、終了警告情報を受信する（ステップＳ２１８）。ＣＰＵ２１は終了警告情報を表示部２４へ表示する（ステップＳ２１９）。サーバコンピュータ１のＣＰＵ１１はさらに記憶部１５から読み出した一定時間、操作信号をパーソナルコンピュータ２の入力部２３から受け付けたか否かを判断する（ステップＳ２２１）。この一定時間は例えば１分とすればよい。ＣＰＵ１１は一定時間に操作信号を受け付けたと判断した場合（ステップＳ２２１でＮＯ）、処理を終了する。一方、一定時間、操作信号を受け付けていないと判断した場合（ステップＳ２２１でＹＥＳ）、ＣＰＵ１１は終了命令を出力し、許諾プログラム１５１Ｐを終了する（ステップＳ２２２）。
【００５６】
ＣＰＵ１１は記憶部１５から終了情報を読み出す（ステップＳ２２３）。この終了情報は例えば、「一定時間操作がなかったため許諾プログラムを終了しました。」等のテキスト文、または音声データである。その他、パーソナルコンピュータ２の図示しない振動モータを動作させる信号等であっても良い。本実施形態ではテキスト文を、表示部２４に表示する形態を一例として説明する。ＣＰＵ１１はＰＣＩＤ宛のパーソナルコンピュータ２へ終了情報を出力する（ステップＳ２２４）。パーソナルコンピュータ２のＣＰＵ２１は、終了情報を受信する（ステップＳ２２５）。ＣＰＵ２１は終了情報を表示部２４へ表示する（ステップＳ２２６）。なお、許諾プログラム１５１Ｐを終了した以降の処理は、ステップＳ１８２〜Ｓ１８８で述べたとおりであるので、説明を省略する。また本実施形態では終了警告情報または終了情報を終了命令として未然に出力する例を挙げたが、これらの処理は省略しても良い。
【００５７】
ＣＰＵ１１は利用状態「未オープン」のＰＣＩＤ宛でないと判断した場合（ステップＳ２１１でＮＯ）、ステップＳ２２７へ移行する。ＣＰＵ１１は通知情報の出力は、利用状態「閲覧」のＰＣＩＤ宛であるか否かを判断する（ステップＳ２２７）。ＣＰＵ１１は利用状態「閲覧」のＰＣＩＤ宛であると判断した場合（ステップＳ２２７でＹＥＳ）、時間テーブル１５６から第２時間を読み出す（ステップＳ２２８）。ＣＰＵ１１は通知情報を出力したＰＣＩＤに対応するパーソナルコンピュータ２の入力部２３から操作信号を受け付けたか否かを判断する（ステップＳ２２９）。ＣＰＵ１１は操作信号を受け付けたと判断した場合（ステップＳ２２９でＹＥＳ）、処理を終了する。
【００５８】
ＣＰＵ１１は操作信号を受け付けていないと判断した場合（ステップＳ２２９でＮＯ）、待機テーブル１５５に待機ＩＤが記憶されているか否かを判断する（ステップＳ２３１）。ＣＰＵ１１は待機ＩＤが記憶されていないと判断した場合（ステップＳ２３１でＮＯ）、もはや終了の必要はないので処理を終了する。ＣＰＵ１１は待機ＩＤが記憶されていると判断した場合（ステップＳ２３１でＹＥＳ）、第２時間以上経過したか否かを判断する（ステップＳ２３２）。ＣＰＵ１１は第２時間以上経過していないと判断した場合（ステップＳ２３２でＮＯ）、ステップＳ２２９へ移行し、以上の処理を繰り返す。
【００５９】
ＣＰＵ１１は第２時間以上経過したと判断した場合（ステップＳ２３２でＹＥＳ）、記憶部１５から終了警告情報を読み出す（ステップＳ２３３）。ＣＰＵ１１はＰＣＩＤ宛のパーソナルコンピュータ２へ終了警告情報を出力する（ステップＳ２３４）。
【００６０】
パーソナルコンピュータ２のＣＰＵ２１は、終了警告情報を受信する（ステップＳ２３５）。ＣＰＵ２１は終了警告情報を表示部２４へ表示する（ステップＳ２３６）。サーバコンピュータ１のＣＰＵ１１はさらに記憶部１５から読み出した一定時間、操作信号をパーソナルコンピュータ２の入力部２３から受け付けたか否かを判断する（ステップＳ２３７）。ＣＰＵ１１は一定時間に操作信号を受け付けたと判断した場合（ステップＳ２３７でＮＯ）、処理を終了する。一方、一定時間、操作信号を受け付けていないと判断した場合（ステップＳ２３７でＹＥＳ）、ＣＰＵ１１は終了命令を出力し、許諾プログラム１５１Ｐを終了する（ステップＳ２３８）。
【００６１】
ＣＰＵ１１は記憶部１５から終了情報を読み出す（ステップＳ２３９）。ＣＰＵ１１はＰＣＩＤ宛のパーソナルコンピュータ２へ終了情報を出力する（ステップＳ２４０）。パーソナルコンピュータ２のＣＰＵ２１は、終了情報を受信する（ステップＳ２４１）。ＣＰＵ２１は終了情報を表示部２４へ表示する（ステップＳ２４２）。
【００６２】
ＣＰＵ１１は通知情報の出力は、利用状態「閲覧」のＰＣＩＤ宛でないと判断した場合（ステップＳ２２７でＮＯ）、ステップＳ２４３へ移行する。ＣＰＵ１１は時間テーブル１５６から第３時間を読み出す（ステップＳ２４３）。ＣＰＵ１１は通知情報を出力したＰＣＩＤに対応するパーソナルコンピュータ２の入力部２３から操作信号を受け付けたか否かを判断する（ステップＳ２４４）。ＣＰＵ１１は操作信号を受け付けたと判断した場合（ステップＳ２４４でＹＥＳ）、処理を終了する。
【００６３】
ＣＰＵ１１は操作信号を受け付けていないと判断した場合（ステップＳ２４４でＮＯ）、待機テーブル１５５に待機ＩＤが記憶されているか否かを判断する（ステップＳ２４５）。ＣＰＵ１１は待機ＩＤが記憶されていないと判断した場合（ステップＳ２４５でＮＯ）、もはや終了の必要はないので処理を終了する。ＣＰＵ１１は待機ＩＤが記憶されていると判断した場合（ステップＳ２４５でＹＥＳ）、第３時間以上経過したか否かを判断する（ステップＳ２４６）。ＣＰＵ１１は第３時間以上経過していないと判断した場合（ステップＳ２４６でＮＯ）、ステップＳ２４４へ移行し、以上の処理を繰り返す。
【００６４】
ＣＰＵ１１は第３時間を経過したと判断した場合（ステップＳ２４６でＹＥＳ）、記憶部１５から終了警告情報を読み出す（ステップＳ２４７）。ＣＰＵ１１はＰＣＩＤ宛のパーソナルコンピュータ２へ終了警告情報を出力する（ステップＳ２４８）。
【００６５】
パーソナルコンピュータ２のＣＰＵ２１は、終了警告情報を受信する（ステップＳ２４９）。ＣＰＵ２１は終了警告情報を表示部２４へ表示する（ステップＳ２４１０）。サーバコンピュータ１のＣＰＵ１１はさらに記憶部１５から読み出した一定時間、操作信号をパーソナルコンピュータ２の入力部２３から受け付けたか否かを判断する（ステップＳ２４１１）。ＣＰＵ１１は一定時間に操作信号を受け付けたと判断した場合（ステップＳ２４１１でＮＯ）、処理を終了する。一方、一定時間、操作信号を受け付けていないと判断した場合（ステップＳ２４１１でＹＥＳ）、ＣＰＵ１１は終了命令を出力し、許諾プログラム１５１Ｐを終了する（ステップＳ２４１２）。この際ＣＰＵ１１は編集状態にあるファイルの編集内容をユーザデータファイル１５１に保存した上で、許諾プログラム１５１Ｐを終了しても良い。
【００６６】
ＣＰＵ１１は記憶部１５から終了情報を読み出す（ステップＳ２４１３）。ＣＰＵ１１はＰＣＩＤ宛のパーソナルコンピュータ２へ終了情報を出力する（ステップＳ２４１４）。パーソナルコンピュータ２のＣＰＵ２１は、終了情報を受信する（ステップＳ２４１５）。ＣＰＵ２１は終了情報を表示部２４へ表示する（ステップＳ２４１６）。これにより、許諾プログラム１５１Ｐに関連するファイルの開閉またはファイルの種類に応じて、許諾プログラム１５１Ｐを終了することが可能となる。
【００６７】
本実施の形態２は以上の如きであり、その他は実施の形態１と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
【００６８】
実施の形態３
実施の形態３は段階的に通知情報を出力する形態に関する。図２５乃至図２７は通知情報出力処理の手順を示すフローチャートである。実施の形態１のステップＳ１２５と同様に、ＣＰＵ１１は利用状態「未オープン」のＰＣＩＤ宛へ、利用状態「未オープン」に対応する通知情報を出力する（ステップＳ２５１）。パーソナルコンピュータ２のＣＰＵ２１は、利用状態「未オープン」に対応する通知情報を受信する（ステップＳ２５２）。ＣＰＵ２１は、利用状態「未オープン」に対応する通知情報を表示部２４に表示する（ステップＳ２５３）。
【００６９】
ＣＰＵ１１は利用テーブル１５３から許諾ＩＤ数を読み出し、許諾ＩＤの総数を計数する（ステップＳ２５４）。ＣＰＵ１１は許諾数ファイル１５２から許諾数を読み出す（ステップＳ２５５）。ＣＰＵ１１は許諾ＩＤの総数が、許諾数に達しているか否かを判断する（ステップＳ２５６）。ＣＰＵ１１は許諾ＩＤの総数が、許諾数に達していないと判断した場合（ステップＳ２５６でＮＯ）、もはやファイルを閲覧または編集しているユーザには通知が不要であるので処理を終了する。ＣＰＵ１１は許諾ＩＤの総数が、許諾数に達していると判断した場合（ステップＳ２５６でＹＥＳ）、ステップＳ２５７へ移行する。
【００７０】
次いでＣＰＵ１１は未だソフトウェアの実行要求を受け付けているか、すなわち待機状態にあるユーザが存在するか否かを判断する。具体的には、ＣＰＵ１１は待機ファイル１５５を参照し、待機ＩＤが存在するか否かを判断する（ステップＳ２５７）。ＣＰＵ１１は待機ＩＤが存在しないと判断した場合（ステップＳ２５７でＮＯ）、待機ユーザは存在せず、もはやファイルを閲覧または編集しているユーザには通知が不要であるので処理を終了する。一方、ＣＰＵ１１は待機ＩＤが存在していると判断した場合（ステップＳ２５７でＹＥＳ）、ステップＳ２５８へ移行する。
【００７１】
ＣＰＵ１１は利用状態「閲覧」に対応する通知情報を、記憶部１５から読み出す（ステップＳ２５８）。ＣＰＵ１１は利用状態「閲覧」のＰＣＩＤ宛へ、利用状態「閲覧」に対応する通知情報を出力する（ステップＳ２５９）。パーソナルコンピュータ２のＣＰＵ２１は、利用状態「閲覧」に対応する通知情報を受信する（ステップＳ２６１）。ＣＰＵ２１は、利用状態「閲覧」に対応する通知情報を表示部２４に表示する（ステップＳ２６２）。
【００７２】
ＣＰＵ１１は利用テーブル１５３から許諾ＩＤ数を読み出し、許諾ＩＤの総数を計数する（ステップＳ２６３）。ＣＰＵ１１は許諾数ファイル１５２から許諾数を読み出す（ステップＳ２６４）。ＣＰＵ１１は許諾ＩＤの総数が、許諾数に達しているか否かを判断する（ステップＳ２６５）。ＣＰＵ１１は許諾ＩＤの総数が、許諾数に達していないと判断した場合（ステップＳ２６５でＮＯ）、多数のユーザがログアウトし、もはやファイルを編集しているユーザには通知が不要であるので処理を終了する。ＣＰＵ１１は許諾ＩＤの総数が、許諾数に達していると判断した場合（ステップＳ２６５でＹＥＳ）、ステップＳ２６６へ移行する。
【００７３】
ＣＰＵ１１は待機ファイル１５５を参照し、待機ＩＤが存在するか否かを判断する（ステップＳ２６６）。ＣＰＵ１１は待機ＩＤが存在しないと判断した場合（ステップＳ２６６でＮＯ）、待機ユーザは存在せず、もはやファイルを編集しているユーザには通知が不要であるので処理を終了する。一方、ＣＰＵ１１は待機ＩＤが存在していると判断した場合（ステップＳ２６６でＹＥＳ）、ステップＳ２６７へ移行する。
【００７４】
ＣＰＵ１１は利用状態「編集」に対応する通知情報を、記憶部１５から読み出す（ステップＳ２６７）。ＣＰＵ１１は利用状態「編集」のＰＣＩＤ宛へ、利用状態「編集」に対応する通知情報を出力する（ステップＳ２６８）。パーソナルコンピュータ２のＣＰＵ２１は、利用状態「編集」に対応する通知情報を受信する（ステップＳ２６９）。ＣＰＵ２１は、利用状態「編集」に対応する通知情報を表示部２４に表示する（ステップＳ２７１）。これにより、多くのログアウトが見込まれる利用状態「未オープン」のユーザに対し、先に通知情報が出力される。当該通知情報の出力によっても待機しているユーザが存在する場合に、利用状態「閲覧」、または「編集」のユーザに通知情報が出力される。よって、利用状態「閲覧」または「編集」にあるユーザの許諾プログラム１５１Ｐの使用の妨げを防止することが可能となる。なお、本実施形態で述べたステップＳ２６３〜Ｓ２６６の処理を実行しなくとも良い。この場合、利用状態「閲覧」及び利用状態「編集」に係るパーソナルコンピュータ２へ同じタイミングで通知情報が送信される。
【００７５】
本実施の形態３は以上の如きであり、その他は実施の形態１及び２と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
【００７６】
実施の形態４
実施の形態４は待機ＩＤ数に応じて通知情報の内容を変更する形態に関する。図２８は実施の形態４に係るサーバコンピュータ１のハードウェア群を示すブロック図である。新たに待機レベルテーブル１５７が設けられている。図２９は待機レベルテーブル１５７のレコードレイアウトを示す説明図である。待機レベルテーブル１５７は閾値フィールド、及び、利用状態別の通知情報フィールドを含む。閾値フィールドには、待機ＩＤ数と比較する際に用いる数字が記憶されている。例えば第１閾値は５、第２閾値は１０等と記憶されている。これらの数値は一例であり、オペレータが適宜の値を入力部１３または他の図示しないコンピュータから入力し、待機レベルテーブル１５７に記憶しておけばよい。
【００７７】
通知情報フィールドには、利用状態及び閾値毎に通知情報の種類が記憶されている。例えば、許諾プログラム１５１Ｐの実行要求数が、第１の閾値未満の場合、すなわち、待機テーブル１５５に記憶した待機ＩＤ数が第１の閾値未満の場合、上述の実施形態で述べたとおり通知情報を出力する。具体的には、ＣＰＵ１１は待機レベルテーブル１５７を参照し、利用状態「未オープン」のパーソナルコンピュータ２には、「未オープン」に対応する通知情報を出力する。同様にＣＰＵ１１は、利用状態「閲覧」のパーソナルコンピュータ２には、「閲覧」に対応する通知情報を出力し、利用状態「編集」のパーソナルコンピュータ２には、「編集」に対応する通知情報を出力する。
【００７８】
ＣＰＵ１１は待機ＩＤ数が、第１の閾値以上の場合、待機レベルテーブル１５７の第１の閾値に対応するレコードを用いて処理を行う。具体的には、ＣＰＵ１１は利用状態「未オープン」のパーソナルコンピュータ２には、「未オープン」に対応する通知情報を出力する。同様にＣＰＵ１１は、利用状態「閲覧」のパーソナルコンピュータ２には、「閲覧」に対応する通知情報を出力し、利用状態「編集」のパーソナルコンピュータ２にも、「閲覧」に対応する通知情報を出力する。ＣＰＵ１１は待機ＩＤ数が、第２の閾値以上の場合、待機レベルテーブル１５７の第２の閾値に対応するレコードを用いて処理を行う。具体的には、ＣＰＵ１１は利用状態「未オープン」のパーソナルコンピュータ２には、「未オープン」に対応する通知情報を出力する。同様にＣＰＵ１１は、利用状態「閲覧」のパーソナルコンピュータ２にも、「未オープン」に対応する通知情報を出力し、利用状態「編集」のパーソナルコンピュータ２にも、「未オープン」に対応する通知情報を出力する。なお、本実施形態で示した待機レベルテーブル１５７の例は一例であり、これに限るものではない。第１の閾値を超えた時点で全ての利用状態に係るパーソナルコンピュータ２へ「未オープン」に対応する通知情報を出力しても良い。
【００７９】
図３０及び図３１は通知情報の表示処理手順を示すフローチャートである。ＣＰＵ１１は待機テーブル１５５を参照し、待機ＩＤ数を読み出す（ステップＳ３０１）。ＣＰＵ１１は待機レベルテーブル１５７を参照し、待機ＩＤ数が第１閾値未満であるか否かを判断する（ステップＳ３０２）。ＣＰＵ１１は第１閾値未満であると判断した場合（ステップＳ３０２でＹＥＳ）、利用状態「未オープン」のＰＣＩＤ宛へ利用状態「未オープン」に対応する通知情報を出力する（ステップＳ３０３）。ＣＰＵ１１は、利用状態「閲覧」のＰＣＩＤ宛へ利用状態「閲覧」に対応する通知情報を出力する（ステップＳ３０４）。ＣＰＵ１１は、利用状態「編集」のＰＣＩＤ宛へ利用状態「編集」に対応する通知情報を出力する（ステップＳ３０５）。
【００８０】
各パーソナルコンピュータ２のＣＰＵ２１は、各通知情報を受信する（ステップＳ３０６）。ＣＰＵ２１は表示部２４に通知情報を表示する（ステップＳ３０７）。ＣＰＵ１１は待機ＩＤ数が第１閾値未満でないと判断した場合（ステップＳ３０２でＮＯ）、待機ＩＤ数が第２閾値以上であるか否かを判断する（ステップＳ３０８）。ＣＰＵ１１は待機ＩＤ数が第２閾値以上であると判断した場合（ステップＳ３０８でＹＥＳ）、待機レベルテーブル１５７を参照し通知情報の種類を読み出す（ステップＳ３０９）。具体的には、待機レベルテーブル１５７の第２閾値のレコードを読み出す。ＣＰＵ１１は、利用状態「未オープン」、「閲覧」、「編集」全てのＰＣＩＤ宛へ利用状態「未オープン」に対応する通知情報を出力する（ステップＳ３１１）。
【００８１】
各パーソナルコンピュータ２のＣＰＵ２１は、各通知情報を受信する（ステップＳ３１２）。ＣＰＵ２１は表示部２４に通知情報を表示する（ステップＳ３１３）。ＣＰＵ２１は待機ＩＤ数が第２閾値以上でないと判断した場合（ステップＳ３０８でＮＯ）、ステップＳ３１４へ移行する。ＣＰＵ１１は待機レベルテーブル１５７を参照し通知情報の種類を読み出す（ステップＳ３１４）。具体的には、待機レベルテーブル１５７の第１閾値のレコードを読み出す。ＣＰＵ１１は、利用状態「未オープン」のＰＣＩＤ宛へ利用状態「未オープン」に対応する通知情報を出力する（ステップＳ３１５）。ＣＰＵ１１は、利用状態「閲覧」及び「編集」のＰＣＩＤ宛へ利用状態「閲覧」に対応する通知情報を出力する（ステップＳ３１６）。
【００８２】
各パーソナルコンピュータ２のＣＰＵ２１は、各通知情報を受信する（ステップＳ３１７）。ＣＰＵ２１は表示部２４に通知情報を表示する（ステップＳ３１８）。これにより、待機人数に応じて、通知情報の表示が変更されることから、実情に応じて許諾プログラム１５１Ｐの複数人間での利用をより促進することが可能となる。
【００８３】
本実施の形態４は以上の如きであり、その他は実施の形態１乃至３と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
【００８４】
実施の形態５
実施の形態５は許諾プログラム１５１Ｐに関連するデータに対し変換処理を実行している際の処理形態に関する。ＣＰＵ１１は利用状態が「編集」の際に、データに対する変換処理を実行する場合がある。例えば、許諾プログラム１５１Ｐの基本画面から選択されたファイルに係る３次元のＣＡＤデータを、許諾プログラム１５１Ｐ上で異なるフォーマットへ変換する場合である。
【００８５】
図３２は実施の形態５に係る利用テーブル１５３のレコードレイアウトを示す説明図である。パーソナルコンピュータ２からデータに対する変換処理命令が出力された場合、ＣＰＵ１１は、利用状態を「変換」とする。図３２の例ではＰＣＩＤが「Ｐ０４」の利用状態が「変換」と記憶されている。ＣＰＵ１１は変換処理終了後、利用状態「変換」を「編集」へと戻す。
【００８６】
図３３は実施の形態５に係るファイルテーブル１５４のレコードレイアウトを示す説明図である。ＣＰＵ１１は利用状態「編集」にあるファイルに係るデータに対し、変換処理命令を受け付けた場合、利用状態を「変換」とし、ファイルテーブル１５４に記憶する。図３３の例では、利用状態「編集」であったファイル名「ＯＯＣＡＤ」は利用状態「変換」と記憶されている。ＣＰＵ１１は複数のファイルが存在し、少なくとも一つ利用状態「変換」が存在する場合、利用テーブル１５３に、許諾ＩＤに対応付けて、利用状態「変換」を記憶する。ＣＰＵ１１は変換を終えた後、ファイルテーブル１５４の利用状態を再び「編集」と記憶する。ＣＰＵ１１は利用状態「変換」にあるパーソナルコンピュータ２には利用状態「未オープン」、「閲覧」、「編集」とは異なった形態で通知情報を出力する。例えば、許諾プログラム１５１Ｐのウィンドウに待機ユーザが存在することを示すアイコンを表示するようにしても良い。なお、利用状態「編集」または「閲覧」と同一の形態で通知情報を出力しても良い。
【００８７】
図３４は変換処理命令を受け付けた際の処理手順を示すフローチャートである。ユーザは編集のファイルにて、データの変換を行う場合、入力部２３から変換処理の命令を入力する。ＣＰＵ２１は入力部２３から受け付けた変換処理命令を、通信部２６を介して、サーバコンピュータ１へ出力する（ステップＳ３４１）。サーバコンピュータ１のＣＰＵ１１は、通信部１６を介して、変換処理命令を受信する（ステップＳ３４２）。ＣＰＵ１１は変換処理を実行する（ステップＳ３４３）。
【００８８】
ＣＰＵ１１は、許諾ＩＤ及びファイル名を参照し、ファイルテーブル１５４の利用状態を「変換」と記憶する（ステップＳ３４４）。ＣＰＵ１１は、許諾ＩＤを参照し、利用テーブル１５３の利用状態を「変換」と記憶する（ステップＳ３４５）。ＣＰＵ１１は変換処理を終了したか否かを判断する（ステップＳ３４６）。ＣＰＵ１１は、３次元データの処理に時間を要し、未だ変換処理を終了していないと判断した場合（ステップＳ３４６でＮＯ）、変換処理が終了するまで待機する。ＣＰＵ１１は変換処理を終了した場合（ステップＳ３４６でＹＥＳ）、変換結果をパーソナルコンピュータ２へ出力すると共に、ステップＳ３４７へ移行する。ＣＰＵ１１は、許諾ＩＤ及びファイル名を参照し、ファイルテーブル１５４の利用状態を「編集」と記憶する（ステップＳ３４７）。ＣＰＵ１１は、許諾ＩＤを参照し、利用テーブル１５３の利用状態を「編集」と記憶する（ステップＳ３４８）。
【００８９】
図３５は通知情報の表示処理手順を示すフローチャートである。ステップＳ８７において許諾ＩＤ総数が許諾数に達していると判断した場合、現在ログイン中のユーザの許諾プログラム１５１Ｐの使用終了を促進すべく、以下の処理を図１２で述べた処理と並行して実行する。ＣＰＵ１１は、利用テーブル１５３を参照し、利用状態「変換」のＰＣＩＤを抽出する（ステップＳ３５１）。
【００９０】
ＣＰＵ１１は利用状態「変換」に対応する通知情報を、記憶部１５から読み出す（ステップＳ３５２）。ＣＰＵ１１は利用状態「変換」のＰＣＩＤ宛へ、利用状態「変換」に対応する通知情報を出力する（ステップＳ３５３）。パーソナルコンピュータ２のＣＰＵ２１は、利用状態「変換」に対応する通知情報を受信する（ステップＳ３５４）。ＣＰＵ２１は、利用状態「変換」に対応する通知情報を表示部２４に表示する（ステップＳ３５５）。
【００９１】
図３６は通知情報の表示イメージを示す説明図である。利用状態「変換」の際の通知情報は、例えば図３６のように表示しても良い。パーソナルコンピュータ２のＣＰＵ２１は、許諾プログラム１５１Ｐのいずれかのウィンドウに待機ユーザが存在することを示すアイコン３６１を通知情報として表示する。なお、ＣＰＵ２１は、「待ちユーザあり。」等のテキスト文を通知情報として、表示しても良い。その他、ＣＰＵ２１は通知情報をポップアップ表示しても良い。これにより、変換処理に長時間を要している場合にも、作業を害することなく、使用状態に即した形態で情報の通知が可能となる。
【００９２】
本実施の形態５は以上の如きであり、その他は実施の形態１乃至４と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
【００９３】
実施の形態６
図３７は実施の形態６に係るサーバコンピュータ１のハードウェア群を示すブロック図である。サーバコンピュータ１を動作させるためのプログラムは、ディスクドライブ等の読み取り部１０ＡにCD-ROM、DVD（Digital Versatile Disc）ディスクまたはUSB（Universal Serial Bus）メモリ等の可搬型記録媒体１Ａを読み取らせて記憶部１５に記憶しても良い。また当該プログラムを記憶したフラッシュメモリ等の半導体メモリ１Ｂをサーバコンピュータ１内に実装しても良い。さらに、当該プログラムは、インターネット等の通信網Ｎを介して接続される他のサーバコンピュータ（図示せず）からダウンロードすることも可能である。以下に、その内容を説明する。
【００９４】
図３７に示すサーバコンピュータ１は、上述した各種ソフトウェア処理を実行するプログラムを、可搬型記録媒体１Ａまたは半導体メモリ１Ｂから読み取り、或いは、通信網Ｎを介して他のサーバコンピュータ（図示せず）からダウンロードする。当該プログラムは、制御プログラム１５Ｐとしてインストールされ、ＲＡＭ１２にロードして実行される。これにより、上述したサーバコンピュータ１として機能する。
【００９５】
図３８は、サーバコンピュータ１の機能ブロック図である。サーバコンピュータ１のＣＰＵ１１は、制御プログラム１５Ｐを実行することにより、以下のように機能する。第１抽出部ｆ１は、記憶部１５に記憶した許諾数内で実行が許可された許諾プログラム１５１Ｐを実行するとともに、該許諾プログラム１５１Ｐによりファイルを開いた第１状態に係る識別情報を抽出する。第２抽出部ｆ２は、前記許諾プログラム１５１Ｐを実行するとともに、該許諾プログラム１５１Ｐによりファイルを開いていない第２状態に係る識別情報を抽出する。第１出力部ｆ３は、許諾数に達した後に他のコンピュータから許諾プログラム１５１Ｐの実行要求を受け付けた場合に、第１抽出部ｆ１により抽出した前記第１状態に係る識別情報を参照し、第１情報を出力する。第２出力部ｆ４は、許諾数に達した後に許諾プログラム１５１Ｐの実行要求を受け付けた場合に、前記第２抽出部ｆ２により抽出した前記第２状態に係る識別情報を参照し、第２情報を前記第１情報とは異なる形態で出力する。
【００９６】
図３９は、サーバコンピュータ１の機能ブロック図である。サーバコンピュータ１のＣＰＵ１１は、制御プログラム１５Ｐを実行することにより、以下のように機能する。制御部ｆ１１は、第一の端末装置および第二の端末装置に、同時に実行される許諾数が設定された許諾プログラム１５１Ｐの実行を許可する。記憶部ｆ１２は前記許諾プログラム１５１Ｐを実行するとともに、該許諾プログラム１５１Ｐによりファイルを開いた第１状態に係る識別情報と、該許諾プログラム１５１Ｐを実行するとともに、該許諾プログラム１５１Ｐによりファイルを開いていない第２状態に係る識別情報を記憶する。抽出部ｆ１３は、前記記憶部ｆ１２から前記第１状態に係る識別情報および前記第２状態に係る識別情報を抽出する。第１出力部ｆ１４は、前記許諾数に達した後に許諾プログラム１５１Ｐの実行要求を第三の端末装置から受け付けた場合に、前記第１状態に係る識別情報に対応する前記第一の端末装置へ、第１情報を出力する。第２出力部ｆ１５は、前記許諾数に達した後に許諾プログラム１５１Ｐの実行要求を受け付けた場合に、前記第２状態に係る識別情報に対応する前記第二の端末装置へ、第２情報を前記第１情報とは異なる形態で出力する。
【００９７】
本実施の形態６は以上の如きであり、その他は実施の形態１乃至５と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
【００９８】
以上の実施の形態１乃至６を含む実施形態に関し、さらに以下の付記を開示する。
【００９９】
（付記１）
情報を処理するコンピュータに用いられるプログラムにおいて、
コンピュータに、
記憶部に記憶した許諾数内で実行が許可されたソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いた第１状態に係る識別情報を制御部により抽出し、
前記ソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いていない第２状態に係る識別情報を前記制御部により抽出し、
前記許諾数に達した後に他のコンピュータからソフトウェアの実行要求を受け付けた場合に、抽出した前記第１状態に係る識別情報を参照し、前記制御部により第１情報を出力し、
前記許諾数に達した後にソフトウェアの実行要求を受け付けた場合に、抽出した前記第２状態に係る識別情報を参照し、前記制御部により第２情報を前記第１情報とは異なる形態で出力する
処理を実行させるプログラム。
【０１００】
（付記２）
第１状態に係る識別情報を抽出する処理において、編集可能なファイルを開いている編集状態に係る識別情報と、編集可能ではないファイルを開いている場合の第１状態に係る識別情報とを前記制御部により抽出し、
前記制御部により抽出した編集状態に係る識別情報と前記編集可能ではないファイルを開いている場合の第１状態に係る識別情報とで異なる形態にて前記第１情報を出力する
付記１に記載のプログラム。
【０１０１】
（付記３）
前記第２状態に係る識別情報を参照して第２情報を出力した後に、前記制御部により前記第２状態に係る識別情報に対応する操作情報を受け付けたか否かを判断し、
所定時間内に操作情報を受け付けていないと判断した場合に、前記識別情報を参照し、前記制御部によりソフトウェアの終了命令を出力する
付記１または付記２に記載のプログラム。
【０１０２】
（付記４）
前記編集可能ではないファイルを開いている場合の第１状態に係る識別情報を参照して第１情報を出力した後に、前記制御部により前記第１状態に係る識別情報に対応する操作情報を受け付けたか否かを判断し、
前記所定時間よりも長い第１所定時間内に操作情報を受け付けていないと判断した場合に、前記識別情報を参照し、前記制御部によりソフトウェアの終了命令を出力する
付記３に記載のプログラム。
【０１０３】
（付記５）
前記編集状態に係る識別情報を参照して第１情報を出力した後に、前記制御部により前記編集状態に係る識別情報に対応する操作情報を受け付けたか否かを判断し、
前記第１所定時間よりも長い第２所定時間内に操作情報を受け付けていないと判断した場合に、前記識別情報を参照し、前記制御部によりソフトウェアの終了命令を出力する
付記４に記載のプログラム。
【０１０４】
（付記６）
前記第１情報を出力する場合、
前記第２情報を出力した後に、許諾数に達し、かつ、ソフトウェアの実行要求を受け付けているか否かを判断し、
前記許諾数に達し、かつ、ソフトウェアの実行要求を受け付けていると判断した場合に、抽出した前記第１状態に係る識別情報を参照し、前記制御部により前記第１情報を出力する
付記１または２に記載のプログラム。
【０１０５】
（付記７）
前記第１情報を出力する場合、
前記第２情報を出力した後に、許諾数に達し、かつ、ソフトウェアの実行要求を受け付けているか否かを判断し、
前記許諾数に達し、かつ、ソフトウェアの実行要求を受け付けていると判断した場合に、抽出した編集可能ではないファイルを開いている場合の前記第１状態に係る識別情報を参照し、前記制御部により前記第１情報を出力し、
該第１情報を出力した後に、許諾数に達し、かつ、ソフトウェアの実行要求を受け付けているか否かを判断し、
前記許諾数に達し、かつ、ソフトウェアの実行要求を受け付けていると判断した場合に、抽出した編集状態に係る識別情報を参照し、前記制御部により前記第１情報を出力する
付記２に記載のプログラム。
【０１０６】
（付記８）
第２情報を出力する場合、抽出した第２状態に係る識別情報に対応する他のコンピュータへ、許諾状況に関する第２情報を出力する
付記１または２に記載のプログラム。
【０１０７】
（付記９）
第２情報を出力する場合、抽出した第２状態に係る識別情報に対応する他のコンピュータへ、許諾状況に関する第２情報を出力し、
第１情報を出力する場合、抽出した編集状態に係る識別情報に対応する他のコンピュータと前記編集可能ではないファイルを開いている場合の第１状態に係る識別情報に対応する他のコンピュータとへ異なる形態にて、許諾状況に関する第１情報を出力する
付記２に記載のプログラム。
【０１０８】
（付記１０）
ソフトウェアの実行要求数を計数し、
計数した値が、記憶部に記憶した閾値を超える場合に、抽出した編集状態に係る識別情報と前記編集可能ではないファイルを開いている場合の第１状態に係る識別情報とを参照し、前記制御部により同一形態にて前記第１情報を出力する
付記２に記載のプログラム。
【０１０９】
（付記１１）
前記ソフトウェアを実行し、かつ該ソフトウェアに関連するデータに対し変換処理を行っている第３状態に係る識別情報を前記制御部により抽出し、
前記許諾数に達した後にソフトウェアの実行要求を受け付けた場合に、抽出した前記第３状態に係る識別情報を参照し、前記制御部により許諾状況に関する第３情報を第１情報とは異なる形態にて出力する
付記１に記載のプログラム。
【０１１０】
（付記１２）
情報を処理するコンピュータにおいて、
記憶部に記憶した許諾数内で実行が許可されたソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いた第１状態に係る識別情報を抽出する第１抽出部と、
前記ソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いていない第２状態に係る識別情報を抽出する第２抽出部と、
前記許諾数に達した後に他のコンピュータからソフトウェアの実行要求を受け付けた場合に、前記第１抽出部により抽出した前記第１状態に係る識別情報を参照し、第１情報を出力する第１出力部と、
前記許諾数に達した後にソフトウェアの実行要求を受け付けた場合に、前記第２抽出部により抽出した前記第２状態に係る識別情報を参照し、第２情報を前記第１情報とは異なる形態で出力する第２出力部と
を備えるコンピュータ。
【０１１１】
（付記１３）
制御部を有するコンピュータにより情報を処理する情報処理方法において、
記憶部に記憶した許諾数内で実行が許可されたソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いた第１状態に係る識別情報を制御部により抽出し、
前記ソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いていない第２状態に係る識別情報を前記制御部により抽出し、
前記許諾数に達した後に他のコンピュータからソフトウェアの実行要求を受け付けた場合に、抽出した前記第１状態に係る識別情報を参照し、前記制御部により第１情報を出力し、
前記許諾数に達した後にソフトウェアの実行要求を受け付けた場合に、抽出した前記第２状態に係る識別情報を参照し、前記制御部により第２情報を前記第１情報とは異なる形態で出力する
情報処理方法。
【０１１２】
（付記１４）
中央装置及び複数の端末装置が通信網を介して接続された通信システムにおいて、
前記中央装置は、
第一の端末装置および第二の端末装置に、同時に実行される許諾数が設定されたソフトウェアの実行を許可する制御部と、
前記ソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いた第１状態に係る識別情報と、該ソフトウェアを実行するとともに、該ソフトウェアによりファイルを開いていない第２状態に係る識別情報を記憶する記憶部と、
前記記憶部から前記第１状態に係る識別情報および前記第２状態に係る識別情報を抽出する抽出部と、
前記許諾数に達した後にソフトウェアの実行要求を第三の端末装置から受け付けた場合に、前記第１状態に係る識別情報に対応する前記第一の端末装置へ、第１情報を出力する第１出力部と、
前記許諾数に達した後にソフトウェアの実行要求を受け付けた場合に、前記第２状態に係る識別情報に対応する前記第二の端末装置へ、第２情報を前記第１情報とは異なる形態で出力する第２出力部と
を有することを特徴とする通信システム。
【０１１３】
（付記１５）
前記記憶部は、
ソフトウェアを利用する端末装置またはユーザを特定するための識別情報と、第１状態または第２状態とを対応付けて記憶する
付記１４に記載の通信システム。
【符号の説明】
【０１１４】
１      サーバコンピュータ
１Ａ    可搬型記録媒体
１Ｂ    半導体メモリ
１１    ＣＰＵ
１２    ＲＡＭ
１３    入力部
１４    表示部
１５    記憶部
１５Ｐ  制御プログラム
１６    通信部
１８    時計部
２、２Ａ〜２Ｅ    パーソナルコンピュータ
２１    ＣＰＵ
２２    ＲＡＭ
２３    入力部
２４    表示部
２５    記憶部
２６    通信部
２８    時計部
１５１  ユーザデータファイル
１５１Ｐ  許諾プログラム
１５２  許諾数ファイル
１５３  利用テーブル
１５４  ファイルテーブル
１５５  待機テーブル
１５６  時間テーブル
１５７  待機レベルテーブル
Ｎ      通信網
【図１】
0005609592.tif 000002
【図２】
0005609592.tif 000003
【図３】
0005609592.tif 000004
【図４】
0005609592.tif 000005
【図５】
0005609592.tif 000006
【図６】
0005609592.tif 000007
【図７】
0005609592.tif 000008
【図８】
0005609592.tif 000009
【図９】
0005609592.tif 000010
【図１０】
0005609592.tif 000011
【図１１】
0005609592.tif 000012
【図１２】
0005609592.tif 000013
【図１３】
0005609592.tif 000014
【図１４】
0005609592.tif 000015
【図１５】
0005609592.tif 000016
【図１６】
0005609592.tif 000017
【図１７】
0005609592.tif 000018
【図１８】
0005609592.tif 000019
【図１９】
0005609592.tif 000020
【図２０】
0005609592.tif 000021
【図２１】
0005609592.tif 000022
【図２２】
0005609592.tif 000023
【図２３】
0005609592.tif 000024
【図２４】
0005609592.tif 000025
【図２５】
0005609592.tif 000026
【図２６】
0005609592.tif 000027
【図２７】
0005609592.tif 000028
【図２８】
0005609592.tif 000029
【図２９】
0005609592.tif 000030
【図３０】
0005609592.tif 000031
【図３１】
0005609592.tif 000032
【図３２】
0005609592.tif 000033
【図３３】
0005609592.tif 000034
【図３４】
0005609592.tif 000035
【図３５】
0005609592.tif 000036
【図３６】
0005609592.tif 000037
【図３７】
0005609592.tif 000038
【図３８】
0005609592.tif 000039
【図３９】
0005609592.tif 000040