JP2011238007A - 配信装置、プログラム配信システム、配信方法及びプログラム - Google Patents

配信装置、プログラム配信システム、配信方法及びプログラム Download PDF

Info

Publication number
JP2011238007A
JP2011238007A JP2010108634A JP2010108634A JP2011238007A JP 2011238007 A JP2011238007 A JP 2011238007A JP 2010108634 A JP2010108634 A JP 2010108634A JP 2010108634 A JP2010108634 A JP 2010108634A JP 2011238007 A JP2011238007 A JP 2011238007A
Authority
JP
Japan
Prior art keywords
program
version
update
information
distribution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2010108634A
Other languages
English (en)
Inventor
Naoto Yuki
直人 結城
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2010108634A priority Critical patent/JP2011238007A/ja
Priority to US13/096,840 priority patent/US8615753B2/en
Publication of JP2011238007A publication Critical patent/JP2011238007A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Abstract

【課題】プログラムのインストールや更新による失敗により動作しなくなるデバイスが広がることを効率的に防ぐことを目的とする。
【解決手段】プログラム情報取得手段で取得されたプログラム情報に含まれるデバイス識別情報群に含まれるデバイス識別情報を配信履歴のデバイス識別情報に含み、プログラム情報に含まれる更新前バージョンを配信履歴の更新前バージョンに含み、プログラム情報に含まれる更新後バージョンを配信履歴の更新後バージョンに含む配信履歴を記憶装置より取得する配信履歴取得手段と、配信履歴取得手段で取得された配信履歴に含まれる更新結果がプログラムの更新が成功したことを示している場合、プログラム情報に含まれる更新後バージョンをプログラムデータに追加する追加手段と、プログラムデータを取得要求の応答としてデバイスに返す応答手段と、を有する。
【選択図】図13

Description

本発明は、配信装置、プログラム配信システム、配信方法及びプログラムに関する。
近年、インターネット環境の標準利用や回線速度の向上により、インターネット経由でのソフトウェアのインストールや更新が実行できるようになった。それに伴い、よりソフトウェアをインストール、更新をする機会も増えてきている。
しかしながら、機会が増えることによってインストール対象のデバイスの状態や配信設定のミスにより、配信するソフトウェアが対象のデバイスに正常にインストールできない等の問題が市場で広まりやすくなることが懸念されている。その懸念事項に対して、特許文献1では、配信するソフトウェアのインストールに失敗した場合に、元の環境に戻すことも自動的に実施する方法を提案している。
特開平9―231083号公報
しかしながら、従来技術ではソフトウェアのインストールに失敗した後で元の環境に戻しているが、ソフトウェアの配信にかかる時間が無駄となってしまう。特にソフトウェアのサイズが大きい場合には、配信時間も増加してしまうことになる。
そこで本発明は、ソフトウェア(プログラム)のインストールや更新による失敗により動作しなくなるデバイスが広がることを効率的に防ぐことを目的とする。
そこで、本発明の配信装置は、デバイスの機種を識別する機種情報と、前記機種情報で識別される機種に属するデバイスを識別するデバイス識別情報を複数含むデバイス識別情報群と、前記機種情報で識別される機種に属するデバイスに配信可能なプログラムの更新前のバージョンである更新前バージョンと、前記デバイスに配信可能なプログラムの更新後のバージョンである更新後バージョンと、を関連付けてプログラム情報として記憶装置に保持する保持手段と、プログラムを配信したデバイスを識別するデバイス識別情報と、前記デバイスの更新前のプログラムのバージョンである更新前バージョンと、配信したプログラムのバージョンである更新後バージョンと、前記プログラムの更新が成功したか否かを表す更新結果と、を配信履歴として記憶装置に記憶する配信履歴記憶手段と、デバイスを識別するデバイス識別情報と、前記デバイスで動作しているプログラムのバージョンと、を含む、デバイスに適用可能なプログラムデータの取得要求をデバイスより受け取ると、前記取得要求に含まれるデバイス識別情報を前記保持手段で保持されているデバイス識別情報群に含み、前記取得要求に含まれるバージョンを前記保持手段で保持されている更新前バージョンに含む前記プログラム情報を記憶装置より取得するプログラム情報取得手段と、前記プログラム情報取得手段で取得されたプログラム情報に含まれるデバイス識別情報群に含まれるデバイス識別情報を前記配信履歴のデバイス識別情報に含み、前記プログラム情報に含まれる更新前バージョンを前記配信履歴の更新前バージョンに含み、前記プログラム情報に含まれる更新後バージョンを前記配信履歴の更新後バージョンに含む前記配信履歴を記憶装置より取得する配信履歴取得手段と、前記配信履歴取得手段で取得された配信履歴に含まれる更新結果がプログラムの更新が成功したことを示している場合、前記プログラム情報に含まれる更新後バージョンをプログラムデータに追加する追加手段と、前記プログラムデータを前記取得要求の応答としてデバイスに返す応答手段と、を有する。
本発明によれば、ソフトウェア(プログラム)のインストールや更新による失敗により動作しなくなるデバイスが広がることを効率的に防ぐことができる。
ソフトウェア配信システムのシステム構成の一例を示す図である。 画像形成装置のハードウェア構成の一例を示す図である。 配信サーバ及びデバイス管理サーバのハードウェア構成の一例を示す図である。 デバイス管理サーバが画像形成装置の情報を収集する処理の一例を示すシーケンス図である。 デバイス管理サーバがハードディスクに保持する、画像形成装置のハードウェア情報を格納するテーブルの一例を示す図である。 デバイス管理サーバがハードディスクに保持する画像形成装置で発生したエラー情報を格納するテーブルの一例を示す図である。 ソフトウェアのインストール、ファームウェアの更新をするためのソフトウェア管理画面の一例を示す図である。 更新するファームウェアを選択するための更新ファームウェア選択画面の一例を示す図である。 ファームウェアの更新結果を表示するためのファームウェア更新結果画面の一例を示す図である。 配信サーバが保持する配信可能なファームウェア情報を格納する配信ファームウェアテーブルの一例を示す図である。 配信サーバが保持する配信履歴を格納する配信履歴テーブルの一例を示す図である。 ファームウェアを更新する場合の処理の一例を示すシーケンス図である。 図12の1202で実行する適用可能ファームウェアの算出のために配信サーバが実施する処理の一例を示すフローチャートである。 図13のステップS1306で実行されるファームウェアの更新の可否の判断をする処理の一例を示すフローチャートである。 図12の1205の応答を受信したときの画像形成装置で実施する処理の一例を示すフローチャートである。
以下、本発明の実施形態について図面に基づいて説明する。
<第1の実施の形態>
図1は、ソフトウェア配信システム(プログラム配信システム)のシステム構成の一例を示す図である。
図1では画像形成装置にソフトウェア(プログラム)を配信する配信サーバ101と画像形成装置の情報を管理するデバイス管理サーバ102と画像形成装置103−1乃至103−3がインターネット104で接続されていることを表している。なお、図1では画像形成装置は103−1乃至103−3の3台を記述しているが、任意の台数を接続してもよい。以降、画像形成装置を区別する必要がない場合は画像形成装置103と称する。
図2は、画像形成装置103のハードウェア構成の一例を示す図である。
画像形成装置103は、以下の201乃至213の各部分により構成される。
原稿給送部201は、読み込む原稿を自動的にイメージリーダ202に送る。イメージリーダ(スキャナ)202は、原稿を読み込む。画像形成部203は、読み込んだ原稿及び受信したデータを印刷画像に変換・印刷する。給紙部204は、印刷用の紙を給紙する。NetworkI/F205は、ネットワーク経由でLAN及びインターネットに接続し、外部と情報交換を行う。センサ206は、本装置の各部分の状態を検知する。CPU207は、本装置上の各処理を司る。ハードディスク208は、本装置の各処理に関わるプログラムやデータを記憶する。メモリ209は、本装置の各処理に関わる一時的なデータを電気的に記憶でき、かつ、書き換え可能なメモリである。操作部210は、本装置への指示入力を受け付ける。表示部211は、本装置の動作状況及び操作部210に対する操作に関わる情報を表示する。FAXボード212は、FAXをするために機能を提供する。システムバス213は、201乃至212の各部分を結びつけ、データのやり取りを行う。
CPU207が、ハードディスク208等に記憶されているプログラムに基づき処理を実行することによって、画像形成装置103の機能及び後述する画像形成装置103が実行する処理が実現される。
画像形成装置を販売する際には、商品の提供する機能によって不要なハードウェアを提供しないケースがある。例えば、FAX機能の不要な商品においてFAXボード212をつける必要はなくなる。そのため、FAX機能を提供する画像形成装置103は図2の(A)で表しているようにFAXボード212があるハードウェア構成となる。また、FAX機能を提供しない画像形成装置103は図2の(B)で表しているようにFAXボード212がないハードウェア構成となる。
ここではFAX機能の提供の有無によるFAXボード212の有無だけ説明をしたが、FAXボード212に限らず他のハードウェアであってもよい。
図3は、配信サーバ101及びデバイス管理サーバ102のハードウェア構成の一例を示す図である。
配信サーバ101及びにデバイス管理サーバ102は、以下の301乃至307の各部分により構成される。
表示部301は、ウィンドウ、アイコン、メッセージ、メニュー、その他のユーザインタフェース情報を表示する。操作部302は、キーボード、マウスを利用したエンドユーザの入力を受け付ける。
CPU303は、本装置上の各処理を司る。ハードディスク304は、本装置の各処理に関わるプログラムやデータを記憶する。メモリ305は、本装置の各処理に関わる一時的なデータを電気的に記憶でき、かつ、書き換え可能なメモリである。NetworkI/F306は、ネットワーク経由でLAN及びインターネットに接続し、外部と情報交換を行う。システムバス307は、301乃至306の各部分を結びつけ、データのやり取りを行う。
配信サーバ101のCPU303が、ハードディスク304等に記憶されているプログラムに基づき処理を実行することによって、配信サーバ101の機能及び後述する配信サーバ101が実行する処理が実現される。同様に、デバイス管理サーバ102のCPU303が、ハードディスク304等に記憶されているプログラムに基づき処理を実行することによって、デバイス管理サーバ102の機能及び後述するデバイス管理サーバ102が実行する処理が実現される。
図4は、デバイス管理サーバ102が画像形成装置103の情報を収集する処理の一例を示すシーケンス図である。画像形成装置103は、特定のタイミングで図4のシーケンスの処理を開始する。例えば、画像形成装置103は、1時間に1回の間隔や、エラーが生じた際に、図4のシーケンスの処理を開始する。
画像形成装置103は、401で、デバイス管理サーバ102に対してデバイス情報を送信する。前述のデバイス情報とは、デバイスを構成するハードウェア情報、及びエラーが発生した場合にはエラーの情報(エラー情報)である。
デバイス管理サーバ102は、401で受信したデバイス情報をハードディスク304に保存する。そして、デバイス管理サーバ102は、402で、デバイス情報の登録結果を画像形成装置103に通知する。
画像形成装置103は、402で受信したデバイス情報の登録結果を受けて処理を終了する。
図5は、デバイス管理サーバ102がハードディスク304に保持する、画像形成装置のハードウェア構成を格納するテーブルの一例を示す図である。
ハードウェア構成テーブル501は、画像形成装置のハードウェア構成を格納するテーブルである。
デバイス番号カラム502は、画像形成装置103を一意に識別するためのIDであるデバイス番号を格納するカラムである。デバイス番号は、デバイス識別情報の一例である。
機種カラム503は、画像形成装置103の機種情報を格納するカラムである。
原稿給送部有無カラム504は、画像形成装置103の原稿給送部201の有無を格納するカラムである。
FAXボード有無カラム505は、画像形成装置103のFAXボード212の有無を格納するカラムである。
ハードディスク有無カラム506は、画像形成装置103のハードディスク208の有無を格納するカラムである。
本実施の形式では、ハードウェアとして504乃至506を挙げているがその他のハードウェアであってもよい。
なお、ハードウェア構成テーブル501は、デバイス管理サーバ102によって前述の401で受信したデバイス情報を基にデータが更新される。
なお、本実施形態では、図5に示されるデータの1つの行の情報をハードウェア構成といい、ハードウェア構成に含まれる、原稿給送部、FAXボード、ハードディスク等の情報をハードウェア情報という。
図6は、デバイス管理サーバ102がハードディスク304に保持する画像形成装置で発生したエラー情報を格納するテーブルの一例を示す図である。
エラー情報テーブル601は、デバイス管理サーバ102がハードディスク304に保持する画像形成装置で発生したエラー情報を格納するテーブルである。
エラーNoカラム602は、画像形成装置103で発生したエラー情報を一意に識別するためのIDであるカラムである。
エラー発生デバイス番号カラム603は、エラーが発生した画像形成装置103のデバイス番号を格納するカラムである。
エラーコードカラム604は、発生したエラーのエラーコードを格納するカラムである。
エラー発生日時カラム605は、エラーの発生した日時を格納するカラムである。
なお、エラー情報テーブル601は、デバイス管理サーバ102によって前述の401で受信したデバイス情報を基にデータが更新される。
図7は、ソフトウェアのインストール、ファームウェアの更新をするためのソフトウェア管理画面の一例を示す図である。
ソフトウェア管理画面701は、ユーザが画像形成装置103の操作部210を操作することにより表示部211に表示される画面の一例である。
ソフトウェアインストールボタン702は、ユーザがソフトウェアのインストールを指示するためのボタンである。
ファームウェア更新ボタン703は、ユーザがファームウェアの更新を指示するためのボタンである。
図8は、更新するファームウェアを選択するための更新ファームウェア選択画面の一例を示す図である。図7のファームウェア更新ボタン703が押下されると、図8に示す更新ファームウェア選択画面が表示部211に表示される。
更新ファームウェア選択画面801は、ユーザが更新するファームウェアを選択するための画面である。
ファームウェア選択ラジオボタン802は、更新が可能なファームウェアの一覧を表示するラジオボタンのファームウェア選択ラジオボタンのリストである。
ファームウェア更新開始ボタン803は、ユーザがファームウェアの更新の開始を指示するためのボタンである。
図9は、ファームウェアの更新結果を表示するためのファームウェア更新結果画面の一例を示す図である。図8のファームウェア更新開始ボタン803が押下され、ファームウェアの更新(ファームウェアのバージョンアップ)が成功すると、図9に示すファームウェア更新結果画面が表示部211に表示される。
ファームウェア更新結果画面901は、ファームウェアの更新結果を表示するための画面である。
更新結果ラベル902は、ファームウェアの更新結果を表示するラベルである。
図10は、配信サーバ101が保持する配信可能なファームウェア情報を格納する配信ファームウェアテーブルの一例を示す図である。
配信ファームウェアテーブル1001は、配信サーバ101が保持する配信可能なプログラム情報の一例であるファームウェア情報を格納するテーブルである。
機種カラム1002は、配信対象の機種を格納するカラムである。
デバイス番号カラム1003は、配信対象の機種に属するデバイス番号を記述するカラムである。図10の例ではデバイス番号AAA00000乃至AAA99999とBBB00000乃至BBB99999とが機種C7065に属していることを示している。つまり、デバイス番号カラム1003には、配信対象の機種に属するデバイスのデバイス番号を複数含むデバイス番号群が記憶される。デバイス番号群は、デバイス識別情報群の一例である。
更新前バージョンカラム1004は、ファームウェアの更新前のファームウェアのバージョンを格納するカラムである。
更新後バージョンカラム1005は、ファームウェアの更新後のファームウェアのバージョンを格納するカラムである。
図11は、配信サーバ101が保持する配信履歴を格納する配信履歴テーブルの一例を示す図である。
配信履歴テーブル1101は、配信サーバ101が保持する配信履歴を格納するテーブルである。
配信日時カラム1102は、ファームウェアを配信した日時を格納するカラムである。
配信デバイス番号カラム1103は、ファームウェア配信をした画像形成装置103のデバイス番号を格納するカラムである。
機種カラム1104は、ファームウェア配信をした画像形成装置103の機種を格納する機種カラムである。
更新前バージョンカラム1105は、ファームウェア配信をした画像形成装置103の更新前のファームウェアのバージョンを格納するカラムである。
更新後バージョンカラム1106は、ファームウェア配信をした画像形成装置103の更新後のファームウェアのバージョンを格納するカラムである。
結果カラム1107は、配信した結果を格納するカラムである。
配信時原稿給送部有無カラム1108は、配信したときの画像形成装置103の原稿給送部201の有無を格納するカラムである。
配信時FAXボード有無カラム1109は、配信したときの画像形成装置103のFAXボード212の有無を格納するカラムである。
配信時ハードディスク有無カラム1110は、配信したときの画像形成装置103のハードディスク208の有無を格納するカラムである。
配信時エラーカラム1111は、配信したときの画像形成装置103で発生していたエラーを格納するカラムである。
以降、図12から本実施形態について、シーケンス図とフローチャートとを用いて説明する。
図12は、ファームウェアを更新する場合の処理の一例を示すシーケンス図である。
本シーケンスは、画像形成装置103の表示部211に表示されたソフトウェア管理画面701で、ファームウェア更新ボタン703がクリックされた際に開始されるものである。
1201で、ユーザは、操作部210を用いて、ソフトウェア管理画面でファームウェア更新ボタン703をクリックして、画像形成装置103にファームウェアの更新の開始を通知する。
1202で、画像形成装置103は、自分自身のデバイス番号と現在のファームウェアバージョンとを配信サーバ101に送信してプログラムデータの一例である配信可能ファームウェアリストの提供要求をする。
1202の配信可能ファームウェアリスト提供要求を受け取った配信サーバ101は、適用可能ファームウェアリストを算出して、1205で応答として返す。なお、1203、1204に関しては、後述する図13において説明する。適用可能ファームウェアリストを算出する方法の詳細も同様に、後述する図13において説明する。
1205で、適用可能ファームウェアリストを受信した画像形成装置103は、表示部211に更新ファームウェア選択画面801を表示し、適用可能ファームウェアリストをファームウェア選択ラジオボタン802に表示する。
1206で、ユーザは、操作部210を用いて、1205で表示された更新ファームウェア選択画面801のファームウェア選択ラジオボタン802を選択してファームウェア更新開始ボタン803をクリックする。
1207で、画像形成装置103は、自分自身のデバイス番号と選択されたファームウェア情報とを配信サーバ101に送信してファームウェア提供要求をする。
1208で、配信サーバ101は、1207のファームウェア提供要求を受信したファームウェアを応答として返す。
1209で、画像形成装置103は、1210で受信したファームウェアをハードディスク208に格納をし、ファームウェアの更新処理をする。
1210で、画像形成装置103は、自分自身のデバイス番号とファームウェアの更新結果とを配信サーバ101に通知する。配信サーバ101は、受信したファームウェア更新結果を基に配信履歴テーブルの更新をする。この処理は、配信履歴記憶の処理の一例である。
1211で、配信サーバ101は、画像形成装置103に1206の通知の結果として、配信履歴登録完了通知をする。画像形成装置103は、表示部211にファームウェア更新結果画面901を表示し、ファームウェアの更新結果を更新結果ラベル902に表示する。
図13は、図12の1202で実行する適用可能ファームウェアの算出のために配信サーバ101が実施する処理の一例を示すフローチャートである。このフローチャートは1202の配信可能ファームウェアリスト提供要求を受け取った際に実行される。
ステップS1301で、配信サーバ101のCPU303は、インターネット104を介してNetworkI/F306より画像形成装置103のデバイス番号と現在のファームウェアバージョンを取得し、メモリ305に格納する。
ステップS1302で、CPU303は、ハードディスク304に格納している配信ファームウェアテーブル1001をメモリ305にロードする。そして、CPU303は、ステップS1301で取得したデバイス番号とファームウェアバージョンとが、それぞれデバイス番号カラム1003と更新前バージョンカラム1004とに含まれているレコードのリストである関連付けファームウェアリストを取得する。
ステップS1303で、CPU303は、S1302で取得した関連付けファームウェアリストから未処理のレコードを取得する。ステップS1301〜ステップS1303の処理は、プログラム情報取得の処理の一例である。
ステップS1304で、CPU303は、ハードディスク304に格納している配信履歴テーブル1101をメモリ305にロードする。そして、CPU303は、ステップS1303で取得したレコードの機種カラム1002、更新前バージョンカラム1004、更新後バージョンカラム1005のデータを取得する。そして、CPU303は、取得した機種、更新前バージョン、更新後バージョンが配信履歴テーブル1101の機種カラム1104、更新前バージョンカラム1105、更新後バージョンカラム1106と一致するレコードのリストを取得する。これらの処理は、配信履歴取得の処理の一例である。そして、CPU303は、取得したレコードのリストの結果カラム1107をチェックし、全て成功の場合は、ステップS1308に進み、失敗が1つでもある場合は、ステップS1305に進む。
ステップS1305で、CPU303は、インターネット104を介してNetworkI/F306よりデバイス管理サーバ102へメモリ305に格納したデバイス番号に対するデバイス情報取得要求をする(図12の1203)。デバイス管理サーバ102は、受信したデバイス情報取得要求で渡されたデバイス番号のハードウェア構成をハードウェア構成テーブル501から、エラー情報をエラー情報テーブル601から取得し、デバイス情報取得応答として返す(図12の1204)。そして、配信サーバ101のCPU303は、インターネット104を介してNetworkI/F306よりデバイス情報取得応答1204を受信し、ハードウェア構成とエラー情報とをメモリ305に格納する。ステップS1305の処理は、デバイス情報取得の処理の一例である。
ステップS1306で、CPU303は、ステップS1305で取得したハードウェア構成とエラー情報と配信履歴テーブル1101とを基にファームウェアの更新の可否の判断をする。判断の処理については、図14のフローチャートを用いて説明する。ステップS1306の処理は、判断の処理の一例である。
ステップS1307で、CPU303は、ステップS1306の結果で、ファームウェアの更新を許可する場合には、ステップS1308に進み、許可しない場合には、ステップS1309に進む。
ステップS1308で、CPU303は、S1303で取得したレコードを適用可能ファームウェアリストとしてメモリ305に追加する。ステップS1308の処理は、追加の処理の一例である。
ステップS1309で、CPU303は、ステップS1302でメモリ305にロードした配信ファームウェアテーブル1001で最終的にステップS1303の更新後ファームウェアバージョンになるレコードの組み合わせがあるかどうかを検索する。CPU303は、存在した場合にはステップS1310に進み、存在しない場合にはステップS1312に進む。ステップS1309の処理は、検索の処理の一例である。
ステップS1310で、CPU303は、S1309で検索したレコードの組み合わせがステップS1304でメモリ305にロードした配信履歴テーブル1101の中に配信履歴が成功として記憶されているかどうかを確認する。CPU303は、成功であった場合にはステップS1311に進み、失敗であった場合はステップS1312に進む。ステップS1310の処理は、判定の処理の一例である。
ステップS1311で、CPU303は、ステップS1309で検索したレコードの組み合わせを、複数回の更新により適用可能ファームウェアリストとしてメモリ305に追加する。ステップS1311の処理は、複数回更新追加の処理の一例である。複数回の更新により適用可能ファームウェアリストは、複数回更新プログラムデータの一例である。
ステップS1312で、CPU303は、ステップS1302で取得した関連付けファームウェアリストで未処理であるレコードがないかどうかをチェックし、まだ未処理のレコードがあればステップS1303に戻る。CPU303は、全てのレコードを処理した場合には、ステップS1313に進む。
ステップS1313で、CPU303は、メモリ305に格納されている適用可能ファームウェアリストと複数回の更新により適用可能ファームウェアリストとを、インターネット104を介してNetworkI/F306より画像形成装置103に送信する。そして、CPU303は、図13に示す処理を終了する。ステップS1313の処理は、応答の処理の一例である。
図14は、図13のステップS1306で実行されるファームウェアの更新の可否の判断をする処理の一例を示すフローチャートである。
ステップS1401で、CPU303は、ステップS1301で受信したデバイス番号と同じ機種であり、ステップS1303で取得した更新前と更新後とのバージョンと同じである配信履歴のレコードを配信履歴テーブルから検索し、同機種配信履歴リストとする。
ステップS1402で、CPU303は、ステップS1305で取得したハードウェア構成と同構成の画像形成装置がS1401で取得した同機種配信履歴リストに存在するかどうかをチェックする。CPU303は、存在する場合にはステップS1403に進み、存在しない場合にはステップS1405に進む。
ステップS1403で、CPU303は、ステップS1402で発見した画像形成装置にステップS1305で取得したエラーが全て発生しているかどうかを同機種配信履歴リストでチェックする。CPU303は、エラーが全て発生している場合にはステップS1404に進み、エラーが全て発生していない場合にはステップS1405に進む。
ステップS1404で、CPU303は、ステップS1403で発見した画像形成装置での配信履歴を同機種配信リストで確認し、成功している場合にはステップS1411に進み、失敗している場合にはステップS1412に進む。
ステップS1405で、CPU303は、ステップS1305で取得したハードウェア構成から未処理のハードウェア情報を1つ取得する。例えば、CPU303は、ハードウェア構成に、原稿給送部、FAXボード、ハードでディスク等のハードウェア情報が含まれる場合、未処理のハードウェア情報(例えば「原稿給送部」)を取得する。
ステップS1406で、CPU303は、ステップ1405で取得したハードウェア情報が同じである配信履歴を同機種配信リストから検索をして、全ての配信履歴で更新に失敗しているかどうかを確認する。CPU303は、全て更新に失敗していた場合にはステップS1412に進み、1つでも成功していればステップS1407に進む。
ステップS1407で、CPU303は、未処理のハードウェア情報があるかどうかをチェックし、もしある場合にはステップS1405に戻り、ない場合はステップS1408に進む。
ステップS1408で、CPU303は、ステップS1305で取得したエラー情報から未処理のエラーコードを1つ取得する。
ステップS1409で、CPU303は、ステップ1408で取得したエラーコードが同じである配信履歴を同機種配信リストから検索をして、全ての配信履歴で更新に失敗しているかどうかを確認する。CPU303は、全て更新に失敗していた場合にはステップS1412に進み、1つでも成功していればステップS1410に進む。
ステップS1410で、CPU303は、未処理のエラーコードがあるかどうかをチェックし、未処理のエラーコードがある場合にはステップS1408に戻り、ない場合はステップS1411に進む。
ステップS1411で、CPU303は、ステップS1303で取得した更新前と更新後とのバージョンの組み合わせでの更新を可として結果を返し、図14に示す処理を終了する。
ステップS1412で、CPU303は、ステップS1303で取得した更新前と更新後とのバージョンの組み合わせでの更新を不可として結果を返し、図14に示す処理を終了する。
なお、ネットワーク上に、限定されたデバイス番号しか存在しないことも想定できる。この場合、CPU303は、図13のS1305のデバイス情報の取得の処理をスキップすることもできる。
配信履歴テーブルのデバイス番号には、デバイスが工場出荷時に定められる所定の定数(例えば、顧客ごとに定められる一意の番号)が入力されているものとする、又はデバイス番号は省略されているものとする。つまり、CPU303は、ステップS1401の処理もスキップすることで、S1402以下の処理を実行することもできる。
本実施形態では、更新前のバージョンの制御プログラムの一例としてのファームウェアを説明した。また、本実施形態では、このファームウェアの制御下にて動作するデバイスの一例である画像形成装置103を説明した。更に、本実施形態では、画像形成装置103と通信する配信装置の一例である配信サーバ101を説明した。配信サーバ101は、更新後のバージョンのファームウェアを画像形成装置103に対して送信する。この際、配信サーバ101は、ネットワークインタフェースを介して画像形成装置103にファームウェアを送信する。そして、配信サーバ101は、ファームウェアの更新前のバージョンから更新後のバージョンへのファームウェアの更新が成功したか否かを示す情報を含む配信履歴の一例であるデバイス情報取得応答を、画像形成装置103から受信する。デバイス情報取得応答には、更新前と更新後とのバージョンと同じである配信履歴のレコードが含まれ、これにより、配信サーバ101は、ファームウェアの更新前のバージョンから更新後のバージョンへのファームウェアへの更新が成功したかどうかを判定する。
更に、配信履歴のレコードが、更新前のバージョンから更新後のバージョンへのファームウェアの更新が成功していないことを示している場合、配信サーバ101は、以下の様な処理を実行してもよい。即ち、配信サーバ101は、ファームウェアの更新前のバージョンから更新後のバージョンへのファームウェアの更新を制限するユーザインタフェースの表示情報を、画像形成装置103の操作部や配信サーバ101の表示部において形成するための情報の一例である適用可能ファームウェアリストを形成(S1205)するようにしてもよい。即ち、適用可能ファームウェアリストの中に、更新後のバージョンが含まれていない場合、ファームウェアの更新前のバージョンから更新後のバージョンへのファームウェアの更新を例えば画像形成装置103等のユーザインタフェースにて制限することになる。表示情報においては、単に適用可能ファームウェアリストを含めるだけではなく、更新前のバージョンから更新後のバージョンへのファームウェアの更新が制限されている旨とその理由とを含ませるようにしてもよい。
図15は、図12の1205の応答を受信したときの画像形成装置103で実施する処理の一例を示すフローチャートである。
ステップS1501で、画像形成装置103のCPU207は、インターネット104を介してNetworkI/F205よりステップS1313で返される適用可能ファームウェアリストと複数回の更新により適用可能ファームウェアリストとを受信する。
ステップS1502で、CPU207は、更新ファームウェア選択画面801を生成してメモリ209に保持する。
ステップS1503で、CPU207は、ステップS1501で取得した適用可能ファームウェアの適用後バージョンを、ステップS1502で生成した更新ファームウェア選択画面801のファームウェア選択ラジオボタン802として追加する。
ステップS1504で、CPU207は、ステップS1501で取得した複数回の更新により適用可能ファームウェアの適用後バージョンをステップS1502で生成した更新ファームウェア選択画面801のファームウェア選択ラジオボタン802として追加する。
なお、この際に、CPU207は、ファームウェア選択ラジオボタン802には注意書きとして複数回バージョンアップするという文言を追加する。
ステップS1505で、CPU207は、更新ファームウェア選択画面801を表示部211に表示をする。
以上、本実施形態により、ソフトウェアの更新ができないと判断したものは更新の対象外とすることで、ソフトウェアの更新に失敗する可能性のある組み合わせでソフトウェア配信を防ぐことができる。また、失敗する可能性のあるファームウェアの組み合わせを避け、複数回のソフトウェア更新をすることで目的のバージョンにすることで、より適切なソフトウェア配信を行うことができる。
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
以上、上述した各実施形態によれば、ソフトウェアのインストールや更新による失敗により動作しなくなるデバイスが広がることを効率的に防ぐことができる。
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
例えば、上述した実施形態では、デバイスを識別するデバイス識別情報の一例としてデバイス番号を例に説明を行ったが、例えば、デバイスの機種名とデバイスのオプション構成との組を、デバイスを識別するデバイス識別情報として用いてもよい。

Claims (12)

  1. デバイスの機種を識別する機種情報と、前記機種情報で識別される機種に属するデバイスを識別するデバイス識別情報を複数含むデバイス識別情報群と、前記機種情報で識別される機種に属するデバイスに配信可能なプログラムの更新前のバージョンである更新前バージョンと、前記デバイスに配信可能なプログラムの更新後のバージョンである更新後バージョンと、を関連付けてプログラム情報として記憶装置に保持する保持手段と、
    プログラムを配信したデバイスを識別するデバイス識別情報と、前記デバイスの更新前のプログラムのバージョンである更新前バージョンと、配信したプログラムのバージョンである更新後バージョンと、前記プログラムの更新が成功したか否かを表す更新結果と、を配信履歴として記憶装置に記憶する配信履歴記憶手段と、
    デバイスを識別するデバイス識別情報と、前記デバイスで動作しているプログラムのバージョンと、を含む、デバイスに適用可能なプログラムの一覧であるプログラムデータの取得要求をデバイスより受け取ると、前記取得要求に含まれるデバイス識別情報を前記保持手段で保持されているデバイス識別情報群に含み、前記取得要求に含まれるバージョンを前記保持手段で保持されている更新前バージョンに含む前記プログラム情報を記憶装置より取得するプログラム情報取得手段と、
    前記プログラム情報取得手段で取得されたプログラム情報に含まれるデバイス識別情報群に含まれるデバイス識別情報を前記配信履歴のデバイス識別情報に含み、前記プログラム情報に含まれる更新前バージョンを前記配信履歴の更新前バージョンに含み、前記プログラム情報に含まれる更新後バージョンを前記配信履歴の更新後バージョンに含む前記配信履歴を記憶装置より取得する配信履歴取得手段と、
    前記配信履歴取得手段で取得された配信履歴に含まれる更新結果がプログラムの更新が成功したことを示している場合、前記プログラム情報に含まれる更新後バージョンをプログラムデータに追加する追加手段と、
    前記プログラムデータを前記取得要求の応答としてデバイスに返す応答手段と、
    を有する配信装置。
  2. 前記配信履歴記憶手段は、プログラムを配信したデバイスを識別するデバイス識別情報と、前記デバイスの更新前のプログラムのバージョンである更新前バージョンと、配信したプログラムのバージョンである更新後バージョンと、前記プログラムの更新が成功したか否かを表す更新結果と、更に、プログラムを配信したときのデバイスのハードウェア構成と、プログラムを配信したときのデバイスで発生していたエラー情報を配信履歴として記憶装置に記憶し、
    前記配信履歴取得手段で取得された配信履歴に含まれる更新結果がプログラムの更新が成功したことを示していない場合、前記取得要求に含まれるデバイス識別情報を含むデバイス情報の取得要求を前記複数のデバイスのデバイス情報を管理するデバイス管理装置に送信し、デバイス情報として前記デバイス識別情報のデバイスのハードウェア構成と前記デバイスで発生したエラー情報とを取得するデバイス情報取得手段と、
    前記デバイス情報取得手段で取得されたデバイス情報と、前記配信履歴取得手段で取得された配信履歴と、に基づいて、前記デバイスに対するプログラムの更新を許可するか否か判断する判断手段と、
    を更に有し、
    前記追加手段は、前記判断手段でプログラムの更新を許可すると判断された場合、前記配信履歴に含まれる更新後バージョンをプログラムデータに追加する請求項1記載の配信装置。
  3. 前記判断手段でプログラムの更新を許可しないと判断された場合、前記配信履歴取得手段で取得された配信履歴の中から、前記プログラムデータの取得要求に含まれるバージョンから複数回、プログラムを更新することによって前記プログラム情報に含まれる更新後バージョンに更新することができる配信履歴の組み合わせを検索する検索手段と、
    前記検索手段で前記組み合わせを検索し、検索の結果として前記組み合わせが取得された場合、取得された組み合わせの配信履歴に含まれる前記更新結果に基づいて、前記配信履歴の中に、プログラムの更新に失敗したことを表す更新結果を含む配信履歴が存在するか否かを判定する判定手段と、
    前記判定手段でプログラムの更新に失敗したことを表す更新結果を含む配信履歴が存在しないと判定された場合、前記組み合わせの配信履歴に関する更新後バージョンの組み合わせを複数回更新プログラムデータに追加する複数回更新追加手段と、
    を更に有し、
    前記応答手段は、前記プログラムデータと、前記複数回更新プログラムデータと、を前記プログラムデータの取得要求の応答としてデバイスに返す請求項2記載の配信装置。
  4. 前記判断手段は、前記デバイス情報取得手段で取得されたデバイス情報に含まれるハードウェア構成と、前記配信履歴取得手段で取得された配信履歴に含まれるハードウェア構成と、が一致するか否かを判断し、一致すると判断した場合、前記配信履歴に含まれるエラー情報と同じエラー情報が、前記デバイス情報に含まれるエラー情報に含まれるか否か判断し、含まれると判断した場合、前記配信履歴に含まれる更新結果がプログラムの更新が成功したことを示しているか否かを判断し、前記更新結果がプログラムの更新が成功したことを示している場合、プログラムの更新を許可すると判断し、前記更新結果がプログラムの更新が失敗したことを示している場合、プログラムの更新を許可しないと判断する請求項2又は3記載の配信装置。
  5. 前記判断手段は、前記デバイス情報取得手段で取得されたデバイス情報に含まれるハードウェア構成と、前記配信履歴取得手段で取得された配信履歴に含まれるハードウェア構成と、が一致するか否かを判断し、一致しないと判断した場合、前記デバイス情報取得手段で取得されたハードウェア構成に含まれるハードウェア情報に基づき、前記ハードウェア情報を有する全ての配信履歴の更新結果がプログラムの更新に失敗したことを表すか否かを判断し、前記ハードウェア情報を有する全ての配信履歴の更新結果がプログラムの更新に失敗したことを表していない場合、前記デバイス情報取得手段で取得されたエラー情報に基づき、前記エラー情報を有する全ての配信履歴の更新結果がプログラムの更新に失敗したことを表すか否かを判断し、前記エラー情報を有する全ての配信履歴の更新結果がプログラムの更新に失敗したことを表していない場合、プログラムの更新を許可すると判断し、前記ハードウェア情報を有する少なくとも一つ以上の配信履歴の更新結果がプログラムの更新に失敗したことを表している場合、又は前記エラー情報を有する少なくとも一つ以上の配信履歴の更新結果がプログラムの更新に失敗したことを表している場合、プログラムの更新を許可しないと判断する請求項2乃至4何れか1項記載の配信装置。
  6. 配信装置と、複数のデバイスと、を含むプログラム配信システムであって、
    前記配信装置は、
    デバイスの機種を識別する機種情報と、前記機種情報で識別される機種に属するデバイスを識別するデバイス識別情報を複数含むデバイス識別情報群と、前記機種情報で識別される機種に属するデバイスに配信可能なプログラムの更新前のバージョンである更新前バージョンと、前記デバイスに配信可能なプログラムの更新後のバージョンである更新後バージョンと、を関連付けてプログラム情報として記憶装置に保持する保持手段と、
    プログラムを配信したデバイスを識別するデバイス識別情報と、前記デバイスの更新前のプログラムのバージョンである更新前バージョンと、配信したプログラムのバージョンである更新後バージョンと、前記プログラムの更新が成功したか否かを表す更新結果と、を配信履歴として記憶装置に記憶する配信履歴記憶手段と、
    デバイスを識別するデバイス識別情報と、前記デバイスで動作しているプログラムのバージョンと、を含む、デバイスに適用可能なプログラムデータの取得要求をデバイスより受け取ると、前記取得要求に含まれるデバイス識別情報を前記保持手段で保持されているデバイス識別情報群に含み、前記取得要求に含まれるバージョンを前記保持手段で保持されている更新前バージョンに含む前記プログラム情報を記憶装置より取得するプログラム情報取得手段と、
    前記プログラム情報取得手段で取得されたプログラム情報に含まれるデバイス識別情報群に含まれるデバイス識別情報を前記配信履歴のデバイス識別情報に含み、前記プログラム情報に含まれる更新前バージョンを前記配信履歴の更新前バージョンに含み、前記プログラム情報に含まれる更新後バージョンを前記配信履歴の更新後バージョンに含む前記配信履歴を記憶装置より取得する配信履歴取得手段と、
    前記配信履歴取得手段で取得された配信履歴に含まれる更新結果がプログラムの更新が成功したことを示している場合、前記プログラム情報に含まれる更新後バージョンをプログラムデータに追加する追加手段と、
    前記プログラムデータを前記取得要求の応答としてデバイスに返す応答手段と、
    を有し、
    前記デバイスは、
    デバイスの画面を介したプログラムの更新の指示に応じて、前記デバイスを識別するデバイス識別情報と、前記デバイスで動作しているプログラムのバージョンと、を含む、デバイスに適用可能なプログラムデータの取得要求を前記配信装置に送信する送信手段と、
    前記取得要求の応答として前記配信装置より前記プログラムデータを受信すると、前記プログラムデータに含まれる前記更新後バージョンをデバイスの画面に表示する表示手段と、
    を有するプログラム配信システム。
  7. 配信装置が実行する配信方法であって、
    デバイスの機種を識別する機種情報と、前記機種情報で識別される機種に属するデバイスを識別するデバイス識別情報を複数含むデバイス識別情報群と、前記機種情報で識別される機種に属するデバイスに配信可能なプログラムの更新前のバージョンである更新前バージョンと、前記デバイスに配信可能なプログラムの更新後のバージョンである更新後バージョンと、を関連付けてプログラム情報として記憶装置に保持する保持ステップと、
    プログラムを配信したデバイスを識別するデバイス識別情報と、前記デバイスの更新前のプログラムのバージョンである更新前バージョンと、配信したプログラムのバージョンである更新後バージョンと、前記プログラムの更新が成功したか否かを表す更新結果と、を配信履歴として記憶装置に記憶する配信履歴記憶ステップと、
    デバイスを識別するデバイス識別情報と、前記デバイスで動作しているプログラムのバージョンと、を含む、デバイスに適用可能なプログラムデータの取得要求をデバイスより受け取ると、前記取得要求に含まれるデバイス識別情報を前記保持ステップで保持されているデバイス識別情報群に含み、前記取得要求に含まれるバージョンを前記保持ステップで保持されている更新前バージョンに含む前記プログラム情報を記憶装置より取得するプログラム情報取得ステップと、
    前記プログラム情報取得ステップで取得されたプログラム情報に含まれるデバイス識別情報群に含まれるデバイス識別情報を前記配信履歴のデバイス識別情報に含み、前記プログラム情報に含まれる更新前バージョンを前記配信履歴の更新前バージョンに含み、前記プログラム情報に含まれる更新後バージョンを前記配信履歴の更新後バージョンに含む前記配信履歴を記憶装置より取得する配信履歴取得ステップと、
    前記配信履歴取得ステップで取得された配信履歴に含まれる更新結果がプログラムの更新が成功したことを示している場合、前記プログラム情報に含まれる更新後バージョンをプログラムデータに追加する追加ステップと、
    前記プログラムデータを前記取得要求の応答としてデバイスに返す応答ステップと、
    を有する配信方法。
  8. 配信装置と、複数のデバイスと、を含むプログラム配信システムにおける配信方法であって、
    前記配信装置が、デバイスの機種を識別する機種情報と、前記機種情報で識別される機種に属するデバイスを識別するデバイス識別情報を複数含むデバイス識別情報群と、前記機種情報で識別される機種に属するデバイスに配信可能なプログラムの更新前のバージョンである更新前バージョンと、前記デバイスに配信可能なプログラムの更新後のバージョンである更新後バージョンと、を関連付けてプログラム情報として記憶装置に保持する保持ステップと、
    前記配信装置が、プログラムを配信したデバイスを識別するデバイス識別情報と、前記デバイスの更新前のプログラムのバージョンである更新前バージョンと、配信したプログラムのバージョンである更新後バージョンと、前記プログラムの更新が成功したか否かを表す更新結果と、を配信履歴として記憶装置に記憶する配信履歴記憶ステップと、
    前記配信装置が、デバイスを識別するデバイス識別情報と、前記デバイスで動作しているプログラムのバージョンと、を含む、デバイスに適用可能なプログラムデータの取得要求をデバイスより受け取ると、前記取得要求に含まれるデバイス識別情報を前記保持ステップで保持されているデバイス識別情報群に含み、前記取得要求に含まれるバージョンを前記保持ステップで保持されている更新前バージョンに含む前記プログラム情報を記憶装置より取得するプログラム情報取得ステップと、
    前記配信装置が、前記プログラム情報取得ステップで取得されたプログラム情報に含まれるデバイス識別情報群に含まれるデバイス識別情報を前記配信履歴のデバイス識別情報に含み、前記プログラム情報に含まれる更新前バージョンを前記配信履歴の更新前バージョンに含み、前記プログラム情報に含まれる更新後バージョンを前記配信履歴の更新後バージョンに含む前記配信履歴を記憶装置より取得する配信履歴取得ステップと、
    前記配信装置が、前記配信履歴取得ステップで取得された配信履歴に含まれる更新結果がプログラムの更新が成功したことを示している場合、前記プログラム情報に含まれる更新後バージョンをプログラムデータに追加する追加ステップと、
    前記配信装置が、前記プログラムデータを前記取得要求の応答としてデバイスに返す応答ステップと、
    前記デバイスが、デバイスの画面を介したプログラムの更新の指示に応じて、前記デバイスを識別するデバイス識別情報と、前記デバイスで動作しているプログラムのバージョンと、を含む、デバイスに適用可能なプログラムデータの取得要求を前記配信装置に送信する送信ステップと、
    前記デバイスが、前記取得要求の応答として前記配信装置より前記プログラムデータを受信すると、前記プログラムデータに含まれる前記更新後バージョンを画面に表示する表示ステップと、
    を有する配信方法。
  9. コンピュータを、
    デバイスの機種を識別する機種情報と、前記機種情報で識別される機種に属するデバイスを識別するデバイス識別情報を複数含むデバイス識別情報群と、前記機種情報で識別される機種に属するデバイスに配信可能なプログラムの更新前のバージョンである更新前バージョンと、前記デバイスに配信可能なプログラムの更新後のバージョンである更新後バージョンと、を関連付けてプログラム情報として記憶装置に保持する保持手段と、
    プログラムを配信したデバイスを識別するデバイス識別情報と、前記デバイスの更新前のプログラムのバージョンである更新前バージョンと、配信したプログラムのバージョンである更新後バージョンと、前記プログラムの更新が成功したか否かを表す更新結果と、を配信履歴として記憶装置に記憶する配信履歴記憶手段と、
    デバイスを識別するデバイス識別情報と、前記デバイスで動作しているプログラムのバージョンと、を含む、デバイスに適用可能なプログラムデータの取得要求をデバイスより受け取ると、前記取得要求に含まれるデバイス識別情報を前記保持手段で保持されているデバイス識別情報群に含み、前記取得要求に含まれるバージョンを前記保持手段で保持されている更新前バージョンに含む前記プログラム情報を記憶装置より取得するプログラム情報取得手段と、
    前記プログラム情報取得手段で取得されたプログラム情報に含まれるデバイス識別情報群に含まれるデバイス識別情報を前記配信履歴のデバイス識別情報に含み、前記プログラム情報に含まれる更新前バージョンを前記配信履歴の更新前バージョンに含み、前記プログラム情報に含まれる更新後バージョンを前記配信履歴の更新後バージョンに含む前記配信履歴を記憶装置より取得する配信履歴取得手段と、
    前記配信履歴取得手段で取得された配信履歴に含まれる更新結果がプログラムの更新が成功したことを示している場合、前記プログラム情報に含まれる更新後バージョンをプログラムデータに追加する追加手段と、
    前記プログラムデータを前記取得要求の応答としてデバイスに返す応答手段と、
    して機能させるプログラム。
  10. 更新前のバージョンの制御プログラムの制御下にて動作するデバイスと通信する配信装置であって、
    更新後のバージョンの制御プログラムを前記デバイスに対して送信する送信手段と、
    前記制御プログラムの更新前のバージョンから更新後のバージョンへの制御プログラムの更新が成功したか否かを示す情報を含む配信履歴を前記デバイスから受信する受信手段と、
    前記配信履歴が、更新前のバージョンから更新後のバージョンへの制御プログラムの更新が成功していないことを示している場合に、前記プログラムの更新前のバージョンから更新後のバージョンへのプログラムの更新を制限するユーザインタフェースの表示情報を形成する形成手段と、
    を有する配信装置。
  11. 更新前のバージョンの制御プログラムの制御下にて動作するデバイスと通信する配信装置が実行する配信方法であって、
    更新後のバージョンの制御プログラムを前記デバイスに対して送信する送信ステップと、
    前記制御プログラムの更新前のバージョンから更新後のバージョンへの制御プログラムの更新が成功したか否かを示す情報を含む配信履歴を前記デバイスから受信する受信ステップと、
    前記配信履歴が、更新前のバージョンから更新後のバージョンへの制御プログラムの更新が成功していないことを示している場合に、前記プログラムの更新前のバージョンから更新後のバージョンへのプログラムの更新を制限するユーザインタフェースの表示情報を形成する形成ステップと、
    を有する配信方法。
  12. 更新前のバージョンの制御プログラムの制御下にて動作するデバイスと通信するコンピュータを、
    更新後のバージョンの制御プログラムを前記デバイスに対して送信する送信手段と、
    前記制御プログラムの更新前のバージョンから更新後のバージョンへの制御プログラムの更新が成功したか否かを示す情報を含む配信履歴を前記デバイスから受信する受信手段と、
    前記配信履歴が、更新前のバージョンから更新後のバージョンへの制御プログラムの更新が成功していないことを示している場合に、前記プログラムの更新前のバージョンから更新後のバージョンへのプログラムの更新を制限するユーザインタフェースの表示情報を形成する形成手段と、
    して機能させるプログラム。
JP2010108634A 2010-05-10 2010-05-10 配信装置、プログラム配信システム、配信方法及びプログラム Pending JP2011238007A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010108634A JP2011238007A (ja) 2010-05-10 2010-05-10 配信装置、プログラム配信システム、配信方法及びプログラム
US13/096,840 US8615753B2 (en) 2010-05-10 2011-04-28 Distribution apparatus, method and system for updated version of firmware

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010108634A JP2011238007A (ja) 2010-05-10 2010-05-10 配信装置、プログラム配信システム、配信方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2011238007A true JP2011238007A (ja) 2011-11-24

Family

ID=44902839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010108634A Pending JP2011238007A (ja) 2010-05-10 2010-05-10 配信装置、プログラム配信システム、配信方法及びプログラム

Country Status (2)

Country Link
US (1) US8615753B2 (ja)
JP (1) JP2011238007A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013130923A (ja) * 2011-12-20 2013-07-04 Canon Inc 画像処理装置、サーバ装置、情報処理方法及びプログラム
JP2014049084A (ja) * 2012-09-04 2014-03-17 Canon Inc 情報処理装置、画像形成装置、情報処理方法、アップデート方法及びプログラム
JP2015501998A (ja) * 2011-12-16 2015-01-19 マイクロソフト コーポレーション アップデートをデバイスへ予想して送るためのデバイスのパフォーマンス情報の検出およびマイニング
JP2017033147A (ja) * 2015-07-30 2017-02-09 キヤノン株式会社 配信システム、配信方法及びプログラム
JP2017130001A (ja) * 2016-01-20 2017-07-27 大日本印刷株式会社 発行装置管理システム、制御端末、制御端末プログラム、管理装置及び管理装置プログラム
JP2018124749A (ja) * 2017-01-31 2018-08-09 京セラドキュメントソリューションズ株式会社 電子機器、バージョンチェックシステム及びバージョンチェックプログラム
JP2021073540A (ja) * 2014-05-27 2021-05-13 レスメド・インコーポレイテッド 遠隔呼吸治療装置の管理
JP7415091B1 (ja) 2023-03-24 2024-01-16 三菱電機株式会社 プログラム、プログラム管理装置、プログラム管理システム、およびプログラム管理方法

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011253417A (ja) * 2010-06-03 2011-12-15 Ricoh Co Ltd 情報処理装置、プログラム導入支援方法、及びプログラム導入支援プログラム
JP5392203B2 (ja) * 2010-08-19 2014-01-22 株式会社リコー 情報処理装置、情報処理システム、インストール支援方法、及びインストール支援プログラム
JP6044148B2 (ja) * 2011-08-03 2016-12-14 株式会社リコー 通信制御装置、情報管理システム、情報管理装置、通信制御プログラム、及び情報管理プログラム
US9626379B1 (en) * 2011-09-22 2017-04-18 Amazon Technologies, Inc. Optimistic commit processing for an offline document repository
JP5812840B2 (ja) * 2011-12-13 2015-11-17 キヤノン株式会社 画像形成装置、ネットワークシステム及び画像形成装置の制御方法
CN105100021B (zh) * 2014-05-20 2021-03-16 西安中兴新软件有限责任公司 一种设备管理会话的触发方法、设备及系统
US10120678B2 (en) * 2016-11-15 2018-11-06 Dell Products, L.P. Firmware update control mechanism using organizational groups
JP6737169B2 (ja) * 2016-12-26 2020-08-05 京セラドキュメントソリューションズ株式会社 バージョンチェックシステム及びバージョンチェック方法
JP7218508B2 (ja) * 2018-06-22 2023-02-07 コニカミノルタ株式会社 画像形成装置、サーバー、画像形成装置の制御プログラム、およびサーバーの制御プログラム
US11513785B2 (en) * 2020-06-03 2022-11-29 Dell Products L.P. Knowledge base for predicting success rate of life cycle management
CN113434484A (zh) * 2021-06-29 2021-09-24 青岛海尔科技有限公司 描述设备的功能的方法、系统、装置与电子装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3082830B2 (ja) 1996-02-28 2000-08-28 日本電気株式会社 分散システムにおけるソフトウェア導入方式
US6282700B1 (en) * 1998-05-21 2001-08-28 Hewlett Packard Company Mechanism for maintaining revisions of objects in flash memory
AU2001294677A1 (en) * 2000-09-22 2002-04-02 Patchlink.Com Corporation Non-invasive automatic offsite patch fingerprinting and updating system and method
US20030182414A1 (en) * 2003-05-13 2003-09-25 O'neill Patrick J. System and method for updating and distributing information
US6832373B2 (en) * 2000-11-17 2004-12-14 Bitfone Corporation System and method for updating and distributing information
US7243347B2 (en) * 2002-06-21 2007-07-10 International Business Machines Corporation Method and system for maintaining firmware versions in a data processing system
US7984435B2 (en) * 2002-11-13 2011-07-19 Hewlett-Packard Development Company, L.P. Update system employing reference software to reduce number of update packages
WO2004086196A2 (en) * 2003-03-24 2004-10-07 Bitfone Corporation Electronic device supporting multiple update agents
US8166101B2 (en) * 2003-08-21 2012-04-24 Microsoft Corporation Systems and methods for the implementation of a synchronization schemas for units of information manageable by a hardware/software interface system
US7734690B2 (en) * 2003-09-05 2010-06-08 Microsoft Corporation Method and apparatus for providing attributes of a collaboration system in an operating system folder-based file system
US8225304B2 (en) * 2004-03-23 2012-07-17 Kabushiki Kaisha Toshiba System and method for remotely securing software updates of computer systems
US7552431B2 (en) * 2004-08-31 2009-06-23 Microsoft Corporation Multiple patching in a single installation transaction
US7703090B2 (en) * 2004-08-31 2010-04-20 Microsoft Corporation Patch un-installation
EP1803062A1 (en) * 2004-09-20 2007-07-04 Sony Computer Entertainment Inc. Methods and apparatus for distributing software applications
US7562358B2 (en) * 2004-10-04 2009-07-14 United Parcel Service Of America, Inc. Controlled deployment of software in a web-based architecture
JP5038163B2 (ja) * 2008-01-07 2012-10-03 キヤノン株式会社 配信装置、システム、情報処理方法及びプログラム
US8151256B2 (en) * 2008-01-31 2012-04-03 Oracle America, Inc. Platform independent registry framework
US8316224B2 (en) * 2009-08-31 2012-11-20 Red Hat, Inc. Systems and methods for tracking a history of changes associated with software packages and configuration management in a computing system
US8185704B2 (en) * 2009-09-02 2012-05-22 International Business Machines Corporation High performance real-time read-copy update

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015501998A (ja) * 2011-12-16 2015-01-19 マイクロソフト コーポレーション アップデートをデバイスへ予想して送るためのデバイスのパフォーマンス情報の検出およびマイニング
US10979290B2 (en) 2011-12-16 2021-04-13 Microsoft Technology Licensing, Llc Discovery and mining of performance information of a device for anticipatorily sending updates to the device
JP2013130923A (ja) * 2011-12-20 2013-07-04 Canon Inc 画像処理装置、サーバ装置、情報処理方法及びプログラム
JP2014049084A (ja) * 2012-09-04 2014-03-17 Canon Inc 情報処理装置、画像形成装置、情報処理方法、アップデート方法及びプログラム
JP2021073540A (ja) * 2014-05-27 2021-05-13 レスメド・インコーポレイテッド 遠隔呼吸治療装置の管理
JP7150801B2 (ja) 2014-05-27 2022-10-11 レスメド・インコーポレイテッド 遠隔呼吸治療装置の管理
JP2022177260A (ja) * 2014-05-27 2022-11-30 レスメド・インコーポレイテッド 患者装置を更新する方法およびシステム
US11752286B2 (en) 2014-05-27 2023-09-12 Resmed Inc. Remote respiratory therapy device management
JP2017033147A (ja) * 2015-07-30 2017-02-09 キヤノン株式会社 配信システム、配信方法及びプログラム
JP2017130001A (ja) * 2016-01-20 2017-07-27 大日本印刷株式会社 発行装置管理システム、制御端末、制御端末プログラム、管理装置及び管理装置プログラム
JP2018124749A (ja) * 2017-01-31 2018-08-09 京セラドキュメントソリューションズ株式会社 電子機器、バージョンチェックシステム及びバージョンチェックプログラム
JP7415091B1 (ja) 2023-03-24 2024-01-16 三菱電機株式会社 プログラム、プログラム管理装置、プログラム管理システム、およびプログラム管理方法

Also Published As

Publication number Publication date
US8615753B2 (en) 2013-12-24
US20110276956A1 (en) 2011-11-10

Similar Documents

Publication Publication Date Title
JP2011238007A (ja) 配信装置、プログラム配信システム、配信方法及びプログラム
US9003388B2 (en) Information processing apparatus and update process support system
US8891121B2 (en) Information processing system for resetting of configuration data
US10015326B2 (en) Image forming apparatus, automatic installation method for efficiently installing an image forming apparatus, and storage medium
US10892956B2 (en) Device management server, control method for the same, and medium
US8792111B2 (en) Image processing apparatus, information processing method, and storage medium
US10809993B2 (en) System, management device, information processing device, control method for management device, control method for information processing device, and computer-readable storage medium
US20120303493A1 (en) Information processing apparatus, ordering system, and order management method
EP2595368A2 (en) Management device, information processing system, management method, and storage medium
JP6581418B2 (ja) 配信システム、配信方法及びプログラム
US10621311B2 (en) Information processing apparatus, method, and storage medium
US20130174270A1 (en) License install support system, license install support method
US20150180953A1 (en) Network system, distribution system, control method, and storage medium
JP2010152710A (ja) プログラム配信サーバ、画像形成装置、プログラム配信システム、および契約書統合方法
US20170024202A1 (en) Information processing apparatus, method, and program
JP2013145504A (ja) 配信サーバ、監視装置、画像処理装置、および配信サーバの制御方法、およびプログラム
JP2017191352A (ja) システム、及び、システムの制御方法
JP2019121298A (ja) 情報処理装置及びプログラム
JP2017076857A (ja) 管理装置、情報処理装置、管理装置の制御方法、情報処理装置の制御方法、及びプログラム
CN113411225B (zh) 基于云主机的qga服务管理方法、装置、设备及介质
JP6740037B2 (ja) ソフトウェア配信システム、及びそのソフトウェア配信方法
JP2015106314A (ja) 構成管理システム、構成管理システムの制御方法、およびプログラム
JP2005044000A (ja) リモートアンインストールシステム、サーバ装置、クライアント装置、リモートアンインストール方法、プログラム、リモートインストールシステムおよびリモートインストール方法
US20150331645A1 (en) Device management apparatus, information processing system, and information processing method
JP2010271780A (ja) ライセンス転送システム、ライセンス転送方法、およびライセンス転送プログラム