IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社日立ソリューションズの特許一覧

特開2023-162791ジョブ管理システム、およびネットワーク機器
<>
  • 特開-ジョブ管理システム、およびネットワーク機器 図1
  • 特開-ジョブ管理システム、およびネットワーク機器 図2
  • 特開-ジョブ管理システム、およびネットワーク機器 図3
  • 特開-ジョブ管理システム、およびネットワーク機器 図4
  • 特開-ジョブ管理システム、およびネットワーク機器 図5
  • 特開-ジョブ管理システム、およびネットワーク機器 図6
  • 特開-ジョブ管理システム、およびネットワーク機器 図7
  • 特開-ジョブ管理システム、およびネットワーク機器 図8
  • 特開-ジョブ管理システム、およびネットワーク機器 図9
  • 特開-ジョブ管理システム、およびネットワーク機器 図10
  • 特開-ジョブ管理システム、およびネットワーク機器 図11
  • 特開-ジョブ管理システム、およびネットワーク機器 図12
  • 特開-ジョブ管理システム、およびネットワーク機器 図13
  • 特開-ジョブ管理システム、およびネットワーク機器 図14
  • 特開-ジョブ管理システム、およびネットワーク機器 図15
  • 特開-ジョブ管理システム、およびネットワーク機器 図16
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023162791
(43)【公開日】2023-11-09
(54)【発明の名称】ジョブ管理システム、およびネットワーク機器
(51)【国際特許分類】
   G06F 8/61 20180101AFI20231101BHJP
【FI】
G06F8/61
【審査請求】未請求
【請求項の数】14
【出願形態】OL
(21)【出願番号】P 2022073429
(22)【出願日】2022-04-27
(71)【出願人】
【識別番号】000233055
【氏名又は名称】株式会社日立ソリューションズ
(74)【代理人】
【識別番号】110002572
【氏名又は名称】弁理士法人平木国際特許事務所
(72)【発明者】
【氏名】片山 圭
(72)【発明者】
【氏名】中島 克雄
【テーマコード(参考)】
5B376
【Fターム(参考)】
5B376AB01
5B376AB23
5B376FA13
(57)【要約】      (修正有)
【課題】マネージャ装置が各エージェントのファイルインストール状況を管理する必要がなく、かつ、各エージェントにとっての優先度でファイルをインストールする。
【解決手段】ジョブ管理システム100は、マネージャ装置101及び複数の機器106a~nを備える。マネージャ装置は、複数のパッケージの夫々のダウンロードを実行させる、対応する複数のジョブを生成するプロセッサ105及び複数のジョブを複数の機器に送信する通信デバイス103を有する。複数の機器106の夫々は、複数のジョブの実行および中断を制御するエージェント107を有する。マネージャ装置は、複数のジョブに実行順位を示す第1優先度を付与する。エージェントは、第1優先度とは異なる第2優先度の情報を外部から受信した場合には、第1優先度が示すジョブの実行順位とは関係なく、第2優先度が示すジョブの実行順位に従って複数のジョブの実行を制御する。
【選択図】図1
【特許請求の範囲】
【請求項1】
マネージャ装置と、複数の機器と、を備え、前記マネージャ装置から前記複数の機器にパッケージを配布し、前記複数の機器が前記パッケージをインストールする、ジョブ管理システムであって、
前記マネージャ装置は、複数のパッケージのそれぞれのダウンロードを実行させるための、対応する複数のジョブを生成するプロセッサと、当該複数のジョブを前記複数の機器に送信する通信デバイスと、を有し、
前記複数の機器のそれぞれは、前記複数のジョブの実行および中断を制御するエージェントを有し、
前記マネージャ装置のプロセッサは、前記複数のジョブに実行順位を示す第1優先度を付与し、
前記エージェントは、前記第1優先度とは異なる第2優先度の情報を外部から受信した場合には、前記第1優先度が示すジョブの実行順位とは関係なく、前記第2優先度が示すジョブの実行順位に従って前記複数のジョブの実行を制御する、ジョブ管理システム。
【請求項2】
請求項1において、
前記マネージャ装置は、前記通信デバイスを用いて、第1ジョブと、前記第1優先度が前記第1ジョブよりも低い第2ジョブを前記複数の機器に送信し、
前記エージェントは、前記第2ジョブを前記第1ジョブに優先して実行することを示す前記第2優先度の情報を受信した場合、前記第2ジョブを前記第1ジョブよりも優先して実行し、前記第2ジョブに対応するパッケージのインストールを先に完了させる、ジョブ管理システム。
【請求項3】
請求項2において、
前記エージェントは、前記第1ジョブの実行中に前記第2優先度の情報を受信した場合、前記第1ジョブの実行を中断し、前記第2ジョブの実行終了後に前記第1ジョブの実行を再開する、ジョブ管理システム。
【請求項4】
請求項3において、
前記エージェントは、前記第1ジョブによる前記パッケージの所定割合以上のダウンロードが完了している場合には、前記第2優先度の情報に関係なく、前記第2ジョブを実行せずに前記第1ジョブを引き続き実行する、ジョブ管理システム。
【請求項5】
請求項1において、
前記エージェントは、前記第2優先度の情報を受信しない場合、前記第1優先度が付与された前記複数のジョブのうち、最も高い優先度のジョブが複数あるときには、当該最も高い優先度のジョブに対応する前記パッケージの属性に基づいてさらに優先順位を付けてジョブを実行する、ジョブ管理システム。
【請求項6】
請求項1において、
前記エージェントは、前記パッケージのダウンロードあるいは前記パッケージのインストールが完了した場合には、ダウンロード完了通知あるいはインストール完了通知を前記マネージャ装置に送信するように前記ダウンロードあるいは前記インストールを実行したジョブを制御する、ジョブ管理システム。
【請求項7】
請求項6において、
前記マネージャ装置は、
前記複数の機器に配布したジョブの実行状況を管理するジョブ実行情報を記憶デバイスに保持し、
前記ダウンロード完了通知あるいは前記インストール完了通知を受信したとき、前記ジョブ実行情報を更新する、ジョブ管理システム。
【請求項8】
マネージャ装置から配布される複数のジョブを実行し、当該複数のジョブのそれぞれに関連する各パッケージをダウンロードおよびインストールするエージェントを有する、ネットワーク機器であって、
外部からの情報を入力し、外部へ情報を出力する入出力デバイスと、
前記エージェントが内部に生成されたプロセッサと、を備え、
前記エージェントは、
前記複数のジョブの実行および中断を制御し、
前記マネージャ装置によって付与された前記複数のジョブに実行順位を示す第1優先度とは異なる第2優先度の情報を前記入出力デバイスから入力された場合に、前記第1優先度が示すジョブの実行順位とは関係なく、前記第2優先度が示すジョブの実行順位に従って前記複数のジョブの実行を制御する、ネットワーク機器。
【請求項9】
請求項8において、
前記プロセッサは、通信デバイスを介して、前記マネージャ装置から、第1ジョブと、前記第1優先度が前記第1ジョブよりも低い第2ジョブとを受信し、
前記エージェントは、前記第2ジョブを前記第1ジョブに優先して実行することを示す前記第2優先度の情報を受信した場合、前記第2ジョブを前記第1ジョブよりも優先して実行し、前記第2ジョブに対応するパッケージのインストールを先に完了させる、ネットワーク機器。
【請求項10】
請求項9において、
前記エージェントは、前記第1ジョブの実行中に前記第2優先度の情報を受信した場合、前記第1ジョブの実行を中断し、前記第2ジョブの実行終了後に前記第1ジョブの実行を再開する、ネットワーク機器。
【請求項11】
請求項10において、
前記エージェントは、前記第1ジョブによる前記パッケージの所定割合以上のダウンロードが完了している場合には、前記第2優先度の情報に関係なく、前記第2ジョブを実行せずに前記第1ジョブを引き続き実行する、ネットワーク機器。
【請求項12】
請求項8において、
前記エージェントは、前記第2優先度の情報を受信しない場合、前記第1優先度が付与された前記複数のジョブのうち、最も高い優先度のジョブが複数あるときには、当該最も高い優先度のジョブに対応する前記パッケージの属性に基づいてさらに優先順位を付けてジョブを実行する、ネットワーク機器。
【請求項13】
請求項8において、
前記エージェントは、前記パッケージのダウンロードあるいは前記パッケージのインストールが完了した場合には、ダウンロード完了通知あるいはインストール完了通知を前記マネージャ装置に送信するように前記ダウンロードあるいは前記インストールを実行したジョブを制御する、ネットワーク機器。
【請求項14】
請求項8において、
前記エージェントは、前記パッケージのインストールが完了した場合、インストール完了に関連するジョブを消滅させる、ネットワーク機器。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ジョブ管理システム、およびネットワーク機器に関する。
【背景技術】
【0002】
以前からエージェントが組み込まれた複数の機器(コンピュータやOA機器などのネットワーク機器)と、これら複数の機器を資産として管理するマネージャ装置と、によって構成されるジョブ管理システムが用いられている。当該ジョブ管理システムにおいて、マネージャ装置は、各機器で用いられるプログラムやファイルなどを含むパッケージデータのダウンロードを実行するジョブを各機器に配布して各機器がパッケージダウンロード→インストール等するようにしている。このとき、各機器に配布するジョブの優先度はマネージャ装置が決定し、各エージェントはその優先度に従ってジョブを実行する。
【0003】
例えば、特許文献1は、ジョブ管理マネージャが稼働し、その配下のジョブ実行エージェントでジョブを実行するジョブ管理サーバを、複数台備えたジョブ管理システムについて開示する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2011-76512号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、マネージャ装置から配布されるファイル(パッケージ)が既にインストールされているエージェントとインストールされていないエージェントが存在する場合があり、ファイルによっては各エージェント(各機器)で重要度が必ずしも同一ではない。従って、マネージャ装置の管理者は、ファイルを各エージェントに配布する際、各機器でのファイルのインストール状況(インストールされているファイルの種類など)を把握し、どのエージェントに当該ファイルを配布すべきか決定しなければならず、単純なファイル配布処理とはいっても管理者にとって手間となる場合があった。
【0006】
本開示はこのような状況に鑑み、マネージャ装置が各エージェントのファイルインストール状況を管理する必要がなく、かつ各エージェントにとっての優先度でファイル(パッケージ)をインストールすることを可能にする技術を提案する。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本開示は、一例として、マネージャ装置と、複数の機器と、を備え、マネージャ装置から複数の機器にパッケージを配布し、複数の機器がパッケージをインストールする、ジョブ管理システムであって、
マネージャ装置は、複数のパッケージのそれぞれのダウンロードを実行させるための、対応する複数のジョブを生成するプロセッサと、当該複数のジョブを複数の機器に送信する通信デバイスと、を有し、
複数の機器のそれぞれは、複数のジョブの実行および中断を制御するエージェントを有し、
マネージャ装置のプロセッサは、複数のジョブに実行順位を示す第1優先度を付与し、
エージェントは、第1優先度とは異なる第2優先度の情報を外部から受信した場合には、第1優先度が示すジョブの実行順位とは関係なく、第2優先度が示すジョブの実行順位に従って複数のジョブの実行を制御する、ジョブ管理システムを提案する。
【0008】
本開示に関連する更なる特徴は、本明細書の記述、添付図面から明らかになるものである。また、本開示の態様は、要素及び多様な要素の組み合わせ及び以降の詳細な記述と添付される特許請求の範囲の様態により達成され実現される。本明細書の記述は典型的な例示に過ぎず、本開示の特許請求の範囲又は適用例を如何なる意味においても限定するものではないことを理解する必要がある。
【発明の効果】
【0009】
本開示の技術によれば、マネージャ装置の管理者に手間を掛けず、効率的に各エージェントにおいてそれぞれの優先度に応じて配布されるファイルのインストールを実行することが可能となる。
【図面の簡単な説明】
【0010】
図1】本実施形態によるジョブ管理システム100の構成例を示す図である。
図2】本実施形態で用いられる資産管理データベース104の内部構成例を示す図である。
図3】マネージャ装置101によるパッケージ配布処理を説明するためのフローチャートである。
図4】機器106aから106nのエージェント1_107aからエージェントn_107n(以下、図4では、単に「エージェント」とする)のそれぞれが実行するパッケージダウンロード処理を説明するためのフローチャートである。
図5】マネージャ装置101によるジョブ配布の概要を説明するための図である。
図6】各エージェントが配布ジョブに従ってパッケージをダウンロードする処理の概要を説明するための図である。
図7】ジョブ配布からパッケージインストール完了までの一般的な処理の流れを説明するためのシーケンス図である。
図8】ジョブ実行(配布ジョブ1)中に他の優先度が高いジョブ(配布ジョブ2)が配布されたときの処理の概要を説明するための図である。
図9図8のエージェント1_107aの動作である、実行中のジョブを中断して優先度の高い他のジョブを先に実行する処理の流れを説明するシーケンス図である。
図10】機器の利用者の指示によってジョブの実行順序を変更する処理の概要を説明するための図である。
図11】マネージャ装置101が付与したジョブの優先度に関係なく、エージェント1_107a主導で実行順序(優先度)を変更してジョブを実行する処理(図10に概要が示されている)の流れを説明するシーケンス図である。
図12】マネージャ装置101の入出力デバイス102(表示装置)に出力される、パッケージ情報データ104_1を生成するためのパッケージングGUI(Graphical User Interface)1200の構成例を示す図である。
図13】マネージャ装置101の入出力デバイス102(表示装置)に出力される、ジョブ情報データ104_2を生成するためのジョブ実行GUI(Graphical User Interface)1300の構成例を示す図である。
図14】エージェント1_107aからエージェントn_107n(以下、単に「エージェント」とすることがある)で表示されるパッケージダウンロードダイアログ1400の構成例を示す図である。
図15】、マネージャ装置101の入出力デバイス102(表示装置)に表示される、エージェント1_107aからエージェントn_107nに配布した各ジョブの実行状況を示す処理結果表示(ジョブ実行状況表示1500)の構成例を示す図である。
図16】各エージェントに配布されたジョブによるパッケージダウンロードおよびインストールの状況表示(パッケージ実行状況表示1600)の構成例を示す図である。
【発明を実施するための形態】
【0011】
本実施形態は、マネージャが付与したファイルの優先度とは無関係に、エージェント主導で自身にインストールすべきファイルの優先度を決定し、それに従ってマネージャから配布されたファイルのインストールを実行すること、また、エージェントにおいて、ダウンロード中のファイルよりも高優先度であると当該エージェントで指定されたファイルについては先行するファイルのダウンロードを中断して優先してインストールさせることについて開示する。
【0012】
以下、本実施形態について、図面を参照して説明する。同一の構成については、同じ符号を付して説明する。尚、以下の実施形態は本開示の技術を限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが上記課題の解決手段に必須のものとは限らない。
【0013】
<ジョブ管理システムの構成例>
図1は、本実施形態によるジョブ管理システム100の構成例を示す図である。
【0014】
ジョブ管理システム100は、例えば、マネージャ装置101と、マネージャ装置101の管理対象である複数の機器(ネットワーク機器)106aから106nと、を備える。マネージャ装置101と、複数の機器106aから106nとは、ネットワーク(例えば、インタネットや専用回線)を介して接続されている。
【0015】
マネージャ装置101は、例えば、管理者の指令に応答して動作し、入出力デバイス102と、通信デバイス103と、資産管理データベース104と、プロセッサ105と、を含む。入出力デバイス102は、例えば、キーボードやタッチパネルなどの入力装置と表示装置やプリンタなどの出力デバイスで構成され、管理者がパッケージ作成指令やパッケージの優先度などを入力したり、各機器106aから106nからのダウンロード完了通知やインストール完了通知を表示したりする。通信デバイス103は、ネットワークを介して配布すべきジョブを機器106aから106nの少なくとも1つに送信したり、各機器106aから106nからのダウンロード完了通知やインストール完了通知を受信したりする。プロセッサ105は、各機器106aから106nに配布するジョブを管理するジョブ管理部1051を有している。ジョブ管理部1051は、ジョブに優先度を付与して、機器106aから106nのそれぞれに当該ジョブを配布する(詳細については後述する)。資産管理データベース104は、記憶デバイス(図示せず)で構成され、パッケージ情報データ、ジョブ情報データ、およびエージェント情報データ(図2参照)を保持している。
【0016】
機器106aから106nはそれぞれ、エージェント1_107aからエージェントn_107nを有している。各エージェント1_107aからエージェントn_107nは、マネージャ装置101から受け取った配布ジョブを対応する機器106aから106n内に生成し、実行する。ジョブは、例えば、パッケージをマネージャ装置101などからダウンロードする機能を有している。また、各機器106aから106nは、それぞれの利用者が操作できるように構成され、図示しないが、入出力デバイス、プロセッサ、および通信デバイスを含んでいる。各エージェント1_107aからエージェントn_107nは、当該プロセッサ内部に展開されている。エージェントによって生成されるジョブも、例えばプロセッサ内に生成することができる。なお、機器106aから106nの各利用者は、複数のジョブをマネージャ装置101から受信した場合(同時受信、あるいは時間差で受信)、マネージャ装置101によって付与されている優先度に関係なく、自身が考える優先度でジョブを実行することができる。つまり、機器106aから106nは、利用者がマネージャ装置101によって付与された優先度を変更してジョブの実行をエージェント1_107aからエージェントn_107nに指示することができるように構成されている。
【0017】
<資産管理データベース104の内部構成例>
図2は、本実施形態で用いられる資産管理データベース104の内部構成例を示す図である。資産管理データベース104は、例えば、パッケージ情報データ104_1と、ジョブ情報データ104_2と、エージェント情報データ104_3と、を含む。
【0018】
パッケージ情報データ104_1は、機器106aから106nにインストールなどすべきパッケージファイル(プログラム)を管理する情報であり、パッケージを一意に識別するパッケージID201と、パッケージの名称を示すパッケージ名202と、パッケージファイルの内容であるパッケージデータ203と、ダウンロードやインストールする優先度を示す優先度204と、機器のエージェントの中のインストール先(アドレス情報)を示すインストール先205と、を構成項目として含んでいる。パッケージデータ203には、ファイルの中にインストーラが含まれるデータもある。また、インストール先205の情報を管理することにより、パッケージを作成する際に機器(エージェント)のどこにインストールするかマネージャ装置101側で決定することができる。また、優先度204は、マネージャ装置101側で付与される。従って、機器106aから106nのエージェント1_107aからエージェントn_107nが優先度204に応じてパッケージをダウンロードし、インストールするのであれば、従来と同様のマネージャ主導のインストール動作となる。しかし、本実施形態では、後述のように、優先度204よりも機器106aから106n側で改めて付与(機器利用者によって指示)された優先度に従ってパッケージをインストールすることができるようになっている。
【0019】
ジョブ情報データ104_2は、ジョブ名211と、ジョブ種別212と、対応するジョブをどのエージェントに配布すべきかを示すあて先213と、対応するジョブがダウンロードしてインストールすべきパッケージの情報を示すパッケージ214と、ジョブの実行日時を示す実行日時215と、を構成項目として含んでいる。ここで、1つのジョブに複数のパッケージを含めることもできる。
【0020】
エージェント情報データ104_3は、機器106aから106nに生成されたエージェント1_107aからエージェントn_107nを管理する情報であり、エージェントを一意に識別するエージェントID221と、ホスト名222と、エージェントのアドレス情報を示すIPアドレス223と、を構成項目として含む。
【0021】
なお、資産管理データベース104を構成するパッケージ情報データ104_1、ジョブ情報データ104_2、およびエージェント情報データ104_3は、図2に示されるように、テーブルで構成することができるが、各構成情報を管理することができればテーブル形式に限定されない。また、資産管理データベース104は、これらの情報以外にも、例えば、各エージェント107aから107nがマネージャ装置101からの通知に応じて更新されるジョブ実行状況情報(図示せず)を保持するようにしてもよい。
【0022】
<マネージャ装置101によるパッケージ配布処理>
図3は、マネージャ装置101によるパッケージ配布処理を説明するためのフローチャートである。
【0023】
(i)ステップ301
マネージャ装置101のプロセッサ105に生成されたジョブ管理部1051は、例えば管理者に指定されたファイルをパッケージングし、パッケージ情報データ104_1(図2参照)を生成する。つまり、パッケージID201、パッケージ名202、パッケージデータ203、およびインストール先205の情報が1まとまりの情報としてパッケージ化される。
【0024】
(ii)ステップ302
ジョブ管理部1051は、パッケージを配布するためのジョブを作成する。このジョブは、ジョブ情報データ104_2のような情報を含む。なお、ここで、ジョブとは、どのようなパッケージ(ファイルやプログラムを含む)をどこ(どの機器のエージェント)に送り、送り先のエージェントでどのような動作を実行させるかを定義する情報である。つまり、マネージャ装置101は、まず配布すべき情報の内容を定義したジョブをエージェント1_107aからエージェントn_107nの少なくとも1つに送信する。ジョブを受け取ったエージェント1_107aからエージェントn_107nの何れかは、ジョブを解析し、どのパッケージを資産管理データベース104からダウンロードするか、およびダウンロード後ジョブの内容に従ってどこにインストールするか判断することになる。
【0025】
(iii)ステップ303
ジョブ管理部1051は、以下のステップ304を各エージェント1_107aからエージェントn_107nのうち対象となるエージェントに対して実行する。なお、マネージャ装置101側で、全てのエージェントにジョブを送信するか一部のエージェントにジョブを送信するか決定することができるようにしてもよい。
【0026】
(iv)ステップ304
ジョブ管理部1051は、エージェントに対してジョブを送信する。
【0027】
(v)ステップ305
ジョブ管理部1051は、配布済のジョブ(各エージェントに生成されたジョブ)からの通知に応じて、資産管理データベース104で管理するジョブ実行状況情報(図2には図示せず)を更新する。
【0028】
<エージェントによるパッケージダウンロード処理>
図4は、機器106aから106nのエージェント1_107aからエージェントn_107n(以下、図4では、単に「エージェント」とする)のそれぞれが実行するパッケージダウンロード処理を説明するためのフローチャートである。
【0029】
(i)ステップ401
エージェントは、新規にジョブをマネージャ装置101から受信した場合、そのときに実行中の別のジョブがあるか判断する。実行中のジョブがある場合(ステップ401でYesの場合)には、処理はステップ402に移行する。実行中のジョブがない場合(ステップ401でNoの場合)には、処理はステップ405に移行する。
【0030】
(ii)ステップ402
エージェントは、実行中のジョブに関し、当該ジョブに含まれるパッケージのダウンロードがほぼ完了している(例えば、80%以上完了している)か判断する。ここでは、実行中のジョブを継続した方が効率的か新規のジョブを実行する方が効率的か判断される。パッケージのダウンロードがほぼ完了している場合(ステップ402でYesの場合)、処理はステップ408に移行する。パッケージのダウンロードが所定割合に達していない場合(ステップ402でNoの場合)、処理はステップ403に移行する。
【0031】
(iii)ステップ403
エージェントは、当該実行中のジョブによるパッケージのダウンロードが機器利用者の操作(指示)によって実行されているものであるか判断する。機器利用者の操作によって実行されているものである場合(ステップ403でYesの場合)、処理はステップ408に移行する。つまり、機器利用者による指示が優先されることになる。一方、機器利用者の操作によって実行されているものではない場合(ステップ403でNoの場合)、処理はステップ404に移行する。
【0032】
(iv)ステップ404
エージェントは、実行中のジョブに対応するパッケージのダウンロードを一時中断する。
【0033】
(v)ステップ405
エージェントは、複数のパッケージの中で最も優先度(マネージャ装置101で付与された優先度)が高いパッケージのうち、さらに優先度が付けられるか判断する。さらに優先度が付けられるかは、例えば、利用者が高優先度に位置付けたパッケージがあるか、関連するパッケージのダウンロード履歴あるか、他のパッケージに比べて使用頻度(ダウンロード頻度を含む)が高いパッケージであるか、あるいは、その他エージェントが保持する情報の中で優劣が付けられるかによって判断することができる。
【0034】
さらに優先度が付けられる場合(ステップ405でYesの場合)、処理はステップ406に移行する。さらなる優先度は付けられない場合(ステップ405でNoの場合)、処理はステップ407に移行する。
【0035】
なお、実行中のジョブ以外の複数のジョブ(パッケージダウンロード)において利用者が最優先度のジョブ(パッケージ)を指定した場合(優先度を変更した場合)には、その指定されたパッケージのダウンロードが最優先に行われる。そして、残りのジョブの中で優先度(マネージャ装置101によって付与された優先度)同一ものが複数ある場合に、その中で優先度がさらに付けられるか判断するように構成することができる。実行中のジョブ以外の複数のジョブにおいて利用者が最優先度のジョブ(パッケージ)を指定していない場合には、マネージャによって付与された優先度の中で最も優先度の高いジョブの中でさらに付与された優先順位でジョブが順次実行されることになる(ステップ406参照)。
【0036】
(vi)ステップ406
エージェントは、さらに優先度付けを行って最優先に位置付けたジョブを実行(パッケージをダウンロード)する。
【0037】
(vii)ステップ407
エージェントは、マネージャ装置101によって付与された優先度に従って、最も優先度の高いジョブを実行(パッケージをダウンロード)する。
【0038】
(viii)ステップ408
エージェントは、実行中のジョブに対応するパッケージのダウンロードやインストールを継続する。
【0039】
(ix)ジョブが複数ある場合の処理
実行中のジョブの他にこれから実行すべきジョブが複数ある場合、エージェントは、1つのジョブについてステップ401から408までの処理を終了させたら、他のジョブについてステップ401から408を再度実行することになる。
【0040】
<ジョブ配布の概要>
図5は、マネージャ装置101によるジョブ配布の概要を説明するための図である。
【0041】
図5に示されるように、ジョブ管理部1051は、配布ジョブ501を生成すると、配布先のエージェント(図5では、エージェント1_107aからエージェント3_107c)に対して配布ジョブ501を送信する。
【0042】
なお、配布ジョブ501は、エージェントが受け取ったらすぐに実行するようにしてもよいし、配布ジョブ501の実行日時の情報(図2の実行日時215)で指定されるタイミングで実行するようにしてもよい。また、機器が起動していないときにジョブが配布される場合、機器起動時にエージェントがジョブを実行するようにしてもよい。
【0043】
<パッケージダウンロードの概要>
図6は、各エージェントが配布ジョブに従ってパッケージをダウンロードする処理の概要を説明するための図である。
【0044】
図6に示されるように、ジョブ管理部1051によって配布ジョブ501が各エージェント(図6では、エージェント1_107aからエージェント3_107c)に配布されると各エージェントはジョブを実行し、配布ジョブ501が指定するパッケージをマネージャ装置101の資産管理データベース104からダウンロードする。
【0045】
なお、図6は、例えば、各エージェントが他のジョブを取得していない場合(実行すべきジョブが1つのとき)のジョブに従った通常のダウンロード処理の様子を示している。
【0046】
<通常のジョブ実行のシーケンス>
図7は、ジョブ配布からパッケージインストール完了までの一般的な処理の流れを説明するためのシーケンス図である。
【0047】
マネージャ装置101のジョブ管理部1051は、エージェントk_107k(k=1からnの整数)に配布すべきジョブを生成し(シーケンス701)、それを配布先のエージェントk_107kに送信する(シーケンス702)。あるいは、ジョブ管理部1051が配布先のエージェントk_107kに配布すべきジョブのダウンロード指令を送信し、それに応答して当該エージェントk_107kがジョブをダウンロードする(シーケンス702)。
【0048】
ジョブを取得したエージェントk_107kは、ジョブを実行、すなわち当該エージェントk_107k上でジョブ700を生成する(シーケンス703)。そして、ジョブ700は、当該ジョブで指定されるパッケージのダウンロード要求をマネージャ装置101に送信する(シーケンス704)。
【0049】
マネージャ装置101はエージェントk_107kのジョブ700によるパッケージのダウンロードを許可し、ジョブ700は、対象のパッケージをジョブで指定されるインストール先205(図2参照)にダウンロードする(シーケンス705)。ジョブ700は、対象のパッケージのダウンロードが完了すると、ダウンロード完了通知をマネージャ装置101に送信する(シーケンス706)。ダウンロード完了通知を受信すると、マネージャ装置101は、資産管理データベース104で保持されるジョブ実行状況情報(図示せず)を更新する。
【0050】
ジョブ700は、ダウンロードしたパッケージを機器にインストールする(シーケンス707)。パッケージのインストールが完了すると、ジョブは、インストール完了通知をマネージャ装置101に送信する(シーケンス708)。ダウンロード完了時と同様に、インストール完了通知を受信すると、マネージャ装置101は、資産管理データベース104で保持されるジョブ実行状況情報(図示せず)を更新する。
【0051】
インストール完了通知をマネージャ装置101に送信完了させると、ジョブは消滅する、あるいはエージェントk_107kはジョブを消滅させる(シーケンス709)。
【0052】
<優先度が高いジョブが追加されたときの処理の概要>
図8は、ジョブ実行(配布ジョブ1)中に他の優先度が高いジョブ(配布ジョブ2)が配布されたときの処理の概要を説明するための図である。図8は、例えば、パッケージ1をダウンロードするためのジョブ1が優先度「中」で機器106aから106cのエージェント1_107aからエージェント3_107cに配布され、追加(例えば、急遽)でパッケージ2をダウンロードするためのジョブ2が優先度「高」で各エージェントに配布される場面を想定している。ただし、エージェント2_107bには既にパッケージ2がインストールされているため、ジョブ2が配布されたとしてもジョブ2は実行されないものとする。
【0053】
ジョブ1が配布されると、エージェント1_107aからエージェント3_107cは、ジョブ1を実行する。ジョブ1の実行のタイミングは、各エージェントによって異なるようにマネージャ装置101で設定することができるので、図8において、エージェント1_107aではパッケージ1がダウンロード中の状態、エージェント2_107bではパッケージ1がダウンロード前の状態、エージェント3_107cではパッケージ1がインストール中の状態となっている。
【0054】
エージェント3_107cにおいてはパッケージ1がインストール中であるため、優先度がジョブ1よりも高いジョブ2を取得した場合であっても、エージェント3_107cはパッケージ1のインストール動作を中断することはない(図4のステップ402→ステップ408)
【0055】
一方、エージェント1_107aにおいてはパッケージ1がダウンロード中(ダウンロード進行度が80%未満を想定)であるため、優先度がジョブ1よりも高いジョブ2を取得した場合には、エージェント1_107aはパッケージ1のダウンロード動作を中断し、ジョブ2を実行してパッケージ2のダウンロードを開始する(図4のステップ402→ステップ403→ステップ404→ステップ405→ステップ407)。
【0056】
エージェント2_107bにはパッケージ2が既にインストールされているので、ジョブ2が配布されてもジョブ1のみが実行される。ジョブ1はこの後に適宜実行される。
【0057】
<実行中のジョブを中断して優先度の高い他のジョブを実行する処理のシーケンス>
図9は、図8のエージェント1_107aの動作である、実行中のジョブを中断して優先度の高い他のジョブを先に実行する処理の流れを説明するシーケンス図である。
【0058】
マネージャ装置101のジョブ管理部1051は、エージェント1_107aに配布すべきジョブ1を生成し(シーケンス901)、それを配布先のエージェント1_107aに送信する(シーケンス902)。あるいは、ジョブ管理部1051が配布先のエージェント1_107aに配布すべきジョブ1のダウンロード指令を送信し、それに応答して当該エージェント1_107aがジョブ1をダウンロードする(シーケンス902)。
【0059】
ジョブ1を取得したエージェント1_107aは、ジョブ1を実行、すなわち当該エージェント1_107a上でジョブ1_900を生成する(シーケンス903)。そして、ジョブ1_900は、当該ジョブ1で指定されるパッケージ1のダウンロード要求をマネージャ装置101に送信する(シーケンス904)。
【0060】
マネージャ装置101はエージェント1_107aのジョブ1_900によるパッケージ1のダウンロードを許可し、ジョブ1_900は、対象のパッケージ1をジョブ1で指定されるインストール先205(図2参照)にダウンロードする(シーケンス905)。
【0061】
一方、マネージャ装置101のジョブ管理部1051は、エージェント1_107aに配布すべきジョブ2(ジョブ1よりも優先度が高い)を生成し(シーケンス906)、それを配布先のエージェント1_107aに送信する(シーケンス907)。あるいは、ジョブ管理部1051が配布先のエージェント1_107aに配布すべきジョブ2のダウンロード指令を送信し、それに応答して当該エージェント1_107aがジョブ2をダウンロードする(シーケンス907)。
【0062】
エージェント1_107aは、取得したジョブ2が実行中のジョブ1_900よりも優先度が高く、かつパッケージ1のダウンロードがほぼ完成している状態ではないため、ジョブ1_900の実行(パッケージ1のダウンロード)を中断する(シーケンス908)。そして、エージェント1_107aは、ジョブ2を実行、すなわち当該エージェント1_107a上でジョブ2_900’を生成する(シーケンス909)。そして、ジョブ2_900’は、当該ジョブ2_900’で指定されるパッケージ2のダウンロード要求をマネージャ装置101に送信する(シーケンス910)。
【0063】
マネージャ装置101はエージェント1_107aのジョブ2_900’によるパッケージ2のダウンロードを許可し、ジョブ2_900’は、対象のパッケージ2をジョブ2で指定されるインストール先205(図2参照)にダウンロードする(シーケンス911)。
【0064】
ジョブ2_900’は、対象のパッケージ2のダウンロードが完了すると、ダウンロード完了通知をマネージャ装置101に送信する(シーケンス912)。ダウンロード完了通知を受信すると、マネージャ装置101は、資産管理データベース104で保持されるジョブ実行状況情報(図示せず)を更新する。
【0065】
ジョブ2_900’は、パッケージ2をインストールする(シーケンス913)。パッケージ2のインストールが完了すると、ジョブ2_900’はインストール完了通知をマネージャ装置101に送信する(シーケンス914)。ダウンロード完了時と同様に、インストール完了通知を受信すると、マネージャ装置101は、資産管理データベース104で保持されるジョブ実行状況情報(図示せず)を更新する。インストール完了通知をマネージャ装置101に送信完了させると、ジョブ2_900’は消滅(自立消滅)する、あるいはエージェント1_107aはジョブ2_900’を消滅させる(シーケンス915)。
【0066】
また、パッケージ2のインストールが完了すると、エージェント1_107aは、中断中のジョブ1_900の実行を再開させる(シーケンス916)。ジョブ1_900は、対象のパッケージ1のダウンロードが完了すると、ダウンロード完了通知をマネージャ装置101に送信する(シーケンス917)。ダウンロード完了通知を受信すると、マネージャ装置101は、資産管理データベース104で保持されるジョブ実行状況情報(図示せず)を更新する。
【0067】
さらに、ジョブ1_900は、パッケージ1をインストールする(シーケンス918)。パッケージ1のインストールが完了すると、ジョブ1_900はインストール完了通知をマネージャ装置101に送信する(シーケンス919)。ダウンロード完了時と同様に、インストール完了通知を受信すると、マネージャ装置101は、資産管理データベース104で保持されるジョブ実行状況情報(図示せず)を更新する。インストール完了通知をマネージャ装置101に送信完了させると、ジョブ1_900は消滅(自立消滅)する、あるいはエージェント1_107aはジョブ1_900を消滅させる(シーケンス920)。
【0068】
<利用者の指示によってジョブの実行を変更する処理の概要>
図10は、機器の利用者の指示によってジョブの実行順序を変更する処理の概要を説明するための図である。図10は、図4のステップ403でYesの場合に実行される処理である。図10は、例えば、パッケージ1をダウンロードするためのジョブ1が優先度「高」で機器106aのエージェント1_107aに配布され、次いでパッケージ2をダウンロードするためのジョブ2が優先度「低」でエージェント1_107aに配布される場合に、機器106aの利用者が優先度「低」のパッケージ2を優先してダウンロードする場面(エージェント主導による優先度変更)を想定している。
【0069】
図10において、マネージャ装置101は、ジョブ1を優先度「高」、ジョブ2を優先度「低」と指定し、ジョブ1→ジョブ2の順番で機器106aのエージェント1_107aに配布する。
【0070】
エージェント1_107aは、ジョブ1およびジョブ2をその順番で受信し、ジョブ1の実行を開始した段階で、機器106aの利用者からパッケージ2を優先してダウンロードする指示を受け取ると、マネージャ装置101によってジョブ1の優先度の方がジョブ2のそれよりも高い場合であってもジョブ1の実行(パッケージ1のダウンロード)を中断し(利用者の意思を尊重)、ジョブ2の実行を開始する。ジョブ2によるパッケージ2のダウンロードが完了すると、パッケージ1のダウンロードが再開される。
【0071】
このように、エージェント主導でパッケージのダウンロードの優先度を変更することにより、利用者による機器の利用の実態に即したジョブの実行を実現することが可能となる。
【0072】
<マネージャ装置101が付与した優先度に関係なく、エージェント主導で実行順序を変更してジョブを実行する処理のシーケンス>
図11は、マネージャ装置101が付与したジョブの優先度に関係なく、エージェント1_107a主導で実行順序(優先度)を変更してジョブを実行する処理(図10に概要が示されている)の流れを説明するシーケンス図である。
【0073】
マネージャ装置101のジョブ管理部1051は、エージェント1_107aに配布すべきジョブ1を生成し(シーケンス1101)、それを配布先のエージェント1_107aに送信する(シーケンス1102)。あるいは、ジョブ管理部1051が配布先のエージェント1_107aに配布すべきジョブ1のダウンロード指令を送信し、それに応答して当該エージェント1_107aがジョブ1をダウンロードする(シーケンス1102)。
【0074】
また、マネージャ装置101のジョブ管理部1051は、エージェント1_107aに配布すべきジョブ2を生成し(シーケンス1103)、それを配布先のエージェント1_107aに送信する(シーケンス1104)。あるいは、ジョブ管理部1051が配布先のエージェント1_107aに配布すべきジョブ2のダウンロード指令を送信し、それに応答して当該エージェント1_107aがジョブ2をダウンロードする(シーケンス1104)。
【0075】
エージェント1_107aは、ジョブ1を実行、すなわち当該エージェント1_107a上でジョブ1_1100を生成する(シーケンス1105)。そして、ジョブ1_1100は、当該ジョブ1で指定されるパッケージ1のダウンロード要求をマネージャ装置101に送信する(シーケンス1106)。
【0076】
マネージャ装置101はエージェント1_107aのジョブ1_1100によるパッケージ1のダウンロードを許可し、ジョブ1_1100は、対象のパッケージ1をジョブ1で指定されるインストール先205(図2参照)にダウンロードする(シーケンス1107)。
【0077】
ジョブ1_1100によるパッケージ1のダウンロード中に機器106aの利用者がパッケージ2のダウンロード要求をエージェント1_106aに指示する(シーケンス1108)と、エージェント1_107aは、実行中(パッケージ1をダウンロード中)のジョブ1_1100を中断する(シーケンス1109)。また、ジョブ1_1100の中断に次いで、エージェント1_107aは、ジョブ2を実行、すなわち当該エージェント1_107a上でジョブ2_1100’を生成する(シーケンス1110)。そして、ジョブ2_1100’は、当該ジョブ2で指定されるパッケージ2のダウンロード要求をマネージャ装置101に送信する(シーケンス1111)。
【0078】
マネージャ装置101はエージェント1_107aのジョブ2_1100’によるパッケージ2のダウンロードを許可し、ジョブ2_1100’は、対象のパッケージ2をジョブ2で指定されるインストール先205(図2参照)にダウンロードする(シーケンス1112)。
【0079】
ジョブ2_1100’は、対象のパッケージ2のダウンロードが完了すると、ダウンロード完了通知をマネージャ装置101に送信する(シーケンス1113)。ダウンロード完了通知を受信すると、マネージャ装置101は、資産管理データベース104で保持されるジョブ実行状況情報(図示せず)を更新する。
【0080】
ジョブ2_1100’は、パッケージ2をインストールする(シーケンス1114)。パッケージ2のインストールが完了すると、ジョブ2_1100’はインストール完了通知をマネージャ装置101に送信する(シーケンス1115)。ダウンロード完了時と同様に、インストール完了通知を受信すると、マネージャ装置101は、資産管理データベース104で保持されるジョブ実行状況情報(図示せず)を更新する。インストール完了通知をマネージャ装置101に送信完了させると、ジョブ2_1100’は消滅(自立消滅)する、あるいはエージェント1_107aはジョブ2_1100’を消滅させる(シーケンス1116)。
【0081】
また、パッケージ2のインストールが完了すると、エージェント1_107aは、中断中のジョブ1_1100の実行を再開させる(シーケンス1117)。ジョブ1_1100は、対象のパッケージ1のダウンロードが完了すると、ダウンロード完了通知をマネージャ装置101に送信する(シーケンス1118)。ダウンロード完了通知を受信すると、マネージャ装置101は、資産管理データベース104で保持されるジョブ実行状況情報(図示せず)を更新する。
【0082】
さらに、ジョブ1_1100は、パッケージ1をインストールする(シーケンス1119)。パッケージ1のインストールが完了すると、ジョブ1_1100はインストール完了通知をマネージャ装置101に送信する(シーケンス1120)。ダウンロード完了時と同様に、インストール完了通知を受信すると、マネージャ装置101は、資産管理データベース104で保持されるジョブ実行状況情報(図示せず)を更新する。インストール完了通知をマネージャ装置101に送信完了させると、ジョブ1_1100は消滅(自立消滅)する、あるいはエージェント1_107aはジョブ1_1100を消滅させる(シーケンス1121)。
【0083】
<パッケージ情報データ104_1を生成するためのGUIの構成例>
図12は、マネージャ装置101の入出力デバイス102(表示装置)に出力される、パッケージ情報データ104_1を生成するためのパッケージングGUI(Graphical User Interface)1200の構成例を示す図である。
【0084】
パッケージングGUI1200は、パッケージID入力欄1201と、パッケージ名入力欄1202と、パッケージファイル指定欄1203と、インストール先指定欄1204と、エージェントによる優先度の変更を許可するか否かを決定する優先度変更許可チェック欄1205と、を構成項目として含む。
【0085】
マネージャ装置101の管理者が入出力デバイス102(入力装置)からパッケージ情報データ104_1の生成開始命令をマネージャ装置101のプロセッサ105に入力すると、プロセッサ105は、パッケージングGUI1200の描画データを記憶デバイスから取得してパッケージングGUI1200を構築し、入出力デバイス102(表示装置)上に表示する。
【0086】
マネージャ装置101の管理者は、表示画面上に表示されたパッケージングGUI1200の各欄1201から1205に対して必要事項を入力して確定させる。すると、プロセッサ105のジョブ管理部1051は、パッケージングGUI1200を介して入力された情報に基づいて、パッケージ情報データ104_1を生成する。
【0087】
<ジョブ情報データ104_2を生成するためのGUIの構成例>
図13は、マネージャ装置101の入出力デバイス102(表示装置)に出力される、ジョブ情報データ104_2を生成するためのジョブ実行GUI(Graphical User Interface)1300の構成例を示す図である。
【0088】
ジョブ実行GUI1300は、ジョブ名入力欄1301と、ジョブ種別入力欄1302と、パッケージの配布先を示すあて先指定欄1303と、パッケージIDを入力するパッケージ入力欄1304と、ジョブの優先度(低、通常(中)、高)を示す優先度指定欄1305と、を構成項目として含む。なお、パッケージ入力欄1304は、複数のパッケージに対応するパッケージIDを入力することができるように構成されている。
【0089】
マネージャ装置101の管理者が入出力デバイス102(入力装置)からジョブ情報データ104_2の生成開始命令をマネージャ装置101のプロセッサ105に入力すると、プロセッサ105は、ジョブ実行GUI1300の描画データを記憶デバイスから取得してジョブ実行GUI1300を構築し、入出力デバイス102(表示装置)上に表示する。
【0090】
マネージャ装置101の管理者は、表示画面上に表示されたジョブ実行GUI1300の各欄1301から1305に対して必要事項を入力して確定させる。すると、プロセッサ105のジョブ管理部1051は、ジョブ実行GUI1300を介して入力された情報に基づいて、ジョブ情報データ104_2を生成する。
【0091】
なお、エージェント1_107aからエージェントn_107nの情報を管理するためのエージェント情報データ104_3を生成するためのGUIは、パッケージングGUI1200やジョブ実行GUI1300と同様に、各必要情報を入力するための入力・指定欄によって構成されるので、その図示および説明は省略する。
【0092】
<エージェントにおけるダイアログの構成例>
図14は、エージェント1_107aからエージェントn_107n(以下、単に「エージェント」とすることがある)で表示されるパッケージダウンロードダイアログ1400の構成例を示す図である。
【0093】
パッケージダウンロードダイアログ1400は、ダウンロード進度表示1401と、パッケージIDおよびパッケージ名を表示するパッケージ内容表示1402と、を構成項目として含む。
【0094】
エージェントが生成したジョブがパッケージのダウンロードを実行すると、パッケージのダウンロードが完了するまでの間パッケージダウンロードダイアログ1400が機器の表示部(図示せず)に表示される。
【0095】
<マネージャの処理結果表示の構成例>
図15は、マネージャ装置101の入出力デバイス102(表示装置)に表示される、エージェント1_107aからエージェントn_107nに配布した各ジョブの実行状況を示す処理結果表示(ジョブ実行状況表示1500)の構成例を示す図である。
【0096】
ジョブ実行状況表示1500は、ジョブ名1501と、ジョブ名1501で特定されるジョブの配布先のエージェント名を示すあて先1502と、ジョブ名1501で特定されるジョブがダウンロードするパッケージを特定するパッケージ名1503と、ジョブの実行状態1504と、実行状況1505と、ジョブの実行日時1506と、を構成項目として含む。
【0097】
ジョブ名1501は、ジョブ情報データ104_2のジョブ名211に対応する情報である。あて先1502は、ジョブ情報データ104_2のあて先213にエージェント情報データ104_3が反映された情報となっている。パッケージ名1503は、ジョブ情報データ104_2のパッケージ214に対応する情報である。
【0098】
実行状態1504は、該当するジョブが実行中か正常終了したかを示す情報である。マネージャ装置101は、エージェントからダウンロード要求を受信したときには実行状態1504を例えば「未実行」から「実行中」に変更し、エージェントからインストール完了通知を受信したときには実行状態1504を例えば「実行中」から「正常終了」に変更する。なお、エージェントにおけるジョブ中断(図8から図11参照)はマネージャ装置101には通知されないため、このときの実行状態1504は「実行中」のままとなっている。
【0099】
実行状況1505は、ジョブ実行の進行状況を示す。例えば、ジョブ配布が完了したがダウンロード開始前のときには進行度0%、ダウンロード開始したときには進行度30%、ダウンロード完了通知を受信したときには進行度60%、エージェントにおけるパッケージインストールの完了通知を受信したときには進行度100%のように実行状況を表示するように定義することができる。
【0100】
<エージェントに配布されたパッケージに関する表示>
図16は、各エージェントに配布されたジョブによるパッケージダウンロードおよびインストールの状況表示(パッケージ実行状況GUI1600)の構成例を示す図である。
【0101】
パッケージ実行状況GUI1600は、チェックボックス1601と、パッケージ名1602と、パッケージID1603と、インストール先1604と、実行状況1605と、インストール日時1606と、ダウンロード要求ボタン1607と、を構成項目として含む。
【0102】
チェックボックス1601は、エージェント主導で優先的にダウンロードする対象を選択する欄である。機器利用者は、優先的にダウンロードしたいパッケージのチェックボックス1601をチェックし、ダウンロード要求ボタン1607を押下すると、エージェントは、実行中のジョブがあれば中断し、チェックされたパッケージをダウンロードするためのジョブを実行させ、当該パッケージのダウンロードを実行する。
【0103】
パッケージ名1602は、マネージャ装置101で付与されたダウンロードおよびインストール対象のパッケージの名称を示す情報であり、パッケージ情報データ104_1のパッケージ名202に対応する。パッケージID1603は、マネージャ装置101で付与されたダウンロードおよびインストール対象のパッケージを一意に識別する情報であり、パッケージ情報データ104_1のパッケージID201に対応する。
【0104】
インストール先1604は、エージェントにおけるパッケージのインストール場所を示す情報であり、パッケージ情報データ104_1のインストール先205に対応する。
【0105】
実行状況1605は、パッケージのダウンロード状況あるいはインストール状況を示す情報である。例えば、パッケージダウンロード開始からダウンロード完了(ダウンロード0%以上100%未満)までは「ダウンロード中」と表示され、ダウンロード完了(ダウンロード100%)の場合は「ダウンロード完了」と表示される。また、例えば、パッケージインストール開始からインストール完了(ダウンロード完了後でインストール0%以上100%未満)までは「インストール中」と表示され、インストール完了(インストール100%)の場合は「正常終了」と表示される。
【0106】
インストール日時1606は、インストールが完了(正常終了)した日時を示す情報である。ダウンロード要求ボタン1607は、機器の利用者が押下(タッチ)することにより所望のパッケージのダウンロードをマネージャ装置101に要求するためのボタン表示である。
【0107】
<まとめ>
(i)本実施形態によるジョブ管理システム100は、マネージャ装置101と、複数の機器106aから106nと、を備え、マネージャ装置101から複数の機器106aから106nにパッケージを配布し、当該パッケージをインストールする。ここで、マネージャ装置101は、複数のパッケージのそれぞれのダウンロードを実行させるための、対応する複数のジョブを生成し、当該複数のジョブを複数の機器106aから106nに送信する。一方、複数の機器106aから106nのそれぞれは、複数のジョブの実行および中断を制御するエージェント107aから107nを有する。マネージャ装置101において、複数のジョブのそれぞれに対して実行順位を示す第1優先度が付与される。エージェントは、第1優先度とは異なる第2優先度の情報を外部から受信した(利用者が入出力デバイスを用いて指示する)場合には、第1優先度が示すジョブの実行順位とは関係なく、第2優先度が示すジョブの実行順位に従って複数のジョブの実行を制御する。より具体的に説明すると、マネージャ装置101が、第1ジョブと、第1優先度が第1ジョブよりも低い第2ジョブを複数の機器106aから106nに送信すると、エージェントは、第2ジョブを第1ジョブに優先して実行することを示す第2優先度の情報を受信した場合(利用者によって優先度変更の指示された場合)、第2ジョブを第1ジョブよりも優先して実行し、第2ジョブに対応するパッケージのインストールを先に完了させる。このようにすることにより、エージェント(ネットワーク機器側)主導でジョブ実行を制御することができるので、各ネットワーク機器におけるパッケージインストール状況を反映して効率よくパッケージを各機器に実装することができるようになる。
【0108】
エージェントは、第1ジョブの実行中に第2優先度の情報を受信した場合、第1ジョブの実行を中断し、第2ジョブの実行終了後に第1ジョブの実行を再開する。このようにすることにより、第1ジョブが実行されないままの状態が続くのを防ぐことができる。なお、第1ジョブによるパッケージの所定割合(例えば80%)以上のダウンロードが完了している場合には、エージェントは、第2優先度の情報に関係なく、第2ジョブを実行せずに第1ジョブを引き続き実行する。このようにジョブの実行状況(パッケージのダウンロード状況)を考慮して第2ジョブの実行を優先させるか判断することにより、複数のパッケージダウンロードおよびインストール全体としての効率性を向上させることができる。
【0109】
エージェントは、第2優先度の情報を受信しない場合(利用者によって優先度変更の指示がなかった場合)、第1優先度が付与された複数のジョブのうち、最も高い優先度(優先度高)のジョブが複数あるときには、当該最も高い優先度のジョブに対応するパッケージの属性(例えば、関連パッケージのダウンロード履歴やパッケージの使用頻度など)に基づいてさらに優先順位を付けてジョブを実行するようにしてもよい。このようにすることにより、各ネットワーク機器におけるパッケージの利用状況を考慮してパッケージをインストールすることが可能となる。
【0110】
さらに、エージェントは、パッケージのダウンロードあるいはパッケージのインストールが完了した場合には、ダウンロード完了通知あるいはインストール完了通知をマネージャ装置101に送信するようにダウンロードあるいはインストールを実行したジョブを制御する。そして、マネージャ装置101は、複数の機器に配布したジョブの実行状況を管理するジョブ実行情報(記憶デバイスに保持)を、受信したダウンロード完了通知あるいはインストール完了通知に応じて更新する。このようにすることにより、マネージャ装置101において、用意に各機器106aから106nにおけるジョブ実行状況を容易に把握することが可能となる。
【0111】
(ii)本実施形態の機能は、ソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をシステム或は装置に提供し、そのシステム或は装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本開示を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD-ROM、DVD-ROM、ハードディスク、光ディスク、光磁気ディスク、CD-R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
【0112】
また、プログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータ上のメモリに書きこまれた後、そのプログラムコードの指示に基づき、コンピュータのCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。
【0113】
さらに、実施の形態の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することにより、それをシステム又は装置のハードディスクやメモリ等の記憶手段又はCD-RW、CD-R等の記憶媒体に格納し、使用時にそのシステム又は装置のコンピュータ(又はCPUやMPU)が当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしても良い。
【0114】
最後に、ここで述べたプロセス及び技術は本質的に如何なる特定の装置に関連することはなく、コンポーネントの如何なる相応しい組み合わせによっても実装することができる。さらに、本実施形態では、汎用目的の多様なタイプのデバイスが使用可能である。また、実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の技術を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよいし、異なる構成要素を適宜組み合わせてもよい。本開示は、具体例に関連して記述したが、これらは、すべての観点において限定のためではなく単に本開示の技術を説明するためである。本技術分野における当業者であれば、本開示を実施するのに相応しいハードウェア、ソフトウェア、及びファームウエアの多数の組み合わせを特定することができると考えられる。例えば、記述したソフトウェアは、アセンブラ、C/C++、perl、Shell、PHP、Java(登録商標)等の広範囲のプログラム又はスクリプト言語で実装できる。
【0115】
さらに、上述の実施形態において、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていても良い。
【符号の説明】
【0116】
100 ジョブ管理システム
101 マネージャ装置
102 入出力デバイス
103 通信デバイス
104 資産管理データベース
105 プロセッサ
1051 ジョブ管理部
106aから106n 機器(ネットワーク機器)
107aから107n エージェント1からエージェントn
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16