JP2015041355A - ネットワークシステム、配信システム、制御方法、及びプログラム - Google Patents

ネットワークシステム、配信システム、制御方法、及びプログラム Download PDF

Info

Publication number
JP2015041355A
JP2015041355A JP2013173647A JP2013173647A JP2015041355A JP 2015041355 A JP2015041355 A JP 2015041355A JP 2013173647 A JP2013173647 A JP 2013173647A JP 2013173647 A JP2013173647 A JP 2013173647A JP 2015041355 A JP2015041355 A JP 2015041355A
Authority
JP
Japan
Prior art keywords
software
controller
information
image forming
forming apparatus
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.)
Granted
Application number
JP2013173647A
Other languages
English (en)
Other versions
JP6173123B2 (ja
Inventor
尚志 中本
Hisashi Nakamoto
尚志 中本
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 JP2013173647A priority Critical patent/JP6173123B2/ja
Priority to US14/452,676 priority patent/US20150058401A1/en
Publication of JP2015041355A publication Critical patent/JP2015041355A/ja
Application granted granted Critical
Publication of JP6173123B2 publication Critical patent/JP6173123B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

【課題】複数のコントローラを利用可能なデバイスにおけるソフトウェアの組み合わせを管理し、ソフトウェア配信処理のパフォーマンスを向上させるネットワークシステムを提供すること。【解決手段】ネットワークシステムの画像形成装置131は、画像形成装置131が備える第1のコントローラに対応するクライアント機能として、第1のコントローラに係るソフトウェア情報と、第2のコントローラに係るソフトウェア情報とを、配信システム133に対して通知し、適用すべきソフトウェアを配信システムから取得する。配信システム133は、画像形成装置131からの通知に第2のコントローラに係るソフトウェア情報が含まれていた場合に、第1のコントローラに係るソフトウェアの中から一部のソフトウェアを管理対象から除外して、画像形成装置131のソフトウェア情報を管理する。【選択図】図1

Description

本発明は、画像形成装置と当該画像形成装置にソフトウェアを配信する配信システムを備えるネットワークシステムに関する。
画像処理などの機能を提供するデバイスは、画像処理機能の向上や、障害が生じた場合に、デバイスに搭載されたコントローラが使用する、ファームウェアを含むソフトウェアのアップデートを行う。アップデート方法としては、インターネット経由で配信サーバが配信を行う方法、USBやイントラネットを介してアップデートツールを使用する方法などが挙げられる。配信サーバを利用する場合は、デバイスの管理者やソフトウェアを配信するサービスマンがWeb画面で配信対象のデバイスを指定し、配信日時を設定して、インターネット経由で配信を行う。配信サーバは、数万台のデバイスに対してリモートでソフトウェアを配信したり、週一回の頻度で定期的にソフトウェアをアップデートする場合もある。
特許文献1は、ソフトウェアの更新時に保守要員による入替え作業を不要とするシステムを開示している。このシステムでは、クライアント端末が該端末の利用開始時に適用すべきモジュールのバージョンの設定ファイルを配信システムから取得する。そして、クライアント端末は、バージョンの設定ファイルで指定されるバージョンとクライアント端末に適用されているソフトウェアのバージョンとを比較する。クライアント端末は、更新が必要と判定したときは適用すべきソフトウェアを配信システムから自動で取得する。
デバイスが提供する機能を拡大するため、デバイスに予め搭載された第1のコントローラとは別に、第2のコントローラが接続されることを想定する。第2のコントローラは、例えばデバイスに搭載された第1のコントローラとは製造元が異なる。製造元が異なることにより、例えば製造社毎に特色のある高度な画像処理機能を提供することが可能となる。例えば、コントローラの性能に応じて、用紙坪量や用紙サイズ、後処理方法などを考慮して、印刷時間のほか用紙補給や消耗品交換などのタイミングを予測することが可能となるので、印刷ジョブを効率よく処理し、ダウンタイムの最少化を図ることができる。また、デバイスの立面操作部に大きく操作しやすいディスプレイなどを接続できる。
一方、第2のコントローラが接続されることで、デバイスの機能が縮退される場合がある。一般的に、デバイスに搭載された第1のコントローラがコピー、プリントなどの主要機能の制御及び、フィニッシャ、FAX等のアクセサリの制御を司る。しかし、第2のコントローラが接続されることで、第1のコントローラの機能から、第2のコントローラが制御する機能と重複する機能やコントローラの特性による機能コンフリクトにより不要となる機能は縮退される。
例えば、デバイスは液晶の操作部を備えているが、第2のコントローラが接続されることで、第1のコントローラにより操作部は制御されず、第2のコントローラによりディスプレイが制御される。また、第2のコントローラが接続されることにより、従来、第1のコントローラで行われるPDL(page description language)変換も縮退され、第2のコントローラで行われる。PDLとは、ページ記述言語と呼ばれ、コンピュータ上で作成された文書や画像などを印刷する際に、プリンタへの出力イメージを記述してプリンタに対して指示する言語のことである。更に、第2のコントローラが接続されることにより、第1のコントローラのボックス機能も縮退される。ボックス機能とは、パソコンで出力指示をしたデータやデバイスで読み込ませた画像、ファクス受信データ等を本体に保存しておくことが出来る機能である。
特許第4882291号
上述したデバイス構成のように、第2のコントローラが接続されたことにより、重複する機能や、コントローラの特性による機能コンフリクトにより不要となる機能に関するソフトウェアの配信管理は不要となる。しかし、現状の配信サーバでは不要となるソフトウェアについて判断できない。
また、配信サーバが管理するデバイスのソフトウェアは、第1のコントローラのソフトウェアと、アクセサリのソフトウェアである。第2のコントローラは、第2のコントローラのソフトウェアと、第2のコントローラのソフトウェアを実行するためのOSをPCにインストールし、デバイスと接続して使用する。従って、第2のコントローラのモジュールは配信サーバのサポート対象外である。
第2のコントローラが、デバイスに接続されることで、デバイス全体のモジュール数が増えるため、第1のコントローラ、第2のコントローラそれぞれのソフトウェアのバージョンの整合性を取る必要がある。しかし、現状の配信サーバは、第1のコントローラ、第2のコントローラにおける、全てのモジュールのソフトウェアについて、バージョンの組み合わせを管理する仕組みがない。例えば、第2のコントローラのソフトウェアのみが、部分的にアップデートされた場合、デバイス全体のソフトウェアの組み合わせを管理する仕組みはないため、不具合が発生する場合がある。本発明は、複数のコントローラを利用可能なデバイスにおけるソフトウェアの組合せを管理し、ソフトウェア配信処理のパフォーマンスを向上させるネットワークシステムを提供することを目的とする。
本発明の一実施形態のネットワークシステムは、画像形成装置と、当該画像形成装置のファームウェアを管理する配信システムとを備える。前記画像形成装置は、前記画像形成装置が備える第1のコントローラに対応するクライアント機能として、前記第1のコントローラに係るソフトウェア情報と、第2のコントローラが当該画像形成装置に接続されていた際に、前記第2のコントローラに係るソフトウェア情報とを、前記配信システムに対して通知する通知手段と、前記配信システムから、自装置に適用すべきソフトウェアに関する情報を受信する受信手段と、前記適用すべきソフトウェアに関する情報に基づき、当該ソフトウェアを前記配信システムから取得する取得手段とを備える。前記配信システムは、前記画像形成装置からの前記通知に前記第2のコントローラに係るソフトウェア情報が含まれていた場合に、前記第1のコントローラに係るソフトウェアの中から一部のソフトウェアを管理対象から除外して、前記画像形成装置のソフトウェア情報を管理する管理手段と、前記管理手段により管理対象として管理されるソフトウェア情報に基づき、前記画像形成装置に対して適用すべきソフトウェアに関する情報を送信する送信手段とを備える。
本発明のネットワークシステムによれば、複数のコントローラを利用可能なデバイスにおけるソフトウェアの組合せを管理し、ソフトウェア配信処理のパフォーマンスを向上させることが可能となる。
本発明のネットワークシステムの構成例を示す図である。 監視センタホスト、配信サーバ、ホスト、監視装置、PCのハードウェア構成例を示す図を示す。 各デバイスのハードウェア構成例を示す図である。 監視センタホスト、配信サーバの通信部分のソフトウェア構成例を示す。 監視装置、各デバイスの通信部分のソフトウェア構成例を示す。 メモリマップの構造を示す図である。 各装置のソフトウェア構成例を示す図である。 第2のコントローラ接続時に管理不要となるソフトウェアの一例を示す。 配信サーバが管理対象としているデバイスのソフトウェアの一例を示す。 バージョンチェックが必須であるモジュールの一例を示す。 配信サーバに登録されている、適切なバージョンの組み合わせを示す。 デバイスのバージョン情報を示す。 関連ソフトウェアの一例を示す。 本実施形態のファームウェア更新処理のシーケンス図を示す。 本実施形態のファームウェア更新処理のシーケンス図を示す。 配信サーバが第2のコントローラの接続を判断する処理フローを示す。 クライアントモジュールのバージョン通知フローを示す。 配信サーバがデバイスのソフトウェア不具合を判断する処理フローを示す。 配信サーバがデバイスのソフトウェア不具合を判断する処理フローを示す。 デバイスがソフトウェアをインストールする際の処理フローを示す。 デバイスがソフトウェアをインストールする際の処理フローを示す。
図1は、本実施形態のネットワークシステムの全体構成図の一例を示す図である。図1に示すネットワークシステムは、操作システム101、外部サーバ106、配信サーバ133、監視センタホスト111、第2のコントローラ用ダウンロードサイト143、顧客システム114、119、129を備える。操作システム101は、データベース103と、データベース103にデータ登録や修正などの制御を行なうPC104を備える。PC104は、監視センタホスト111、配信サーバ133が提供するWebサイトへアクセスしてデータの閲覧や、ファームウェアの配信予約等を行う。ホスト102、データベース103、PC104はLAN105を介して接続されている。
尚、図1に示すネットワークシステムは、複数の装置から構成され示されているが、同等の機能を達成できれば同一の構成でなくてもよい。例えば、データベース103は物理的にホスト102内に存在してもよい。さらに、ホスト102からアクセス可能であれば、インターネット132を経由した別の場所に存在しても構わない。つまり、複数の装置から構成されるようにしてもよいし、1つの装置から構成するようにしても良い。
外部サーバ106は、ホスト107、データベース108、PC109を備える。各装置は、LAN110を介して接続されている。外部サーバ106は、配信サーバ133のファームウェアを高速に配信するためサービスを提供する機能を有する。
次に、監視センタホスト111を説明する。監視センタホスト111は、データベース112を有する、デバイス監視システムである。データベース112は、デバイス監視のための情報や、デバイスの稼働状態などを蓄積する履歴記憶手段として機能するデータベースである。監視センタホスト111とデータベース112はLAN113で接続されており、LAN113はインターネット132に接続されている。なおデータベース112は、物理的に監視センタホスト111内に存在してもよい。さらに、監視センタホスト111からアクセス可能であれば、インターネット132を経由した別の場所に存在しても構わない。監視センタホスト111は、監視装置117、122、123やデバイス131から監視対象としてのデバイスの情報、稼働状態を示す情報を収集、蓄積、加工し、警告等を外部に提供する機能を有する。
次に、配信サーバ133を説明する。配信サーバ133は、デバイスにファームウェアを配信する配信システムとして機能する。データベース134は、デバイスに適用するためのファームウェアを蓄積する記憶手段としてのデータベースである。配信サーバ133とデータベース134はLAN135で接続されており、LAN135は、インターネット132に接続されている。なおデータベース134は、物理的に配信サーバ133内に存在してもよい。さらに、配信サーバ133からアクセス可能であれば、インターネット132を経由した別の場所に存在しても構わない。なお、LAN113とLAN135は同一としてもよく、データベース134とデータベース112はデータを送受信しても構わない。
図1には、監視センタホスト111およびデータベース112と、配信サーバ133とデータベース134が1つずつしか示されていない。しかし、実際には、多くのデバイスおよび監視装置からの情報収集や、ファームウェア配信の負荷分散を行なうために、複数の監視センタホスト111、データベースに分散処理をさせるケースもある。
次に、顧客側のシステム構成について説明する。顧客側のシステムは、顧客により構成が異なる。図1では、顧客システム114、119、129が示されている。顧客システム114(A社X事業所)においては、インターネット132に接続されたLAN118に接続されたデバイス115、116が監視装置117により監視され、監視装置117は、インターネット132経由で監視センタホスト111と通信している。一方、顧客システム119(A社Y事業所)においては、監視装置122、123によってLAN128上のデバイスが管理されている。監視装置122により、デバイス120、121、124、125が、監視装置123によりデバイス126、127が夫々管理されている。
顧客129システム(B社)においては、インターネット132に接続されたLAN130に接続されたデバイス131自身が、直接インターネット132経由で監視センタホスト111と通信している。デバイス131は、監視装置117、122、123と同等の機能を有しており、自身の稼働情報を監視センタホスト111に送信している。
本実施例では、デバイス131には、デバイスにインストールされている第1のコントローラと異なる第2のコントローラがインストールされているPC136が接続され、ディスプレイ137が接続されている。第1のコントローラと第2のコントローラは製造元が異なっていてよく、それにより異なる画像処理機能やデータフォーマットをデバイス131が実行することができる。なおデバイスは単独で使用してもよいし、第2のコントローラを接続して使用してもよい。
第2のコントローラ用ダウンロードサイト143には、ホスト140、データベース141が、LAN142で接続されている。第2のコントローラ用ダウンロードサイト143は、第2のコントローラ用のソフトウェアを配信するためサービスを持つ。
図2は、監視センタホスト111のハードウェア構成図を示す。また、配信サーバ133、ホスト102、107、140、監視装置117、122、123、PC104、109、136、139のハードウェア構成図も同一である。図2に示すように、監視センタホスト111は、CPU201、ROM202、RAM203、HDD204、操作部205、表示部206、外部機器I/F207、Network I/F208を備える。なお、CPUは、Central Processing Unitの略称である。ROMは、Read Only Memoryの略称である。RAMは、Random Access Memoryの略称である。HDDは、Hard Disk Driveの略称である。
CPU201は本装置上の各処理部を制御する。書換え不可能なROM202は、本装置の各処理に関わるプログラムやデータを記憶する。RAM203は、本装置の各処理に関わる一時的なデータを電気的に記憶でき、かつ書き換え可能である。HDD204は、本装置の各処理に関わるプログラムやデータ、および一時的なデータ、監視対象のデバイスに関する情報、およびデバイスから収集した情報などを記憶する。たとえば、HDD204は、稼働情報などを保存する。監視センタホスト111、配信サーバ133の場合、PC104が、後述する図4の処理を行うプログラムをHDD204に記憶している。このプログラムは、RAM203を一時保存領域として使用し、CPU201によって呼び出され実行される。
操作部205は、本装置への指示入力を受け付けるキーボードである。表示部206は、本装置の動作状況や、本装置上で動作する各プログラムが出力する情報を表示する。NetworkI/F208は、ネットワーク経由でLANおよびインターネット132に接続し、外部と情報交換を行う。外部機器I/F207は外部記憶機器等を接続する。それら要素がシステムバス209により結び付き、データをやりとりしている。
図3は、本実施形態の画像形成装置として機能するデバイス115、116、120、121、124、125、126、127、131におけるハードウェア構成図を示す。デバイスとしては、具体的には、プリンタ及びファクシミリ機能が統合的に設けられた複合機、PCなどからデータを受信し印刷するプリンタ(電子写真方式及びインクジェット方式を含む)や、スキャナーや、ファクシミリなどが挙げられる。本図では、デバイスの一例として複合機の構成を示している。
イメージリーダ302は、原稿給送部301で原稿を読み込む。画像形成部303は、イメージリーダ302で読み込んだ原稿やNotworkI/F305からネットワーク経由で受信したデータを印刷画像に変換・印刷出力する。排紙部304は印刷出力した紙を排出し、ソートやステイプルといった処理を施す。NetworkI/F305はネットワーク経由でLANおよびインターネット132に接続し、外部と情報交換を行う。CPU306は本装置上の各処理部を制御する。CPU306は、デバイスの動作状態を監視し、障害等の特定のイベントが発生した場合には、その状態を示す状態情報を、あらかじめ定めた宛先へと送信する。宛先はたとえば、監視センタホスト111や監視装置などである。
書換え不可能なROM307は、本装置の各処理に関わるプログラムやデータを記憶する。RAM308は、本装置の各処理に関わる一時的なデータを電気的に記憶でき、かつ書き換え可能である。HDD309は本装置の各処理に関わるプログラムやデータ、および一時的なデータ、本装置へ送信されてきたユーザデータなどを記憶する。各デバイスは、後述する図5の処理を行うプログラムをHDD309に記憶している。このプログラムは、RAM308を一時保存領域として使用し、CPU306によって呼び出され実行される。
操作部310は、本装置への指示入力を受け付ける。表示部311は本装置の動作状況および操作部310に対する操作に関わる情報を表示する。そしてそれらがシステムバス312により結び付き、データをやりとりしている。なお、デバイス自身が監視のための情報を送信する機能を持つデバイス131は、ROM307またはHDD309内に、前記監視データ送出処理にかかわるプログラムやデータを保持している。
図4は、監視センタホスト111、配信サーバ133における通信部分のソフトウェア構成図を示す。SOAP通信部401は、監視装置117、122、123またはデバイス131よりNetworkI/F208を介して受信したSOAPデータをSOAPメッセージ解析部402に渡す。また、SOAPメッセージ作成部403が作成したSOAPデータをNetworkI/F208を介して監視装置117、122、123またはデバイス131に送信する。
収集情報処理部404では、監視装置117、122、123またはデバイス131から受信した情報をそのまま、または加工し、データベースアクセス部406を介してデータベース112、あるいはデータベース134に格納する。監視センタホスト111の場合、監視制御部405は、監視装置117、122、123またはデバイス131のスケジュール管理などの制御を行なう。配信サーバ133の場合、監視制御部405は、監視装置117、122、123またはデバイス131のポーリング処理などの制御を行う。
図5は、監視装置117、122、123またはデバイス131における通信部分のソフトウェア構成図を示す。SOAP通信部501は、監視センタホスト111もしくは、配信サーバ133によりNetworkI/F208を介して受信したSOAPデータを、SOAPメッセージ解析部503に渡す。また、SOAPメッセージ作成部502が作成したSOAPデータをNetworkI/F208を介して監視センタホスト111、配信サーバ133に送信する。
監視制御部504は、情報蓄積部506に保持する監視対象のデバイス情報の更新や、デバイス115、116の情報取得を行なう。デバイス情報処理部505は、デバイスの稼働情報を、情報蓄積部506に蓄積する。情報蓄積部506に蓄積したデータは、デバイス情報処理部505を介してそのままSOAPメッセージ作成部502に渡され監視センタホスト111へ送信される。
図6は、監視センタホスト111、配信サーバ133、監視装置117、122、123、または各デバイスにおいてプログラムがロードされた際のメモリマップの構造を示す図である。本発明に係る処理プログラムを実行する際、監視センタホスト111、監視装置117、122、123ではRAM203上に、各デバイスではRAM308上にプログラムがロードされる。
メモリマップは、基本I/Oプログラム601、システム・プログラム602、本実施例の処理プログラムを初めとする各種処理プログラム603、関連データを格納するエリア604、プログラムのワークエリア605で構成されている。基本I/Oプログラム601は、本装置上の入出力を司る。システム・プログラム602は、各処理プログラムに動作環境を提供する。
図7は、本発明に係るネットワークシステムを実現する各ソフトウェアのブロック図を示す。図7に示すデバイス131は、デバイス内の第1のコントローラ702を備え、かつPC136にインストールされた第2のコントローラ710が接続された状態を示す。第1のコントローラ702は、第1の通信I/F部703、通信データ制御部704、第2の通信I/F部705、第1のコントローラ用クライアントモジュール706、第1のコントローラ707、アクセサリ708、データ記憶部709を備える。第1の通信I/F部703は、第1のコントローラ702と配信サーバ133、外部サーバ106との通信を司る。通信データ制御部704は、第1の通信I/F部703及び、第2の通信I/F部705から受信した通信データを制御する。
第2の通信I/F部705は、第1のコントローラ702と第2のコントローラ710との通信を司る。第1のコントローラ用クライアントモジュール706は、デバイスが備える第1のコントローラに対応する第1のクライアント機能として各種処理を実行する。例えば、第1のコントローラ用クライアントモジュール706は、配信サーバから受信したURL情報を元に、外部サーバ106からソフトウェアを受信し、第1のコントローラ707や、アクセサリ708にインストールする役割を持つ。データ記憶部709は、第1のコントローラ内のソフトウェアの記憶領域または一時記憶領域として使用される。
第2のコントローラ710は、第1の通信I/F部711、通信データ制御部712、第2の通信I/F部713、第2のコントローラ用クライアントモジュール714、第2のコントローラ715、OS716、データ記憶部717を備える。第1の通信I/F部711は、第2のコントローラ710と第2のコントローラ用ダウンロードサイト143との通信を司る。通信データ制御部712は、第1の通信I/F部711及び、第2の通信I/F部713から受信した通信データを制御する。
第2の通信I/F部713は、第1のコントローラ702と第2のコントローラ710との通信を司る。第2のコントローラ用クライアントモジュール714は、第2のコントローラに対応する第2のクライアント機能として各種処理を実行する。例えば、第2のコントローラ用クライアントモジュール714は、第1のコントローラ用クライアントモジュールから受信したURL情報を元に、第2のコントローラ用ダウンロードサイト143からソフトウェアを受信する役割を持つ。また、第2のコントローラ用クライアントモジュール714は、受信したソフトウェアを第2のコントローラ715や、OS716にインストールする役割を持つ。データ記憶部717は、第2のコントローラ内のソフトウェアの記憶領域または一時記憶領域として使用される。
配信サーバ133は、通信I/F部718、通信データ制御部719、データ制御部720、ファームデータ登録部721、ファームデータ検索部722、ファームデータ記憶部723を備える。通信I/F部718は、デバイス131の第1のコントローラ702と配信サーバ133との通信を司る。通信データ制御部719は、通信I/F部718から受信した通信データを制御する。データ制御部720は配信サーバ内のデータの制御を司る。
ファームデータ登録部721は、ファームウェアの情報をファームデータ記憶部723に登録する。ファームデータ検索部722は、ファームデータ記憶部723からファームウェアの検索を行う。ファームデータ記憶部723は、配信サーバ内に配信用のファームデータを記憶する。ファームデータ記憶部723は、第1のコントローラ707と、アクセサリ708のファームウェアを配信対象として記憶する。
前述したように、外部サーバ106は、配信サーバ133のファームウェアを高速に配信するためサービスを持ち、配信サーバ133より定期的にファームウェアデータが転送されている。第2コントローラ用のダウンロードサイト143は、第2のコントローラ715、OS716のファームウェアを配信対象として記憶している。
図8は、配信サーバ133がデータベース134に記憶する対象外ソフトウェア管理テーブル901の一例を示す。対象外ソフトウェア管理テーブル901では、第2のコントローラ接続時に管理不要となるバージョンチェック非対象モジュールが登録される。バージョンチェック非対象モジュール902は、第2のコントローラ接続時に管理不要となるソフトウェアの種類を示す。配信サーバ133は、バージョンチェックの際に対象外ソフトウェア管理テーブル901を参照し、バージョンチェック非対象モジュール902を確認する。これにより、第1のコントローラに係るソフトウェアの中から、重複する機能や、コントローラの特性による機能コンフリクトにより不要となる機能に関するソフトウェアなど一部のソフトウェアを管理対象から除外することが可能となる。
前述した通り、デバイスに第2のコントローラが接続されることで、デバイスの機能が縮退される場合がある。デバイスには第1のコントローラが搭載されており、第1のコントローラによってコピー、プリントなどの主要機能の制御及び、フィニッシャ、FAX等のアクセサリの制御を司る。しかし、第2のコントローラが接続されることで、第1のコントローラの機能の中で、第2のコントローラに置き換え可能な機能は縮退される。
縮退された機能のバージョン管理は、配信サーバ133では不要の処理であるだけでなく、ソフトウェア配信のパフォーマンスを落とすことになる。従って、本実施形態では、デバイスに第2のコントローラが接続された場合、対象外ソフトウェア管理テーブル901に記憶されているような縮退対象のソフトウェアは管理不要とする。また、第2のコントローラが接続されていても、第2のコントローラの機能を利用しない場合は通常のデバイスとして扱うため、対象外ソフトウェア管理テーブル901に記憶されているソフトウェアも管理対象となる。第2のコントローラの機能を利用しない場合は、第2のコントローラで使用するソフトウェアの情報がデバイスから配信サーバ133に通知されないため、第2のコントローラが接続されてないと判断する。
図9は、配信サーバ133がデータベース134に記憶する対象ソフトウェア管理テーブル1001の一例を示す。対象ソフトウェア管理テーブル1001では、配信サーバ133が管理対象とするソフトウェアの一覧が記憶される。管理対象ファームタイプ1002には、第1のコントローラ707の管理対象ソフトウェアが記憶される。管理対象ファームタイプ1003には、アクセサリ708の管理対象ソフトウェアが記憶される。管理対象ファームタイプ1004には、第2のコントローラ715及び、OS716の管理対象ソフトウェアが記憶される。尚、本テーブル1001に記憶されている全てのソフトウェアは、ファームタイプというモジュール毎に固有の識別子で記載している。
図10は、配信サーバ133がデータベース134に記憶するバージョンチェック必須ソフトウェア管理テーブル1101の一例を示す。バージョンチェック必須モジュール1102では、バージョンチェックの際に配信サーバ133が必ずチェックするモジュールの一覧が記憶される。バージョンチェック必須モジュールとは、第1のコントローラ707、第2のコントローラ715の双方の機能に影響を与えるモジュールである。バージョンチェック必須モジュールのバージョンが適切なバージョンからずれてしまうと、デバイスの不具合が発生する可能性が高くなるため、機能に影響を与えるモジュールは必ずチェックする必要がある。
図11は、配信サーバ133がデータベース134に記憶するバージョン管理テーブル1201を示す。バージョン管理テーブル1201では、適切なバージョンの組み合わせが記憶される。本テーブル1201は、モジュール/グループバージョン1202に示すように、行にモジュールを示し、列にグループバージョンを示す。グループバージョン1203〜1206には、グループのバージョンが記憶される。各グループバージョンの列には、対応するモジュールのバージョンが記憶される。図11に示すように、グループバージョン1203、1204、1205、1206にはそれぞれ、バージョン2.0、2.1、3.0、3.1が記憶されている。
図12は、配信サーバ133がデータベース134に記憶するバージョン情報テーブル1301の一例を示す。バージョン情報テーブル1301には、デバイスのバージョン情報が記憶される。本テーブル1301は、行にモジュール1302が記憶され、列にグループバージョン1305が記憶される。また、受信日時1303のように、デバイスからバージョンの通知があった受信日時も記憶される。バージョン情報1304には、デバイス131から通知されたソフトウェアのバージョンの組み合わせが記憶される。グループバージョン1305は、全てのモジュールのバージョンの組み合わせを統合し、一つのバージョンで表したものである。グループバージョン1305には、バージョン管理テーブル1201のテーブルに一致していないバージョン1304がある場合、グループバージョン「不明」が記憶される。なお、本実施形態では、配信サーバ133がモジュールのバージョンを比較する際に基準とするモジュールを、第1のコントローラのメインモジュールであるM−CON(第1のコントローラ)とする。
図13は、配信サーバ133がデータベース134に記憶する関連ソフトウェアテーブル1401の一例を示す。ファームタイプ1402にはモジュール名が記憶される。関連モジュールのファームタイプ1403には、ファームタイプ1402に関連するファームタイプが記憶される。関連モジュールとは、ファームタイプ1402のモジュールのバージョンに依存するモジュールである。ファームタイプ1402のバージョンが変更された場合、ファームタイプ1403のバージョンも変更する必要がある。
図14は、本実施形態におけるソフトウェア配信処理のシーケンス図を示す。本シーケンスでは、第2のコントローラが接続され、第1のコントローラと第2のコントローラの両方に配信対象ソフトウェアが存在する場合を想定する。尚、処理の詳細については、図16〜図21のフローチャートを用いて説明し、本シーケンスではソフトウェア配信処理の概要を説明する。
S801、S802において、第1のコントローラ用クライアントモジュール706(以下、第1のモジュール706と表記)と第2のコントローラ用クライアントモジュール714(以下、第2のモジュール714と表記)は、デバイスの再起動を検知する。S803において、第1のモジュール706は、第1のコントローラ707、アクセサリ708に含まれるモジュールについて、ソフトウェアのバージョン情報をHDD309から参照して取得する。
S804において、第2のモジュール714は、第2のコントローラ715、OS716に含まれるモジュールについて、ソフトウェアのバージョン情報をHDD204から参照して取得する。
S805において、第2のモジュール714は、第1のモジュール706へ、S804で取得したバージョン情報を通知する。S806において、第1のモジュール706は、配信サーバ133へデバイス内の全モジュールのバージョン情報を通知する。
S807において、配信サーバ133は、第1のコントローラ用クライアントモジュール706から通知されたバージョン情報が第2のコントローラ715、OS716のバージョン情報が存在するかを判断する。S808において、配信サーバ133は対象外ソフトウェア管理テーブル901を参照し、対象外ソフトウェア管理テーブル901のモジュールをデバイスの管理対象から外す。S809において、配信サーバ133は、S806で受信したバージョン情報の組み合わせをバージョン情報1304として、バージョン情報テーブル1301に登録し、履歴情報を更新する。
S810において、配信サーバ133は、登録した図12に示すバージョン情報1304のM_CON(第1のコントローラ)の情報を基準として、図12に示すバージョン管理テーブル1201を参照し、該当するグループバージョンを検索する。配信サーバ133は、バージョン管理テーブル1201に登録されている全てのバージョン情報と合致するならば適切な組み合わせと判断し、合致しなければ、適切ではない組み合わせと判断する。バージョン情報1304に登録されたM_CON(第1のコントローラ)のバージョンは3.0であり、配信サーバ133はグループバージョン1205の列を抽出する。S810の処理の結果は以下のようになる。
<バージョン情報1304と、適切な情報1205の比較結果>
[比較結果]:該当するグループバージョンなし
[M−CON(第1のコントローラ)が同じグループバージョン]:1205
[バージョンがずれているモジュール]:M−CON(第2のコントローラ)
[差異]:バージョン情報1304では“2.0”、適切なバージョン情報1205では“3.0”
[現象]:本来は“3.0”なのに、実際は“2.0”になっているのでダウングレードされている。
S811において、配信サーバ133は、S810の処理の結果から、バージョンがずれているモジュール(M−CON(第2のコントローラ))を抽出する。S812において、配信サーバ133は、図10に示すバージョンチェック必須ソフトウェア管理テーブル1101を参照し、バージョンがずれているモジュールがバージョンチェック必須モジュールかを判断する。S812の処理では、配信サーバ133は、M−CON(第2のコントローラ)がバージョンチェック必須モジュールであると判断する。
システム全体の整合性を取るためには、不整合のあるモジュールに影響のある関連モジュールも同時にアップデートする必要がある。従って、S813において、配信サーバ133は、図13に示す関連ソフトウェアテーブル1401を参照し、バージョンがずれているモジュール(M−CON(第2のコントローラ))の関連モジュールを検索する。S814において、S810の処理の結果から、バージョンがずれているモジュールは、アップデートされたか、ダウングレードされたかを判断する。本実施形態では、配信サーバ133は、M−CON(第2のコントローラ)のバージョンは3.0から2.0にダウングレードされたと判断する。
S815において、アップデートの場合は、配信サーバ133は、図11に示すバージョン管理テーブル1201を参照し、バージョンがずれているモジュールを基準として、該当するグループバージョンを検索する。アップデートの場合は、バージョンがずれているモジュールのみが新しい状態になっているので、関連するモジュールも最新のバージョンにする必要がある。ダウングレードの場合は、バージョンがずれているモジュールのみが古い状態になっているので、当該モジュールだけを適切なバージョンにリカバリすればよい。従って、配信サーバ133は、特定されたグループバージョンからM−CON(第2のコントローラ)のバージョン3.0を抽出する。
S816において、配信サーバ133は、配信対象ソフトウェアを決定する。本実施形態では、M−CON(第2のコントローラ)のバージョン3.0が配信対象のソフトウェアとして決定される。S817において、配信サーバ133は、配信対象ソフトウェアが第1のコントローラ用のものであれば、外部サーバ106のURLを設定する。一方、配信対象ソフトウェアが第2のコントローラ用のものであれば、第2のコントローラ用ダウンロードサイト143のURLを設定する。S818において、配信サーバ133は、第1のモジュール706に配信対象ソフトウェアのURLを返信する。
S819において、第1のモジュール706は、配信サーバ133から受信した配信対象ソフトウェアのURLにアクセスする。S820において、第1のモジュール706は、外部サーバ106からソフトウェアをデバイス内のHDD309にダウンロードする。S821において、第1のモジュール706は、第2のモジュール714にURLを送信し、インストール要求を通知する。S822において、第2のモジュール714は、第1のモジュール706から受信したURLにアクセスする。S823において、第2のモジュール714は、URLを参照し、第2のコントローラ用ダウンロードサイト143から配信対象ソフトウェアをHDD204にダウンロードする。
S824において、第1のモジュール706は、ソフトウェアのバージョンチェックを行い、正常にインストールされたかを確認する。S825において、第2のモジュール714は、ソフトウェアのバージョンチェックを行い、正常にインストールされたかを確認する。S826において、第2のモジュール714は、第1のモジュール706にチェック結果を送信する。S827において、第1のモジュール706は、配信サーバ133にチェック結果を送信する。なお、配信サーバ133は、第1のモジュールからチェック結果を受けて、バージョン情報テーブル1301を更新する。当然のことながら、第1のモジュール706からチェック結果を受けてバージョン情報テーブル1301を更新する構成としたが、これに限定されない。配信サーバ133は、S816で配信対象ソフトウェアを決定した時点でバージョン情報テーブル1301を更新してもよい。また、配信サーバ133は、バージョン情報テーブル1301を更新した後に、再度図11に示すバージョン管理テーブル1201を参照し、更新結果が示すグループバージョンは適切な組み合わせか否かを再度判断するようにしてもよい。上述の処理により、本発明のネットワークシステムによれば、複数のコントローラを利用可能なデバイスにおけるソフトウェアの組合せを管理し、ソフトウェア配信処理のパフォーマンスを向上させることが可能となる。また、配信サーバは、各バージョン情報を比較してソフトウェアのバージョンの整合する組み合わせに従い、適用すべきソフトウェアに関する情報を作成するため、それぞれのソフトウェアのバージョンの整合性を取ることができる。
図16は、配信サーバ133が、デバイスに第2のコントローラが接続されているかを判断する処理フローを示す。本処理フローでは、図7に示すデータ制御部720が、通信I/F部718を介してデバイス131から受信した情報を用いて判断する。S1501において、配信サーバ133は、第1のコントローラ用クライアントモジュール706からデバイスシリアル番号、ファームタイプ、バージョン情報を受信する。デバイスシリアル番号は、デバイス固有のユニークな番号である。ファームタイプとは、前述した通り、対象ソフトウェア管理テーブル1001のテーブルに例示されているモジュール毎に固有の識別子である。バージョン情報とは、各モジュールのバージョン情報である。
S1502において、配信サーバ133は、デバイスのバージョン情報に第2のコントローラ715、OS716のバージョン情報を含むソフトウェア情報が存在するかを判断する。判断方法は、第2のコントローラ及びOSの管理対象ファームタイプ1004が配信サーバ133に通知されていれば、第2のコントローラ715、OS716のソフトウェアが存在すると判断する。第2のコントローラが存在する場合は、処理はS1503に進み、存在しない場合は処理は終了する。
尚、本文書に例示する各テーブル1001、1101、1201、1301、1401は、説明しやすいように、M_CONやBOOTのように、第1のコントローラと第2のコントローラで同一のファームタイプが存在する。しかし、実際には、ファームタイプがユニークになるようにファームタイプを定義するものとする。
S1502で第2のコントローラが接続されていると判断できた場合、S1503で配信サーバ133は、図8に示す対象外ソフトウェア管理テーブル901を参照する。第2のコントローラ接続時に不要となる第1のコントローラのモジュールをデバイスの管理対象から外す。
図17は、再起動時におけるクライアントモジュールのバージョン通知フローを示す。S1601において、デバイスの再起動を第1のコントローラ用クライアントモジュール706は検知する。S1602において、第1のモジュール706は、第1のコントローラ707、アクセサリ708に含まれるモジュールについて、ソフトウェアのバージョン情報をHDD309から参照して取得する。
S1603において、第1のモジュール706は、バージョンの変更を検知すると、S1604に進む。検知できなければ、処理はS1605に進む。S1604において、第1のコントローラ用クライアントモジュール706は、S1602で取得したバージョン情報をデバイス内のHDD309に記憶する。S1605において、第1のモジュール706は、第2のコントローラ用クライアントモジュール714からバージョン通知を受けたか判断する。通知を受けた場合、処理はS1606に進み、受けてない場合、S1607に進む。
S1606において、第1のモジュール706は、バージョン情報について、S1605で第2のモジュール714から通知された情報を元に更新する。S1607において、第1のモジュール706は、配信サーバ133へバージョン情報を通知する。
S1608において、第2のモジュール714は、第1のモジュール706と同じタイミングで、デバイスの再起動を検知する。S1609において、第2のモジュール714は、第2のコントローラ715、OS716に含まれるモジュールについて、ソフトウェアのバージョン情報をHDD204から参照して取得する。S1610において、ソフトウェアのバージョン変更を検知した場合、処理はS1611に進み、検知しなかった場合は、処理は終了する。S1611において、第2のコントローラ用クライアントモジュール714は、第1のコントローラ用クライアントモジュール706へバージョン情報を通知する。
図18および図19は、配信サーバ133のデータ制御部720が、デバイスのソフトウェアバージョンの不適合を判断するためのフローを示す。S1701において、配信サーバ133は、第1のコントローラ用クライアントモジュール706からバージョン情報を受信する。S1702において、配信サーバ133は、S1701で受信したバージョン情報を図12に示すバージョン情報テーブル1301にグループバージョン1304として登録する。S1703において、配信サーバ133は、グループバージョン1304のM_CON(第1のコントローラ)の情報を基準として、バージョン管理テーブル1201を参照し、該当するグループバージョンを検索する。ここでは、バージョン情報1304はグループバージョン1205に該当する。
次に、配信サーバ133は、グループバージョン1304と、適切なグループバージョン1205を比較する。その結果、M−CON(第2のコントローラ)のバージョンのみ差異があり、比較結果としては、以下のようになる。
<バージョン情報1304と、適切なバージョン情報1205の比較結果>
[比較結果]:該当するグループバージョンなし。
[M−CON(第1のコントローラ)が同じグループバージョン]:1205
[バージョンがずれているモジュール]:M−CON(第2のコントローラ)。
[差異]:バージョン情報1304では“2.0”、適切なバージョン情報1205では“3.0”。
[現象]:本来は“3.0”なのに、実際は“2.0”になっているのでダウングレードされている。
S1704において、配信サーバ133は、S1703の処理の結果を元に、バージョン管理テーブル1201にバージョン情報1304に該当するグループバージョンがあるかを判断する。該当するグループバージョンなしの場合は、S1705に進み、該当するグループバージョンありの場合は処理を終了する。S1703の処理の結果は、[比較結果]:該当するグループバージョンなしなので、処理はS1705に進む。S1705において、配信サーバ133は、S1703の結果から、バージョンがずれているモジュールを抽出する。S1703の結果は、[バージョンがずれているモジュール]:M−CON(第2のコントローラ)なので、配信サーバ133はM−CON(第2のコントローラ)を抽出する。
S1706において、配信サーバ133はバージョンチェック必須ソフトウェア管理テーブル1101を参照し、バージョンがずれているモジュールであるM−CON(第2のコントローラ)が、バージョンチェック必須モジュールかを判断する。M−CON(第2のコントローラ)は、バージョンチェック必須ソフトウェア管理テーブル1101に存在するので、配信サーバ133はバージョンチェック必須モジュールであると判断する。
S1707において、配信サーバ133は、S1706の結果がバージョンチェック必須モジュールならば、S1708に進み、そうでないならば、デバイスに不具合が発生することはないと判断し、処理は終了する。S1708において、配信サーバ133は、関連ソフトウェアテーブル1401を参照し、バージョンがずれているモジュールの関連モジュールを検索する。S1703の結果、[バージョンがずれているモジュール]:M−CON(第2のコントローラ)なので、配信サーバ133は関連ソフトウェアテーブル1401を参照し、M−CON(第1のコントローラ)を関連モジュールとして決定する。
S1709において、配信サーバ133は、S1703の結果から、バージョンがずれているモジュールは、アップデートされたものかを判断する。S1703では、[現象]:本来は“3.0”なのに、実際は“2.0”になっているのでダウングレードされているという結果が出ているので、アップデートではなく、ダウングレードと判断する。
図19のS1710において、アップデートの場合は、処理はS1711に進み、ダウングレードの場合は、S1713に進む。S1711において、配信サーバ133は、バージョン管理テーブル1201を参照し、バージョンがずれているモジュールを基準として、該当するグループバージョンを検索する。アップデートの場合は、バージョンがずれているモジュールのみが新しい状態になっているので、関連するモジュールも最新化する必要がある。S1712において、配信サーバ133は、バージョンがずれているモジュールを基準として、バージョン管理テーブル1201を検索し、該当するグループバージョンがあれば、処理はS1714に進み、なければ、S1713に進む。
S1713では、配信サーバ133は、S1703で検索したM−CON(第1のコントローラ)のバージョンが属するグループバージョンを特定する。ダウングレードの場合は、バージョンがずれているモジュールのみが古い状態になっているので、当該モジュールだけを適切なバージョンにリカバリすればよい。従って、配信サーバ133は、特定されたグループバージョンからM―CON(第2のコントローラ)のバージョンを抽出する。また、バージョンが新しくなっているモジュールが含まれる場合であっても、バージョン管理テーブル1201に登録されていない場合は、M_CON(第1のコントローラ)を基準にした組み合わせにする。本実施例では、M−CON(第1のコントローラ)はグループバージョン1205に属するためグループバージョン1205が特定される。
S1714において、配信サーバ133は、配信対象ファームウェアを決定する。S1703〜S1713の結果に基づくと以下のようになる。
<配信対象ファームウェア>
グループバージョン 1205
M−CON(第2のコントローラ) 3.0
M−CON(第1のコントローラ) 3.0
S1715において、配信サーバ133は、配信対象ソフトウェアが第1のコントローラ用のものであれば、S1716において第1のコントローラ用のURLとして外部サーバ106のURLを設定する。一方、配信対象ソフトウェアが第2のコントローラ用のものであれば、S1717において、第2のコントローラ用のURLとして、第2のコントローラ用ダウンロードサイト143のURLを設定する。
S1718において、全ての配信対象ソフトウェアのURLを取得完了したならば、処理はS1719に進み、まだ取得完了していないなら、S1715に戻る。S1719において、配信サーバ133は、第1のコントローラ用クライアントモジュール706に配信対象ソフトウェアのURLを返信する。
図20および図21は、デバイス側のソフトウェアインストールフローである。図20は、第1のコントローラ用クライアントモジュール706のソフトウェアインストールフローである。S1801において、第1のコントローラ用クライアントモジュール706は、配信サーバ133から配信対象ソフトウェアのURLを受信する。S1802において、第1のモジュール706は、配信対象ソフトウェアが第1のコントローラ用か第2のコントローラ用かを判断する。第1のコントローラ用であれば、処理はS1803に進み、第2のコントローラ用であれば、S1804に進む。
S1803において、第1のモジュール706は、外部サーバからソフトウェアをデバイス内のHDD309にダウンロードする。S1804において、第1のモジュール706は、第2のコントローラ用のURLをHDD309に記憶する。S1805において、第1のモジュール706は、全てのURLを参照完了したならば、S1806に進み、そうでないなら、S1802に戻る。S1806において、第1のモジュール706は、第2のコントローラ用のURLがHDD309に存在するかを確認する。存在する場合は、処理はS1807に進み、存在しない場合は、S1808に進む。
S1807において、第1のモジュール706は、第2のコントローラ用クライアントモジュール714にインストール要求を通知する。S1808において、第1のモジュール706は、第1のコントローラ用ソフトウェアをインストールする。
S1809において、第1のモジュール706は、ソフトウェアのバージョンチェックを行い、正常にインストールされたかを確認する。第1のコントローラ用クライアントモジュール706は、アップデート後のモジュールのバージョンを確認し、URLで指定されたバージョンでアップデートされていたら、正常にインストールされたと判断する。一方、URLで指定されたバージョンになっていないモジュールが一つでもあれば、インストール失敗と判断する。例えば、S1714で決定された配信対象ファームウェアの場合、
<配信対象ファームウェア>
グループバージョン 1205
M−CON(第2のコントローラ) 3.0
M−CON(第1のコントローラ) 3.0
第1のモジュール706は、M−CON(第1のコントローラ)が“3.0”にアップデートされていれば、インストール成功とし、別のバージョンになっていればインストール失敗とする。
S1810において、第1のモジュール706は、バージョンチェック結果をHDD309に記憶する。S1811において、第1のモジュール706は、第2のモジュール714から配信結果が通知されたかを確認する。通知された場合は、S1812に進み、通知されていない場合は、S1813に進む。S1812において、第1のモジュール706は、バージョンチェック結果を更新し、第2のコントローラ用のバージョンチェック結果を追加する。S1813において、第1のモジュール706は、配信サーバ133に配信結果を送信する。
図21は、第2のモジュール714のソフトウェアインストールフローである。S1814において、第2のモジュール714は、第1のモジュール706からインストール指示を受信する。S1815において、第2のモジュール714は、URLを参照し、第2のコントローラ用ダウンロードサイト143からソフトウェアをHDD204にダウンロードする。S1816において、第2のモジュール714は、第2のコントローラ用ソフトウェアをインストールする。
S1817において、第2のモジュール714は、ソフトウェアのバージョンチェックを行い、正常にインストールされたかを確認する。第2のモジュール714は、アップデート後のモジュールのバージョンを確認し、URLで指定されたバージョンでアップデートされていたら、正常にインストールされたと判断する。一方、URLで指定されたバージョンになっていないモジュールが一つでもあれば、インストール失敗と判断する。例えば、S1714で決定された配信対象ファームウェアの場合、
<配信対象ファームウェア>
グループバージョン 1205
M−CON(第2のコントローラ) 3.0
M−CON(第1のコントローラ) 3.0
第2のコントローラ第2のモジュール714は、M−CON(第2のコントローラ)が“3.0”にアップデートされていれば、インストール成功とし、別のバージョンになっていればインストール失敗とする。S1818において、第2のモジュール714は、第1のモジュール706に配信結果を送信する。
以上、本発明のネットワークシステムによれば、複数のコントローラにより制御可能なデバイスにおいて、不要なソフトウェアを管理対象から除外して、ソフトウェア配信処理のパフォーマンスを向上させることが可能となる。また、本発明のネットワークシステムによれば、管理が不要となるソフトウェアが判断できるため、不要となるソフトウェアに依存する他のソフトウェアのアップデートが自由にできるというメリットがある。例えば、メインコントローラの実行モジュールであるM_CONと、メインコントローラのUIリソースであるLANGのソフトウェアは依存度が高く、双方のバージョンが同じでないとLANGのソフトウェアは使用できないといった制約がある。しかし、本発明により、第2のコントローラ接続時には使用されないLANGのソフトウェアを配信管理不要とすることで、前記制約を気にせず、M_CONを自由にアップデート可能となる。また、第1のコントローラ、第2のコントローラ全てのソフトウェアについて、組み合わせを管理できるので、デバイスのソフトウェアが、部分的にアップデートされた場合でも、不具合を防止できる。
(その他の実施形態)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(コンピュータプログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そしてそのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。

Claims (10)

  1. 画像形成装置と、当該画像形成装置のソフトウェアを管理する配信システムと、を含むネットワークシステムであって、
    前記画像形成装置は、
    前記画像形成装置が備える第1のコントローラに対応するクライアント機能として、前記第1のコントローラに係るソフトウェア情報と、第2のコントローラが当該画像形成装置に接続されていた際に、前記第2のコントローラに係るソフトウェア情報とを、前記配信システムに対して通知する通知手段と、
    前記配信システムから、自装置に適用すべきソフトウェアに関する情報を受信する受信手段と、
    前記適用すべきソフトウェアに関する情報に基づき、当該ソフトウェアを前記配信システムから取得する取得手段と、を有し、
    前記配信システムは、
    前記画像形成装置からの前記通知に前記第2のコントローラに係るソフトウェア情報が含まれていた場合に、前記第1のコントローラに係るソフトウェアの中から一部のソフトウェアを管理対象から除外して、前記画像形成装置のソフトウェア情報を管理する管理手段と、
    前記管理手段により管理対象として管理されるソフトウェア情報に基づき、前記画像形成装置に対して適用すべきソフトウェアに関する情報を送信する送信手段と、を有することを特徴とするネットワークシステム。
  2. 前記配信システムは、さらに、前記管理手段により管理対象として管理されるソフトウェア情報から、前記第1のコントローラに係るソフトウェアのバージョン情報及び前記第2のコントローラに係るソフトウェアのバージョン情報を比較して、ソフトウェアのバージョンの整合する組み合わせに従い、前記画像形成装置に対して適用すべきソフトウェアに関する情報を作成する作成手段を有し、
    前記送信手段は、前記作成された適用すべきソフトウェアに関する情報を送信することを特徴とする請求項1に記載のネットワークシステム。
  3. 前記取得手段は、前記第1のコントローラに係るソフトウェアについては前記第1のコントローラに対応するクライアント機能を介して前記配信システムからソフトウェアを取得し、第2のコントローラに係るソフトウェアについては前記第2のコントローラに対応するクライアント機能を介して前記配信システムとは異なるシステムからソフトウェアを取得することを特徴とする請求項1または2に記載のネットワークシステム。
  4. 前記通知手段は、自装置の再起動時に、前記第1のコントローラに係るソフトウェアのバージョンが変更されている場合に第1のコントローラに係るソフトウェアのバージョン情報と、さらに、前記第2のコントローラに対応するクライアント機能からの通知に基づく第2のコントローラに係るソフトウェアのバージョン情報と、を前記配信システムに通知することを特徴とする請求項1乃至3のいずれか1項に記載のネットワークシステム。
  5. 前記作成手段は、前記第1及び第2のコントローラに係るソフトウェアのバージョン情報に含まれるバージョンの組み合わせと前記ソフトウェアのバージョンの整合する組み合わせを比較して、バージョンが一致しないソフトウェアが抽出された場合、前記整合する組み合わせとなるように前記画像形成装置に対して適用すべきソフトウェアに関する情報を作成する
    ことを特徴とする請求項2に記載のネットワークシステム。
  6. 前記作成手段は、前記一致しないソフトウェアのバージョンが、
    前記整合する組み合わせに含まれるバージョンよりも古いバージョンである場合に、前記整合する組み合わせに含まれるバージョンのソフトウェアを前記画像形成装置に対して適用するように前記情報を作成し、
    前記整合する組み合わせに含まれるバージョンよりも新しいバージョンである場合に、該新しいバージョンを基準として前記管理されるソフトウェア情報から検索したソフトウェアのバージョンの整合する組み合わせとなるように、前記画像形成装置に対して適用すべきソフトウェアに関する情報を作成する
    ことを特徴とする請求項5に記載のネットワークシステム。
  7. 画像形成装置のソフトウェアを管理する配信システムであって、
    前記画像形成装置が備える第1のコントローラに対応するクライアント機能として、前記第1のコントローラに係るソフトウェア情報と、前記画像形成装置に接続された第2のコントローラに係るソフトウェア情報とを受信し、前記第1のコントローラに係るソフトウェアの中から、一部のソフトウェアを管理対象から除外して、前記画像形成装置のソフトウェア情報を管理する管理手段と、
    前記管理手段により管理されている各コントローラに係るソフトウェア情報を比較して、ソフトウェアのバージョンの整合する組み合わせに従い、前記第1のコントローラに係るソフトウェアを配信すると決定した場合は前記第1のコントローラに対応するクライアント機能を介して前記配信システムにアクセスさせる情報を作成し、前記第2のコントローラに係るソフトウェアを配信すると決定した場合は、前記第2のコントローラに対応するクライアント機能を介して、前記第2のコントローラに係るソフトウェアを配信する、前記配信システムとは異なるシステムにアクセスさせる情報を作成する作成手段と、
    前記画像形成装置に対して前記作成された情報を送信する送信手段と、を有する
    ことを特徴とする配信システム。
  8. 画像形成装置と、当該画像形成装置のソフトウェアを管理する配信システムと、を含むネットワークシステムにおける制御方法であって、
    前記画像形成装置が、自装置が備える第1のコントローラに対応するクライアント機能として、前記第1のコントローラに係るソフトウェア情報と、第2のコントローラが接続されていた際に、当該第2のコントローラに係るソフトウェア情報とを、前記配信システムに対して通知する通知工程と、
    前記画像形成装置が、前記配信システムから、自装置に適用すべきソフトウェアに関する情報を受信する受信工程と、
    前記画像形成装置が、前記適用すべきソフトウェアに関する情報に基づき、当該ソフトウェアを前記配信システムから取得する取得工程と、
    前記配信システムが、前記画像形成装置からの前記通知に前記第2のコントローラに係るソフトウェア情報が含まれていた場合に、前記第1のコントローラに係るソフトウェアの中から、一部のソフトウェアを管理対象から除外して、前記画像形成装置のソフトウェア情報を管理する管理工程と、
    前記配信システムが、前記管理対象として管理されるソフトウェア情報に基づき、前記画像形成装置に対して適用すべきソフトウェアに関する情報を送信する送信工程と、を有する
    ことを特徴とする制御方法。
  9. 画像形成装置のソフトウェアを管理する配信システムにおける制御方法であって、
    前記画像形成装置が備える第1のコントローラに対応するクライアント機能として、前記第1のコントローラに係るソフトウェア情報と、前記画像形成装置に接続された第2のコントローラに係るソフトウェア情報を受信し、前記第1のコントローラに係るソフトウェアの中から、一部のソフトウェアを管理対象から除外して、前記画像形成装置のソフトウェア情報を管理する管理工程と、
    管理されている各コントローラに係るソフトウェア情報を比較して、ソフトウェアのバージョンの整合する組み合わせに従い、前記第1のコントローラに係るソフトウェアを配信すると決定した場合は前記第1のコントローラに対応するクライアント機能を介して前記配信システムにアクセスさせる情報を作成し、前記第2のコントローラに係るソフトウェアを配信すると決定した場合は、前記第1のコントローラに対応するクライアント機能を介して、前記第2のコントローラに係るソフトウェアを配信する、前記配信システムとは異なるシステムにアクセスさせる情報を作成する作成工程と、
    前記画像形成装置に対して作成された前記情報を送信する送信工程と、を有する
    ことを特徴とする制御方法。
  10. 請求項7に記載の手段としてコンピュータを機能させることを特徴とするプログラム。
JP2013173647A 2013-08-23 2013-08-23 ネットワークシステム、配信システム、制御方法、及びプログラム Active JP6173123B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013173647A JP6173123B2 (ja) 2013-08-23 2013-08-23 ネットワークシステム、配信システム、制御方法、及びプログラム
US14/452,676 US20150058401A1 (en) 2013-08-23 2014-08-06 Network system, distribution system, control method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013173647A JP6173123B2 (ja) 2013-08-23 2013-08-23 ネットワークシステム、配信システム、制御方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2015041355A true JP2015041355A (ja) 2015-03-02
JP6173123B2 JP6173123B2 (ja) 2017-08-02

Family

ID=52481363

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013173647A Active JP6173123B2 (ja) 2013-08-23 2013-08-23 ネットワークシステム、配信システム、制御方法、及びプログラム

Country Status (2)

Country Link
US (1) US20150058401A1 (ja)
JP (1) JP6173123B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017129967A (ja) * 2016-01-19 2017-07-27 キヤノン株式会社 配信システム及びその配信方法
JP2022017063A (ja) * 2020-07-13 2022-01-25 富士通クライアントコンピューティング株式会社 情報処理システムおよびリカバリプログラム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6701863B2 (ja) * 2016-03-24 2020-05-27 日本電気株式会社 ファームウェア配信システム、配信装置、ファームウェア配信方法およびファームウェア配信プログラム
JP7467074B2 (ja) 2019-11-05 2024-04-15 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008126642A (ja) * 2006-11-24 2008-06-05 Ricoh Co Ltd 画像形成システム
JP2009080550A (ja) * 2007-09-25 2009-04-16 Kyocera Mita Corp 情報処理システム及びファームウェアの設定変更方法
JP2009146119A (ja) * 2007-12-13 2009-07-02 Canon Inc 画像形成装置監視システム、配信サーバ、監視サーバ、画像形成装置、それらの方法、プログラム、記憶媒体
JP2010004260A (ja) * 2008-06-19 2010-01-07 Ricoh Co Ltd 画像処理装置および省エネ復帰方法
JP2012221197A (ja) * 2011-04-08 2012-11-12 Canon Inc 画像形成装置における配信サーバでの配信設定方法
JP2013097678A (ja) * 2011-11-02 2013-05-20 Canon Inc 配信システム及びその管理方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5799068A (en) * 1992-06-29 1998-08-25 Elonex I.P. Holdings Ltd. Smart phone integration with computer systems
JP4086449B2 (ja) * 2000-04-28 2008-05-14 キヤノン株式会社 通信装置、通信方法及び記憶媒体
US7480907B1 (en) * 2003-01-09 2009-01-20 Hewlett-Packard Development Company, L.P. Mobile services network for update of firmware/software in mobile handsets
US7814480B2 (en) * 2005-09-05 2010-10-12 Seiko Epson Corporation Control software updating technique for a network apparatus
GB0623933D0 (en) * 2006-11-29 2007-01-10 Ibm Apparatus and method for synchronizing controller firmware download
CN101901160B (zh) * 2010-08-11 2015-06-03 中兴通讯股份有限公司 版本升级软件包的打包方法及装置
KR101933466B1 (ko) * 2011-08-05 2019-04-08 삼성전자주식회사 개인망을 이용한 컴포넌트 기반 서비스 제공 방법 및 장치

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008126642A (ja) * 2006-11-24 2008-06-05 Ricoh Co Ltd 画像形成システム
JP2009080550A (ja) * 2007-09-25 2009-04-16 Kyocera Mita Corp 情報処理システム及びファームウェアの設定変更方法
JP2009146119A (ja) * 2007-12-13 2009-07-02 Canon Inc 画像形成装置監視システム、配信サーバ、監視サーバ、画像形成装置、それらの方法、プログラム、記憶媒体
JP2010004260A (ja) * 2008-06-19 2010-01-07 Ricoh Co Ltd 画像処理装置および省エネ復帰方法
JP2012221197A (ja) * 2011-04-08 2012-11-12 Canon Inc 画像形成装置における配信サーバでの配信設定方法
JP2013097678A (ja) * 2011-11-02 2013-05-20 Canon Inc 配信システム及びその管理方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017129967A (ja) * 2016-01-19 2017-07-27 キヤノン株式会社 配信システム及びその配信方法
JP2022017063A (ja) * 2020-07-13 2022-01-25 富士通クライアントコンピューティング株式会社 情報処理システムおよびリカバリプログラム
JP7078864B2 (ja) 2020-07-13 2022-06-01 富士通クライアントコンピューティング株式会社 情報処理システムおよびリカバリプログラム

Also Published As

Publication number Publication date
US20150058401A1 (en) 2015-02-26
JP6173123B2 (ja) 2017-08-02

Similar Documents

Publication Publication Date Title
JP6238724B2 (ja) ネットワークシステム、配信システム、制御方法およびプログラム
JP5424765B2 (ja) 監視装置及び情報処理方法
US9058236B2 (en) Monitoring apparatus, management system, firmware updating method, and program thereof
KR101555086B1 (ko) 배신 시스템 및 그 관리 방법
US20130003115A1 (en) Pull-print system, print job management method, print server, control method therefor and computer-readable medium
JP6173123B2 (ja) ネットワークシステム、配信システム、制御方法、及びプログラム
JP6272117B2 (ja) 印刷システム、印刷サーバー及び印刷制御方法とプログラム
US8958103B2 (en) Management apparatus, management method and computer readable medium for confirming identity of a device in a network using identification information and log information
JP2011113391A (ja) 機器管理システム、機器管理装置、管理対象機器、ソフトウェア更新方法、ソフトウェア更新プログラム、及びそのプログラムを記録した記録媒体
US20100208294A1 (en) Image forming apparatus, control method, and program
JP5812840B2 (ja) 画像形成装置、ネットワークシステム及び画像形成装置の制御方法
JP2011164862A (ja) 管理システム、監視装置及び情報処理方法
US20160006709A1 (en) System and control method thereof
US20120062944A1 (en) Image forming apparatus, network system, control method, and storage medium
US9069724B2 (en) Imaging forming apparatus with automatic configuration update
JP2012255946A (ja) 監視装置、監視方法、及びプログラム
US20160065430A1 (en) Monitoring apparatus and method thereof
US9891870B2 (en) Information processing apparatus, information processing method, recording medium, and information processing system
US11526312B2 (en) Device management apparatus, method, and program storage medium
US20150100686A1 (en) Information processing system, site monitoring apparatus, and information processing method
US10298719B2 (en) Network system, and control method for network system
JP6618368B2 (ja) 配信システム及びその配信方法
JP6425556B2 (ja) 監視装置、システム、監視装置の制御方法、システムの制御方法、及びプログラム
US10152697B2 (en) Monitoring apparatus, monitoring method and non-transitory computer-readable medium
JP2015005149A (ja) クラウドプリントにおけるプリントサーバ障害時のリカバリ方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160728

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170529

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170606

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170704

R151 Written notification of patent or utility model registration

Ref document number: 6173123

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151