(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0008】
[アプリケーション管理システムの全体説明]
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
図1は、本実施の形態に係るアプリケーション管理システムの概略構成の一例を示す図である。本実施の形態に係るアプリケーション管理システムでは、ネットワーク4を介して、サーバ1がアプリケーション管理装置の一例としての管理端末3と接続される。また、本実施の形態に係るアプリケーション管理システムでは、ネットワーク5を介して、管理端末3が複数の画像処理装置と接続されるが、ここでは、簡単のため、画像処理装置として2台のデバイス2(デバイス2Aおよびデバイス2B)を考えるものとする。
【0009】
サーバ1は、デバイス2で実行されるアプリケーション、即ち、デバイス2において画像形成機能等の各種機能を実現するためのアプリケーションを格納する。以下では、単にアプリケーションと称する場合には、デバイス2で実行されるアプリケーションを指すものとする。そして、サーバ1は、サーバ1が保持するアプリケーションが記述されたリスト(以下、第1リストと称することがある)を保持している。この第1リストには、アプリケーションに加えて、各アプリケーションをインストール可能なデバイス2の対象機種や、各アプリケーションを実行するための対象ファームウェアのバージョン等も記述される。本実施の形態では、第1情報の一例として、第1リストが使用される。第1リストの詳細については、
図3(a)で説明する。
【0010】
デバイス2は、例えば、電子写真方式やインクジェット方式により、記録媒体に画像を形成する機能等を有する画像処理装置である。上記のように、デバイス2では、アプリケーションの実行により画像形成機能等の各種機能が実現される。そして、デバイス2は、自装置にインストールされて保持するアプリケーションが記述されたリスト(以下、第2リストと称することがある)を保持している。つまり、デバイス2Aは、デバイス2Aにインストールされたアプリケーションが記述された第2リストを保持し、デバイス2Bは、デバイス2Bにインストールされたアプリケーションが記述された第2リストを保持している。また、第2リストには、アプリケーションに加えて、各アプリケーションを実行するためにデバイス2が保持するファームウェアのバージョン等も記述される。本実施の形態では、第2情報の一例として、第2リストが使用される。第2リストの詳細については、
図3(b)で説明する。
【0011】
管理端末3は、詳しくは後述するが、デバイス2のアプリケーションを管理する装置であり、ネットワーク4を介してサーバ1からアプリケーションを取得し、取得したアプリケーションを、ネットワーク5を介してデバイス2に出力する。管理端末3がデバイス2にアプリケーションを出力することで、デバイス2では、アプリケーションのインストールや、新しいバージョンのアプリケーションへのアップデート等の処理が実行される。
【0012】
通信回線の一例としてのネットワーク4は、サーバ1と管理端末3との間の情報通信に用いられる通信手段であり、例えば、インターネットや公衆回線である。また、ネットワーク5は、デバイス2と管理端末3との間の情報通信に用いられる通信手段であり、例えば、LAN(Local Area Network)である。本実施の形態では、サーバ1は、デバイス2とは異なるエリアに設置されているものとし、サーバ1とデバイス2との間では直接通信は行われず、管理端末3を介して通信が行われる。
【0013】
[管理端末の機能構成の説明]
次に、管理端末3の機能構成について説明する。
図2は、本実施の形態に係る管理端末3の機能構成例を示したブロック図である。
管理端末3は、サーバ1から第1リストを取得し、デバイス2から第2リストを取得するリスト取得部31と、第1リストおよび第2リストを格納するリスト格納部32と、第1リストと第2リストとを比較するリスト比較部33とを備える。
【0014】
また、管理端末3は、サーバ1が保持するアプリケーションに対する処理内容を表示し、表示内容に対するユーザからの操作入力を受け付ける表示部34と、サーバ1からアプリケーションを取得するアプリケーション取得部35と、デバイス2にアプリケーションを出力するアプリケーション出力部36と、サーバ1から取得したアプリケーションを格納するアプリケーション格納部37とを備える。
【0015】
取得手段の一例としてのリスト取得部31は、ネットワーク4を介してサーバ1から第1情報の一例としての第1リストを取得し、ネットワーク5を介してデバイス2から第2情報の一例としての第2リストを取得する。ここで、リスト取得部31は、例えば、デバイス2のアプリケーションを管理するためのソフトウェア(以下、管理ソフトウェアと称することがある)が管理端末3上でユーザにより実行されると、サーバ1から第1リストを取得する。また、リスト取得部31は、管理ソフトウェアへのユーザの操作入力により、アプリケーションのインストールやアップデートを実行するデバイス2が選択されると、選択されたデバイス(以下、選択デバイスと称することがある)から第2リストを取得する。そして、リスト取得部31は、取得した第1リストおよび第2リストを、リスト格納部32およびリスト比較部33に送信する。
【0016】
また、リスト取得部31は、予め定められた時期、例えば、定期的に、ネットワーク4を介してサーバ1から第1リストを取得する。そして、リスト取得部31は、取得した第1リストをリスト格納部32に送信するとともにリスト格納部32からデバイス2の各デバイスの第2リストを取得し、取得した第1リストおよび第2リストをリスト比較部33に送信する。
【0017】
情報格納手段の一例としてのリスト格納部32は、リスト取得部31から送信された第1リストおよび第2リストを格納する。ここで、リスト格納部32は、リスト取得部31から第1リストが送信された際にすでに第1リストを格納していれば、第1リストの更新を行う。また、リスト格納部32は、リスト取得部31から第2リストが送信された際に、すでに同一のデバイス2の第2リストを格納していれば、そのデバイス2における第2リストの更新を行う。そして、管理ソフトウェアの実行が終了すると、リスト格納部32は、格納している第1リストおよび第2リストを削除する。
【0018】
特定手段の一例としてのリスト比較部33は、リスト取得部31から送信された第1リストと第2リストとを比較する。ここで、ユーザの操作入力により選択された選択デバイスの第2リストが送信された場合、リスト比較部33は、第1リストの各アプリケーションについて、第2リストに記述されたアプリケーションと比較する。そして、リスト比較部33は、サーバ1が保持するアプリケーションのうち、選択デバイスが保持しないアプリケーションや選択デバイスが保持するがバージョンが異なるアプリケーションを特定する(以下、ここで特定されたアプリケーションを特定アプリケーションと称することがある)。
【0019】
即ち、リスト比較部33は、第1リストの各アプリケーションについて、第2リストに記述されているか否か、第2リストに記述されている場合にはバージョンが異なるか否か等の第1リストの各アプリケーションに関する情報(以下、第1アプリ情報と称することがある)を取得する。そして、リスト比較部33は、取得した第1アプリ情報を表示部34に送信する。この第1アプリ情報には、第1リストの各アプリケーションについて、選択デバイスが各アプリケーションのインストール対象機種であるか否か、選択デバイスが各アプリケーションの対象ファームウェアを保持しているか否か等の情報も含まれる。
【0020】
また、リスト比較部33は、予め定められた時期にリスト取得部31から第1リストおよびデバイス2の各デバイスの第2リストが送信された場合、第1リストの各アプリケーションについて、各デバイスの第2リストに記述されたアプリケーションと比較する。そして、リスト比較部33は、サーバ1が保持するアプリケーションのうち、アプリケーション格納部37にも格納されているがアプリケーション格納部37に格納されているものよりバージョンが新しいアプリケーション(以下、新規アプリケーションと称することがある)を特定する。即ち、リスト比較部33は、第1リストに記述されたアプリケーションのうち、第2リストのいずれかに記述されており第2リストのアプリケーションよりバージョンが新しいものを新規アプリケーションとして特定する。そして、リスト比較部33は、特定した新規アプリケーションのアプリケーション名やバージョン等の情報(以下、第2アプリ情報と称することがある)をアプリケーション取得部35に送信する。
【0021】
受け付け手段の一例としての表示部34は、リスト比較部33から送信された第1アプリ情報に基づいて、サーバ1が保持するアプリケーションに対する処理内容を表示し、表示内容に対するユーザからの操作入力を受け付ける。ここで、表示部34は、サーバ1が保持するアプリケーションのうち選択デバイスが保持しないアプリケーションである特定アプリケーション、即ち、第1リストに記述されているが第2リストに記述されていないアプリケーションについて、選択デバイスにインストールすることをユーザに選択させる表示を行う。
【0022】
また、表示部34は、サーバ1が保持するアプリケーションのうち選択デバイスが保持するが選択デバイスのものよりバージョンが新しいアプリケーションである特定アプリケーション、即ち、第2リストに記述されているものよりバージョンが新しい第1リストのアプリケーションについて、選択デバイスに出力して選択デバイスのアプリケーションをアップデートすることをユーザに選択させる表示を行う。ここで、表示部34は、ユーザがアプリケーションを削除することも選択できるように、アップデートの表示とともに、選択デバイスのアプリケーションを削除することをユーザに選択させる表示も行う。
【0023】
さらに、表示部34は、選択デバイスが保持するがサーバ1のものよりバージョンが新しいまたは同一のアプリケーション、即ち、第2リストに記述されているが第1リストに記述されたものよりバージョンが新しいまたは同一のアプリケーションについて、選択デバイスのアプリケーションを削除することをユーザに選択させる表示を行う。ユーザは、選択デバイスのアプリケーションを削除する必要があると判断した場合に、選択により削除することができる。
【0024】
そして、表示部34は、表示内容に対するユーザからの操作入力を受け付けると、受け付けた入力内容をアプリケーション取得部35に送信する。上記の表示部34の表示内容については、
図4で詳細に説明する。
【0025】
判定手段、出力手段の一例としてのアプリケーション取得部35は、表示部34から送信されたユーザからの入力内容や、予め定められた時期にリスト比較部33から送信される第2アプリ情報に基づいて、サーバ1またはアプリケーション格納部37からアプリケーションを取得する。ここで、表示部34で、特定アプリケーションを選択デバイスに保持させるためのインストールまたはアップデートの処理を実行する操作入力が受け付けられた場合、アプリケーション取得部35は、リスト格納部32からデバイス2の各デバイスの第2リストを取得する。そして、アプリケーション取得部35は、第2リストをもとに、特定アプリケーションが他のデバイス2で実行されるアプリケーションとして、既にアプリケーション格納部37に格納されているか否かを判定する。
【0026】
そして、アプリケーション取得部35は、特定アプリケーションがアプリケーション格納部37に格納されていると判定した場合には、アプリケーション格納部37から特定アプリケーションを取得して、取得した特定アプリケーションをアプリケーション出力部36に送信する。一方、アプリケーション取得部35は、特定アプリケーションがアプリケーション格納部37に格納されていないと判定した場合には、サーバ1から特定アプリケーションを取得して、取得した特定アプリケーションをアプリケーション格納部37に格納させるとともにアプリケーション出力部36に送信する。
【0027】
また、表示部34で、選択デバイスのアプリケーションの削除を行う操作入力が受け付けられた場合、アプリケーション取得部35は、アプリケーションの削除を行う通知をアプリケーション出力部36に送信する。
【0028】
さらに、アプリケーション取得部35は、予め定められた時期にリスト比較部33から第2アプリ情報が送信された場合、第2アプリ情報に基づいて新規アプリケーションをサーバ1から取得する。そして、アプリケーション取得部35は、取得した新規アプリケーションをアプリケーション格納部37に格納させて、格納されているアプリケーションの更新を行う。
【0029】
出力手段の一例としてのアプリケーション出力部36は、特定アプリケーションを選択デバイスに追加するインストールの処理や、特定アプリケーションと選択デバイスが保持するアプリケーションとを入れ替えてバージョンを更新するアップデートの処理のために、アプリケーション取得部35から送信された特定アプリケーションを選択デバイスに出力する。また、アプリケーション出力部36は、アプリケーション取得部35から送信されたアプリケーションの削除を行う通知を選択デバイスに出力する。
【0030】
格納手段の一例としてのアプリケーション格納部37は、アプリケーション取得部35から送信されるアプリケーションを格納する。また、アプリケーション格納部37は、管理ソフトウェアの実行が終了すると、格納しているアプリケーションを削除する。
【0031】
[アプリケーションが記述されたリストの説明]
次に、アプリケーションが記述されている第1リストおよび第2リストについて説明する。
図3(a)は、本実施の形態に係る第1リストの一例を示した図である。
図3(a)に示す第1リストには、アプリケーションA〜Eが記述されており、サーバ1はアプリケーションA〜Eを保持している。そして、各アプリケーションに対して、アプリケーションのバージョン、アプリケーションをインストール可能なデバイス2の対象機種、アプリケーションを実行可能な対象ファームウェアのバージョンが記述されている。本実施の形態では、アプリケーションに対応するソフトウェアの一例として、ファームウェアが使用される。
【0032】
具体的には、アプリケーションA〜Eのバージョンはそれぞれ、1.5.0、1.0.8、2.3.0、2.0.2、1.0.0である。また、アプリケーションA〜Eの対象機種は、アプリケーションA〜Dでは機種A、アプリケーションEでは機種Bである。さらに、アプリケーションA〜Eの対象ファームウェアのバージョンはそれぞれ、1.0.x.x、1.x.x.x、2.x.x.x、2.0.x.x、1.0.0.0である。ファームウェアのバージョンに用いられるxは、0〜9までのどの数字でも良いことを表している。例えば、バージョン「1.0.x.x」では、1.0.0.0のバージョンのファームウェアも含まれ、1.0.9.9のバージョンのファームウェアも含まれる。
【0033】
図3(b)は、本実施の形態に係る第2リストの一例を示した図である。
図3(b)に示す第2リストにはアプリケーションA〜Cが記述されており、この第2リストを保持する選択デバイスは、アプリケーションA〜Cを保持している。そして、各アプリケーションに対して、アプリケーションのバージョン、アプリケーションを実行するためにデバイス2が保持するファームウェアのバージョンが記述されている。具体的には、アプリケーションA〜Cのバージョンはそれぞれ、1.5.0、1.0.0、1.8.3である。また、アプリケーションA〜Cのそれぞれに対応するファームウェアとしてデバイス2が保持するファームウェアのバージョンは、1.0.9.2、1.0.0.0、1.5.2.3である。
【0034】
[表示部の表示内容の説明]
次に、表示部34の表示内容について説明する。
図4は、表示部34に表示される表示内容の一例を説明するための図である。
図4に示す表示内容は、リスト比較部33が
図3(a)に示す第1リストと
図3(b)に示す第2リストとを比較して得た第1アプリ情報に基づいて表示される内容の一例である。
【0035】
アプリケーションAについて、サーバ1、選択デバイスにおけるバージョンは1.5.0で同一である(
図3(a)(b)参照)。この場合、表示部34には「削除」のボタンが表示され、ユーザが「削除」ボタンを選択すると、選択デバイスのアプリケーションAは削除される。
アプリケーションBについて、サーバ1、選択デバイスにおけるバージョンはそれぞれ1.0.8、1.0.0であり(
図3(a)(b)参照)、サーバ1におけるバージョンの方が新しい。そのため、表示部34には「アップデート」のボタンが表示され、ユーザが「アップデート」ボタンを選択すると、選択デバイスのアプリケーションBが、サーバ1が保持するバージョン1.0.8のアプリケーションBにアップデートされる。ここで、
図4に示すように、表示部34には、アプリケーションBを削除するための「削除」ボタンも合わせて表示される。
【0036】
アプリケーションCについて、サーバ1、選択デバイスにおけるバージョンはそれぞれ2.3.0、1.8.3であり(
図3(a)(b)参照)、サーバ1におけるバージョンの方が新しい。そのため、表示部34には「アップデート」のボタンが表示される。ただし、アプリケーションCの対象ファームウェアのバージョンは、2.x.x.xであり、選択デバイスにおけるファームウェアのバージョンは1.5.2.3である(
図3(a)(b)参照)。即ち、選択デバイスは、保持しているファームウェアを用いてバージョン「2.3.0」のアプリケーションCを実行することができないため、ファームウェアのアップデートが必要となる。そのため、表示部34には、「アップデート」のボタンが表示されるとともに、アプリケーションCをアップデートするための事前作業としてファームウェアをアップデートする必要のあることを通知するメッセージ等、ファームウェアをアップデートすることを促す表示が行われる。
【0037】
アプリケーションDおよびEは、選択デバイスが保持していないアプリケーションであり、対象機種はそれぞれ「機種A」「機種B」である(
図3(a)(b)参照)。例えば、選択デバイスの機種が機種Aであるとすると、アプリケーションDをインストールすることはできるが、アプリケーションEをインストールすることはできない。この場合、アプリケーションDにおいては、「インストール」のボタンが表示され、ユーザが「インストール」ボタンを選択すると、アプリケーションDが選択デバイスにインストールされる。ここで、選択デバイスがアプリケーションに対応するファームウェア自体を保持していない場合やファームウェアのアップデートをする必要のある場合には、アプリケーションCに対する処理と同様に、表示部34はファームウェアのインストールやアップデートをすることを促す表示を行う。
一方、アプリケーションEを選択デバイスにインストールすることはできないため、表示部34は、アプリケーションEが選択デバイスに対して未対応である旨の表示を行う。
【0038】
[インストール・アップデートの処理手順の説明]
次に、デバイス2においてアプリケーションのインストールやアップデートを実行する際の管理端末3の動作について説明する。
図5(
図5−1、
図5−2)は、本実施の形態に係るデバイス2に対する管理端末3による処理手順の一例を示したフローチャートである。初期状態として、ユーザは管理ソフトウェアを起動しているものとする。そして、管理ソフトウェアの起動により、リスト取得部31はサーバ1から第1リストを取得して、リスト格納部32およびリスト比較部33に送信されているものとする。
【0039】
まず、ユーザからの操作入力によりデバイス2が選択されると、リスト取得部31は選択された選択デバイスから第2リストを取得し、リスト格納部32およびリスト比較部33に送信する(ステップ101)。そして、リスト比較部33は、リスト取得部31から送信された第1リストと第2リストとを比較する(ステップ102)。ここでは、リスト比較部33は、第1リストに記述されたアプリケーションを1つ選択し、第2リストに記述されたアプリケーションと比較する。そして、リスト比較部33は、選択した第1リストのアプリケーションに関する第1アプリ情報を取得し、取得した第1アプリ情報を表示部34に送信する。
【0040】
第1アプリ情報の取得では、まず、リスト比較部33は、第1リストに記述されたアプリケーションが第2リストに記述されているか否かを判断する(ステップ103)。アプリケーションが第2リストに記述されていない場合(ステップ103でYes)、次に、リスト比較部33は、選択デバイスがアプリケーションの対象機種であるか否かを判断する(ステップ104)。選択デバイスがアプリケーションの対象機種である場合(ステップ104でYes)、さらに、リスト比較部33は、選択デバイスがアプリケーションに対応する対象ファームウェアを保持しているか否かを判断する(ステップ105)。選択デバイスがアプリケーションに対応するファームウェアを保持していれば(ステップ105でYes)、表示部34は、リスト比較部33から送信された第1アプリ情報に基づき、その第1リストのアプリケーションについて「インストール」ボタンを表示する(ステップ106)。ステップ106の処理の後、後述するステップ114に移行する。
【0041】
一方、選択デバイスが対象ファームウェアを保持しておらず、ファームウェアのインストールやアップデートをする必要のある場合(ステップ105でNo)、アプリケーションのインストールの事前に対象ファームウェアが必要である。そのため、表示部34は、リスト比較部33から送信された第1アプリ情報に基づき、ファームウェアのインストールやアップデートをすることを促す表示を行う。(ステップ107)。また、選択デバイスがアプリケーションの対象機種でない場合(ステップ104でNo)、表示部34は、リスト比較部33から送信された第1アプリ情報に基づき、その第1リストのアプリケーションについて「未対応」と表示する(ステップ108)。ステップ108の処理の後、後述するステップ114に移行する。
【0042】
また、ステップ103で否定の判断(No)がされた場合、即ち、アプリケーションが第1リストと第2リストの両方に記述されている場合、リスト比較部33は、第1リストのアプリケーションのバージョンの方が新しいか否かを判断する(ステップ109)。第1リストのアプリケーションのバージョンの方が新しければ(ステップ109でYes)、リスト比較部33は、次に、選択デバイスがアプリケーションに対応する対象ファームウェアを保持しているか否かを判断する(ステップ110)。選択デバイスが対象ファームウェアを保持していれば(ステップ110でYes)、表示部34は、リスト比較部33から送信された第1アプリ情報に基づき、その第1リストのアプリケーションについて「アップデート」ボタンおよび「削除」ボタンを表示する(ステップ111)。ステップ111の処理の後、後述するステップ114に移行する。
【0043】
一方、選択デバイスが対象ファームウェアを保持しておらず、ファームウェアのアップデートをする必要のある場合(ステップ110でNo)、アプリケーションのインストールの事前に対象ファームウェアが必要である。そのため、表示部34は、リスト比較部33から送信された第1アプリ情報に基づき、ファームウェアのアップデートをすることを促す表示を行う(ステップ112)。また、ステップ109で否定の判断(No)がされた場合、即ち、第2リストのアプリケーションのバージョンの方が新しいかまたは同一バージョンであれば、表示部34は、リスト比較部33から送信された第1アプリ情報に基づき、その第1リストのアプリケーションについて「削除」ボタンを表示する(ステップ113)。ステップ113の処理の後、後述するステップ114に移行する。
【0044】
そして、リスト比較部33により、第1リストの全てのアプリケーションについて比較が完了すれば(ステップ114でYes)、表示部34は第1リストの全アプリケーションに対しての表示を行い、表示部34はユーザからの各ボタンに対する操作入力を受け付ける(ステップ115)。一方、第1リストのアプリケーションでまだ比較されていないアプリケーションが存在すれば(ステップ114でNo)、ステップ102に移行する。
【0045】
次に、表示部34がユーザによる「インストール」ボタンまたは「アップデート」ボタンの操作入力を受け付けると(ステップ116でYes)、アプリケーション取得部35は、特定アプリケーションが他のデバイス2で実行されるアプリケーションとして既にアプリケーション格納部37に格納されているか否かを判定する(ステップ117)。アプリケーション取得部35は、特定アプリケーションがアプリケーション格納部37に格納されていると判定した場合(ステップ117でYes)、アプリケーション格納部37から特定アプリケーションを取得して、取得した特定アプリケーションをアプリケーション出力部36に送信する。そして、アプリケーション出力部36は送信された特定アプリケーションを選択デバイスに出力し(ステップ118)、本処理フローは終了する。
【0046】
一方、アプリケーション取得部35は、特定アプリケーションがアプリケーション格納部37に格納されていないと判定した場合(ステップ117でNo)、サーバ1から特定アプリケーションを取得する(ステップ119)。そして、アプリケーション取得部35は、取得した特定アプリケーションをアプリケーション格納部37に格納させるとともにアプリケーション出力部36に送信する。そして、ステップ118に移行し、アプリケーション出力部36は特定アプリケーションを選択デバイスに出力して本処理フローは終了する。選択デバイスに特定アプリケーションが送信されることで、選択デバイスではアプリケーションのインストールやアップデートが行われる。
【0047】
ここで、一例として、上記のステップ115乃至119の処理において、例えば、ユーザにより「インストール」ボタンが選択され、アプリケーション取得部35がサーバ1から取得した後に選択デバイスに出力された特定アプリケーションを、特定アプリケーションAと称することとする。そして、ステップ118においてアプリケーション出力部36が特定アプリケーションAを選択デバイスに出力する処理が終了した後、管理ソフトウェアへのユーザからの操作入力により、さらに他の選択デバイスが選択されたものとする。この場合、上記フローの処理が再度開始され、ステップ101乃至ステップ114の処理が実行される。即ち、サーバ1の第1リストと他の選択デバイスの第2リストとの比較が行われ、表示部34は第1リストの全アプリケーションに対して「インストール」ボタンや「アップデート」ボタン等の表示を行う。
【0048】
次に、例えば、特定アプリケーションAについてユーザが「インストール」ボタンを選択すると、アプリケーション取得部35は、特定アプリケーションAがアプリケーション格納部37に格納されているか否かを判定する。この場合、選択デバイスへの出力のために、特定アプリケーションAはすでにアプリケーション格納部37に格納されている。そのため、アプリケーション取得部35は、特定アプリケーションAをサーバ1から取得することなく、アプリケーション格納部37に格納されている特定アプリケーションAをアプリケーション出力部36に送信する。そして、アプリケーション出力部36は、他の選択デバイスへ特定アプリケーションAを出力することとなる。
【0049】
フローチャートの説明に戻り、表示部34が「インストール」ボタンまたは「アップデート」ボタンではなく、「削除」ボタンの操作入力を受け付けると(ステップ116でNo)、アプリケーション取得部35は、アプリケーションの削除を行う通知をアプリケーション出力部36に送信する。そして、アプリケーション出力部36は、アプリケーションの削除を行う通知を選択デバイスに出力し(ステップ120)、本処理フローは終了する。選択デバイスは、削除を行う通知を受信すると、通知に対応するアプリケーションの削除を実行する。
【0050】
また、選択デバイスにおいて、アプリケーションのインストールやアップデート、削除等の処理が実行された場合、選択デバイスは実行された処理内容に基づいて第2リストを更新する。そして、選択デバイスは更新した第2リストを管理端末3に送信し、更新された第2リストが管理端末3のリスト格納部32に格納される。そのため、次にユーザにより同一のデバイス2が選択された場合には、ステップ101において、リスト取得部は、そのデバイス2から第2リストを取得せずにリスト格納部32から第2リストを取得することとしても良い。
【0051】
以上のように、管理端末3の管理ソフトウェアでユーザによりデバイス2が選択されると、選択されたデバイス2においてアプリケーションのインストールやアップデート等の処理が実行される。ここで、管理端末3が、インストールやアップデートに用いられるアプリケーションを保持する場合には、管理端末3はサーバ1からアプリケーションを取得せずに、直接デバイス2にアプリケーションを出力する。即ち、管理端末3は、サーバ1から1度取得したアプリケーションについては、再度取得することなくデバイス2に出力し、アプリケーションのインストールやアップデートが実行されるため、サーバ1への負荷やサーバ1と管理端末3との間のネットワーク4への負荷が低減される。
【0052】
[アプリケーションの更新手順の説明]
次に、管理端末3が保持するアプリケーションを更新する際の管理端末3の動作について説明する。
図6は、本実施の形態に係る管理端末3が保持するアプリケーションを更新する手順の一例を示したフローチャートである。この管理端末3による動作は、予め定められた時期、例えば、定期的に行われる。
【0053】
リスト取得部31は、サーバ1から第1リストを取得する(ステップ201)。そして、リスト取得部31は、取得した第1リストをリスト格納部32に送信する。また、リスト取得部31は、リスト格納部32からデバイス2の各デバイスの第2リストを取得し、取得した第1リストおよび第2リストをリスト比較部33に送信する。リスト比較部33は、リスト取得部31から送信された第1リストおよびデバイス2の各デバイスの第2リストを比較する(ステップ202)。ここで、リスト比較部33は、第1リストに記述されたアプリケーションを1つ選択して第2リストに記述されたアプリケーションと比較し、第2リストのいずれかに記述されており第2リストのアプリケーションのバージョンよりも新しいアプリケーションであるか否かを判断する(ステップ203)。
【0054】
第1リストのアプリケーションのバージョンの方が新しいと判断された場合(ステップ203でYes)、リスト比較部33は、選択した第1リストのアプリケーションである新規アプリケーションに関する第2アプリ情報をアプリケーション取得部35に送信する。そして、アプリケーション取得部35は、第2アプリ情報に基づいてサーバ1から新規アプリケーションを取得し、取得した新規アプリケーションをアプリケーション格納部37に格納させてアプリケーションの更新を行う(ステップ204)。一方、第1リストのアプリケーションのバージョンの方が古いまたは同一バージョンと判断された場合(ステップ203でNo)、アプリケーション取得部35はサーバ1からアプリケーションを取得しない。
【0055】
そして、リスト比較部33により、第1リストの全てのアプリケーションについて比較が完了すれば、本処理フローは終了する(ステップ205でYes)。一方、第1リストのアプリケーションでまだ比較されていないアプリケーションが存在すれば(ステップ205でNo)、ステップ202に移行する。
【0056】
以上のように、管理端末3は、予め定められた時期にサーバ1から第1リストを取得し、デバイス2の各デバイスの第2リストと比較して、アプリケーション格納部37に格納されているアプリケーションの更新を行う。そのため、管理端末3は、サーバ1が保持する最新のバージョンのアプリケーションを保持することができる。そして、例えば、
図5に示す例のように、選択デバイスに対してアプリケーションのインストールやアップデートが実行される場合、管理端末3は、最新のバージョンのアプリケーションをデバイス2に出力する。
【0057】
また、
図6に示す例では、アプリケーション格納部37に格納されているアプリケーションを更新すれば処理が終了することとしたが、これに限られるものではない。例えば、さらに、リスト比較部33が比較により得た第2アプリ情報等を表示部34に送信し、表示部34が第1リストの各アプリケーションに対する処理内容を表示するような構成にしても良い。このような構成にすることで、表示部34の表示内容に対してユーザが操作入力を行えば、デバイス2において、アプリケーションのインストールやアップデート等の処理を実行させることができる。また、例えば、管理端末3は、ユーザの操作入力に関係なく、自動的に、取得した新規アプリケーションをデバイス2に出力することとしても良い。このような構成にすることで、管理端末3は、ユーザの操作を必要とせずに、自動的にデバイス2が保持するアプリケーションを最新のバージョンのものに更新する。
【0058】
また、本実施の形態において、管理ソフトウェアの実行が終了すると、アプリケーション格納部37は格納するアプリケーションを削除し、リスト格納部32は格納する第1リストおよび第2リストを削除することとしたが、これに限られるものではない。例えば、管理ソフトウェアが管理している全てのデバイス2がユーザに選択され、アプリケーションのインストールやアップデート等の処理が完了した時点で、アプリケーション格納部37はアプリケーションを格納しておく必要はないとしてアプリケーションを削除することとしても良い。このような構成にすることで、管理端末3に設けられたデータの格納領域が効率良く活用される。
【0059】
また、本実施の形態において、リスト比較部33は、第1リストの各アプリケーションについて、選択デバイスが各アプリケーションのインストール対象機種であるか否かを判定し、表示部34は、選択デバイスに対して未対応であるアプリケーションについては未対応である旨の表示を行うこととしたが、これに限られるものではない。例えば、表示部34は、未対応であるアプリケーションについて、ユーザが処理内容を選択する画面上に表示させずに、ユーザがそのアプリケーションに対する処理を選択できないような構成にしても良い。
【0060】
また、例えば、リスト比較部33は、選択デバイスが各アプリケーションのインストール対象機種であるか否かの判定を行わないこととしても良い。この場合、表示部34は、アプリケーションのインストール対象機種ではない選択デバイスに対しても「インストール」ボタンの表示を行う。そして、「インストール」ボタンが選択され実際にインストール処理が実行された結果、インストールに失敗すれば、選択デバイスがインストール対象機種ではないメッセージ等が表示される。
【0061】
また、本実施の形態において、アプリケーションのインストールまたはアップデートの事前作業としてファームウェアのインストールまたはアップデートをする必要がある場合にはその旨を表示することとしたが、これに限られるものではない。例えば、ファームウェアのインストールまたはアップデートを実行するボタンが表示され、ユーザによりボタンが選択されるとファームウェアのインストールやアップデートの処理が行われるような構成にしても良い。また、例えば、ユーザによりアプリケーションの「インストール」ボタンや「アップデート」ボタンが選択されると、同時にアプリケーションに対応するファームウェアのインストールやアップデートも実行されるような構成にしても良い。
【0062】
[ハードウェア構成の説明]
次に、管理端末3におけるハードウェア構成について説明する。
図7は、本実施の形態に係る管理端末3のハードウェア構成の一例を示した図である。
図示するように、管理端末3は、演算処理を行うCPU(Central Processing Unit)41と、記憶領域であるメインメモリ42及び磁気ディスク装置(HDD:Hard Disk Drive)43とを備える。ここで、CPU41は、OS(Operating System)等の各種ソフトウェアを実行する。メインメモリ42は、各種ソフトウェアやその実行に用いるデータ等を記憶する記憶部であり、磁気ディスク装置43は、
図2に示す管理端末3の各機能を実現するためのプログラムを記憶する記憶部である。そして、このプログラムがメインメモリ42にロードされ、このプログラムに基づく処理がCPU41により実行されることで、各機能が実現される。更に、管理端末3は、外部との通信を行うための通信I/F44を備える。
【0063】
具体的には、管理端末3において、CPU41が行う指示により、第1リストおよび第2リストの取得、第1リストと第2リストとの比較、アプリケーションの取得等が行われる。また、アプリケーション出力部36は、例えば、通信I/F44により実現される。さらに、リスト格納部32、アプリケーション格納部37は、例えば、磁気ディスク装置43により実現される。
【0064】
[プログラムの説明]
以上説明を行った本実施の形態における管理端末3が行う処理は、例えば、アプリケーションソフトウェア等のプログラムとして用意される。
【0065】
よって、管理端末3が行う処理は、コンピュータに、自装置に接続された画像処理装置で実行されるアプリケーションについて、通信回線を介して自装置に接続されたサーバが保持するアプリケーションに関する第1情報をサーバから取得し、画像処理装置が保持するアプリケーションに関する第2情報を画像処理装置から取得する機能と、取得された第1情報および第2情報に基づいて、サーバが保持するアプリケーションのうち画像処理装置が保持しないアプリケーション、または、画像処理装置が保持するが版が異なるアプリケーションを特定する機能と、特定されたアプリケーションである特定アプリケーションが、自装置に接続された他の画像処理装置で実行されるアプリケーションとして既に記憶部に記憶されているか否かを判定する機能と、特定アプリケーションが記憶部に記憶されていると判定された場合、特定アプリケーションを画像処理装置に出力し、特定アプリケーションが記憶部に記憶されていないと判定された場合、サーバから特定アプリケーションを取得して、取得した特定アプリケーションを記憶部に記憶させるとともに画像処理装置に出力する機能とを実現させるためのプログラム、として捉えることもできる。
【0066】
なお、本発明の実施の形態を実現するプログラムは、通信手段により提供することはもちろん、CD−ROM等の記録媒体に格納して提供することも可能である。