(57)【特許請求の範囲】
【請求項１】
複数のタスクを組み合わせたジョブフローをタスク単位で実行して文書データを処理するタスク処理装置を管理するデバイス管理装置であって、
管理対象のタスク処理装置のうちから、主タスク処理装置を決定する決定手段と、
実行しようとするジョブフローについて、前記主タスク処理装置による実行時にライセンスの取得が必要なタスクを判定する判定手段と、
前記判定手段により実行時にライセンスの取得が必要と判定されたタスクのライセンスを、該ライセンスを有する他のタスク処理装置から前記主タスク処理装置に移転するためのライセンス管理手段と、
前記ジョブフローに含まれたタスクの内、前記主タスク処理装置により実行可能なタスクを、前記主タスク処理装置で実行すべくスケジュールする手段と
を備えることを特徴とするデバイス管理装置。
【請求項２】
前記決定手段は、管理対象のタスク処理装置のうち、実行しようとするジョブフローに含まれる、最も多くのタスクを実行可能なタスク処理装置を、前記主タスク処理装置として決定することを特徴とする請求項１に記載のデバイス管理装置。
【請求項３】
前記決定手段は、管理対象のタスク処理装置のうち、処理対象のジョブフローの実行が指示されたタスク処理装置を、前記主タスク処理装置として決定することを特徴とする請求項１に記載のデバイス管理装置。
【請求項４】
前記決定手段は、管理対象のタスク処理装置のうち、実行しようとするジョブフローに含まれる、ユーザのマニュアル操作が必要な最も多くのタスクを実行可能なタスク処理装置を、前記主タスク処理装置として決定することを特徴とする請求項１に記載のデバイス管理装置。
【請求項５】
前記主タスク処理装置から返却されたライセンスを、該ライセンスの取得先である前記他のタスク処理装置に戻す手段を更に備えることを特徴とする請求項１乃至３のいずれか１項に記載のデバイス管理装置。
【請求項６】
前記ライセンス管理手段は、前記主タスク処理装置からの要求に応じて、前記他のタスク処理装置からライセンスを取得して前記主タスク処理装置に付与することを特徴とする請求項１乃至４のいずれか１項に記載のデバイス管理装置。
【請求項７】
前記ライセンス管理手段は、前記主タスク処理装置からの要求に応じて、前記主タスク処理装置が要求するタスクのライセンスを持つ他のタスク処理装置を、前記主タスク処理装置に通知し、
前記主タスク処理装置は、通知された他のタスク処理装置からライセンスを取得することを特徴とする請求項１乃至４のいずれか１項に記載のデバイス管理装置。
【請求項８】
複数のタスクを組み合わせたジョブフローをタスク単位で実行して文書データを処理するタスク処理装置を管理するデバイス管理装置におけるジョブフロー処理方法であって、
決定手段が、管理対象のタスク処理装置のうちから、主タスク処理装置を決定する決定工程と、
判定手段が、実行しようとするジョブフローについて、前記主タスク処理装置による実行時にライセンスの取得が必要なタスクを判定する判定工程と、
ライセンス管理手段が、前記判定工程により実行時にライセンスの取得が必要と判定されたタスクのライセンスを、該ライセンスを有する他のタスク処理装置から前記主タスク処理装置に移転するためのライセンス管理工程と、
スケジュール手段が、前記ジョブフローに含まれたタスクの内、前記主タスク処理装置により実行可能なタスクを、前記主タスク処理装置で実行すべくスケジュールする工程と
を備えることを特徴とするジョブフロー処理方法。
【請求項９】
コンピュータにより、複数のタスクを組み合わせたジョブフローをタスク単位で実行して文書データを処理するタスク処理装置を管理するためのジョブフロー処理方法を実行するためのプログラムであって、前記ジョブフロー処理方法は、
管理対象のタスク処理装置のうちから、主タスク処理装置を決定する決定工程と、
実行しようとするジョブフローについて、前記主タスク処理装置による実行時にライセンスの取得が必要なタスクを判定する判定工程と、
前記判定工程により実行時にライセンスの取得が必要と判定されたタスクのライセンスを、該ライセンスを有する他のタスク処理装置から前記主タスク処理装置に移転するためのライセンス管理工程と、
前記ジョブフローに含まれたタスクの内、前記主タスク処理装置により実行可能なタスクを、前記主タスク処理装置で実行すべくスケジュールする工程と
を含むことを特徴とするプログラム。
【請求項１０】
請求項１乃至７のいずれか１項に記載のデバイス管理装置と、
少なくとも２つのタスク処理装置と
を備えることを特徴とするジョブフロー処理システム。
【請求項１１】
複数のタスクを組み合わせたジョブフローをタスク単位で実行して文書データを処理するタスク処理装置を管理するタスク連携処理システムであって、
管理対象のタスク処理装置のうちから、主タスク処理装置を決定する決定手段と、
実行しようとするジョブフローについて、前記主タスク処理装置による実行時にライセンスの取得が必要なタスクを判定する判定手段と、
前記判定手段により実行時にライセンスの取得が必要と判定されたタスクのライセンスを、該ライセンスを有する他のタスク処理装置から前記主タスク処理装置に移転するためのライセンス管理手段と、
前記ジョブフローに含まれたタスクの内、前記主タスク処理装置により実行可能なタスクを、前記主タスク処理装置で実行すべくスケジュールする手段と
を備えることを特徴とするタスク連携処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ジョブフローを実行するためのデバイス管理装置及びジョブフロー処理方法とタスク連携処理システムに関する。
【背景技術】
【０００２】
従来、文書データに施すべきファクシミリ送信やスキャン、プリントなどの処理（タスク）を直接もしくは並列に組み合わせたジョブフローを作成し、作成したジョブフローを実行して一連の処理を実行する技術が提案されている。ジョブフローの実行のために、ネットワークに接続された各機器に対して複数のタスクを連携して処理させることができるサービス処理装置が提案されている（たとえば特許文献１等参照）。特許文献１では、ジョブフローの各タスクを処理できるタスク処理装置が連携し、該タスクを処理可能なタスク処理装置で順次処理していくことによって、複数のタスクを一つのジョブフローとしてユーザに負荷をかけることなく実行することができる。
【０００３】
一方、特許文献２には、必要に応じてライセンス管理サーバから端末装置にライセンスを発行し、ライセンス使用後に自動的にライセンス管理サーバへライセンスを返却するライセンス管理システムが開示されている。
【特許文献１】特開２００４−２８７８５９号公報
【特許文献２】特開２００５−０５５９５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１では、ジョブフローに含まれるタスクを、そのタスクを処理可能な機器で処理する。そのため、１つのジョブフローを実行するのに、構成によっては複数の機器を利用する。その結果、データの転送時間などを考慮するとジョブフローの実行が非効率となるという問題が発生する。また、特許文献１ではタスク処理に必要なライセンスは特に考慮されていないため、ジョブフロー定義とは無関係にライセンス形態が変更された場合など、ジョブフローが正常に実行できないことがある。
【０００５】
本発明は上記従来例に鑑みて成されたもので、ジョブフローの各タスクを実行するタスク処理装置最小限にする、ライセンスを考慮したデバイス管理装置及びジョブフロー処理方法とタスク連携処理システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために本発明は以下の構成を備える。すなわち、複数のタスクを組み合わせたジョブフローをタスク単位で実行して文書データを処理するタスク処理装置を管理するデバイス管理装置であって、
管理対象のタスク処理装置のうちから、主タスク処理装置を決定する決定手段と、
実行しようとするジョブフローについて、前記主タスク処理装置による実行時にライセンスの取得が必要なタスクを判定する判定手段と、
前記判定手段により実行時にライセンスの取得が必要と判定されたタスクのライセンスを、該ライセンスを有する他のタスク処理装置から前記主タスク処理装置に移転するためのライセンス管理手段と、
前記ジョブフローに含まれたタスクの内、前記主タスク処理装置により実行可能なタスクを、前記主タスク処理装置で実行すべくスケジュールする手段とを備える。
【発明の効果】
【０００７】
本発明によれば、ジョブフローの実行に関与するタスク処理装置の数を少なくし、ジョブフローを効率良く実行できる。
【０００８】
また、タスク処理装置に付与されているタスク毎のライセンスが変更された場合でも、ジョブフローの定義を変更することなくそのジョブフローを実行できる。
【発明を実施するための最良の形態】
【０００９】
本発明の実施例を適用するのに好適である実施形態について説明を行う。その前にまずいくつかの用語の意味を明らかにしておく。
【００１０】
（１）タスクとは、処理の単位であり、本実施形態ではたとえば文書データのコピー、スキャン、ファクシミリ送信、印刷処理装置内のハードディスクへの保存、メール送信の等を指す。このほかシートの読み取り（スキャン）や文書データの入力、読み取った画像の文字認識やスプレッドシートへの変換、入力された文書データの保存（データベースへの登録）等がある。タスクは、コンピュータやディジタル複合機、印刷処理装置等のタスク処理装置により実行される。タスクには、タスク処理装置の持つ機能に応じて様々なものがある。また、タスクは、そのタスクを実行する機能を有するタスク処理装置であっても、タスクのライセンス付与が実行の条件となる場合もある。
【００１１】
（２）タスクのライセンスとは、タスク処理装置がタスクを実行する際に、付与されていることが条件となる情報である。すべてのタスクにライセンスが必要であるとは限らず、基本的な機能であれば、ライセンスが無くとも実行できるタスクもある。ライセンスの形態には、装置がライセンスを有する形態のほか、ライセンスを付与された利用者が同時に実行できるタスクの数を限定したフローティングと呼ばれる形態もある。後者のライセンス形態では、ライセンスを管理するサーバが、必要に応じて、タスク処理装置間でライセンスの移動を行う。本実施形態では、ライセンスは装置が有するが、一時的に装置間でライセンスを融通し合うことができる。
【００１２】
（３）ジョブフローとは、複数のタスクを直列あるいは並列に実行されるように組み合わせたタスクの集合を指す。ジョブフローは、そのようなタスクの集合の概念であると共に、本実施形態では、ジョブフローを定義したデータをジョブフローと呼ぶ。このジョブフローは予め作成され、デバイス管理装置として機能するコンピュータやディジタル複合機等に保存されている。利用者は実行しようとするジョブフローを選択し、その実行を指示することで、ジョブフローを実行することができる。ジョブフローは、例えばタスクの識別子（タスク名）と、入力データが必要なタスクについては、その入力元の識別子とにより構成できる。あるタスクの出力データが次のタスクの入力データになる場合には、その入力元の識別子は、当該タスクの識別子である。ただし、スキャンなど入力データのないタスクについては、入力元識別子の指定は不要である。ジョブフローに含まれるタスクは、タスク処理装置によりタスク単位で実行され、その出力データが、それを入力として処理するタスクに引き渡される。このデータの引き渡しの順序に従って、あるタスクのデータを入力とするタスクを、本実施形態では「次のタスク」と呼び、入力データを出力するタスクを「前のタスク」と呼ぶ。前のタスクと次のタスクは１対１とは限らず、１対複数あるいは複数対１である場合もあり得る。
【００１３】
（４）デバイス管理装置は、タスク処理装置とネットワークで接続されてタスク連携処理システムを構成する。タスク連携処理システムは、ジョブフローとタスク処理装置とを管理して、ジョブフローに属するタスクを、それを実行可能なタスク処理装置で実行されるようスケジュールする。また、タスクのライセンス移動の仲介を行う機能を併せ持つ場合もある。なお、本実施形態ではジョブフローの処理対象は文書データであるとしているが、画像データ等、他の種のデータであっても良い。なおジョブフローはデバイス管理装置においてその実行が指示されるとは限らない。作成されたジョブフローはたとえばコンピュータやディジタル複合機に保存され、そこで実行の指示が与えられる場合もある。また、タスク処理装置がデバイス管理装置としての機能を併せ持つ場合もある。
【００１４】
＜発明の概要＞
本発明の概要は以下のようなものである。すなわち、デバイス管理装置による管理対象のタスク処理装置のうちから、主タスク処理装置を決定する決定手段（決定工程）を持つ。これは実施形態の実行タスク決定処理に相当する。また、実行しようとするジョブフローについて、決定した主タスク処理装置によるタスクの実行時にライセンスの取得が必要なタスクを判定する判定手段（判定工程）を持つ。これは、実施形態のライセンス譲渡判定処理に相当する。また、実行時にライセンスの取得が必要と判定されたタスクのライセンスを、そのライセンスを有する他のタスク処理装置から主タスク処理装置に移転するためのライセンス管理手段（ライセンス管理工程）を持つ。これは、実施形態のライセンス譲渡処理に相当する。また、実行しようとするジョブフローに含まれたタスクの内、主タスク処理装置により実行可能なタスクを、主タスク処理装置で実行すべくスケジュールする手段（工程）を持つ。これは、実施形態におけるＪＦ実行処理に相当する。
【００１５】
さらに、主タスク処理装置を決定する際には、デバイス管理装置による管理対象のタスク処理装置のうち、実行しようとするジョブフローに含まれる、最も多くのタスクを実行可能なタスク処理装置を、主タスク処理装置として決定する。これは、図１０のステップＳ１００５等に相当する。
【００１６】
あるいは、主タスク処理装置を決定する際には、管理対象のタスク処理装置のうち、処理対象のジョブフローの実行が指示されたタスク処理装置を、主タスク処理装置として決定する。これは図１６のステップＳ１６０４等に相当する。
【００１７】
あるいは、主タスク処理装置を決定する際には、管理対象のタスク処理装置のうち、実行しようとするジョブフローに含まれる、ユーザのマニュアル操作が必要な最も多くのタスクを実行可能なタスク処理装置を、前記主タスク処理装置として決定する。これは、図２７のＳ２７１４又はＳ２７１５に相当する。
【００１８】
また、主タスク処理装置から返却されたライセンスを、そのライセンスの取得先である前記他のタスク処理装置に戻す手段（工程）を更に備える。これは、たとえば図１３のＳ１３０６、図１９のＳ１９０５等に相当する。
【００１９】
また、ライセンスを移転する際には、主タスク処理装置からの要求に応じて、その他のタスク処理装置からライセンスを取得して前記主タスク処理装置に付与する。これは、図１２或いは図２１の処理に相当する。
【００２０】
また、ライセンスを移転する際には、主タスク処理装置からの要求に応じて、主タスク処理装置が要求するタスクのライセンスを持つ他のタスク処理装置を、主タスク処理装置に通知する。主タスク処理装置は、通知された他のタスク処理装置からライセンスを取得する。これは例えば図１８の処理に相当する。
【００２１】
このように、本発明は、実施形態に基づいて上述のようにまとめられる。次に本発明の実施例を説明するにあたり、まず本発明を適用可能なシステム構成、およびアプリケーション構成について説明する。
【００２２】
［第１実施形態］
＜システム構成＞
図１は本発明の実施に係るタスク連携処理システムの全体構成を図示している。タスク連携処理システムは、上述したデバイス管理装置とタスク処理装置とを接続して構成されたシステムである。印刷処理装置から印刷処理装置のタスクを含むさまざまなタスクを連携実行可能なシステムである。本タスク連携処理システムでは、上記タスクを提供する印刷処理装置の他、さまざまなタスクを提供可能な複数のアプリケーションとも連携可能である。
【００２３】
本タスク連携処理システムは、デバイス管理装置１１、タスク処理装置１２Ａ〜１２Ｅから構成され、それぞれネットワーク１３で接続されている。そして、ＴＣＰ／ＩＰやＳＮＭＰ等のプロトコルを用いてタスク処理装置間、タスク処理装置−デバイス管理装置間でデータ通信が可能である。なお、それぞれの装置の数は限定されるものではない。以下、本タスク連携処理システムでは１つのデバイス管理装置、５つのタスク処理装置がそれぞれ接続されていることを前提に説明を行う。
【００２４】
デバイス管理装置１１は印刷処理装置やアプリケーションなどのタスク処理装置及び複数のジョブフローを管理する。さらに管理下のタスク処理装置にインストールされているアプリケーション情報およびライセンス形態もあわせて管理する。またタスクを実行するためには、タスク処理装置にタスクを実行可能なライセンスが発行されていることが前提である。
【００２５】
図２９に、タスク処理装置或いはデバイス管理装置として機能するコンピュータ１００と、デバイス管理装置として機能する印刷処理装置（ディジタル複合機）３００のブロック図を示す。
【００２６】
図２９において、コンピュータ１００は、ＲＯＭ２０３や外部メモリ２１１に記憶された文書処理プログラム等に基づいて、図形、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行するＣＰＵ２０１を備える。ＣＰＵ２０１は、システムバス２０４に接続される各デバイスを統括的に制御する。ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。キーボードコントローラ（ＫＢＣ）２０５は、キーボード２０９や不図示のポインティングデバイスからのキー入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）２０６は、ＣＲＴディスプレイ２１０の表示を制御する。ディスクコントローラ（ＤＫＣ）２０７は、ブートプログラムや種々のアプリケーション等を記憶するハードディスク（ＨＤ）等の外部メモリ２１１とのアクセスを制御する。アプリケーションには、デバイス管理を行うためのプログラムやタスク処理のためのプログラムも含まれる。プリンタコントローラ（ＰＲＴＣ）２０８は、ネットワークインターフェースカード（ＮＩＣ）２１を介してネットワークに接続され、ネットワーク２１との通信制御処理を実行する。ＣＰＵ２０１はＣＲＴ２１０上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウィンドウを開き、種々のデータ処理を実行する。
【００２７】
プリンタ３００において、プリンタＣＰＵ３１２は、ＲＯＭ３１３や外部メモリ３１４に記憶された制御プログラム等に基づいてシステムバス３１５に接続される各種のデバイスとのアクセスを統括的に制御しする。そして、入出力Ｉ／Ｆ３１６を介して接続される印刷部（プリンタエンジン）３１７に出力情報としての画像信号を出力する。また、スキャナ部３２３からディジタル画像データが入力される。ＣＰＵ３１２はＮＩＣ２１を介してネットワークに接続され、ネットワーク２１との通信制御処理を実行する。ＲＡＭ３１９はＣＰＵ３１２の主メモリ、ワークエリア等として機能するＲＡＭである。ＮＩＣ３１８は、ネットワーク２１を介して、コンピュータ１００や他のタスク処理装置から、タスクを実行して処理すべき入力データを受信する。また、処理後のデータを送信する。メモリコントローラ（ＭＣ）３２０は、プログラムやデータを記憶するハードディスク（ＨＤ）等の外部メモリ３１４とのアクセスを制御する。操作部３２１は、表示パネルやキーボードを含んでおり、オペレータへの情報の提供や、オペレータからの指示の入力を行わせる。ジョブフローの選択や実行指示は、操作部３２１を介して入力できる。また、ファクシミリ通信のために、公衆網に接続されたモデム３２２を備えている。
【００２８】
＜動作フロー＞
図２は本実施形態におけるタスク連携処理システムの動作フローを図示している。ユーザ２１がジョブフロー実行依頼２２をすると、デバイス管理装置１１はまずジョブフローの内容解析２３を行い、解析結果に応じてジョブフローの実行２４を開始する。
【００２９】
＜タスク定義情報＞
図３は本発明に係るタスク定義情報を図示している。タスク定義情報３１内には、タスク名３１１、タスクを実行するために必要なライセンス情報３１２、タスクを実行する際に必要となる属性情報３１３を保持している。ライセンス情報３１２には、たとえばライセンスの必要の有無を示す情報や、あるいはライセンスの期間等が含まれる。タスク定義情報は、タスク毎に定義され、タスクを実行可能なタスク処理装置に保存される。ここでいうタスクを実行可能とは、ライセンスを付与されれば実行可能である場合を含む。
【００３０】
＜ジョブフロー定義情報＞
図４は本発明におけるジョブフロー定義情報の一例を図示している。ジョブフロー定義情報は、たとえばコンピュータ等の専用ソフトウェアで作成され、デバイス管理装置或いはタスク処理装置に保存される。図４Ａは、本発明にかかるジョブフロー定義情報を説明するための、ジョブフローの一例を示す。本例では、タスク１を実行後、タスク２及びタスク３を並列処理し、タスク４を実行して終了するジョブフローの例を示している。ジョブフローは単に順序のみならず、タスク間で引き渡されるデータも定義している。例えば、タスク１の出力データがタスク２及びタスク３の入力データとなる。タスク２及びタスク３の出力データが、タスク４の入力データとなる。なお並列処理とは、必ずしも同時に実行することを要求する処理ではなく、並列に実行可能な処理を指す。たとえばタスク２とタスク３は並列に実行されねばならないとは限らず、データの入出力の関係さえ定義通りに維持されていれば、タスク２→タスク３の順序やその逆順で直列に実行しても良い。
【００３１】
図４Ｂは図４Ａに例示したジョブフロー定義情報をＸＭＬ形式で示したものである。本実施形態では、タスクの実行順序を定義するため、ＸＭＬ内にｔａｓｋタグを用意し、該タスクの前に実行するタスク名、該タスクの後に実行するタスク名を記述する。また、タスク定義情報内にタスクの属性に関する情報が定義されている場合は、ｐｒｏｐｅｒｔｙタグ内に該当する情報を記述する。なおここでいう「前」「後」とは、データの入出力の関係を示すものと言い換えることができる。すなわちｂｅｆｏｒタグは、入力データの供給元を示すタグである。またａｆｔｅｒタグは、出力データの供給先を示すタグである。ジョブフロー定義情報は、ジョブフロー内で実行されるすべてのタスクについて、少なくともその順序が記述されている。なおジョブフロー定義情報の記述は、タスク間の前後関係を明記できるものであれば、ＸＭＬ形式でなくともよい。
【００３２】
さて以上の説明は、以下に説明する全実施形態に共通の説明である。以下、これを踏まえて第１実施形態について説明する。
【００３３】
図５は本実施形態におけるジョブフローの例を図示したものである。スキャンタスクからスタートし、スキャンした画像データのＯＣＲ処理、ＰＤＦ化を行った後、その文書にタイムスタンプと電子署名を付与し、それをメイル送信するジョブフローである。
【００３４】
＜デバイス−タスクテーブル＞
図６は本実施形態において、デバイス管理装置１１が管理するタスク処理装置一覧と、各タスク処理装置におけるタスクとそのライセンス状態を示しているデバイス−タスクテーブルを示す。デバイス−タスクテーブルは、デバイス管理装置１１が保存している。たとえば、デバイス管理装置１１が、管理対象のタスク処理装置に対して、実行可能なタスクに関する情報を要求し、それに基づいてデバイス−タスクテーブルを作成する。デバイス−タスクテーブルそのものではなくとも、タスク処理装置とタスクとライセンスの有無の関係を示す、デバイス−タスクテーブルに相当する情報をデバイス管理装置が有している。タスクのライセンス状態には、ライセンスを新たに取得しなくとも実行可能な処理（タスク）のリスト６２と、ライセンスを取得すれば実行可能な処理（タスク）のリスト６３が含まれる。タスク処理装置６１は、デバイス管理装置１１の管理対象であるタスク処理装置一覧を示している。ライセンスを新たに取得しなくとも実行可能な処理リスト６２には、タスク処理装置に、ソフトウェアやハードウエアの資源がインストールされており、かつライセンスもインストールされているか不要であるため、該機能が利用可能である装置が含まれる。一方、ライセンスがあれば実行可能な処理リスト６３には、ライセンス以外の資源はインストールされているが、当該タスクのライセンスが発行されていないため利用できないタスクが含まれる。デバイスＢを例に説明すると、ライセンスがあるスキャン／タイムスタンプ／電子署名機能は利用可能な機能であり、ライセンスがあれば実行可能な機能がＯＣＲ／ＰＤＦ化機能となる。
【００３５】
図７は、図５で図示するジョブフローと図６で図示するタスク処理装置の状態とから、ジョブフローの各タスクを処理可能なタスク処理装置の候補の一覧を示す候補装置リストを図示したものである。各タスクに対応づけてリストされたタスク処理装置が、そのタスクを実行する装置の候補である。候補装置リストは、図９の手順でデバイス管理装置１１により作成される。対象処理７１は本実施形態で対象となるジョブフローのタスクを示している。タスク処置装置７２とは対象処理７１に示したタスクを実行可能な候補となるタスク処理装置であることを表す。この装置は、新たにライセンスを取得しなくともタスクを実行可能である。ライセンスがあれば可能なタスク処理装置７３とは、タスク処理装置にライセンスをインストールすれば該タスクを実行可能であるタスク処理装置であることを表している。以下ＯＣＲタスクを例にあげて説明する。図６のテーブルから利用可能なタスク処理装置の状態を確認すると、ＯＣＲ処理を実行可能なタスク処理装置は、デバイスＡ１２Ａ・デバイスＤ１２Ｄであることがわかる。また、ＯＣＲライセンスがあれば実行可能なタスク処理装置は、デバイスＢ１２Ｂ・デバイスＣ１２Ｃであることがわかる。そのため、ＯＣＲタスクのタスク処理装置７２はデバイスＡ１２ＡおよびデバイスＤ１２Ｄが候補となり、ライセンスがあれば可能なタスク処理装置７３は、デバイスＢ１２ＢおよびデバイスＣ１２Ｃが候補となる。
【００３６】
＜ジョブフローの実行処理＞
図８は本実施形態における、ジョブフロー実行処理の全体フローを図示している。処理が開始されると、まずユーザは実行するジョブフローの選択を、適当なタスク処理装置やデバイス管理装置で行う（Ｓ８１）。選択されたジョブフローの内容はデバイス管理装置１１に伝えられ、デバイス−タスクテーブル（図６）から、使用されるタスク処理装置（実行タスク処理装置と呼ぶ。）の候補（候補タスク処理装置と呼ぶ。が決定される（Ｓ８２）。その後候補タスク処理装置の中からジョブフロー内の各タスクを実行する実行タスク処理装置が決定される（Ｓ８３）。デバイス管理装置１１は、選択されたジョブフローの定義に従って各タスクを、決定された実行タスク処理装置で実行されるようスケジュールする。たとえば、タスクの実行指示と、必要に応じて入力データとをタスクの実行主体であるタスク処理装置に送信し、タスクを実行させて、必要があれば出力データを受信する。これを、ジョブフローで定義されたタスクの順序に従って実行する。ただし、ひとつのタスク処理装置で連続して実行されるタスクがあれば、データはそのタスク処理装置内のタスク間の通信で引き渡される。このためにたとえば、デバイス管理装置１１は、タスクの実行指示とともに、入力データについてはデータそのものを送信するか、あるいはそのアドレスを送信するかを選択できる。また、出力データについては、でーたそのものを返信するか、それとも出力データを保存するアドレスを返信するかを選択できる。タスク処理装置内でデータの引き渡しがある場合には、同じ装置内のタスクに出力データを引き渡すタスクに対しては、出力データの保存先アドレスの指定を選択して、そのアドレスを実行指示と共に引き渡す。また、同じ装置内のタスクから入力データを引き渡されるタスクに対しては、入力データのアドレスの指定を選択して、そのアドレスを実行指示と共に引き渡す。このようにすれば、ひとつの装置内でデータの引き渡しを行うタスクについては、データを移動させる必要がなくなり、転送時間の節約を図ることができる。もちろんこの様な方法は一例に過ぎず、ひとつのタスク処理装置内で一連のタスクを実行する際に、タスク間で直接データの受け渡しを行えるのであれば他の方法を採用することもできる。なお、ジョブフローの実行管理をデバイス管理装置ではなく、タスク処理装置で行う場合であってもこれは同様である。
【００３７】
こうして、選択された実行タスク処理装置でジョブフローを実行し（Ｓ８４）、処理を終了する。
【００３８】
＜候補タスク処理装置決定処理＞
図９は、図８のステップＳ８２おける、タスクを実行する候補となるタスク処理装置を決定する（あるいは選択する）処理フローを図示している。処理が開始されると、ジョブフロー内のすべてのタスクに順次着目し、ステップＳ９２−Ｓ９７の処理を行う（Ｓ９１）。Ｓ９１では、着目タスクの識別子を図７の対象処理７１に書き込む。次に、各タスク毎に、デバイス管理装置１１が管理する全タスク処理装置に順次着目し、Ｓ９３−Ｓ９６の処理を行う（Ｓ９２）。
【００３９】
ステップＳ９３では、着目タスクが実行可能かどうか判断する。着目タスク処理装置が着目タスクを実行可能な場合は、タスク処理装置の候補へ追加する（Ｓ９４）。すなわち、Ｓ９４では、着目タスク処理装置の識別子を図７のタスク処理装置７２に追加的に書き込む。着目タスクが実行できない場合は、着目タスク処理装置において、ライセンスがあれば着目タスクを実行可能な状態であるか判断する（Ｓ９５）。実行可能な場合は、ライセンスがあれば可能なタスク処理装置の候補へ追加する（Ｓ９６）。すなわち、Ｓ９６では、着目タスク処理装置の識別子を、図７の「ライセンスがあれば可能なタスク処理装置」７３に追加的に書き込む。不可能な場合はなにもしない。
【００４０】
そして、着目していないタスク処理装置があれば、次のタスク処理装置を新たな着目タスク処理装置としてＳ９３−Ｓ９６を繰り返す（Ｓ９７）。なければＳ９８に進み、着目していないタスクがあれば、次のタスクを新たな着目タスクとしてＳ９２−Ｓ９７を繰り返す（Ｓ９８）。処理対象のジョブフローに含まれる全タスクに関して上記処理が終了したら本処理を終了する。
【００４１】
＜実行タスク処理装置決定処理＞
図１０は、図８のＳ８３における、タスクを実行する実行タスク処理装置決定の処理フローを図示している。処理が開始されると、処理対象のジョブフローに含まれるすべてのタスクに対して順次着目し、Ｓ１００２の処理を行う（Ｓ１００１）。Ｓ１００２では、図７の候補装置リストを参照し、着目タスクを処理可能な候補タスク処理装置Ｄｉ（１≦ｉ≦全タスク処理装置数）に対応するタスク数カウンタＴｉをカウントする。すなわち着目タスクを処理可能な候補タスク処理装置ＤｉのカウンタＴｉに１を加算する。処理可能な候補タスク処理装置とは、ライセンスを新たに取得することなく実行可能な装置である。すなわち図７の欄７２に該当する装置が対象となる。全タスクに対して実行可能タスク数カウント後（Ｓ１００３）、最大のカウンタ値Ｔｍａｘを持つタスク処理装置Ｄｍａｘの識別子を、主タスク処理装置の識別子として保存する（Ｓ１００４）。すなわち、実行可能タスク数が最大のタスク処理装置を主タスク処理装置に決定する。図７によれば、本実施形態の場合、Ｄ１をデバイスＡ、Ｄ２をデバイスＢ、Ｄ３をデバイスＣ、Ｄ４をデバイスＤ、Ｄ５をデバイスＥとして、Ｔ１＝５、Ｔ２＝３、Ｔ３＝２、Ｔ４＝３、Ｔ５＝２となる。そこで、デバイスＡが主タスク処理装置と決定される。最後に、ライセンス譲渡判断処理を行い（Ｓ１００５）、処理を終了する。
【００４２】
＜ライセンス譲渡判断処理＞
図１１は、図１０のステップＳ１００５におけるライセンス譲渡判断の処理フローを図示している。処理が開始されると、決定した主タスク処理装置で実行できないタスクがあるかどうかを判断する（Ｓ１１０１）。主タスク処理装置ですべてのタスクが実行できる場合は、主タスク処理装置を全タスクを実行するタスク処理装置に決定し（Ｓ１１０２）、処理を終了する。たとえば、タスクを実行するタスク処理装置を決定した場合には、ジョブフローの各タスクと、そのタスクを実行するタスク実行装置とを関連づけたスケジュール表を作成する。この場合Ｓ１１０２では、ジョブフローの全タスクを主タスク実行装置に関連づけたスケジュール表を作成することになる。
【００４３】
一方、主タスク処理装置で実行できないタスクが存在する場合は、実行できないタスクに順次着目してＳ１１０４−Ｓ１１０７を実行する（Ｓ１１０３）。その際、主タスク処理装置で実行できるタスクについては、主タスク実行処理装置と関連づけたスケジュール表を作成する。次に、着目タスクは、ライセンスがあれば実行できるかどうか判断する（Ｓ１１０４）。ライセンスがあっても実行できない場合は、着目タスクを実行可能なタスク処理装置を実行タスク処理装置に決定し（Ｓ１１０５）、次の対象タスクへ処理を進める（Ｓ１１０８）。この場合、実行タスク処理装置は主タスク処理装置ではないので、着目タスクと、決定されたタスク処理装置とを関連づけて、スケジュール表に追加する。
【００４４】
また着目タスクが、ライセンスがあれば実行可能なタスクであれば、ライセンス譲渡処理を行い（Ｓ１１０６）、着目タスクのライセンスが付与された主タスク処理装置を実行タスク処理装置に決定する（Ｓ１１０７）。たとえば、着目タスクと主タスク処理装置とを関連づけてスケジュール表に追加する。そして次の対象タスクへ処理を進める（Ｓ１１０８）。
【００４５】
すべての実行できないタスクに関して処理が終了したら、本処理を終了する。図７によれば、主タスク処理装置であるデバイスＡが実行できないタスクはＰＤＦ化タスクであるが、デバイスＡはライセンスの取得により、ＰＤＦ化タスクを実行できる。そしてデバイス管理装置１１が管理するその他のタスク処理装置でＰＤＦ化タスクが実行可能であるため、そのタスク処理装置から主タスク処理装置へとライセンス譲渡処理を実行することになる。
【００４６】
＜ライセンス譲渡処理＞
図１２は、図１１のＳ１１０６におけるライセンス譲渡の処理フローを図示している。処理が開始されると、主タスク処理装置からデバイス管理装置１１にライセンス譲渡を依頼する（Ｓ１２０１）。ただし本実施形態では、図１２の処理はデバイス管理装置が実行している。また図１０の処理を、ジョブフローの実行を指示されたタスク処理装置が実行するとしても、それが主タスク処理装置とは限らない。そこで、図１２の処理主体が主タスク実行処理装置ではない場合には、図１２の処理をしている装置例えばデバイス管理装置が、主タスク実行装置に対して、ライセンスを取得すべきタスクを通知する。それに応じて主タスク処理装置は、デバイス管理装置１１にライセンス譲渡を依頼する。
【００４７】
ライセンス譲渡の依頼を受けたデバイス管理装置１１は、当該タスクのライセンスを付与されているタスク処理装置を選択（あるいは抽出）する（Ｓ１２０２）。そして選択したタスク処理装置の中から、実行可能タスク数が最大のタスク処理装置を対象タスク処理装置に決定する（Ｓ１２０３）。図６および図７によれば本実施形態では、処理Ｓ１２０２で選択されるタスク処理装置は、デバイスＣおよびデバイスＤとなり、それぞれ実行可能タスク数が２、３となる。そのため、処理Ｓ１２０４で決定される対象タスク処理装置はデバイスＤとなる。対象タスク処理装置決定後、デバイス管理装置１１は対象タスク処理装置に対して当該タスクを実行可能なライセンスの返却を依頼する（Ｓ１２０４）。依頼を受けた対象タスク処理装置は、当該タスクのライセンスをデバイス管理装置１１に返却する（Ｓ１２０５）。デバイス管理装置１１は、返却されたライセンスを主タスク処理装置へ付与し（Ｓ１２０６）、処理を終了する。ライセンスは、それが特定のタスクの実行を許すライセンスであることを示す情報を含む。その情報は、たとえば、そのタスクを実行するプログラムやデバイスがライセンスであることを認識することができるものであればよい。
【００４８】
＜ジョブフロー実行処理＞
図１３は、図８のＳ８４における、ジョブフロー実行の処理フローを図示している。図１３の処理は単一の装置により実行されるものではなく、複数の装置による処理をまとめて示したものである。図１３の処理が開始されると、ジョブフロー内のタスクに対して順次着目し（Ｓ１３０１）、着目タスクの実行タスク処理装置と決定されたタスク処理装置で着目タスクを実行させる（Ｓ１３０２）。これを全タスクについて繰り返す（Ｓ１３０３）。本実施形態では、ジョブフローはデバイス管理装置によりスケジュールされており、デバイス管理装置がそのスケジュールに従ってタスク処理装置を制御する。すなわち、Ｓ１３０１〜Ｓ１３０３までは、デバイス管理装置１１が、入力データ及びタスクの実行指示を各実行タスク処理装置に送信し、それを受信した実行タスク処理装置が行う。この際、デバイス管理装置１１は、ジョブフローに含まれるタスクとその実行タスク処理装置とを関連づけたスケジュール表に基づいて、必要に応じて入力データ及びタスクの実行指示を送信する。もちろんこれは一例であって、たとえば、デバイス管理装置１１ではなく、タスク処理装置のひとつがジョブフローの管理を行う場合には、そのタスク処理装置がＳ１３０１〜Ｓ１３０３を実行することとなる。
【００４９】
タスク実行後、実行タスク処理装置のライセンスが譲渡されたものであるかを判断する（Ｓ１３０４）。譲渡されていない場合は処理を終了する。譲渡されている場合は、ライセンス譲渡を受けた実行タスク処理装置はデバイス管理装置１１へ譲渡されたライセンスを返却する（Ｓ１３０５）。この処理は各実行タスク処理装置が行う。図１３では、ジョブフロー全体が終了した後でライセンスの返却が行われているが、個々のタスク実行処理装置がライセンスの返却を行うのであれば、タスクが完了する都度、そのタスクに係るライセンスの返却を行っても良い。
【００５０】
さて、実行タスク処理装置からライセンスの返却を受けたデバイス管理装置１１は、返却されたライセンスを譲渡元のタスク処理装置へ返却し（Ｓ１３０６）、処理を終了する。
【００５１】
本実施形態の場合、デバイスＤからデバイスＡへＰＤＦ化タスクのライセンスを譲渡している。そのため、デバイスＡはＰＤＦ化タスクの完了後にそのライセンスをデバイス管理装置１１へ返却する。デバイス管理装置１１は、該ライセンスをデバイスＤへ返却することになる。
【００５２】
図１４は本実施形態における処理の適用結果の一例を図示している。図１４Ａは従来技術でジョブフローを実行した場合の実行タスク処理装置を図示し、図１４Ｂは本実施形態に従ってジョブフローを実行した場合の実行タスク処理装置を図示している。
【００５３】
従来技術では、タスクを実行可能なタスク処理装置でのみジョブフローの各タスクを実行していた。そのため、ＰＤＦ化タスクのみデバイスＢで実行する必要があった。一方、本実施形態では、デバイスＢの持つＰＤＦ化タスクのライセンスを一時的にデバイスＡへ譲渡する。そのため、デバイスＡは、ジョブフロー内のすべてのタスクを実行可能となり、ジョブフロー全体をデバイスＡで処理することができる。上述のように、ひとつのタスク処理装置内で複数のタスクを連続して実行する場合、データはその装置内で受け渡される。そのためデータ転送のオーバーヘッドが解消され、効率的にジョブフローを実行することができる。また、タスク連携処理システム内の通信のトラフィックを小さくすることができる。
【００５４】
［第２実施形態］
本発明にかかる実施形態２について説明する。本実施形態は実施形態１における実行タスク処理装置決定の別の系を示すものである。第１実施形態では、実行可能なタスク数がもっとも多いタスク処理装置を主タスク処理装置に設定する例を示した。本実施形態では、ユーザが操作しているタスク処理装置を主タスク処理装置に設定する例について示す。  図１５は本実施形態における、全体構成を図示している。なお、第１実施形態の図１が図１５に、図１０が図１６に置換される点そのぞき、他の図は第１実施形態と共通である。
【００５５】
本実施形態では、ユーザ２１がデバイスＢ上でジョブフローの実行を依頼（符号１５１）する例を示す。第１実施形態では、ユーザが操作するタスク処理装置は特定していないのに対し、本実施形態ではユーザが操作するタスク処理装置を考慮している。
【００５６】
＜実行タスク処理装置決定処理＞
図１６は本実施形態における、タスクを実行するタスク処理装置決定の処理フローを図示している。候補タスク処理装置は、図９の手順で決定されている。図１６は、図８のＳ８３における、タスクを実行する実行タスク処理装置決定の処理フローを図示している。処理が開始されると、処理対象のジョブフローに含まれるすべてのタスクに対して順次着目し、Ｓ１６０２の処理を行う（Ｓ１６０１）。Ｓ１６０２では、図７の候補装置リストを参照し、着目タスクを処理可能な候補タスク処理装置Ｄｉ（１≦ｉ≦全タスク処理装置数）に対応するタスク数カウンタＴｉをカウントする。すなわち着目タスクを処理可能な候補タスク処理装置ＤｉのカウンタＴｉに１を加算する。処理可能な候補タスク処理装置とは、ライセンスを新たに取得することなく実行可能な装置である。すなわち図７の欄７２に該当する装置が対象となる。全タスクに対して実行可能タスク数カウント後（Ｓ１６０３）、ユーザが操作中のタスク処理装置を主タスク処理装置に決定する（Ｓ１６０４）。すなわち本例ではデバイスＢが主タスク処理装置と決定される。最後に、ライセンス譲渡判断処理を行い（Ｓ１６０５）、処理を終了する。ライセンス譲渡判断処理は第１実施形態の図１１と同様である。
【００５７】
図６によれば本実施形態の場合、主タスク処理装置であるデバイスＢが実行できないタスクはＯＣＲタスク、ＰＤＦ化タスク、メールタスクである。そのうち、メールタスク以外のタスクは、デバイス管理装置１１が管理するその他のタスク処理装置で実行可能である。そこでＯＣＲタスクとＰＤＦ化タスクについては、ライセンス譲渡処理を実行することになる。
【００５８】
図７によれば、図１２に示すライセンス譲渡処理フローを例に説明すると、各タスクに関するライセンス譲渡処理は以下のようになる。
【００５９】
ＯＣＲタスクを実行可能なタスク処理装置として抽出されるのは、デバイスＡおよびデバイスＤである。デバイスＡがデバイスＤより実行可能タスク数が多いため、デバイスＡのＯＣＲライセンスをデバイスＢへ譲渡することになる。
【００６０】
またＰＤＦ化タスクを実行可能なタスク処理装置として抽出されるのはデバイスＣおよびデバイスＤである。デバイスＤがデバイスＣより実行可能タスク数が多いため、デバイスＤのＰＤＦ化ライセンスをデバイスＢへ譲渡することになる。
【００６１】
一方メールタスクはデバイスＢにライセンスをインストールしても実行できないため、メールタスクを実行可能なその他のタスク処理装置で処理を実行することになる。
【００６２】
図１７は本実施形態のジョブフロー処理の適用結果を図示している。デバイスＡのＯＣＲライセンスおよびデバイスＤのＰＤＦ化ライセンスを一時的にデバイスＢへ譲渡するため、ジョブフロー内のメールタスク以外のタスクをデバイスＢで処理し、メールタスクはデバイスＡで実行することになる。
【００６３】
このように構成することで、本実施形態によれば、第１実施形態の効果に加えて、ユーザが操作していないタスク処理装置をそのユーザが占有している時間を、第１実施形態に比べて短縮できる。このため、利用者が一見していないのに、他の利用者により利用されていて装置が使用でできない、などといった利用者にとっては状態を把握しにくい事態の発生を抑制できる。
【００６４】
［第３実施形態］
本発明にかかる第３実施形態について説明する。本実施形態は第１実施形態および第２実施形態におけるライセンス譲渡およびジョブフロー実行の別の系を示すものである。したがってその他の構成及び処理は第１実施形態と共通である。第１実施形態および第２実施形態では、デバイス管理装置１１経由でライセンス譲渡および返却処理を行う例を示したが、本実施形態では、タスク処理装置間で上記処理を実行する例について示す。
【００６５】
＜ライセンス譲渡処理＞
図１８は本実施形態における、ライセンス譲渡の処理フローを図示している。これは第１実施形態の図１２に代わるものである。処理が開始されると、主タスク処理装置からデバイス管理装置１１にライセンス譲渡を依頼する（Ｓ１８０１）。本実施形態では、第１実施形態と同様に、図１８の処理はデバイス管理装置が実行している。また図１０の処理を、ジョブフローの実行を指示されたタスク処理装置が実行するとしても、それが主タスク処理装置とは限らない。そこで、図１８の処理主体が主タスク実行処理装置ではない場合には、図１８の処理をしている装置例えばデバイス管理装置が、主タスク実行装置に対して、ライセンスを取得すべきタスクを通知する。それに応じて主タスク処理装置は、デバイス管理装置１１にライセンス譲渡を依頼する。
【００６６】
ライセンス譲渡の依頼を受けたデバイス管理装置１１は、当該タスクのライセンスを付与されているタスク処理装置を選択（あるいは抽出）する（Ｓ１８０２）。そして選択したタスク処理装置の中から、実行可能タスク数が最大のタスク処理装置を対象タスク処理装置に決定する（Ｓ１８０３）。図６および図７によれば本実施形態では、処理Ｓ１８０２で選択されるタスク処理装置は、デバイスＣおよびデバイスＤとなり、それぞれ実行可能タスク数が２、３となる。そのため、処理Ｓ１８０４で決定される対象タスク処理装置はデバイスＤとなる。対象のタスク処理装置決定後、デバイス管理装置１１は主タスク処理装置へ対象タスク処理装置情報を通知する（Ｓ１８０４）。通知を受けた主タスク処理装置は、該対象タスク処理装置に対して当該タスクのライセンスの譲渡を要求する。そして、その要求に応じた対象タスク処理装置からのライセンスを受信してインストールし、ライセンスを取得する（Ｓ１８０５）。処理を終了する。
【００６７】
＜ジョブフロー実行処理＞
図１９は本実施形態におけるジョブフロー実行の処理フローを図示している。図１９は第１実施形態の図１３に替わるものである。図１９の処理は単一の装置により実行されるものではなく、複数の装置による処理をまとめて示したものである。図１９の処理が開始されると、ジョブフロー内のタスクに対して順次着目し（Ｓ１９０１）、着目タスクの実行タスク処理装置と決定されたタスク処理装置で着目タスクを実行させる（Ｓ１９０２）。これを全タスクについて繰り返す（Ｓ１９０３）。本実施形態では、ジョブフローはデバイス管理装置によりスケジュールされており、デバイス管理装置がそのスケジュールに従ってタスク処理装置を制御する。すなわち、Ｓ１９０１〜Ｓ１９０３までは、デバイス管理装置１１が、入力データ及びタスクの実行指示を各実行タスク処理装置に送信し、それを受信した実行タスク処理装置が行う。この際、デバイス管理装置１１は、ジョブフローに含まれるタスクとその実行タスク処理装置とを関連づけたスケジュール表に基づいて、必要に応じて入力データ及びタスクの実行指示を送信する。もちろんこれは一例であって、たとえば、デバイス管理装置１１ではなく、タスク処理装置のひとつがジョブフローの管理を行う場合には、そのタスク処理装置がＳ１９０１〜Ｓ１９０３を実行することとなる。
【００６８】
タスク実行後、実行タスク処理装置のライセンスが譲渡されたものであるかを判断する（Ｓ１９０４）。譲渡されていない場合は処理を終了する。譲渡されている場合は、ライセンス譲渡を受けた実行タスク処理装置は、譲渡元のタスク処理装置へ、譲渡されたライセンスを返却する（Ｓ１９０５）。この処理は各実行タスク処理装置が行う。図１９では、ジョブフロー全体が終了した後でライセンスの返却が行われているが、個々のタスク実行処理装置がライセンスの返却を行うのであれば、タスクが完了する都度、そのタスクに係るライセンスの返却を行っても良い。
【００６９】
本実施形態の場合、デバイスＤからデバイスＡへＰＤＦ化タスクのライセンスを譲渡している。そのため、デバイスＡはＰＤＦ化タスクの完了後にそのライセンスをデバイス管理装置１１へ返却する。デバイス管理装置１１は、該ライセンスをデバイスＤへ返却することになる。
【００７０】
以上の構成により本実施形態によれば、ライセンスの移動に伴うトラフィックおよび時間を短縮することができ、より処理の効率化を図ることができる。
【００７１】
［第４実施形態］
本発明にかかる実施形態４について説明する。本実施形態は第２実施形態におけるライセンス譲渡判断処理の別の系を示すものである。
【００７２】
第２実施形態では、実行可能なタスク数がもっとも多いタスク処理装置からライセンスを取得する例を示した。本実施形態では、必要なタスクのライセンスをもっとも多くもつタスク処理装置からライセンスを取得する例について説明する。本実施形態のタスクを実行するタスク処理装置決定処理は第２実施形態の図１６で示す処理と同様である。図１５および図６によれば、Ｄ１をデバイスＡ、Ｄ２をデバイスＢ、Ｄ３をデバイスＣ、Ｄ４をデバイスＤ、Ｄ５をデバイスＥとすると、Ｔ１＝５、Ｔ２＝３、Ｔ３＝２、Ｔ４＝３、Ｔ５＝２となる。そこでジョブフローの実行操作が行われたデバイスＢが主タスク処理装置となる。
【００７３】
＜ライセンス譲渡判断処理＞
図２０は本実施形態における、ライセンス譲渡判断の処理フローを図示している。図２０は、第２実施形態の図１１に代えて実行される処理である。処理が開始されると、決定した主タスク処理装置で実行できないタスクがあるかどうかを判断する（Ｓ２００１）。主タスク処理装置ですべてのタスクが実行できる場合は、主タスク処理装置を全タスクを実行するタスク処理装置に決定し（Ｓ２００２）、処理を終了する。主タスク処理装置で実行できないタスクが存在する場合は、当該タスクに順次着目してＳ２００４−Ｓ２００７を実行する（Ｓ２００３）。まず着目タスクはライセンスがあれば実行できるかどうか判断する（Ｓ２００４）。ライセンスがあっても実行できない場合は、着目タスクを実行可能なタスク処理装置を実行タスク処理装置として決定し、次の着目タスクへ処理を進める（Ｓ２００８）。ライセンスがあれば主タスク処理装置で実行可能なタスクであれば、着目タスクを対象タスクリストに追加し（Ｓ２００６）、主タスク処理装置を実行タスク処理装置に決定する（Ｓ２００７）。その後次の対象タスクへ処理を進める（Ｓ２００８）。すべての着目タスクに関して処理が終了したら、ライセンス譲渡処理を行い（Ｓ２００９）、本処理を終了する（Ｓ２０１０）。
【００７４】
図６によれば、本実施形態の場合、主タスク処理装置であるデバイスＢが実行できないタスクはＯＣＲタスク、ＰＤＦ化タスク、メールタスクであり、メールタスク以外はデバイス管理装置１１が管理するその他のタスク処理装置で該タスクが実行可能である。そのため、ＯＣＲタスクおよびＰＤＦ化タスクが対象タスクリストに追加されることになる。
【００７５】
＜ライセンス譲渡処理＞
図２１は、図２０のステップＳ２００９におけるライセンス譲渡の処理フローを図示している。処理が開始されると、主タスク処理装置からデバイス管理装置１１にライセンス譲渡を依頼する（Ｓ２１０１）。次に主タスク処理装置を除いた各タスク処理装置の実行可能タスク数（Ｔｉ：１≦ｉ≦全タスク処理装置数−１）を０で初期化する（Ｓ２１０２）。図２０で示す処理フローで決定した対象タスクリスト内の全タスクに順次着目し、Ｓ２１０４−２１０７を実行する。Ｓ２１０４では、主タスク処理装置を除いた全タスク処理装置に対して順次着目し、着目タスクが実行可能か判断する（Ｓ２１０５）。実行可能な場合は、実行可能タスク数Ｔｉをインクリメント（Ｔｉ＝Ｔｉ＋１）する（Ｓ２１０６）。
【００７６】
対象タスクリスト内の各タスクに対して、各タスク処理装置毎にＳ２１０５，Ｓ２１０６の処理を終了したなら、実行可能タスク数が最大のタスク処理装置を、ライセンスの譲渡元の対象タスク処理装置に決定する（Ｓ２１０９）。対象タスク処理装置は、譲渡対象のタスク群のライセンスをデバイス管理装置１１へ返却する（Ｓ２１１０）。ライセンス譲渡処理（３）がデバイス管理装置で行われている場合には、Ｓ２１０９の決定及びライセンスを譲渡すべきタスクの識別子は、デバイス管理装置から対象タスク処理装置に通知される。それに応じて対象タスク処理装置はライセンスをデバイス管理装置に返却する。ライセンスの返却を受けたデバイス管理装置１１は、主タスク処理装置へそのライセンスを譲渡する（Ｓ２１１１）。
【００７７】
次に、主タスク処理装置で対象タスクリストのすべてのタスクが実行できるか判断し（Ｓ２１１２）、すべて実行可能な場合は処理を終了する。実行できないタスクが存在する場合は、実行できないタスクのひとつに着目する。そして、着目タスクを実行可能なタスク処理装置であって、かつ実行可能タスク数が多いタスク処理装置を、ライセンス譲渡の対象タスク処理装置として決定する（Ｓ２１１３）。実行可能タスク数は、Ｓ２１０６で数えた値から得られる。そしてＳ２１１０，Ｓ２１１１と同様の要領で、ライセンス譲渡処理Ｓ２１１４、Ｓ２１１５を行う。処理Ｓ２１１２〜Ｓ２１１５は、対象タスクリスト内のすべてのタスクが主タスク処理装置で実行可能になるまで繰り返す。
【００７８】
図６によれば、本実施形態の場合、対象タスクリスト内のタスクはＯＣＲタスクおよびＰＤＦ化タスクである。各タスク処理装置の実行可能タスク数はデバイスＡ：１、デバイスＣ：１、デバイスＤ：２、デバイスＥ：０となり、対象タスク処理装置はデバイスＤということになる。また、デバイスＤから主タスク処理装置に移動したライセンスにより、主タスク処理装置は対象タスクリスト内のすべてのタスクを実行可能となる。そのため、デバイスＤからデバイス管理装置１１へＯＣＲライセンスおよびＰＤＦ化ライセンスを譲渡することによって、本処理は終了する。
【００７９】
以上の構成により、本実施形態においては、ライセンスの移動がある場合でも、移動元のデバイスの数をできるだけ減らすことができるために、ライセンス移動のオーバーヘッドを抑制し、効率よいジョブフロー処理を実現できる。
【００８０】
［第５実施形態］
本発明にかかる実施形態５について説明する。図２２は本実施形態における、全体構成を図示したものである。本実施形態でデバイス管理装置１１が管理するタスク処理装置は、デバイスＡ〜デバイスＣである。図２３は本実施形態における、ジョブフローの例を図示したものである。スキャンタスクからスタートし、ＰＤＦ化後、電子署名を付与し、プリント、センド処理を行うジョブフローである。図２４は本実施形態において、図２３に示すジョブフロー内における各タスクのタスク定義情報の例を図示したものである。
【００８１】
本実施形態では、各タスクを実行するにあたってユーザ操作が必要かどうかの情報をもっており、スキャンタスク、プリントタスク、センドタスクがユーザ操作が必要であることを示している。この情報は、たとえばタスク毎に属性として保持することができる。すなわち、図２４のテーブルは、図３のタスク定義情報を複数のタスクについて集めたものとして実現できる。
【００８２】
図２５は、デバイス管理装置１１が管理するタスク処理装置一覧と、そのライセンス状態と、インストールされているアプリケーションの状態を図示している。ライセンス状態とは、実行可能なタスクの識別情報であり、インストールされているアプリケーションの状態とは、ライセンスがあれば実行可能なタスクの識別情報である。
【００８３】
タスク処理装置欄２５１は、デバイス管理装置１１が管理するタスク処理装置一覧を示している。実行可能な処理欄２５２とは、タスク処理装置にインストールされているアプリケーションでかつライセンスもインストールされているため、該機能が利用可能であることを表す。一方ライセンスがあれば実行可能な処理欄２５３とは、機能としてはインストールされているが、該機能を実行するためのライセンスがインストールされていないため、利用できないアプリケーションであることを表す。
【００８４】
図２６は、図２３で図示するジョブフローと図２５で図示するタスク処理装置の状態からジョブフローの各タスクを処理可能な候補となるタスク処理装置一覧を図示したものである。対象処理欄２６１は本実施形態で対象となるジョブフローのタスクを示している。タスク処置装置欄２６２とは対象処理欄２６１に示したタスクを実行可能な候補となるタスク処理装置であることを表す。ライセンスがあれば可能なタスク処理装置欄２６３とは、タスク処理装置にライセンスをインストールすれば該タスクを実行可能であるタスク処理装置であることを表している。
【００８５】
本実施形態における処理の全体フローは図８、タスクを実行する候補となるタスク処理装置決定の処理は図９と同様である。図２７は、本実施形態における、タスクを実行するタスク処理装置決定の処理フローを図示している。図２７は、第１実施形態の図９に代えて実行される。
【００８６】
処理が開始されると、ジョブフロー内のすべてのタスクに対して、Ｓ２７０２−Ｓ２７０３の処理を行う（Ｓ２７０１）。まず対象タスクを処理する際に、タスク定義情報の属性を参照してユーザ操作が必要かどうかを判断する（Ｓ２７０２）。必要でない場合は次のタスクへ処理を進める（Ｓ２７０４）。ユーザ操作が必要なタスクの場合は、該タスクを対象タスクリストへ追加する（Ｓ２７０３）。すべてのタスクに関して処理終了後、対象タスクリスト内のタスク数Ｔｎｕｍをカウントする（Ｓ２７０５）。図２４によれば、本実施形態の場合、対象タスクリスト内のタスクは、スキャン、プリント、センドタスクであり、Ｔｎｕｍは３となる。
【００８７】
次にデバイス管理装置１１が管理するすべてのタスク処理装置に順次着目し、Ｓ２７０７−Ｓ２７１２を実行する（Ｓ２７０６）。まず着目タスク処理装置ｉが実行可能なタスク数カウンタＣｉ（１≦ｉ≦全タスク処理装置数）を０で初期化する（Ｓ２７０７）。そして、対象タスクリスト内の全タスクに対して順次着目し、Ｓ２７０９−Ｓ２７１０を実行する（Ｓ２７０８）。まず着目タスクがタスク処理装置のライセンスの有無にかかわらず実行可能かどうかを判断する（Ｓ２７０９）。実行できない場合は次のタスクへ処理を進め（Ｓ２７１１）、実行可能である場合は実行可能タスク数カウンタＣｉをインクリメント（Ｃｉ＝Ｃｉ＋１）する（Ｓ２７１０）。すべてのタスクに関して処理が終了したら、着目タスク処理装置ｉの実行可能タスク数カウンタＣｉと対象タスクリスト内のタスク数Ｔｎｕｍの値が等しいか判断する（Ｓ２７１２）。値が等しい場合は、次のタスク処理装置へ処理を進めるのでなく、タスク処理装置ｉを主タスク処理装置として決定し（Ｓ２７１４）、処理Ｓ２７１６の処理を進める。値が等しくない場合は、次のタスク処理装置に着目して、処理Ｓ２７０７〜Ｓ２７１２を繰り返す。
【００８８】
すべてのタスク処理装置に関して処理Ｓ２７０７〜Ｓ２７１２を行った場合は、実行可能タスク数Ｃｉが最大のタスク処理装置を主タスク処理装置に設定し（Ｓ２７１５）、処理Ｓ２７１６以降の処理を進める。図２５によれば、本実施形態の場合、デバイスＡの実行可能タスク数がＴｎｕｍと等しい３となるため、デバイスＡに対してのみ処理Ｓ２７０７〜Ｓ２７１３を行うことになる。最後に、ライセンス譲渡判断処理を行い（Ｓ２７１６）、処理を終了する。
【００８９】
本実施形態のおけるライセンス譲渡判断の処理は図１１もしくは図２０と同様である。また、ライセンス譲渡処理はライセンス譲渡判断処理が図１１の場合は、図１２もしくは図１８と同様、ライセンス譲渡処理が図２０の場合は、図２１と同様である。ライセンス譲渡判断処理が図２０、ライセンス譲渡処理が図２１の場合で本実施形態を説明すると、主タスク処理装置であるデバイスＡが実行できないタスクはＰＤＦ化タスク、電子署名タスク、センドタスクである。各タスクのライセンスはすべてデバイスＣから譲渡されることになる。上記処理を行うことによって、図２３に示すジョブフローはすべてデバイスＡで実行することとなり、効率よくジョブフローを実行することができる。
【００９０】
以上のように本実施形態によれば、ジョブフローに含まれた、ユーザによる操作が必要なタスクを実行するタスク処理装置を少なくすることができる。このため、ジョブフロー実行中の利用者の移動を減らし、処理の効率化を図ることができる。
【００９１】
［第６実施形態］
本発明にかかる第６実施形態について説明する。本実施形態は第５実施形態におけるライセンス譲渡判断処理（Ｓ２７１６）の別の系を示すものである。本実施形態では、ライセンスを譲渡してタスクを実行するよりも、ライセンスを譲渡せずにタスクを処理した方が効率的な場合の例について説明する。
【００９２】
本実施形態の前提条件として、図２２に示すデバイスＡは現在センドがモノクロでしか動作しない状態で、ジョブフロー内のセンドタスクはカラーで設定されているものとする。
【００９３】
＜ライセンス譲渡判断処理＞
図２８は本実施形態における、ライセンス譲渡判断の処理フローを図示している。図２８は第１実施形態の図１１に代えて実行される。処理が開始されると、決定した主タスク処理装置で実行できないタスクがあるかどうかを判断する（Ｓ２８０１）。主タスク処理装置ですべてのタスクが実行できる場合は、主タスク処理装置を全タスクを実行するタスク処理装置に決定し（Ｓ２８０２）、処理を終了する。たとえば、タスクを実行するタスク処理装置を決定した場合には、ジョブフローの各タスクと、そのタスクを実行するタスク実行装置とを関連づけたスケジュール表を作成する。この場合Ｓ２８０２では、ジョブフローの全タスクを主タスク実行装置に関連づけたスケジュール表を作成することになる。
【００９４】
一方、主タスク処理装置で実行できないタスクが存在する場合は、実行できないタスクに順次着目してＳ２８０４−Ｓ２８０９を実行する（Ｓ２８０３）。その際、主タスク処理装置で実行できるタスクについては、主タスク実行処理装置と関連づけたスケジュール表を作成する。次に、着目タスクは、ライセンスがあれば実行できるかどうか判断する（Ｓ２８０４）。ライセンスがあっても実行できない場合は、着目タスクを実行可能なタスク処理装置を実行タスク処理装置に決定し（Ｓ２８０５）、次の対象タスクへ処理を進める（Ｓ２８１０）。この場合、実行タスク処理装置は主タスク処理装置ではないので、着目タスクと、決定されたタスク処理装置とを関連づけて、スケジュール表に追加する。
【００９５】
また着目タスクが、ライセンスがあれば実行可能なタスクであれば、主タスク処理装置が該タスクを実行するのに最適な状態であるかを判断する（Ｓ２８０６）。タスクを実行するには最適な状態でない場合、タスクを実行可能なタスク処理装置を実行タスク処理装置に決定し（Ｓ２８０７）、次の対象タスクへ処理を進める（Ｓ２８１０）。主タスク処理装置が該タスクを実行するのに最適な状態である場合は、ライセンス譲渡処理を行い（Ｓ２８０８）、着目タスクのライセンスが付与された主タスク処理装置を実行タスク処理装置に決定する（Ｓ２８０９）。たとえば、着目タスクと主タスク処理装置とを関連づけてスケジュール表に追加する。そして次の対象タスクへ処理を進める（Ｓ２８１０）。
【００９６】
すべての実行できないタスクに関して処理が終了したら、本処理を終了する。図２５によれば、本実施形態の場合、主タスク処理装置であるデバイスＡが実行できないタスクはＰＤＦ化タスク・電子署名タスク・センドタスクである。それぞれのタスクに関してデバイスＡの状態をチェックすると、前提条件で示したように、センドタスクは、最適な状態で処理できない。そのため、デバイスＡは、ＰＤＦタスク・電子署名タスクのライセンスはデバイスＣから譲渡を受ける。しかしセンドタスクはセンドタスクを実行可能なデバイスＣで実行することとなる。
【００９７】
なおライセンスの譲渡処理を行わない条件は本実施形態で示した例に限定するものではない。ライセンス譲渡処理を行わない方が効率よくジョブフローを実行できる条件を満たすものであれば限定しない。またタスクを実行するのに最適な条件は、たとえばタスク定義情報の属性に記述されていてもよい。その場合ステップＳ２８０４では、ジョブフローに含まれた着目タスクの属性と、主タスク処理装置が実行するタスクの属性とを照合し、一致するか否かで判断を行える。
【００９８】
［実施形態から抽出される発明の一例］
本実施形態に記載した発明は、実施のために最良の形態を示したものであるが、必ずしも発明を構成するために欠くことのできない事項だけを含むわけではない。
また本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。また本発明の目的は、前述の実施形態の機能を実現するプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータが記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体およびプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００９９】
また、本発明には、プログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた場合についても、本発明は適用される。その場合、書き込まれたプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０１００】
【図１】本発明のサービス連携処理システムのシステム構成図を示している図である。
【図２】本発明にかかる全体の動作フローを示している図である。
【図３】本発明にかかるタスク定義情報を示している図である。
【図４Ａ】本発明にかかるジョブフロー定義情報を説明するためのジョブフロー例を示している図である。
【図４Ｂ】本発明にかかる図４Ａを例にしたジョブフロー定義情報の記述例を示している図である。
【図５】本発明の実施形態１における、ジョブフローの例を示している図である。
【図６】本発明の実施形態１における、タスク処理装置一覧、そのライセンス状態およびインストールされているアプリケーションの状態を示している図である。
【図７】本発明の実施形態１における、タスクを処理可能な候補となるタスク処理装置一覧を示している図である。
【図８】本発明の実施形態１における、処理の全体フローを示している図である。
【図９】本発明の実施形態１における、タスクを実行する候補となるタスク処理装置決定の処理フローを示している図である。
【図１０】本発明の実施形態１における、タスクを実行するタスク処理装置決定の処理フローを示している図である。
【図１１】本発明の実施形態１における、ライセンス譲渡判断の処理フローを示している図である。
【図１２】本発明の実施形態１における、ライセンス譲渡の処理フローを示している図である。
【図１３】本発明の実施形態１における、ジョブフロー実行の処理フローを示している図である。
【図１４Ａ】本発明の実施形態１における、従来技術でジョブフローを実行した場合の実行タスク処理装置を示している図である。
【図１４Ｂ】本発明の実施形態１においてジョブフローを実行した場合の実行タスク処理装置を示している図である。
【図１５】本発明の実施形態２における、全体構成を示している図である。
【図１６】本発明の実施形態２における、タスクを実行するタスク処理装置決定の処理フローを示している図である。
【図１７】本発明の実施形態２における結果を示している図である。
【図１８】本発明の実施形態３における、ライセンス譲渡の処理フローを示している図である。
【図１９】本発明の実施形態３における、ジョブフロー実行の処理フローを示している図である。
【図２０】本発明の実施形態４における、ライセンス譲渡判断の処理フローを示している図である。
【図２１】本発明の実施形態４における、ライセンス譲渡の処理フローを示している図である。
【図２２】本発明の実施形態５における、全体構成を示している図である。
【図２３】本発明の実施形態５における、ジョブフローの例を示している図である。
【図２４】本発明の実施形態５における、タスク定義情報の例を示している図である。
【図２５】本発明の実施形態５における、タスク処理装置一覧、そのライセンス状態およびインストールされているアプリケーションの状態を示している図である。
【図２６】本発明の実施形態５における、タスクを処理可能な候補となるタスク処理装置一覧を示している図である。
【図２７】本発明の実施形態５における、タスクを実行するタスク処理装置決定の処理フローを示している図である。
【図２８】本発明の実施形態６における、ライセンス譲渡判断の処理フローを示している図である。
【図２９】デバイス管理装置およびタスク処理装置のブロック図である。
【符号の説明】
【０１０１】
１１  デバイス管理装置
１２タスク処理装置
１３  ネットワーク
【図１】
0005049683.tif 000002
【図２】
0005049683.tif 000003
【図３】
0005049683.tif 000004
【図４Ａ】
0005049683.tif 000005
【図４Ｂ】
0005049683.tif 000006
【図５】
0005049683.tif 000007
【図６】
0005049683.tif 000008
【図７】
0005049683.tif 000009
【図８】
0005049683.tif 000010
【図９】
0005049683.tif 000011
【図１０】
0005049683.tif 000012
【図１１】
0005049683.tif 000013
【図１２】
0005049683.tif 000014
【図１３】
0005049683.tif 000015
【図１４Ａ】
0005049683.tif 000016
【図１４Ｂ】
0005049683.tif 000017
【図１５】
0005049683.tif 000018
【図１６】
0005049683.tif 000019
【図１７】
0005049683.tif 000020
【図１８】
0005049683.tif 000021
【図１９】
0005049683.tif 000022
【図２０】
0005049683.tif 000023
【図２１】
0005049683.tif 000024
【図２２】
0005049683.tif 000025
【図２３】
0005049683.tif 000026
【図２４】
0005049683.tif 000027
【図２５】
0005049683.tif 000028
【図２６】
0005049683.tif 000029
【図２７】
0005049683.tif 000030
【図２８】
0005049683.tif 000031
【図２９】
0005049683.tif 000032