図1に本実施形態のシステムの例を示す。このシステムは、プリントサーバ10、人事DB(データベース)20、スケジュールDB30、ユーザPC(パーソナルコンピュータ)40、画像処理装置60を含んでいる。
この実施形態では、ある会社における会議に用いる文書を印刷する場合を例にとる。プリントサーバ10、人事DB20、スケジュールDB30及びユーザPC40は、会社のイントラネット内に存在しているものとする。画像処理装置60は、イントラネット内にあってもよいし、インターネット50を介してプリントサーバ10にアクセスするものであってもよい。
ユーザPC40は、各社員のパーソナルコンピュータである。
画像処理装置60は、印刷を含む画像処理を実行する装置であり、印刷単機能の装置であってもよいし、印刷以外にスキャンやファクシミリ機能等の複数の画像処理機能を併せ持つ複合機であってもよい。画像処理装置60は、ユーザから操作を受け付けるユーザインタフェース(UI)を有し、そのUIに対するユーザの指示に応じて、インターネット50、ローカルエリアネットワーク等のデータ通信ネットワークを介してプリントサーバ10にアクセスする。そして、プリントサーバ10が有する当該ユーザが印刷権限を有する電子文書(以下単に「文書」と呼ぶ)のうち、そのユーザが選択した文書を印刷設定の情報と共にプリントサーバ10から取得し、その文書をその印刷設定に従って用紙等の媒体に印刷する。
プリントサーバ10は、ユーザPC40等のクライアント装置から印刷対象の文書の登録やその文書についての印刷設定等の指示を受け付け、登録された文書についての印刷処理を制御する。プリントサーバ10に対して文書を登録するユーザ(登録者)は、その文書を印刷できるユーザ(印刷権限を持つ者)を指定することができる。またプリントサーバ10は、インターネット50等を介して受けた画像処理装置60からの要求に応じ、その画像処理装置60を操作しているユーザが印刷できる文書の一覧情報を画像処理装置60に提供する。そして、その一覧情報からユーザが選択した文書を、その文書に対応する印刷設定の情報と共に画像処理装置60に提供する。ここで、プリントサーバ10は、文書と共に画像処理装置60に提供する印刷設定を、人事DB20及びスケジュールDB30を参照して決定する。この印刷設定を決定する処理については、後で詳しく説明する。
人事DB20は、会社の人事情報を保持するデータベースである。図2に人事DB20が持つデータ内容の一例を示す。図2に示す1つの行がその会社の1人の社員の属性情報である。各社員の属性情報には、社員番号、名前、所属部署、内線番号、メールアドレス、役職等の属性項目が含まれる。
スケジュールDB30は、その会社の社員や部署のスケジュール(予定)を記憶するデータベースであり、ここで例示するシナリオでは、特に会議のスケジュールを記憶する。図3にスケジュールDB30に記憶される会議情報の例を示す。図3に示す1つの行が1つの会議の情報であり、会議ID(識別情報)、件名、日時、場所、依頼元、参加者リスト、資料の各項目を含んでいる。「会議ID」は、個々の会議を一意に識別する識別情報である。「件名」はその会議に対して付けた会議名である。「依頼元」は、その会議をスケジュールDB30に登録したユーザである。ここでは分かりやすくするために依頼元の欄に依頼元ユーザの名前を示しているが、実際にはその欄にはその依頼元ユーザの社員番号が保持される。参加者リストは、その会議に参加する参加者のリストである。図では参加者リストに各参加者の名前を示しているが、実際には依頼元の場合と同様社員番号のリストが保持される。「資料」は、その会議の資料として依頼元ユーザが登録した文書である。参加者リストに含まれる参加者は、「資料」欄に保持された文書を印刷する権限を有する。
スケジュールDB30への会議の登録は、例えば図4に示す会議登録画面100を用いて行われる。依頼元ユーザが自分のユーザPC40からスケジュールDB30にアクセスして新たな会議を登録する操作を行うと、「依頼元」の欄にそのユーザの名前が設定された会議登録画面100がユーザPC40に提供される。依頼元ユーザは、その会議登録画面100の「参加者」の入力欄に各参加者を入力し、「件名」(会議名)、場所、開始時刻、終了時刻を入力する。また、会議のための資料があれば、その資料のファイル112を、例えばドラッグ・アンド・ドロップ等の操作で、添付資料欄110に登録する。ユーザが会議登録画面100に必要事項を入力し、登録を指示すると、それら各項目の入力値を保持した会議情報エントリがスケジュールDB30内に記憶される。また、このときスケジュールDB30は、指定された各参加者に対して、その会議の情報(件名、日時、場所、参加者等)を記した会議参加依頼を例えば電子メール等の手段で送信してもよい。このような会議の登録や通知などの処理は従来技術を用いて行うことができるので、これ以上の説明は省略する。
スケジュールDB30に対して登録された資料の文書は、例えばスケジュールDB30からプリントサーバ10へ登録される。あるいは、依頼元ユーザがプリントサーバ10にアクセスし、印刷対象の文書として、スケジュールDB30に登録された会議の資料文書を指定すると、プリントサーバ10がスケジュールDB30からその文書を取得する。いずれの場合も、依頼元ユーザのユーザPC40には、プリントサーバ10から印刷設定画面が提供され、依頼元ユーザはこの画面に対して、印刷設定の各項目(例えば、まとめ印刷、両面/片面印刷等)の値を設定する。会議の参加者がその文書を印刷する場合に適用される印刷設定は、依頼元ユーザが設定した印刷設定と、人事DB20に記憶されているその参加者の属性情報とに基づいて決定される。以下では、一例として、参加者に適用する印刷設定を、参加者の所属部署と役職とに基づいて決定する場合を例にとって説明する。
印刷設定の決定のために、プリントサーバ10は、図5に例示する印刷設定レベル定義情報と、図6に例示するレベル調整ルールとを保持している。
印刷設定レベル定義情報(図5)は、印刷設定のパラメータ(項目)毎に、その項目の値を、レベル順に配列したものである。レベル1が最上位であり、以下、レベルの数値が大きくなるほど、下位のレベルとなる。上位レベルの設定値ほど、印刷時の課金額が高い(すなわち高コスト)。例えば「まとめ印刷」の場合、レベル1が「1up」、レベル2が「2up」等と定められている。なお、Nup(Nアップ。Nは正の整数)とは、用紙1ページに論理ページNページを並べて印刷することを意味する。パラメータには優先順が設定されている。優先順はレベル調整が適用される順序である。後述するレベル調整ルールから決まるレベル調整幅だけパラメータの値を調整する際、優先順が高い(「優先順」の値が小さい)パラメータから順に、その調整幅を使い切るまでパラメータの値のレベルを上げる(具体例は後述)。
レベル調整ルール(図6)は、文書を登録したユーザ(依頼元ユーザ)が入力した基準の印刷設定に対して、印刷を行うユーザ(会議の参加者)の属性情報に応じた調整を加える際に用いるルールである。基準の印刷設定に対してこのルールに従って調整を加えて得られる印刷設定が、会議の参加者がその文書を印刷する際に適用される。図6に例示するルールは、参加者を所属部署と役職の組み合わせでグループ分けし、グループ毎にレベルの調整幅を規定している。基準となるグループが「所属部署が依頼元ユーザと同じ本部であり、役職が一般社員である」という条件に該当するユーザのグループである。参加者がこのグループに該当する場合、基準の印刷設定がそのまま用いられる。言い換えれば、基準の印刷設定は、このグループを想定して設定される。
また図6の例では、例えば「所属部署が依頼元ユーザと異なる本部であり、役職が課長以上である」という条件に該当するユーザのグループの場合は、レベル調整は「3つ上位の設定」と定められている。このルールは、その条件に該当するグループに属する参加者については、基準の印刷設定よりも優先順が高いパラメータから優先的に、値のレベルを3つ分上位に上げることを意味する。例えば、基準の印刷設定が、「まとめ印刷」=4up、「両面印刷」=両面、「カラーモード」=白黒、・・・である場合、優先順が高い順にパラメータをレベル3つ分上位に上げると次のようになる。まず優先順が最上位の「まとめ印刷」は2レベル分上げて1upとし、残りの1レベル分を次位の「両面印刷」で上げて片面とする。これでレベル3つ分上げたので、「カラーモード」=白黒以降のパラメータは変更しない。なお、以上に例示したレベル調整の方法はあくまで一例に過ぎない。
プリントサーバ10は、以上に説明した印刷設定レベル定義(図5)とレベル調整ルール(図6)を参照して、会議参加者に実際に適用する印刷設定を決定する。そして、本実施形態では、会議を最初に登録した時点から実際に会議が開催されるまでの間に起こり得る会議参加者の属性(所属部署や役職など)の変更に、その参加者用の印刷設定を追従させる。
この例では、印刷設定レベル定義(図5)とレベル調整ルール(図6)は、プリントサーバ10を利用するユーザの全てに適用される共通の設定情報である。これらの情報は例えばシステム管理者により策定され、プリントサーバ10に登録される。ただし、文書を登録したユーザが、その文書用の印刷設定レベル定義とレベル調整ルールを登録できるようにしてもよい。
次に図7を参照して、プリントサーバ10が会議用の文書の登録を受け付けた際の処理の例を説明する。
この手順において、依頼元ユーザがスケジュールDB30に会議を登録し、その会議の資料の文書を登録すると、スケジュールDB30からプリントサーバ10に対して印刷対象文書の登録指示が送られる。プリントサーバ10はこの文書登録指示を受け取り(S10)、その文書に対する印刷設定の入力画面を依頼元ユーザのユーザPC40に提供する。そして、ユーザから印刷設定の入力を受け付ける(S12)。この入力受付は、例えば、印刷設定のパラメータ毎に、そのパラメータの値をユーザに選択させることで行えばよい。次にプリントサーバ10は、スケジュールDB30からその会議の参加者のリストを取得する(S14)。取得したリストには、各参加者の社員番号の情報が含まれる。次にプリントサーバ10は、それら社員番号を用いて、それら各参加者の属性情報を人事DB20から取得する(S16)。そして、取得した各参加者の属性情報を、レベル調整ルール(図6)のグループ分けに適用することで、参加者をグループ分けする(すなわち各参加者の属するグループを求める)(S18)。そして、このグループ分けでできたグループが複数あるかどうかを判定する(S20)。グループが複数できた場合、S12で入力された印刷設定は基準の印刷設定であると判断し、その基準の印刷設定に対して、レベル調整ルールに規定されたそれら各グループのレベル調整を適用することで、それら各グループの印刷設定を求める(S22)。
このとき、プリントサーバ10は、その基準の印刷設定を、当該文書の管理情報の一部として記憶する。このとき記憶される文書管理情報の例を図8に示す。この例では、プリントサーバ10がその文書に付与した一意な文書IDに対応づけて、その文書を登録したユーザ(この例では会議を登録した依頼元ユーザ)の社員番号(「登録者」)、会議ID、その会議の参加者リスト、及び基準の印刷設定の情報が登録されている。登録者、会議ID及び参加者リストは、例えばS10においてスケジュールDB30から通知される。登録者は、基準の印刷設定を変更する権限を有している。プリントサーバ10は、ログインしたユーザが当該文書の登録者であるとその登録者の情報から判明した場合には、ユーザに対して当該文書についての基準の印刷設定を変更するためのUI画面を提供する。またこの例では、基準の印刷設定は、印刷設定レベル定義(図5)における各パラメータのレベル値の形で記憶されている。
また一つの例では、プリントサーバ10は、S22で求めた各グループの印刷設定を、それぞれそのグループに属する各参加者の印刷管理情報として記憶する。この印刷管理情報の例を図9に示す。印刷管理情報には、会議の参加者の社員番号に対応づけて、その会議に対応づけて登録された文書の文書ID、その会議の会議ID、その参加者の属性情報(S16で取得済み)、及び、その文書の印刷設定(S22で求められた、この参加者が属するグループの印刷設定)が登録されている。ここで登録される参加者の属性情報は、グループ分けに必要な項目のみでよい。
S18のグループ分け処理で、グループが1つしかできなかった場合(すなわち全参加者が同一グループに所属)、S12で入力された印刷設定は、そのグループの印刷設定であるとみなし、図10のS24に進む。この場合、プリントサーバ10は、その印刷設定を、S14で取得した各会議参加者の印刷管理情報に組み込む。またこのときプリントサーバ10が、その印刷設定から、レベル調整ルール(図6)における基準のグループ(一番上の調整のないグループ)のための印刷設定、すなわち基準の印刷設定を求め、当該文書の管理情報に組み込んでもよい。例えば、基準の印刷設定は、そのグループのレベル調整をレベル調整ルールから求め、S12で入力された印刷設定を、そのレベル調整分だけ逆に調整することで求めればよい。
以上が、文書の新規登録を受け付けた際のプリントサーバ10の処理の例である。その登録の後、その文書について登録者から基準の印刷設定の変更を受けた場合には、プリントサーバ10は、その文書の管理情報(図8)にその変更を反映すると共に、S22の処理を行えばよい。
さて、図7に示した文書登録時の処理が完了した後、登録された文書がすぐに印刷されるとは限らない。例えば会議の開催日の何週間も前にスケジュールDB30にその会議が登録され、会議資料が登録される場合もある。その場合、会議資料の文書は、登録からかなり時間のたった、例えば会議開催日時の直前に印刷されることも多い。このように文書登録から時間が経過する間に、会議参加者の属性(例えば所属部署や役職)が変更されたり、会議の参加メンバが変更されたりする場合もある。そこで本実施形態では、そのような変更に合わせて、各参加者の印刷設定等を保守する。この保守処理の手順の例を、図10を参照して説明する。
プリントサーバ10は、登録を受け付けた会議の文書毎に、図10の処理を実行する。この処理では、文書を登録した時点又は前回の保守を実行した時点から、あらかじめ定められた長さの待機時間が経過するのを待つ(S24)。待機時間の長さは、例えば、1日や半日である(もちろんこれに限定されるものではない)。待機時間が経過すると、プリントサーバ10は、まずスケジュールDB30にアクセスし、当該文書の管理情報(図8参照)内の会議IDに対応する会議情報(特に会議の参加者リスト)を取得する(S26)。また、その参加者リストに含まれる各参加者の社員番号に対応する属性情報を人事DB20から取得する(S28)。次に、S26で取得した参加者リストを、当該文書の管理情報に含まれる参加者リストと比較し、会議のメンバとして新たに追加された参加者、削除された参加者があるかどうかを判定する(S30)。この判定の結果がYesの場合、まず新規追加された参加者がある場合は、各新規参加者の属性情報から、その新規参加者がレベル調整ルール(図6)のどのグループに属するかを判定する(S32)。次に、基準の印刷設定を、その判定したグループに対応するレベル調整の分だけ調整することで、その新規参加者に適用する印刷設定を決定し、その新規参加者のために新たに用意した管理情報(図9参照)にその印刷設定を登録する(S34)。また、会議メンバから削除された者がいる場合は、そのユーザの管理情報(図9)を削除する(S36)。その後処理はS38に進む。
また、S30で、追加又は削除された参加者がないと判定された場合、処理はS38に進む。
S38では、更に、各参加者につき、ユーザの管理情報(図9)に記憶されている前回の保守時点の属性情報と、S28で取得した属性情報とを比較し、変更があったかどうか判定する。そして、属性情報が変更された参加者については、変更後の属性から、その参加者がレベル調整ルール(図6)のどのグループに属するかを判定し、判定したグループが、そのユーザがそれまで属していたグループから変わったかを判定する。そして、属するグループが変更された参加者については、基準の印刷設定を、変更後のグループに対応するレベル調整の分だけ調整することで、その参加者に適用する印刷設定を決定し、その参加者のために管理情報(図9参照)に印刷設定を決定した設定へと変更する(S40)。属するグループが変わらない参加者については、S40の処理はスキップされる。
S38(判定結果がNo)又はS40の後、処理はS24に戻り、以上の処理を繰り返す。
図10の保守処理手順により、プリントサーバ10が管理している各参加者の文書の印刷設定が、その参加者の最新の状況(属性情報)を反映した形に維持される。また、会議に対して新たに追加された参加者についても、その参加者の印刷設定が自動的に決定され、管理されることになる。
プリントサーバ10は、画像処理装置60を操作するユーザ(会議参加者)から、そのユーザに対応づけてプリントサーバ10が保持している文書の印刷指示を受け付ける。例えば、ユーザが画像処理装置60を操作してプリントサーバ10にアクセスすると、ユーザ認証処理が行われ、ユーザが入力した認証情報(例えば社員番号とパスワード)が正しいものである場合、認証成功となる。この場合プリントサーバ10は、そのユーザの社員番号に対応づけて保持している文書のリストを画像処理装置60に提供する。ユーザは、画像処理装置60の操作画面に表示されたその文書リストから、そのときに印刷したい文書を選択し、印刷実行の指示を入力する。すると、その指示を受けたプリントサーバ10は、選択された文書と、その社員番号とその文書との組に対応づけて保持している印刷設定(図9参照)とを画像処理装置60に送信する。画像処理装置60は、その文書及び印刷設定を受信し、その文書をその印刷設定に従って印刷する。本実施形態では、図10の保守処理により、印刷指示を受けた時点での当該参加者の最新の属性を反映した印刷設定で印刷が実行されることになる。
さて、会議の参加者が、他の人に自分の代理で会議に出席するよう依頼し、その代理参加者が会議の前に画像処理装置60からその会議のための文書の印刷を行う場合がある。このような場合、印刷する文書の印刷設定は、代理参加者の属性(所属部署や役職など)ではなく、本来の参加者の属性に対応したものであることが望ましい。このような要望を実現する変形例を、以下に説明する。
この変形例では、会議の参加者は、スケジュールDB30に登録されたその会議の会議情報にアクセスし、自分の代理となる代理参加者を入力する。この場合、スケジュールDB30は、その会議情報内に、その(本来の)参加者に対応づけて、その代理参加者の社員番号を含める。
プリントサーバ10は、図10の保守処理のS26において、スケジュールDB30から取得した会議情報内のある参加者の情報に代理参加者が設定されていた場合、自分が管理している、その会議の文書についてのその参加者の管理情報に、その代理参加者の社員番号を登録する。図11に、代理参加者の項目を含んだ参加者管理情報の例を示す。図9との比較で分かるように、図11の管理情報は、図9の管理情報に対して、代理参加者の社員番号の欄(図中の「代理者社員番号」)を追加したものである。例えば、社員番号「00001」、「00002」の参加者には代理参加者は設定されていないが、社員番号「00003」の参加者には、社員番号「00012」のユーザが代理参加者として指定されている。
この変形例に特有の処理は、画像処理装置60からプリントサーバ10に対して、代理参加者が文書の印刷を指示してきた場合の処理である。この場合、プリントサーバ10は、ログインしたユーザの社員番号が本来の参加者(図11の「参加者社員番号」)として登録されている文書の他に、その社員番号が「代理者社員番号」に登録されている文書も抽出し、それら抽出した文書のリストを画像処理装置60に送る。そして、そのユーザが選択した文書を、その文書に対応づけられた印刷設定の情報と共に、画像処理装置60に送って、印刷させる。ここで、そのユーザが選んだ文書が、そのユーザが代理参加者に設定されている文書の場合、その文書に対応づけられている印刷設定はそのユーザ(代理参加者)の属性ではなく本来の参加者の属性に基づいて定められているので、本来の参加者のための印刷設定で印刷が行われる。
以上の例では、画像処理装置60からプリントサーバ10にログインする際に、ユーザ認証を受けることを前提としていたが、これはあくまで一例に過ぎない。ユーザが画像処理装置60からプリントサーバ10に印刷指示(文書及び印刷設定の要求)を行う際に、ユーザ認証を必要としない仕組みとすることもできる。このような仕組みの1つの例として、予約番号を利用する仕組みがある。
この仕組みでは、ユーザは、プリントサーバ10と同じイントラネット内にあるユーザPC40からプリントサーバ10にログインし、ユーザ認証を受けた上で、プリントサーバ10が保持する、当該ユーザが参加する会議の文書を指定して、印刷の予約を行う。予約を受けたプリントサーバ10は、一意な予約番号を生成し、その予約番号を例えば電子メールなどの手段でそのユーザに通知する。このときプリントサーバ10は、その予約番号を、そのユーザ(会議参加者)のその文書に対応する管理情報に登録する。図12に、予約番号の欄を含んだ参加者管理情報の例を示す。この管理情報は、図9に例示した管理情報に対して、予約番号の欄を追加したものである。
ユーザがプリントサーバ10から通知された予約番号を画像処理装置60に入力すると、その予約番号がプリントサーバ10に送られる。プリントサーバ10は、受け取った予約番号に対応する管理情報(図12参照)から、印刷対象の文書と印刷設定を求め、求めた文書と印刷設定の情報を画像処理装置60に送る。画像処理装置60は、受け取った文書を、受け取った印刷設定に従って印刷する。
この予約番号を利用する仕組みの場合、プリントサーバ10が接続されたイントラネットの外にある画像処理装置60に対して、社員番号やパスワード等の認証情報を入力しなくても、上記実施形態と同等のサービスを受けることが可能になる。
なお、この仕組みでは、参加者が代理参加者を指定した場合、参加者がプリントサーバ10から予約番号を取得し、その予約番号を代理参加者に通知すれば、代理参加者は本来の参加者の場合とまったく同様に、画像処理装置60にてその文書を印刷できる。
以上の例では、会議用の文書の登録時にプリントサーバ10が会議の各参加者の属性に応じた印刷設定を求め、その後定期的に各参加者の属性が変更されていないか確認し、変更された場合には、その変更を印刷設定に反映させるようにしている。しかしこの方式は一例に過ぎない。そのような定期的な更新を行う代わりに、ユーザ(参加者等)が画像処理装置60から会議の文書の印刷を要求してきたときに、その時点でのユーザの属性を求め、そのユーザの属性から、そのユーザに適用する印刷設定を決定するようにしてもよい。
定期的に印刷設定の更新の要否を確認する上述の方式の場合、印刷時には、プリントサーバ10は単に記憶している印刷設定を読み出すだけでよいので、レスポンスは早い。しかし、最後の確認の時点から印刷時までの間にユーザの属性に変更があると、使用される印刷設定は印刷時のユーザの属性に対応したものでなくなってしまう可能性がある(ただしこのような事象は定期的な確認の間隔を適切に設定することで、実用上はほぼ避けられる)。
これに対し、実際に印刷する時点でユーザの属性を求めその属性に応じて印刷設定を決定する方式の場合、印刷の指示を受けた際に人事DB20等にアクセスしてユーザの属性を求め、印刷設定の内容を決定する必要があるため、レスポンスは遅くなる。しかし、原理的に、印刷時のそのユーザの属性に応じた印刷設定で印刷できる。
以上に説明した実施形態では、印刷設定レベル定義(図5)、レベル調整ルール(図6)を利用し、ユーザが指定した基準の印刷設定を元に、それらルール等を参照することで、各参加者の属性に対応する印刷設定を求めた。しかし、この方式は一例に過ぎない。この代わりに、例えば、レベル調整ルール(図6)で定義したグループ毎に、そのグループに適用する印刷設定を、文書の登録者が個別に指定する方式を採用してもよい。この場合、プリントサーバ10は、指定されたグループ毎の印刷設定を文書IDに対応づけて保存しておき、図7のS22や図10のS34では、参加者の属するグループに対応して保存されている印刷設定そのものを、その参加者に適用する印刷設定に決定すればよい。
また以上の例では、スケジュールDB30に会議を新規登録した登録者が、その会議に用いる文書を登録する場合を例にとって説明したが、会議の参加者も文書を登録できるようにしてももちろんよい。この場合、プリントサーバ10が管理する文書の管理情報(図8)内の「登録者」の情報には、会議の登録者ではなく、当該文書を登録したユーザの社員番号を登録(あるいは会議の登録者と、文書の登録者の両方を登録)するようにしてもよい。
また、以上では会議の文書を参加者が印刷するというシーンを例にとって説明したが、上記実施形態及び変形例の手法は、会議以外のイベントにも適用可能である。すなわち、一人以上の参加者が参加するイベントにおいて用いる文書を登録し、参加者がその登録された文書をダウンロードして印刷する場合一般に、上記実施形態及び変形例の手法は適用可能である。
また以上の例では、参加者(あるいはその代理)が画像処理装置60経由でプリントサーバ10に文書の印刷(ダウンロード)を指示できるタイミングを特に限定しなかったが、限定することも可能である。例えば、会議または文書を登録したユーザが指定した時刻以降にならないと、その文書の印刷指示を受け付けないようにすることもできる。印刷指示を受け付け可能とするタイミングは、会議等のイベントの開始時刻を基準に指定できるようにしてもよい(例えばその開始時刻から、ユーザが指定した時間だけ前の時刻をそのタイミングとするなど)。
以上に例示したプリントサーバ10は、汎用のコンピュータに、上述した処理を表すプログラムを実行させることにより実現される。ここで、コンピュータは、例えば、ハードウエアとして、CPU等のマイクロプロセッサ、ランダムアクセスメモリ(RAM)及びリードオンリメモリ(ROM)等のメモリ(一次記憶)、HDD(ハードディスクドライブ)を制御するHDDコントローラ、各種I/O(入出力)インタフェース、ローカルエリアネットワークなどのネットワークとの接続のための制御を行うネットワークインタフェース等が、たとえばバスを介して接続された回路構成を有する。また、そのバスに対し、例えばI/Oインタフェース経由で、CDやDVDなどの可搬型ディスク記録媒体に対する読み取り及び/又は書き込みのためのディスクドライブ、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体に対する読み取り及び/又は書き込みのためのメモリリーダライタ、などが接続されてもよい。上に例示した各機能モジュールの処理内容が記述されたプログラムがCDやDVD等の記録媒体を経由して、又はネットワーク等の通信手段経由で、ハードディスクドライブ等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがRAMに読み出されCPU等のマイクロプロセッサにより実行されることにより、上に例示した機能モジュール群が実現される。