(57)【要約】【課題】従来の印刷サービスシステムでは、サービス品質がユーザの待ち時間の差異として現れ、各プリントサイトのビジネス条件の差異を吸収・均一化することができなかった。【解決手段】ネットワークに接続され、印刷サービスを提供可能な複数のプリントサーバとの間で、相互に通信をしながら画像データの印刷要求を行うサーバであって、前記複数のプリントサーバのうち第１のプリントサーバへ印刷要求を行うために必要な処理に要する第１の時間を算出し、前記印刷要求を前記複数のプリントサーバのうち第１のプリントサーバ以外へ行うために必要な処理に要する第２の時間を算出し、前記算出された時間のうち最大値と前記第１の時間との差分を算出し、前記算出された差分に応じて、前記第１のプリントサーバへ印刷要求を行うために必要な処理の実行を抑制する。【選択図】図１
2005043991.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続され、印刷サービスを提供可能な複数のプリントサーバとの間で、相互に通信をしながら画像データの印刷要求を行うサーバであって、
前記複数のプリントサーバのうち第１のプリントサーバへ印刷要求を行うために必要な処理に要する第１の時間を算出する第１の算出手段と、
前記印刷要求を前記複数のプリントサーバのうち第１のプリントサーバ以外へ行うために必要な処理に要する第２の時間を算出する第２の算出手段と、
前記第１の算出手段と第２の算出手段とで算出された時間のうち最大値と前記第１の時間との差分を算出する差分算出手段と、
前記算出された差分に応じて、前記第１のプリントサーバへ印刷要求を行うために必要な処理の実行を抑制する抑制手段と
を備えることを特徴とするサーバ。
【請求項２】
前記最大値が、所定の閾置を越える場合に、前記差分算出手段は、前記閾置と前記第１の時間との差分を算出することを特徴とする請求項１に記載のサーバ。
【請求項３】
前記第１及び第２の算出手段は、前記印刷要求における画像データ数と、前記サーバにおける負荷情報とに基づいて、前記第１及び第２の時間を算出することを特徴とする請求項１又は２に記載のサーバ。
【請求項４】
前記印刷要求を行うために必要な処理の実行時間を測定する測定手段と、
前記測定された実行時間を、前記印刷要求に含まれる画像データ数と、前記処理実行時の前記サーバの負荷情報と共に、前記印刷要求を行うプリントサーバに関連づけて記憶する記憶手段と、
前記記憶手段に記憶された情報を、統計的に解析する解析手段と
を備え、
前記第１及び第２の算出手段は、前記解析手段における解析結果に基づいて、前記第１及び第２の時間を算出することを特徴とする請求項１乃至３のいずれかに記載のサーバ。
【請求項５】
ネットワークに接続され、印刷サービスを提供可能な複数のプリントサーバとの間で、相互に通信をしながら画像データの印刷要求を行うサーバの制御方法であって、
前記複数のプリントサーバのうち第１のプリントサーバへ印刷要求を行うために必要な処理に要する第１の時間を算出する第１の算出工程と、
前記印刷要求を前記複数のプリントサーバのうち第１のプリントサーバ以外へ行うために必要な処理に要する第２の時間を算出する第２の算出工程と、
前記第１の算出工程と第２の算出工程とで算出された時間のうち最大値と前記第１の時間との差分を算出する差分算出工程と、
前記算出された差分に応じて、前記第１のプリントサーバへ印刷要求を行うために必要な処理の実行を抑制する抑制工程と
を備えることを特徴とするサーバの制御方法。
【請求項６】
前記最大値が、所定の閾置を越える場合に、前記差分算出工程では、前記閾置と前記第１の時間との差分を算出することを特徴とする請求項５に記載のサーバの制御方法。
【請求項７】
前記第１及び第２の算出工程では、前記印刷要求における画像データ数と、前記サーバにおける負荷情報とに基づいて、前記第１及び第２の時間を算出することを特徴とする請求項５又は６に記載のサーバの制御方法。
【請求項８】
前記印刷要求を行うために必要な処理の実行時間を測定する測定工程と、
前記測定された実行時間を、前記印刷要求に含まれる画像データ数と、前記処理実行時の前記サーバの負荷情報と共に、前記印刷要求を行うプリントサーバに関連づけて前記サーバの記憶部に記憶する工程と、
前記記憶された情報を、統計的に解析する解析工程と
を備え、
前記第１及び第２の算出工程では、前記解析工程における解析結果に基づいて、前記第１及び第２の時間を算出することを特徴とする請求項５乃至７のいずれかに記載のサーバの制御方法。
【請求項９】
請求項５乃至７のいずれかに記載のサーバの制御方法をコンピュータに実行させるためのサーバの制御プログラム。
【請求項１０】
請求項９に記載のサーバの制御プログラムを記憶したコンピュータで読みとり可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はユーザの持つ画像に関する電子データをインターネット等の通信環境を用いて接続されたサーバ上に保管し、プリントインフラを提供している別のサーバに対して印刷注文を行うことにより印刷物をユーザに提供するための情報提供サービスシステムに関するものである。
【０００２】
【従来の技術】
近年、通信インフラの整備及び情報通信技術の発展により、インターネットを利用した情報提供サービス及び情報利用サービスが可能となった。特に、テキストデータ、画像データ、音声データ等全てのデータがデジタル化されたマルチメディア環境での、情報の共有、情報の提供が可能となり、インターネットを介して多くの情報提供サービスが誕生している。
【０００３】
中でも、インターネット上のサーバの所定の記憶領域に顧客がデジタルカメラなどの画像入力機器で撮影した画像データを格納し、その画像データを顧客が任意に閲覧できるようなサービスを提供するアプリケーションサービスプロバイダ（以後フォトサイトと呼ぶことにする）や、インターネットを利用して年賀状データやワープロ文書、画像などの電子ドキュメントを受付け、当該受付けたデータを利用して印刷物をプリントアウトして商品として提供するプリントサービスプロバイダ（以後プリントサイトと呼ぶ）が登場している。
【０００４】
上記フォトサイトの中には、プリントサービスまでを独自に提供しているものもあるが、独自にはプリントインフラの構築は行わず、様々なプリントサービスを提供できるプリントサイトと提携してプリントサイトに対して印刷を依頼するフォトサイトも存在する（例えば、特許文献１参照。）。
【０００５】
【特許文献１】
特開２００１−２９０６２７号公報
【発明が解決しようとする課題】
上記のようなフォトサイトとプリントサイトとが連携を行いながら印刷サービスを提供するシステムでは、フォトサイトからプリントサイトへ印刷要求がなされた後は、印刷詳細情報の設定や見積もり処理や決済処理などの一連の処理がプリントサイトの制御下に委ねられることがある。
【０００６】
このようなサービス形態では、注文処理及び印刷（生産）のためにプリントサイトが必要とするデータを、フォトサイト側から提供する必要がある。そして、プリントサイトに提供されるそれらのデータは、ユーザからフォトサイトへ印刷要求がなされた後、プリントサイトでの注文処理が開始されるまでに、フォトサイトの持つデータとは切り離して準備されなければならない。
【０００７】
このようにフォトサイトの持つデータとは切り離して準備する理由は、ユーザがプリントサイトで注文処理を行うのと同時に、フォトサイト側で注文処理に使用した画像データを編集・改編してしまうことがあるためである。例えば、ユーザがフォトサイトにアップロードした所定の画像の印刷処理を注文した後、当該注文対象の画像が不要となったと判断して削除してしまったり、何らかの編集を加えてしまう場合がある。このような状況では、プリントサイト側に送信する画像データをフォトサイトで管理されているデータと切り離しておかないと、ユーザから印刷注文を受けた画像自体がフォトサイト側に存在しなくなるために印刷処理が行えい、あるいは、印刷処理結果が注文時に想定された内容とは異なるものとなってしまう、と言った不都合が生ずる。
【０００８】
そこで、プリントサイトに提供するデータをフォトサイトの持つのデータとは切り離して準備することにより、両サイト間のデータの不整合が生ずることを防止している。
【０００９】
上記の準備には、フォトサイトへ印刷要求がなされてからプリントサイトでの注文処理が開始されるまでに、一定の処理時間を要することになる。通常この処理時間は準備するデータの量、つまりプリントサイトが注文処理及び印刷（生産）に必要なデータ量に主に依存することになる。
【００１０】
上記準備のための処理時間中も、データの不整合を防止するためにはユーザへの操作を許諾しないことが好ましい。そこで、ユーザはこの処理時間中に注文処理を行えないようになっている。この注文処理が行えない期間は、ユーザ側からみれば待ち時間となってしまう。また、プリントサイトの扱うサービスの種類に応じてサービスの実行に必要とされるデータ量が必然的に異なるため、フォトサイトへ印刷要求がなされてからプリントサイトでの注文処理が開始されるまでの時間（この時間は、ユーザ側から見れば待ち時間に相当）にプリントサイト間で差異が生じることになってしまう。
【００１１】
この時間的な差異は、本来プリントサイトのサービス内容及び質とは関係がなく、時間的な差異が大きいためにサービス品質が劣るというものではない。むしろ、プリントサイトがより高いサービス内容・質を提供するためには多くの情報が必要であるために、結果として注文開始までにユーザに多大な待ち時間というストレスを与えてしまう。このような表面的なデメリットは、プリントサイトにとってビジネス的なチャンスを失わせる原因にもなりかねない。
【００１２】
また、待ち時間が少ないプリントサイトへの印刷要求が集中することになれば、印刷要求が集中したサイトにおける処理効率が著しく低下してしまう。このような事態は、印刷要求を複数のプリントサイトに分散して処理効率を向上させようとした印刷サービスシステムの意義が失われてしまう。
【００１３】
さらに、サービス品質が低くてもユーザに対して待ち時間を与えないことにプライオリティが置かれることとなれば、より高いサービス内容・質を提供しようとする動機付けが失われ、サービス提供者は低品質のプリントサイトばかりになってしまう。その結果として、本来であればより高い品質のサービスを受けられるはずのユーザの利益が失われてしまうという問題がある。
【００１４】
そこで、本発明は、各プリントサイトで注文処理が開始されるまでのユーザの待ち時間の差異を解消し、概ね一定に調節できることで、各プリントサイトのビジネス条件の差異を吸収・均一化するシステムを提供することを目的とする。
【００１５】
【課題を解決するための手段】
上記課題を達成するための本発明は、具体的に、ネットワークに接続され、印刷サービスを提供可能な複数のプリントサーバとの間で、相互に通信をしながら画像データの印刷要求を行うサーバであって、前記複数のプリントサーバのうち第１のプリントサーバへ印刷要求を行うために必要な処理に要する第１の時間を算出する第１の算出手段と、前記印刷要求を前記複数のプリントサーバのうち第１のプリントサーバ以外へ行うために必要な処理に要する第２の時間を算出する第２の算出手段と、前記第１の算出手段と第２の算出手段とで算出された時間のうち最大値と前記第１の時間との差分を算出する差分算出手段と、前記算出された差分に応じて、前記第１のプリントサーバへ印刷要求を行うために必要な処理の実行を抑制する抑制手段とを備える。
【００１６】
【発明の実施の形態】
以下、添付の図面を参照して本発明の好適な実施形態を説明する。
【００１７】
【発明の実施の形態】
＜システムの構成＞
図１は、本実施形態におけるサービスを実施するためのシステムの構成を示す図である。
【００１８】
１０１は画像入力装置である。例えば、静止画を撮影し画像データとして記録できるデジタルスチルカメラ、および、動画を撮影し、動画像データとして記録できるデジタルビデオカメラ等が挙げられる。画像入力装置１０１はイメージ情報である光学像を電気信号に変換し、所定の画像処理をした後、デジタル情報として、メモリカード等の情報記憶装置に記録し、再生することが可能である。
【００１９】
１０２は、情報処理装置であり、以下に記載する本実施形態では情報処理装置１０２をパーソナルコンピュータ（ＰＣ）として説明する。ＰＣとしての情報処理装置の構成の一例を図７に示すとおりである。
【００２０】
図７は、本実施形態での機能を実現するソフトウェアプログラムを動作させる構成の一例を示したものである。情報処理装置１０２は、ＣＰＵ７０１と、ＲＯＭ７０２と、ＲＡＭ７０３と、ハードディスク（ＨＤ）７０９及びフロッピー（登録商標）ディスク（ＦＤ）７１０のディスクコントローラ（ＤＣ）７０５と、表示部７０６、ユーザインタフェース７０７と、ネットワークインタフェースカード（ＮＩＣ）７０８とが、システムバス７０４を介して互いに通信可能に接続された構成としている。そして、システムバス７０４が、図１に示したインターネット１０４とネットワークインタフェースカード７０６を介して接続される。
【００２１】
ＣＰＵ７０１は、ＲＯＭ７０２あるいはＨＤ７０９に記憶されたソフトウェア、あるいはＦＤ７１０より供給されるソフトウェアを実行することで、システムバス７０４に接続された各構成部を統括的に制御する。
【００２２】
すなわち、ＣＰＵ７０１は、本実施形態にて説明する処理シーケンスに従った処理プログラムを、ＲＯＭ７０２、あるいはＨＤ７０９、あるいはＦＤ７１０から読み出して実行することで、本実施形態での動作を実現するための制御を行う。ＲＡＭ７０３は、ＣＰＵ７０１の主メモリあるいはワークエリア等として機能する。
【００２３】
ＤＣ７０５は、ブートプログラム、種々のアプリケーション、編集ファイル、ユーザファイル、ネットワーク管理プログラム、および本実施形態における上記処理プログラム等を記憶するＨＤ７０９、およびＦＤ７１０とのアクセスを制御する。表示部７０６は、フォトサイト１０５等から取得した画面情報をブラウザに表示するための表示手段であって、例えば液晶ディスプレイやＣＲＴディスプレイにより構成される。ユーザインタフェースは、表示部７０６の表示内容に基づくＰＣ１０２のユーザからの入力を受け付けるための入力手段であって、例えばキーボードやマウス、ポインティングデバイスなどで構成される。ＮＩＣ７０８は、インターネット１０４を通じてフォトサイト１０５と、所定の通信プロトコルを用いて相互にデータのやり取りをする。
【００２４】
図１では、情報処理装置１０２として１０２Ａと１０２Ｂとが示されているが、これはあくまで例示であって、インターネット１０４へ接続される情報処理装置は１０２Ａ及び１０２Ｂの２つに限定されるものではない。本実施形態の以下における説明では、主として画像入力装置１０１が接続される１０２Ａを取り上げるが、１０２Ａについての記載した内容は、他の情報処理装置にも当然に適用可能である。
【００２５】
１１６は画像入力装置１０１が撮影し、画像入力装置１０１内に記憶している画像データをＰＣ１０２ＡのＨＤＤに代表される記憶装置に転送するためのデータ転送用インタフェースである。データ転送用インタフェース１１６は、ユニバーサルシリアルバス（ＵＳＢ）、ＩＥＥＥ１３９４に代表される有線インタフェース、または、ＩｒＤＡ、Ｂｌｕｅｔｏｏｔｈに代表される無線インタフェースのどちらでもよい。
【００２６】
尚、画像入力装置１０１はＰＣ１０２ＡにインストールされているＯＳまたは専用のソフトウエアからの命令で、画像入力装置１０１内の情報記憶装置に格納されている画像データを、フォトサイト１０５へ一括転送する。あるいは、画像入力装置１０１が送信した転送コマンドで、ＰＣ１０２ＡのＯＳ又は専用のソフトウエアが、ＰＣ１０２Ａの記憶装置（例えば、ＨＤ７０９）に画像データ記録領域を確保し、画像入力装置１０１から転送された画像データの当該記憶装置内への書き込みを行い、更に、画像データをフォトサイト１０５へ転送してもよい。
【００２７】
１０５は、ＰＣ１０２Ａから受信した画像データを保管したり、保管された画像データをユーザに閲覧させたり、保管された画像データを後述するプリントサイト１０９へ転送して印刷物を提供させるサービスを行うフォトサイトである。フォトサイト１０５は、ユーザＰＣ１０２Ａから受信した画像データを記憶する画像データベース（ＤＢ）１１７、フォトサイト１０５の利用者として登録されたユーザの属性情報や、記憶された画像データの属性情報や、後述するプリントサイト１０９の属性情報などを記憶する情報データベース（ＤＢ）１１８、画像ＤＢ１１７に記憶されたユーザの画像データをユーザなどに閲覧させるための制御を行うフォトシェアリングモジュール１０６を含む。
【００２８】
１０９は、フォトサイト１０５から転送された画像データを印刷処理して印刷物１１２を提供するプリントサイトを示す。プリントサイト１０９は、フォトサイト１０５から画像データやユーザのプリント注文を受信するためのモジュール（図示せず）を含み、画像データの印刷処理を行うプリンタ１１１に接続されている。画像データを処理して得られた印刷物１１２は、ユーザやユーザが指定した宛先に配送される。また、プリントサイト１０９は課金モジュール１１０によって、画像データの印刷見積り料金を計算する。尚、図１では、プリントサイト１０９は、プリントサイト１０９Ａから１０９Ｃの３つ図示したが、プリントサイトの数はこれに限定されるものではない。
【００２９】
尚、フォトサイト１０５やプリントサイト１０９は、図７とほぼ同様のハードウェア構成を有する複数のサーバ装置から構成され、各サーバ装置はサービスを提供するために必要な機能をそれぞれ実行する。また、
１０４はインターネットである。ＰＣ１０２Ａ、フォトサイト１０５、プリントサイト１０９、インターネット１０４及び公衆通信回線や専用線を介して通信することができる。ここで、ＰＣ１０２Ａ上では、Ｗｅｂブラウザが動作し、ｈｔｔｐプロトコル等の標準プロトコルを用いて前記フォトサイト１０５にアクセスしてフォトサイト１０５を構成するサーバＰＣが管理するＨＴＭＬ、ＸＭＬ等の記述言語で作成された画像、音声等のマルチメディア情報とリンクされている情報を受信して表示する。これにより、ＰＣ１０２Ａは、フォトサイト１０５が提供するサービスを通信インフラとしてインターネット１０４を介して受ける事ができる。
【００３０】
尚、本実施形態では１０２Ａをパーソナルコンピュータとして説明するが、Ｗｅｂブラウズ機能や、通信機能、表示機能などを備えた携帯電話機や携帯情報端末（ＰＤＡ）、デジタルスチルカメラ、デジタルビデオカメラ、スキャナ、複写機などによっても同様に適用することができる。
【００３１】
＜ＰＣからフォトサイトへの画像データのアップロード＞
本実施形態において、画像入力装置１０１によって撮影された画像データをＰＣ１０２Ａからフォトサイト１０５にアップロードし、画像ＤＢ１１７に格納する手順について、図２を参照して詳細に説明する。
【００３２】
ステップＳ２０１：
ＰＣ１０２Ａが、フォトサイト１０５から受信した画面情報をブラウザ上に表示する。
【００３３】
フォトサイト１０５のフォトシェアリングモジュール１０６は、サーバＰＣ（図示せず）が管理するＨＴＭＬ、ＸＭＬ等の記述言語で作成された画像、音声等のマルチメディア情報とリンクされている情報、即ち、ＰＣ１０２Ａの表示部に表示する画面情報をＰＣ１０２Ａへ送信する。
【００３４】
この時、ＰＣ１０２Ａの表示部７０６ではブラウザ表示がなされており、インターネット１０４によって情報転送が可能なｈｔｔｐプロトコルなどの標準プロトコルを用いてフォトサイト１０５に接続され、フォトサイト１０５から受信した画面情報を当該ブラウザ上に表示している。ここでブラウザに表示される画面情報には、フォトサイト１０５で提供可能なサービスに関する情報が含まれているので、フォトサイト１０５は、インターネット１０４を介してＰＣ１０２Ａのユーザに各種サービスを提供することができる。
【００３５】
ステップＳ２０２：
ステップＳ２０１において表示された画面情報に基づくユーザからの指示に従い、ＰＣ１０２Ａからフォトサイト１０５に対して所望の画像データを送信する。
【００３６】
ＰＣ１０２Ａから送信された画像データは、フォトシェアリングモジュール１０６が受信する。ＰＣ１０２Ａでは、ユーザからのユーザインタフェース７０７を介した指示入力に基づき、ブラウザに表示されたフォトサイト１０５からの情報に従って転送したい画像データを選択する。選択された画像データはＰＣ１０２Ａ上で画像転送を要求するアクションがあると、それに連動してフォトサイト１０５に転送される。あるいは、ＰＣ１０２Ａは画像アップロード専用ソフトウエア等を用いて転送したい画像データを選択する。そして、選択された画像データは画像アップロード専用ソフトウエアによって自動的に転送される。いずれの場合も、ｈｔｔｐやｆｔｐなどのインターネット１０４上で利用可能なプロトコルに基づいて転送が実行される。
【００３７】
ステップＳ２０３、Ｓ２０４：
フォトシェアリングモジュール１０６はステップＳ２０２にて受信した画像データが、フォトサイト１０５内で使用可能なフォーマット（例えば、ｊｐｇ，ｂｍｐ，ｇｉｆ，ｐｎｇなどに代表される画像フォーマットが含まれる。）のデータであるかチェックする。
【００３８】
ステップＳ２０５：
ステップＳ２０３において当該フォトサイト１０５で利用可能であると判定された場合には、フォトシェアリングモジュール１０６は、ステップＳ２０２にて受信した画像データを画像ＤＢ１１７に格納する。更に、当該画像データの画像データＩＤなどの画像データ属性情報や、画像データを転送したユーザのユーザＩＤなどのユーザ属性情報等を情報ＤＢ１１８に格納する。尚、画像データは１つずつで管理されるようにしてもよいが、複数の画像データをアーカイブしたアルバムとして管理されるようにしてもよい。
【００３９】
ステップＳ２０６：
フォトシェアリングモジュール１０６は、正常に画像データがアップロードされたことをＰＣ１０２Ａに通知する。以上のようにしてユーザによりフォトサイト１０５へアップロードされた画像は、フォトサイト１０５へアクセスしてＰＣ１０２Ａの表示部７０６のブラウザ上で参照することが可能である。
【００４０】
ステップＳ２０７：
一方、ステップＳ２０３において、使用可能なフォーマットの画像データでないと判定された場合には、フォトシェアリングモジュール１０６は画像データをアップロードできない旨のエラー通知をユーザＰＣ１０２Ａに対して行う。
【００４１】
＜フォトサイトにアップロードされた画像データの印刷＞
次に、本実施形態におけるフォトサイト１０５にアップロードされたユーザの画像データを印刷するサービスを行う手順について、図３を参照して詳細に説明する。また、同時に印刷の際にどのようにしてユーザの待ち時間を計測するのかも併せて説明する。図３は、本実施形態に対応する本発明の画像データを印刷する動作の一例を示すシーケンス図である。
【００４２】
ステップＳ３０１：
ユーザの操作によりＰＣ１０２Ａの表示部７０６上でブラウザを起動してフォトサイト１０５にアクセスし、ブラウザ上で入力されたユーザＩＤを送信するとともに、画像ＤＢ１１７にアップロードされた画像データの閲覧を要求する。
【００４３】
ステップＳ３０２：
フォトサイト１０５は、情報ＤＢ１１８や画像ＤＢ１１７を参照してＰＣ１０２Ａのブラウザに画像データを表示させるための表示データを送信する。
【００４４】
ステップＳ３０３：
ＰＣ１０２Ａは、ステップＳ３０２にてフォトサイト１０５から送信された表示データに基づいてブラウザに画像データを表示する。この時、ブラウザに表示される画像データは単一の画像データが逐次表示される場合や、複数の画像データが１つにアーカイブされたアルバムとしてまとめて表示される場合がある。
【００４５】
ステップＳ３０４：
ＰＣ１０２Ａは、ユーザインタフェース７０７を操作して、ブラウザに表示した画像データの中から印刷する画像データを選択する。尚、ここで、選択される画像データは単一の画像データ単位で選択される場合と、複数の画像データをアーカイブしたアルバム単位で選択される場合がある。
【００４６】
ステップＳ３０５：
ＰＣ１０２Ａは、ユーザインタフェース７０７の操作により、ブラウザ上に表示された印刷注文ボタンなどが押下（クリック）されたことによって、画像データの印刷注文をフォトサイト１０５へ通知する。
【００４７】
ステップＳ３０６：
フォトサイト１０５は、提携するプリントサイト１０９Ａ、１０９Ｂ、１０９Ｃに関する属性情報などをユーザＰＣ１０２Ａのブラウザに表示させるための表示データを送信する。尚、プリントサイト１０９の属性情報には、各プリントサイト１０９が提供できる印刷物の印刷媒体（年賀状、Ｔシャツ、マグカップなど）や、価格、納期等に関する情報が含まれており、当該属性情報は情報ＤＢ１１８に格納されている。
【００４８】
ステップＳ３０７：
ＰＣ１０２Ａは、ステップＳ３０６にてフォトサイト１０５から送信された表示データに基づいて、各プリントサイト１０９に関する属性情報をブラウザに表示する。ユーザは表示された各プリントサイト１０９の属性情報を考慮して印刷を注文したいプリントサイト１０９を選択することができる。
【００４９】
ステップＳ３０８：
ＰＣ１０２Ａは、ユーザの操作による入力装置の操作によってプリントサイト１０９を選択する。
【００５０】
尚、フォトサイト１０５がプリントサイト１０９としても機能する場合や、フォトサイト１０５が１つのプリントサイト１０９とのみ提携している場合には、上記ステップＳ３０６〜ステップＳ３０８の手順を省略してもよい。
【００５１】
以後、ユーザがプリントサイト１０９Ａを選択したものと想定して説明するが、以下の内容はユーザがプリントサイト１０９Ｂ、プリントサイト１０９Ｃを選択した場合も同様に適用される。
【００５２】
ステップＳ３０９：
ＰＣ１０２Ａは、ユーザの操作に応じて選択されたプリントサイト１０９Ａに対する印刷注文開始要求をフォトサイト１０５に対して送信する。
【００５３】
ステップＳ３１０：
フォトサイト１０５は、プリントサイト１０９Ａが注文処理、及び印刷に必要とするデータの不整合を防止するために、プリントサイト１０９Ａに対して印刷要求を行う前に、注文に必要とされる各データをＤＢ１０７・１０８から切り離した状態で保持・管理する必要がある。
【００５４】
データを切り離した状態は、例えば、注文（注文  ＩＤ）とリンクされている別領域に画像データをコピーしたり、各データに対するリファレンスカウンタを導入したりすることによって実現される状態である。尚、本発明は必要なデータを切り離した状態で管理するという思想に特徴があって、切り離す方法自体（切り離す方法として何を採用するか）を特徴とするものではない。
【００５５】
また、このステップＳ３１０における各データの切り離しに要する処理がユーザの待ち時間となるため、処理を始める段階で時間の計測を開始し、処理の終了後に経過時間と注文状況（注文された画像データ数など）とサーバの状況情報（負荷状態など）を各プリントサイト１０９と注文アイテムにリンクされた記憶先へ注文ごとに格納する。記憶先は、サーバ上のローカルディスクでも、ＤＢ１０７やＤＢ１０８でも、オンラインで参照できる記憶媒体であれば構わない。また、各プリントサイト１０９を表すＩＤと注文アイテムを表すＩＤもデータとして処理時間と共に１つの記憶先へ格納する方法でもよい。
【００５６】
更に、ステップＳ３１０では、記憶媒体に記憶された処理時間、注文状況及びサーバの状況情報に基づき後述する統計的な解析により、ユーザが現在行っている注文の注文開始に要する処理時間を予測する。この処理時間の予測は、注文が行われるプリントサイト以外の他のプリントサイトに対しても行い、各予想時間の比較を行う。そして、比較した中で最も時間を要すると予想されたプリントサイトの処理時間との差異だけ処理を一時停止させる。これにより、各プリントサイト１０９間における処理時間の差異を吸収する。
【００５７】
ステップＳ３１１：
フォトサイト１０５はプリントサイト１０９Ａに対してユーザからのプリント注文開始依頼があったことを通知する。このとき通知する情報にはステップＳ３０４でユーザが選択した印刷用画像データに関して、ステップＳ３０２でフォトサイト１０５がＰＣ１０２Ａに対して送信したブラウザ表示用画像へのＵＲＬを含む。このＵＲＬを利用することによってステップＳ３１３でブラウザに表示する画像に関しては、ＰＣ１０２Ａのブラウザキャッシュを利用することができ画像データの転送時間を省略することが可能になる。なお、フォトサイト１０５がプリントサイト１０９Ａを収容する場合、インターネット１０４を介して各種情報を通信する必要はない。
【００５８】
ステップＳ３１２：
プリントサイト１０９Ａはユーザが希望する印刷物のサイズや部数など、ユーザへ提供可能なサービスをユーザが選択可能に表示部７０６のブラウザに表示するための画面情報をＰＣ１０２Ａに対して送信する。
【００５９】
ステップＳ３１３：
ＰＣ１０２Ａは、プリントサイト１０９Ａから送信された画面情報を元にプリント注文画面を表示部７０６のブラウザ上に表示する。プリント注文画面には、ステップＳ３０４にて選択された画像データのサムネイル画像が表示され、希望する印刷物のサイズや部数などを入力できるように構成されている。
【００６０】
ステップＳ３１４：
ＰＣ１０２Ａは、ユーザによるユーザインタフェース７０７の操作に応じて、プリント注文を行う各画像に対して印刷サービスの種類を決定（仮注文内容を決定）する。
【００６１】
ステップＳ３１５：
ＰＣ１０２Ａは、ユーザによるユーザインタフェース７０７の操作に応じて、ステップＳ３１４で決定された仮注文内容をプリントサイト１０９Ａに対して送信することで、見積要求を行う。
【００６２】
ステップＳ３１６：
プリントサイト１０９Ａでは、課金モジュール１１０ＡがＰＣ１０２Ａからの送信された仮注文内容に基づいてプリント料金の見積を算出する。
【００６３】
ステップＳ３１７：
プリントサイト１０９ＡはステップＳ３１５で受信した仮注文情報とステップＳ３１６で算出された見積金額をフォトサイト１０５に通知する。ただし、フォトサイト１０５がプリントサイト１０９Ａを収容する場合、インターネット１０４を介して各種情報を通信する必要はない。
【００６４】
ステップＳ３１８：
フォトサイト１０５は、ステップＳ３１７にて受信した見積もり価格に独自の割引や割増を加味して再び見積もり価格を計算する。ただし、フォトサイト１０５が独自の割引や割増を行わない場合には、この処理は省略される。
【００６５】
ステップＳ３１９：
フォトサイト１０５はステップＳ３１８で算出された見積価格をＰＣ１０２Ａに送信する。
【００６６】
ステップＳ３２０：
ＰＣ１０２ＡはステップＳ３１９でフォトサイト１０５から通知された見積価格を、ブラウザを利用して表示部７０６に表示する。
【００６７】
ステップＳ３２１：
ユーザはステップＳ３１３にて通知された見積もり価格に基づいて、画像データの印刷注文を正式に依頼するかどうか判断する。
【００６８】
ステップＳ３２２：
ステップＳ３２２でのユーザの判断に基づいてＰＣ１０２Ａはフォトサイト１０５に対して注文の可否を送信する。つまり、ユーザが依頼すると判断すれば、ＰＣ１０２Ａは画像データの印刷依頼をフォトサイト１０５に通知し、ユーザが依頼しないと判断すれば、ＰＣ１０２Ａは画像データの印刷を中止するようフォトサイト１０５に通知する。ユーザが依頼しない場合には、不図示であるが、フォトサイト１０５はプリント１０９Ａに対してプリント注文が中止になったことを通知し処理を終了する。
【００６９】
ステップＳ３２３：
フォトサイト１０５は、ステップＳ３１４にてユーザＰＣ１０２Ａから印刷注文を正式に依頼されれば、課金手段（図示せず）が課金・決済処理を行う。ここで行われる課金決済処理は、具体的には、フォトサイト１０５がネットワークを介した通信や電話回線を介した通信などによって、銀行やクレジット会社など外部の金融機関に決済を依頼する処理である。
【００７０】
なお、ステップＳ３２３では、フォトサイト１０５は外部の機関に決済を依頼するのではなく、フォトサイト１０５が内部の決済モジュール（図示せず）によって決済を行う処理であってもよい。
【００７１】
また、ステップＳ３２３では、フォトサイト１０５ではなく、プリントサイト１０９が課金処理を実行するようにしてもよい。この場合は、プリントサイト１０９はフォトサイト１０５のプリントステータス通知用のＣｏｍｍｏｎ  Ｇａｔｅｗａｙ  Ｉｎｔｅｒｆａｃｅ（ＣＧＩ）のＵＲＬを必要な引数とともに呼び出すことにより、決済が確認できたことをフォトサイト１０５に通知する。
【００７２】
ステップＳ３２４：
ステップＳ３２３での課金処理の結果、外部の金融機関などから決済の確認がとれれば、フォトサイト１０５は正式なプリント注文情報を生成しプリントサイト１０９Ａに送信する。正式なプリント注文情報には、正式にプリントを依頼する旨を示す情報やステップＳ３１６にて計算された見積もり価格に関する情報が含まれる。
【００７３】
ステップＳ３２５：
プリントサイト１０９Ａは、ステップＳ３２４にてフォトサイト１０５から送信された正式なプリント注文情報に基づいて、プリントアウトに必要な画像データ取得できるようにフォトサイト１０５に依頼する。
【００７４】
ステップＳ３２６：
フォトサイト１０５はステップＳ３２５の要求に基づいて画像ＤＢ１１７から印刷用画像を取得し、プリントサイト１０９Ａに送信する。
【００７５】
ステップＳ３２７：
プリントサイト１０９Ａは、ステップＳ３２６にて獲得された画像データ及びステップＳ３２４にて受信した正式なプリント注文情報に基づいて、プリンタ１１１Ａを用いて画像データを紙やＴシャツ、マグカップなどにプリントアウトし、印刷物１１２Ａを得る。
【００７６】
ステップＳ３２８：
プリントサイト１０９Ａは、ステップＳ３２４にて受信した正式なプリント注文情報に基づいて、ステップＳ３２７にて得られた印刷物１１２Ａを指定された配送先に運送するよう指示する。
【００７７】
尚、ユーザがフォトサイト１０５にアップロードした画像データは、ユーザに許可された第３者もフォトサイト１０５にアクセスすることによって閲覧することができる。また、第３者はユーザからの許可があれば、ユーザと同様にして閲覧した画像データを印刷注文することもできる。
【００７８】
＜測定した時間の統計的手法による解析＞
上記の注文ステップＳ３１０で記憶媒体に記憶された各種情報を、以下で説明する統計的な手法で解析を行う。解析を行うマシンはフォトサイト１０５を構成しているサーバでも、別のマシンでも構わない。
【００７９】
本発明で用いる統計的な解析方法は、重回帰分析に代表される複数の数量変数から一つの数量変数を予測するモデルを想定している。尚、以下では統計的な解析手法を重回帰分析として説明するが、本発明は複数の数量変数から一つの数量変数を予測するモデルを構築できる統計的な解析手法であればよく、解析手法を限定するものではない。
【００８０】
以下では、実際にどのようして統計的解析手法である重回帰分析を用いて、上記ステップＳ３１０で測定した処理時間をはじめとする各データを解析するかを説明する。
【００８１】
まず、上記ステップＳ３１０の処理時間に起因するであろう要因をそれぞれ  変数Ｘｉ  （ｉ  ＝  １，２，…．ｐ）  とし、各変数にかけられる重み（偏回帰係数）ｂｉおよび定数項ｂ０を用いて、処理時間の予測値Ｙ＾は以下の数式で表される。
【００８２】
【数１】
Ｙ＾＝ｂ０＋ｂ１Ｘ１＋ｂ２Ｘ２＋ΛｂｐＸｐ
【００８３】
本実施形態においては、処理に起因する要因を注文に必要な画像データ数と処理を行うサーバの負荷を示す値の２値（ｐ  ＝  ２）であるとして説明するが、要因となる数の上限が本発明を限定するものではない。なぜならば、要因とは考えられない要素を取り入れた場合においても、数１は要素の重み付けの和の形になっているため、その数式の性質上、解析結果に影響があると判断できないような要素の係数（重み）はほぼ０になるため、その要素は解析結果に影響しないことになるためである。
【００８４】
ここで、上記の例を数式で表すと注文に必要な画像データの枚数をＸ１、サーバの負荷を示す値（ロードアベレージ等）をＸ２、とすると数１は以下の数２のように定義される。
【００８５】
【数２】
Ｙ＾＝ｂ０＋ｂ１Ｘ１＋ｂ２Ｘ２
【００８６】
上記の数２に従ってプリントサイト１０９と注文アイテムごとに計測したデータの解析を行い、各要素に対する偏回帰係数及び定数項を決定する。解析方法は数学で一般的な偏回帰係数の求め方に従うものとする。そして、解析された各偏回帰係数をプリントサイト１０５の情報ＤＢ１１８に図４のような偏回帰係数テーブル４００のように登録する。
【００８７】
偏回帰係数テーブル４００には各プリントサイト１０９を識別するためのＩＤ４０１、各プリントサイト１０９が提供するアイテム（サービス）を特定するＩＤ４０２、各偏回帰係数４０３・４０４・４０５、がそれぞれ設定される。各偏回帰係数４０３・４０４・４０５の初期値は、テスト段階などにおける実測値を利用して予め決定する。
【００８８】
また、各プリントサイト１０９を識別するためのＩＤ４０１は、図５にあるプリントサイト管理テーブル５００により管理され、各アイテムを特定するＩＤ４０２は、図６にあるアイテム管理テーブル６００により管理されている。
【００８９】
＜解析結果を用いた待ち時間の予測、及び時間差の解消＞
フォトサイト１０５で各プリントサイト１０９のあるアイテムＩＤを持つアイテムに対する注文ステップ（Ｓ３１０）の処理において、上記の統計的な解析により算出された各偏回帰係数と、現在注文されている画像データの枚数Ｘ１と、サーバの負荷を示す値Ｘ２とを数２に適用することで、ユーザが現在行っている注文の注文開始に要する処理時間を予測することができる。
【００９０】
次に、上記と同様な処理時間の予想を、他のプリントサイトの同じアイテムＩＤを持つアイテムに対しても行い、算出された処理に要する予想時間の比較を行う。そして、比較した中で最も時間を要すると予想されたプリントサイトの処理時間との差異だけ処理を一時停止させることで、各プリントサイト１０９間における処理時間の差異を吸収することができる。
【００９１】
基準となる時間を上記の例では最も処理時間を要するものとしたが、処理の平均時間であっても構わない。この場合には、平均時間を超えると予想された処理に関しては、上記の一時停止の処理は当然行わない。
【００９２】
また、処理を一時停止させる方法としては、プログラム中に差異時間だけスリープ処理を割り込ませることで実現できるが、本発明では一時停止する手段を問うものではない。
【００９３】
基準となる時間を最も処理時間を要するものとした場合、その予想された時間がアイテムＩＤを管理する図６のアイテム管理テーブル６００の該当アイテムに対する最大許容時間６０３を超える場合が出てくる。このような場合、ユーザの待ち時間として適切ではないと判断し、一時停止を行う時間の上限をこの最大許容時間までとする。
【００９４】
また、この上限の基準となる時間を図６のアイテム管理テーブル６００に登録されている最大許容時間６０３の値としても良いし、または、ユーザによる設定を許可して、現在の注文処理で予想されている時間の何割増しかに設定することもできる。ただし、現在の注文処理で予想された間が既に最大許容時間を超えている場合には、ユーザによる上記設定は無効となる。
【００９５】
以下で、図４の偏回帰係数テーブル４００に登録されている各数値例を使用して、上記の計算方法についての具体的な例を示す。ここでは、フォトサイト１０５からプリントサイトＩＤ＝１のプリントサイト１０９ＡのアイテムＩＤ＝１の商品に対して注文が行われたと仮定する。更に、注文された画像データ数が３０、注文処理を行うサーバの負荷を示す数値を０．５とする。即ち、、画像データの枚数Ｘ１＝３０、サーバの負荷を示す値Ｘ２＝０．５となる。
【００９６】
以上の条件において、処理時間の予測値Ｙ＾は、偏回帰係数テーブル４００の該当行の各偏回帰係数４０３・４０４・４０５を上述の数２に当てはめ、それぞれＸ１に３０、Ｘ２に０．５を代入することで求めることができる。
【００９７】
この結果、プリントサイトＩＤ＝１について、６０秒の処理時間を要すると予想される。更に、プリントサイト１０９Ｂ及び１０９Ｃについても、同様にして処理時間の予測値を求めると、それぞれ、７５秒、６０秒を要すると予想される。上記仮定における注文では、６０秒の処理時間を要すると予想されているので、この６０秒という数値を他の予測値と比較する。ここでは、プリントサイトＩＤ＝２であるプリントサイト１０９Ｂの処理時間として予想される７５秒が最高である。
【００９８】
また、この数値は図６のアイテム管理テーブル６００のサービスＩＤ＝１に該当する行に登録されている最大許容時間の１００秒よりも小さいため、７５秒をこの注文処理に要する最大値としてよい。以上の条件より、最終的に比較対象となる数値は７５秒となり、システムはユーザが現在プリントサイト１０９Ａで行っている注文ステップＳ３１０において、予測差の１５秒間処理を一時停止することにより、他プリントサイトとの時間の差異を吸収し、概ね処理時間を一定にすることが可能になる。
【００９９】
以下、ステップＳ３１０における処理の一例を図８のフローチャートを参照して改めて説明する。
【０１００】
ステップＳ８０１：
フォトサイト１０５は、まずプリンタサイト１０９Ａについて、上述の数２を利用して、ユーザからの印刷要求に含まれる画像データの枚数に基づいて、画像データの切り離し処理に要する処理時間（Ｔａ）を予測する。
【０１０１】
ステップＳ８０２：
フォトサイト１０５は、プリンタサイト１０９Ｂ及び１０９Ｃについて、同様にして、ユーザからの印刷要求に含まれる画像データの枚数に基づいて、画像データの切り離し処理に要する処理時間（Ｔｂ、Ｔｃ）を予測する。
【０１０２】
ステップＳ８０３：
ステップＳ８０１及び８０２において予測した処理時間Ｔａ、Ｔｂ、Ｔｃの比較を行い、最大値（Ｔｍａｘ）を決定する。
【０１０３】
ステップＳ８０４：
ステップＳ８０３において決定した最大値が、図６に示す最大許容時間（Ｔｔｈ）を越えるかどうかを判定する。
【０１０４】
ステップＳ８０５：
最大値が最大許容時間を超えない場合には、最大値とＴａとの差分を算出する。
【０１０５】
ステップＳ８０６：
最大値が最大許容時間を超える場合には、最大許容時間とＴａとの差分を算出する。
【０１０６】
ステップＳ８０７：
ステップＳ８０５又は８０６において算出した差分に基づいて、フォトサイト１０５における切り離し処理を一時停止（遅延、あるいは抑制）する。
【０１０７】
ステップＳ８０８：
差分に基づく時間の経過後、画像データの切り離し処理を実行する。その際、処理に要する時間を測定する。
【０１０８】
ステップＳ８０９：
切り離し処理の終了後、測定した処理時間、注文情報、状況情報を、プリントサイト１０９Ａと関連づけて、上述の所定の記憶媒体に格納する。
【０１０９】
ステップＳ８１０：
所定の記憶媒体に格納された各種情報に基づいて、統計的解析処理を実行して、上記の偏回帰係数及び定数項を算出する。即ち、新たに実行された切り離し処理により、数２に利用する係数値を更新する。
【０１１０】
以上で説明したように、本発明では各プリントサイトで注文処理が開始されるまでのユーザの待ち時間となる処理時間を測定し、その測定結果を統計的な手法で解析することによって、各プリントサイトに要するユーザの待ち時間を起因する要因から算出する。そして、この算出した時間に従って、各プリントサイト間でのユーザの待ち時間の差異を解消し、概ね一定に調節することで、各プリントサイトのビジネス条件の差異を吸収し、均一化することが可能になる。
【０１１１】
また、定期的に実運用下における実データを取得し、その統計的な解析結果を運用面へとフィードバックさせているため、運用サービスの現状・変化に応じた設定を反映することも可能になる。
【０１１２】
よって、ユーザは主にプリントサイトが提供するサービスの品質に基づいて、以来を行うプリントサイトを選択することが可能となり、ユーザがサービス品質を主体的に選択できるという本来の利益を確保できる。
【０１１３】
また、待ち時間を均一化することにより、待ち時間の差異に基づくユーザのストレス軽減し、安易に待ち時間の短い一部のサイトへの要求が集中することを防止して、負荷の分散をはかって、印刷サービスシステムの運用効率の低下を防止できる。
【０１１４】
さらに、サービスの向上に基づきユーザに与える待ち時間がある程度緩衝されるので、より高いサービス内容・質を提供しようとする動機付けが失われることなく、プリントサイトにおけるサービス品質の向上が期待できる。
【０１１５】
【発明の効果】
以上のように、本発明によれば、各プリントサイトで注文処理が開始されるまでのユーザの待ち時間の差異を調節して、各プリントサイトのビジネス条件の差異を吸収・均一化することができる。
【図面の簡単な説明】
【図１】本発明におけるシステムの一例を示す構成図である。
【図２】本発明の実施形態に対応する、ＰＣ１０２Ａから画像データをフォトサイト１０５へアップロードする処理の一例を示すフローチャートである。
【図３】本発明の実施形態に対応する、画像データを印刷する処理の一例のシーケンスを示す図である。
【図４】本発明におけるプリントサイトＩＤとサービスＩＤと関連づけられた各偏回帰係数を格納するテーブルの一例を示す図である。
【図５】本発明におけるプリントサイトＩＤとプリントサイト名を管理するテーブルの一例を示す図である。
【図６】本発明におけるサービスＩＤとサービス名を管理するテーブルの一例を示す図である。
【図７】本発明の実施形態に対応する情報処理装置のハードウェア構成の一例を示すブロック図である。
【図８】本発明の実施形態に対応する処理のフローチャートである。
【図１】
2005043991.tif 000003
【図２】
2005043991.tif 000004
【図３】
2005043991.tif 000005
【図４】
2005043991.tif 000006
【図５】
2005043991.tif 000007
【図６】
2005043991.tif 000008
【図７】
2005043991.tif 000009
【図８】
2005043991.tif 000010