JP5581856B2 - 情報処理装置、ソフトウェア配信システム、インストール方法およびプログラム - Google Patents

情報処理装置、ソフトウェア配信システム、インストール方法およびプログラム

Info

Publication number
JP5581856B2
JP5581856B2 JP2010152488A JP2010152488A JP5581856B2 JP 5581856 B2 JP5581856 B2 JP 5581856B2 JP 2010152488 A JP2010152488 A JP 2010152488A JP 2010152488 A JP2010152488 A JP 2010152488A JP 5581856 B2 JP5581856 B2 JP 5581856B2
Authority
JP
Japan
Prior art keywords
software
identification information
request
information
installation
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.)
Expired - Fee Related
Application number
JP2010152488A
Other languages
English (en)
Other versions
JP2012014596A (ja
Inventor
正登 中島
慎一郎 坂本
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2010152488A priority Critical patent/JP5581856B2/ja
Publication of JP2012014596A publication Critical patent/JP2012014596A/ja
Application granted granted Critical
Publication of JP5581856B2 publication Critical patent/JP5581856B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報処理装置、ソフトウェア配信システム、インストール方法およびプログラムに関する。
近年の画像処理装置では、出荷後において、利用者もしくは第三者であるサードベンダがアプリケーションのソフトウェアとして新規な外部アプリケーションを開発して画像処理装置にインストール可能となっている。このようなアプリケーション等のプログラムを、機器の出荷後にインストールする技術としては種々の技術が提供されている(例えば、特許文献1参照)。
また、遠隔で画像処理装置を管理する管理センター側で画像処理装置の機器状態を把握し、もしくは画像処理装置から管理センターに機器状態を通知することにより、機器の情報を用いたサービス提供を可能にする遠隔管理システムについても既に知られている。
しかしながら、従来の遠隔管理システムでは、管理センター側に蓄積された顧客の機器のソフトウェア構成情報を元に最適なインストール構成が見積もられていた。しかし、蓄積されたデータが常に最新の情報とは限らず、インストール直前に顧客環境が変更された場合、実際のソフトウェア構成と管理センター側に蓄積された古いソフトウェア構成との差異がインストール構成の妥当性を低下させ、インストールが失敗することとなる。
本発明は、上記に鑑みてなされたものであって、遠隔操作によりソフトウェアを的確にインストールすることができる情報処理装置、ソフトウェア配信システム、インストール方法およびプログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明にかかる情報処理装置は、ソフトウェアを配信するソフトウェア配信サーバ、機器、およびインストールの対象となる対象ソフトウェアと、前記対象ソフトウェアをインストールする前に前記機器にインストールが必要な依存ソフトウェアとをインストールする要求を送信するソフトウェア管理装置とにネットワークで接続された情報処理装置であって、前記機器にインストール済みのソフトウェアを識別する第1識別情報と、前記第1識別情報により識別されるソフトウェア、および前記機器へのインストール履歴を記憶する記憶部と、前記依存ソフトウェアを識別する第2識別情報と、前記対象ソフトウェアを識別する第3識別情報と、前記第2識別情報のうち、前記機器にインストールされていない前記依存ソフトウェアを識別する第4識別情報とを含む前記機器にソフトウェアをインストールする要求を前記ソフトウェア管理装置から受信する要求受信部と、前記機器にソフトウェアをインストールする要求があった場合に、受信した前記機器にソフトウェアをインストールする要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在するか否かを判定し、受信した前記要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在すると判定した場合に、前記機器に当該ソフトウェアを再インストールすることにより修復させる修復要求部と、前記ソフトウェアの再インストール後に、前記第3識別情報および前記第4識別情報により識別されるソフトウェアを前記ソフトウェア配信サーバから受信する第3受信部と、を備えたことを特徴とする。
また、本発明にかかるソフトウェア配信システムは、機器と、情報処理装置と、前記機器にソフトウェアを配信するソフトウェア配信サーバと、前記情報処理装置と前記ソフトウェア配信サーバとにネットワークで接続され、前記ソフトウェアのインストールを管理するソフトウェア管理装置とを備えたソフトウェア配信システムであって、前記機器は、前記機器にインストール済みのソフトウェアを識別する第1識別情報を前記情報処理装置に送信し、前記情報処理装置は、前記機器において前記インストール済みのソフトウェアが変更された場合に、変更後の前記第1識別情報を前記機器から受信する第4受信部と、
を備え、前記ソフトウェア管理装置は、インストールの対象となる対象ソフトウェアのインストールが要求された場合に、前記第1識別情報を、前記情報処理装置から受信する第1受信部と、前記対象ソフトウェアをインストールする前にインストールが必要な依存ソフトウェアを識別する第2識別情報と、前記対象ソフトウェアを識別する第3識別情報とを前記ソフトウェア配信サーバから受信する第2受信部と、前記第1識別情報と前記第2識別情報とを比較して、前記機器にインストールされていない前記依存ソフトウェアを抽出するソフトウェア情報抽出部と、抽出された前記依存ソフトウェアと前記対象ソフトウェアとをインストールする要求を前記情報処理装置に送信する第1送信部と、を備え、前記情報処理装置は、さらに、前記ソフトウェア管理装置から、前記第1識別情報の取得要求があった場合に、前記第1識別情報を前記ソフトウェア管理装置に送信する第2送信部と、前記ソフトウェア管理装置から、抽出された前記依存ソフトウェアと前記対象ソフトウェアとをインストールする要求を受信する要求受信部と、前記ソフトウェア管理装置から、抽出された前記依存ソフトウェアと前記対象ソフトウェアとをインストールする要求を受信した場合に、前記ソフトウェア配信サーバに前記要求に含まれる抽出された前記依存ソフトウェアと前記対象ソフトウェアとの取得要求を送信し、抽出された前記依存ソフトウェアと前記対象ソフトウェアとを受信する第3受信部と、取得された抽出された前記依存ソフトウェアと前記対象ソフトウェアとともに当該ソフトウェアをインストールする指示を前記機器に送信するインストール要求部と、を備え、前記ソフトウェア配信サーバは、ソフトウェアの識別情報および前記ソフトウェアを記憶するソフトウェア記憶部と、前記ソフトウェア管理装置からの要求に応じて、前記第2識別情報と前記第3識別情報とを前記ソフトウェア記憶部から取得して、取得した前記第2識別情報と前記第3識別情報とを前記ソフトウェア管理装置に送信するソフトウェア情報送信部と、前記情報処理装置からの前記取得要求に応じて、抽出された前記依存ソフトウェアと前記対象ソフトウェアとを前記ソフトウェア記憶部から取得して、取得した抽出された前記依存ソフトウェアと前記対象ソフトウェアとを前記情報処理装置に送信するソフトウェア送信部と、を備えたことを特徴とする。
また、本発明にかかるソフトウェア配信システムは、機器と、情報処理装置と、前記機器にソフトウェアを配信するソフトウェア配信サーバと、前記情報処理装置と前記ソフトウェア配信サーバとにネットワークで接続され、前記ソフトウェアのインストールを管理するソフトウェア管理装置とを備えたソフトウェア配信システムであって、前記ソフトウェア管理装置は、前記機器にインストール済みのソフトウェアを識別する第1識別情報を記憶する第1記憶部と、インストールの対象となる対象ソフトウェアのインストールが要求された場合に、前記対象ソフトウェアをインストールする前にインストールが必要な依存ソフトウェアを識別する第2識別情報と、前記対象ソフトウェアを識別する第3識別情報とを前記ソフトウェア配信サーバから受信する第2受信部と、前記第1識別情報と前記第2識別情報とを比較して、前記機器にインストールされていない前記依存ソフトウェアを抽出するソフトウェア情報抽出部と、前記第2識別情報と、前記第3識別情報と、前記第2識別情報のうち、前記機器にインストールされていない前記依存ソフトウェアを識別する第4識別情報とを含む前記機器にソフトウェアをインストールする要求を前記情報処理装置に送信する第1送信部と、を備え、前記機器は、前記第1識別情報を前記情報処理装置に送信し、前記情報処理装置は、前記ソフトウェア管理装置から前記要求を受信する要求受信部と、前記第1識別情報と、前記インストール済みのソフトウェア、および前記機器へのインストール履歴を記憶する第2記憶部と、前記ソフトウェア管理装置から前記要求を受信した場合に、受信した前記要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在するか否かを判定し、受信した前記要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在すると判定した場合に、前記機器に当該ソフトウェアを再インストールすることにより修復させる修復要求部と、前記ソフトウェアの再インストール後に、前記第3識別情報および前記第4識別情報により識別されるソフトウェアを前記ソフトウェア配信サーバから受信する第3受信部と、取得された前記第3識別情報および前記第4識別情報により識別されるソフトウェアとともに当該ソフトウェアをインストールする指示を前記機器に送信するインストール要求部と、を備えたことを特徴とする。
また、本発明にかかるインストール方法は、ソフトウェアを配信するソフトウェア配信サーバ、機器、およびインストールの対象となる対象ソフトウェアと、前記対象ソフトウェアをインストールする前に前記機器にインストールが必要な依存ソフトウェアとをインストールする要求を送信するソフトウェア管理装置とにネットワークで接続された情報処理装置で実行されるインストール方法であって、前記機器にインストール済みのソフトウェアを識別する第1識別情報と、前記第1識別情報により識別されるソフトウェア、および前記機器へのインストール履歴を記憶部に保存する保存ステップと、前記依存ソフトウェアを識別する第2識別情報と、前記対象ソフトウェアを識別する第3識別情報と、前記第2識別情報のうち、前記機器にインストールされていない前記依存ソフトウェアを識別する第4識別情報とを含む前記機器にソフトウェアをインストールする要求を前記ソフトウェア管理装置から受信する要求受信ステップと、前記機器にソフトウェアをインストールする要求があった場合に、受信した前記機器にソフトウェアをインストールする要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在するか否かを判定し、受信した前記要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在すると判定した場合に、前記機器に当該ソフトウェアを再インストールすることにより修復させる修復要求ステップと、前記ソフトウェアの再インストール後に、前記第3識別情報および前記第4識別情報により識別されるソフトウェアを前記ソフトウェア配信サーバから受信する第3受信ステップと、を含むことを特徴とする。
また、本発明にかかるプログラムは、ソフトウェアを配信するソフトウェア配信サーバ、機器、およびインストールの対象となる対象ソフトウェアと、前記対象ソフトウェアをインストールする前に前記機器にインストールが必要な依存ソフトウェアとをインストールする要求を送信するソフトウェア管理装置とにネットワークで接続されたコンピュータで実行されるコンピュータ読み取り可能なプログラムであって、前記コンピュータを、前記機器にインストール済みのソフトウェアを識別する第1識別情報と、前記第1識別情報により識別されるソフトウェア、および前記機器へのインストール履歴を記憶部に保存する保存部と、前記依存ソフトウェアを識別する第2識別情報と、前記対象ソフトウェアを識別する第3識別情報と、前記第2識別情報のうち、前記機器にインストールされていない前記依存ソフトウェアを識別する第4識別情報とを含む前記機器にソフトウェアをインストールする要求を前記ソフトウェア管理装置から受信する要求受信部と、前記機器にソフトウェアをインストールする要求があった場合に、受信した前記機器にソフトウェアをインストールする要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在するか否かを判定し、受信した前記要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在すると判定した場合に、前記機器に当該ソフトウェアを再インストールすることにより修復させる修復要求部と、前記ソフトウェアの再インストール後に、前記第3識別情報および前記第4識別情報により識別されるソフトウェアを前記ソフトウェア配信サーバから受信する第3受信部、として機能させることを特徴とする。
本発明によれば、遠隔操作によるソフトウェアの的確にインストールすることができるという効果を奏する。また、本発明によれば、ネットワークトラフィックを軽減することができるという効果を奏する。
図1は、実施の形態1にかかるソフトウェア配信システムのネットワーク構成図である。 図2は、管理装置500の機能的構成を示すブロック図である。 図3は、機器情報のデータ構造の一例を示す説明図である。 図4は、ソフトウェア情報のデータ構造の一例を示す説明図である。 図5は、インストール要求のデータ構造の一例を示す説明図である。 図6は、ソフトウェア配信サーバ400の機能的構成を示すブロック図である。 図7は、仲介装置200の機能的構成を示すブロック図である。 図8は、機器100の機能的構成を示すブロック図である。 図9は、機器情報の送受信の手順を示すシーケンス図である。 図10は、実施の形態1のインストール処理の流れを示すシーケンス図である。 図11は、管理装置1200の機能的構成を示すブロック図である。 図12は、仲介装置1300の機能的構成を示すブロック図である。 図13は、実施の形態2のインストール処理の流れを示すシーケンス図である。 図14は、機器100のハードウェア構成を示すブロック図である。
以下に添付図面を参照して、この発明にかかる情報処理装置、ソフトウェア配信システム、インストール方法およびプログラムの一実施の形態を詳細に説明する。以下の実施の形態においては、本発明における機器を、コピー機能、プリンタ機能、スキャナ機能、およびファクシミリ機能のうち少なくとも2つの機能を有する複合機(MFP:Multi Function Peripherals)に適用した例を示すが、これに限定されることなく、複写機、プリンタ、ファクシミリ装置、スキャナ装置等の機器であればいずれにも適用することができる。なお、本実施の形態では、これらを総称して機器とする。
(実施の形態1)
図1は、本実施の形態にかかるソフトウェア配信システムのネットワーク構成図である。図1に示すように、ソフトウェア配信システムは、情報処理装置としての仲介装置200と、ライセンス管理サーバ300と、ソフトウェア配信サーバ400と、ソフトウェア管理装置としての管理装置500と、WEBサーバ600が、インターネットなどのネットワーク80を介して接続されている。そして、仲介装置200とネットワーク80との間には、ファイアウォール90が設けられている。また、仲介装置200は、複数の機器100a、100b、100c(以下、特定しない機器を単に機器100と称する。)が接続されている。
ファイアウォール90は、公衆回線やインターネットなどの外部ネットワークを通じて仲介装置200に侵入した第三者により不正が行われないように、外部との境界を流れるデータを監視し、不正なアクセスを検出・遮断する。
ソフトウェア配信サーバ400は、機器100において実行される各種アプリケーションのソフトウェアのパッケージであるソフトウェアコンポーネントを記憶しており、このソフトウェアコンポーネントを、仲介装置200を介して機器100に配信するサーバ装置である。
ライセンス管理サーバ300は、ソフトウェア配信サーバ400から提供され、機器100にインストールされるアプリケーションのソフトウェアコンポーネントのライセンス(利用権)や、機器100において実行される機能のライセンス(利用権)を、仲介装置200を介して管理する装置である。
Webサーバ600は、アプリケーション等のソフトウェアのポータル販売サイトを有するサーバ装置である。ユーザが不図示のPC(Personal Computer)や機器100等からこのWebサーバ200のポータル販売サイトにアクセスして、所望のアプリケーションソフトウェアを購入する。ここで、購入されたアプリケーションソフトウェアを機器100へのインストール対象となる対象ソフトウェア(以下、対象ソフトウェアという。)とする。そして、ユーザがこのWebサーバ600からソフトウェアを購入した場合、インストール対象として指定された機器100の機器IDと購入したソフトウェアのプロダクト名とプロダクトキーとともにインストール要求がWebサーバ200から管理装置500に送信される。
管理装置500は、仲介装置200を介して機器100を遠隔管理する装置である。具体的には、管理装置500は、機器100に管理装置500は、機器のメーカやサービス提供会社等のサービスセンタ等に設置されたサーバ装置である。管理装置500は、Webサーバ600からインストール要求を受信すると、ソフトウェア配信サーバ400から対象ソフトウェアの取得先URLや依存ソフトウェアの取得先URL等を受信し、インストール先として指定された機器100にインストールされているソフトウェアの状況である機器情報を参照して、対象ソフトウェアと機器100に必要な依存ソフトウェアを決定してインストール要求を仲介装置200に送信する。
仲介装置200は、ソフトウェア配信サーバ400およびライセンス管理サーバ300と、機器100との間で行われる処理を仲介する装置である。具体的には、仲介装置200は、機器100から各機器にインストールされているソフトウェアの状況である機器情報を一定期間ごとに収集し、この機器ごとの機器情報を管理装置500に送信する。
また、仲介装置200は、対象ソフトウェアのコンポーネントをソフトウェア配信サーバ400に要求して受信し、また対象ソフトウェアのライセンスをライセンス管理サーバ300に要求して受信する。また、仲介装置200は、これらのソフトウェアコンポーネントとライセンスとともに、ソフトウェアのインストール要求を機器100に送信して、機器100に当該ソフトウェアをインストールさせる。
機器100は、コピー、ファックス、プリンタなどの複数の機能を備えた装置であって、LAN(Local Area Network)などのローカルネットワークにより仲介装置200に接続されている。図1では、3台の機器100a、100b、100cがネットワークに接続されているが、これに限定されることなく、1台、2台、または4台以上の機器を接続した構成としてもよい。機器100は、仲介装置200から、ソフトウェアコンポーネントおよびライセンスとともにインストール要求を受信すると、インストール要求で指定されたソフトウェアのインストールを実行するアプリインストール制御部を備えている。
次に、管理装置500の詳細について説明する。図2は、管理装置500の機能的構成を示すブロック図である。図2に示すように、管理装置500は、通信部501と、ソフトウェア情報抽出部502と、必須ソフトウェア情報生成部503と、ハードディスクドライブ装置(以下、「HDD」という。)510とを主に備えている。
通信部501は、Webサーバ600から、ユーザによってインストール先として指定された機器100の機器IDと、対象ソフトウェアのプロダクト名、プロダクトIDおよびプロダクトキーとを含むインストール要求を受信する。
また、通信部501は、仲介装置200から機器100にインストールされている機器情報を受信してHDD510に保存する第1受信部の機能を有する。ここで、通信部501は、機器情報を一定のタイミングで仲介装置から受信するが、インストール要求を受信した場合は、一定のタイミングにかかわらず新たな機器情報を受信する。
ここで、機器情報は、機器100を一意に識別するための機器IDと、機器100の種類を示す機器システム情報と、インストール済情報としての、機器100に既にインストール済みのソフトウェアのソフトウェア情報を示すソフトウェア設定情報とを含んでいる。例えば、インストール済みのソフトウェアのソフトウェア情報として、インストール済みのソフトウェアのプロダクトIDがある。なお、インストール済みのソフトウェアのプロダクトIDは、本発明の第1識別情報の一例である。
図3は、機器情報のデータ構造の一例を示す説明図である。図3に示すように、機器情報の機器システム情報は、さらに詳細情報のテーブルをリンクし、ソフトウェア設定情報はさらにその詳細情報のテーブルをリンクした構造となっている。また、ソフトウェア設定情報は機器100にインストールされているソフトウェアごとに存在して、それぞれ詳細情報をリンクしている。すなわち、インストール済みのソフトウェアが複数存在する場合には、機器情報には複数のソフトウェア設定情報が設定され、かつそれぞれのソフトウェア設定情報に詳細情報のテーブルがリンクした構造となる。
機器システム情報の詳細情報としては、図3に示すように、機器コード、シリアル番号、モデル名、言語、機器100の設置場所等が含まれる。ソフトウェア設定情報の詳細情報としては、図3に示すように、ソフトウェアのカテゴリと、ソフトウェアを一意に識別するためのプロダクトIDと、プロダクト名と、バージョン、有効期限、ライセンスID等の情報が含まれる。このような機器情報は、機器100ごと、すなわち機器IDごとにHDD510に保存される。
図2に戻り、通信部501はさらに、第2受信部の機能を有する。具体的には、通信部501は、Webサーバ600から受信したインストール要求に含まれる対象ソフトウェアのプロダクトIDを指定して、ソフトウェア配信サーバ400に対してソフトウェア情報の取得要求を送信し、ソフトウェア配信サーバ400からこのソフトウェア情報を受信する。なお、対象ソフトウェアのプロダクトIDは、本発明の第3識別情報の一例である。
図4は、ソフトウェア情報のデータ構造の一例を示す説明図である。ソフトウェア情報は、図4に示すように、対象ソフトウェアのプロダクトIDおよび取得先URLと、依存情報として、対象ソフトウェアをインストールする前にインストールしておくべきソフトウェアである依存ソフトウェアのソフトウェア情報およびその取得先とを含んでいる。依存ソフトウェアは複数存在する場合もある。例えば、依存ソフトウェアのソフトウェア情報として、依存ソフトウェアのプロダクトIDがある。また、図4に示す情報の他、ソフトウェア情報には、対象ソフトウェアおよび依存ソフトウェアそれぞれのカテゴリ、プロダクトキー、有効化の必要性等も含まれている。なお、依存ソフトウェアのプロダクトIDは、本発明の第2識別情報の一例である。
図2に戻り、通信部501は、また、仲介装置200に、必須ソフトウェア情報と、インストール先の機器100の機器IDとを含むインストール要求を仲介装置200に送信する第1送信部としての機能を有する。ここで、必須ソフトウェア情報とは、対象ソフトウェアをインストール先の機器100に正常にインストールするために必須となるソフトウェアのソフトウェア情報である。具体的には、対象ソフトウェアと、対象ソフトウェアの依存ソフトウェアのうちインストール先の機器100にインストールされていない依存ソフトウェアのプロダクトIDのことである。なお、対象ソフトウェアの依存ソフトウェアのうちインストール先の機器100にインストールされていない依存ソフトウェアのプロダクトIDは、本発明の第4識別情報の一例である。
ソフトウェア情報抽出部502は、HDD510に保存されたインストール先の機器100の機器情報のインストール済み情報であるソフトウェア設定情報のプロダクトIDと、受信したソフトウェア情報の対象ソフトウェアとその依存ソフトウェアのそれぞれのプロダクトIDとを比較して、インストール先の機器100にインストールされていない依存ソフトウェアの構成情報を抽出する。これにより、一度インストールされた依存ソフトウェアが削除されたことによりインストールが失敗する事態を防止することができる。
必須ソフトウェア情報生成部503は、ソフトウェア情報抽出部502により抽出されたインストール先の機器100にインストールされていない依存ソフトウェアのプロダクトIDと対象ソフトウェアのプロダクトIDとを合せて必須ソフトウェア情報を生成する。
図5は、インストール要求のデータ構造の一例を示す説明図である。図5に示すように、インストール先の機器IDと、対象ソフトウェアのカテゴリ、プロダクトID、プロダクトキー、取得先URL等、および対象ソフトウェアの依存ソフトウェアのうち、ソフトウェア情報抽出部502で抽出された依存ソフトウェアのカテゴリ、プロダクトID、プロダクトキー、取得先URL等が設定される。
次に、ソフトウェア配信サーバ400の詳細について説明する。図6は、ソフトウェア配信サーバ400の機能的構成を示すブロック図である。ソフトウェア配信サーバ400は、図6に示すように、通信部401と、HDD410とを主に備えている。
HDD410には、ソフトウェアのインストールパッケージであるソフトウェアコンポーネントと、ソフトウェアコンポーネントに対応して、図4に示したソフトウェア情報が記憶されている。
通信部401は、ソフトウェア情報送信部およびソフトウェア送信部の機能を有する。例えば、通信部401は、管理装置500からソフトウェア情報の取得要求を受信し、取得要求で指定されたプロダクトIDのソフトウェア情報をHDDから取得して、取得したソフトウェア情報を管理装置500に送信する。また、通信部401は、仲介装置200からのソフトウェア要求を受けて、指定されたソフトウェアコンポーネントをHDD510から取得して、仲介装置200に配信する。
次に、仲介装置200の詳細について説明する。図7は、仲介装置200の機能的構成を示すブロック図である。仲介装置200は、図7に示すように、通信部201と、インストール要求部202と、ライセンス取得部203と、HDD210とを主に備えている。
通信部201は、機器100から、所定のタイミングとして一定期間ごとに、および機器100の機器情報が変更される度に機器情報を受信する第4受信部の機能、および、機器情報を管理装置500に送信する第2送信部としての機能を有する。
通信部201は、さらに、管理装置500から、必須ソフトウェア情報とインストール先の機器IDが含まれたインストール要求を受信するインストール要求受信部としての機能を有する。また、通信部201は、管理装置500からのインストール要求に応じて、インストール要求に含まれる必須ソフトウェア情報の取得要求をソフトウェア配信サーバ400に送信し、ソフトウェア配信サーバ400から必須ソフトウェア情報を受信する第3受信部としての機能を有する。
HDD210は、機器100から受信した最新のソフトウェア設定情報を含む機器情報、およびソフトウェア配信サーバ400から受信したソフトウェアを保存する。
ライセンス取得部203は、管理装置500からインストール要求を受信した場合、インストール要求で指定された対象ソフトウェアおよび依存ソフトウェアのライセンスの要求をライセンス管理300に送信し、ライセンス管理サーバ300から、要求したソフトウェアのライセンスを受信する。
インストール要求部202は、取得したソフトウェアコンポーネントとライセンスとともに、インストール先の機器100にインストール要求を送信する。これにより、インストール要求を受信した機器100ではインストールが開始されることになる。
次に、機器100について説明する。図8は、実施の形態1にかかる機器100の機能的構成を示すブロック図である。図8に示すように、機器100は、白黒レーザプリンタ(B&W LP)101と、カラーレーザプリンタ(Color LP)102と、HDD103と、スキャナ、ファクシミリ、メモリなどのハードウェアリソース104、通信I/F(インターフェース)105を有するとともに、プラットホーム120と、アプリケーション130とから構成されるソフトウェア群110とを備えている。
本実施の形態の機器100では、HDD103に、機器情報や、ソフトウェア配信サーバ400からダウンロードしたアプリケーションのソフトウェアパッケージ、ファームウェアパッケージ、パッケージ情報、インストール処理の動作指示を示す指示情報、およびライセンス管理サーバ300からダウンロードアプリケーションのライセンスファイルが保存される。また、このHDD103に、インストール処理の進行状態が記録される。
プラットホーム120は、アプリケーションからの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービスと、一または複数のハードウェア資源の管理を行い、コントロールサービスからの獲得要求を調停するシステムリソースマネージャ(SRM)123と、汎用OS121とを有する。
コントロールサービスは、複数のサービスモジュールから形成され、SCS(システムコントロールサービス)122と、ECS(エンジンコントロールサービス)124と、MCS(メモリコントロールサービス)125と、OCS(オペレーションパネルコントロールサービス)126と、FCS(ファックスコントロールサービス)127と、NCS(ネットワークコントロールサービス)128と、NRS(ニューリモートサービス)129と、アプリインストール制御サービス131と、から構成される。このプラットホーム120は、あらかじめ定義された関数により前記アプリケーション130から処理要求を受信可能とするアプリケーションプログラムインタフェース(API)を有する。
汎用OS121は、UNIX(登録商標)などの汎用オペレーティングシステムであり、プラットホーム120並びにアプリケーション130の各ソフトウェアをそれぞれプロセスとして並列実行する。
SRM123のプロセスは、SCS122とともにシステムの制御およびリソースの管理を行うものである。SRM123のプロセスは、スキャナ部やプリンタ部などのエンジン、メモリ、HDDファイル、ホストI/O(セントロI/F、ネットワークI/F、IEEE1394 I/F、RS232C I/Fなど)のハードウェア資源を利用する上位層からの要求にしたがって調停を行い、実行制御する。
具体的には、このSRM123は、要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、SRM123は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容(例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成など)を直接実施している。
SCS122のプロセスは、アプリ管理、操作部制御、システム画面表示、LED表示、リソース管理、割り込みアプリ制御などを行う。
ECS124のプロセスは、白黒レーザプリンタ(B&W LP)101、カラーレーザプリンタ(Color LP)102、スキャナ、ファクシミリなどからなるハードウェアリソース104のエンジンの制御を行う。
MCS125のプロセスは、画像メモリの取得および解放、ハードディスク装置(HDD)の利用、画像データの圧縮および伸張などを行う。
FCS127のプロセスは、システムコントローラの各アプリ層からPSTN/ISDN網を利用したファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読みとり、ファクシミリ受信印刷、融合送受信を行うためのAPIを提供する。
NCS128のプロセスは、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するためのプロセスであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介を行う。
OCS126のプロセスは、オペレータ(利用者)と本体制御間の情報伝達手段となるオペレーションパネル(操作パネル)の制御を行う。OCS126は、オペレーションパネルからキー押下(またはタッチ操作)をキーイベントとして取得し、取得したキーに対応したキーイベント関数をSCS122に送信するOCSプロセスの部分と、アプリケーション130またはコントロールサービスからの要求によりオペレーションパネルに各種画面を描画出力する描画関数やその他オペレーションパネルに対する制御を行う関数などがあらかじめ登録されたOCSライブラリの部分とから構成される。このOCSライブラリは、アプリケーション130およびコントロールサービスの各モジュールにリンクされて実装されている。なお、OCS126のすべてをプロセスとして動作させるように構成しても良く、あるいはOCS126のすべてをOCSライブラリとして構成しても良い。
アプリインストール制御サービス131のプロセスは、機器100にインストールされているアプリケーション等のソフトウェアのソフトウェア情報や機器の情報を機器情報として一定期間ごとに管理装置500に送信する。アプリインストール制御サービス131のプロセスは、管理装置500からインストール要求を受信した場合、ソフトウェア配信サーバ400に対して、インストール要求で指定されたプロダクトIDのソフトウェアの配信要求を行って、ソフトウェア配信サーバ400から対象ソフトウェアを受信し、インストールする。また、アプリインストール制御サービス131のプロセスは、管理装置500からインストール要求を受信した場合、ライセンス管理サーバ300に対して、インストール要求で指定されたプロダクトIDのソフトウェアのライセンスを要求し、ライセンス管理サーバ300からライセンスを取得する。
NRS129のプロセスは、ネットワークを介してデータを送受信する際のデータの変換を行う等のネットワークを介した機器遠隔管理に関する機能及びスケジューラ機能を有している。
アプリケーション130は、ページ記述言語(PDL)、PCLおよびポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ111と、コピー用アプリケーションであるコピーアプリ112と、ファクシミリ用アプリケーションであるファックスアプリ113と、スキャナ用アプリケーションであるスキャナアプリ114と、ネットワークファイル用アプリケーションであるネットファイルアプリ115と、工程検査用アプリケーションである工程検査アプリ116と、インターネットに接続されたPC等のクライアント端末に対してWEBサーバ(httpサーバ)として動作し、クライアント端末上で動作するWEBブラウザに各種画面を表示するWEBアプリ117とを有している。
アプリケーション130の各プロセス、コントロールサービスの各プロセスは、関数呼び出しとその戻り値送信およびメッセージの送受信によってプロセス間通信を行いながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを実現している。
このように、実施の形態3にかかる機器100には、複数のアプリケーション130および複数のコントロールサービスが存在し、いずれもプロセスとして動作している。そして、これらの各プロセス内部には、一または複数のスレッドが生成されて、スレッド単位の並列実行が行われる。そして、コントロールサービスがアプリケーション130に対し共通サービスを提供しており、このため、これらの多数のプロセスが並列動作、およびスレッドの並列動作を行って互いにプロセス間通信を行って協調動作をしながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを提供するようになっている。
また、機器100には、機器100の顧客、サードベンダなどの第三者がコントロールサービス層の上のアプリケーション層に外部アプリ172を開発して搭載することが可能となっている。この外部アプリ172は、アプリインストール制御サービス131によりソフトウェア配信サーバ400からダウンロードしてインストールされたアプリケーションであり、図8は、アプリケーションが実行されている状態を示している。
なお、実施の形態3にかかる機器100では、複数のアプリケーション130のプロセスと複数のコントロールサービスのプロセスとが動作しているが、アプリケーション130とコントロールサービスのプロセスとがそれぞれ単一の構成とすることも可能である。また、各アプリケーション130は、アプリケーションごとに追加または削除することができる。すなわち、上述したように、外部アプリ172をインストール可能であり、かつアンインストールも可能となっている。
次に、以上のように構成された管理装置500と仲介装置200と機器100との間におけるソフトウェア設定情報の送受信処理の流れについて説明する。図9は、管理装置500と仲介装置200と機器100との間におけるソフトウェア設定情報の送受信処理の流れを示すシーケンス図である。
インストール先の機器100は、ユーザによりプラグインの削除操作を受け付けると、削除操作を受け付けたプラグインを削除する(ステップS1)。機器100はプラグインを削除すると、仲介装置200に削除を反映した最新のソフトウェア設定情報を通知する(ステップS2)。仲介装置200は、機器100から最新のソフトウェア設定情報の通知を受信すると、HDD210に保存している機器100の機器情報のソフトウェア設定情報を受信したソフトウェア設定情報に更新する(ステップS3)。
また、インストール先の機器100は、ユーザにより新たなプラグインの追加操作を受け付けると、追加操作を受け付けたプラグインを追加する(ステップS4)。機器100はプラグインを追加すると、仲介装置200に追加を反映した再審のソフトウェア設定情報を通知する(ステップS5)。仲介装置200は、機器100から最新のソフトウェア設定情報の通知を受信すると、HDD210に保存している機器100の機器情報のソフトウェア設定情報を受信したソフトウェア設定情報に更新する(ステップS6)。このように、仲介装置200は、機器100のソフトウェア設定情報が更新される度に更新後のソフトウェア設定情報を受信するので、機器100の最新のソフトウェア設定情報を保存する。
仲介装置200は、ステップS3およびステップS6において更新したソフトウェア設定情報を含む機器情報を一定のタイミングで管理装置500に通知する(ステップS7)。管理装置500は、HDD510に保存している機器100の機器情報を、更新されたソフトウェア設定情報を含む機器情報に更新する(ステップS8)。このように、管理装置500は、機器100のソフトウェア設定情報が更新される度に最新の機器100のソフトウェア設定情報を受信するのではないため、HDD510に保存されている機器情報に含まれるソフトウェア設定情報と最新の機器100のソフトウェア設定情報とが異なるケースが生じる。
次に、以上のように構成された本実施の形態のソフトウェア配信システムによるインストール処理について説明する。図10は、実施の形態1のインストール処理の流れを示すシーケンス図である。
Webサーバ600は、インストール対象のプラグインAおよびプラグインBのプロダクトIDと、機器IDとを含むインストール要求を管理装置500に送信する(ステップS11)。管理装置500はWebサーバ600から受信した当該インストール要求を仲介装置200に送信する(ステップS12)。
仲介装置200は、管理装置500からインストール要求を受信すると、インストール要求に含まれるインストール先の機器の機器IDにより識別される機器100から最新のソフトウェア設定情報を含む機器情報を取得する(ステップS13)。仲介装置200は機器100から最新のソフトウェア設定情報を含む機器情報を取得すると、取得した最新のソフトウェア設定情報と、インストール対象のプラグインAとプラグインBのプロダクトIDを含む必須ソフトウェア情報の取得要求を管理装置500に送信する(ステップS14)。
管理装置500は、必須ソフトウェア情報の取得要求を仲介装置200から受信すると、必須ソフトウェア情報に含まれるプラグインAのプロダクトIDにより識別されるソフトウェアのソフトウェア情報の取得要求をソフトウェア配信サーバ400に送信する(ステップS15)。ソフトウェア配信サーバ400は、これに応答して、指定されたソフトウェアのソフトウェア情報を管理装置500に送信する(ステップS16)。続いて、管理装置500は、必須ソフトウェア情報の取得要求に含まれるプラグインBのプロダクトIDにより識別されるソフトウェアのソフトウェア情報の取得要求をソフトウェア配信サーバ400に送信する(ステップS17)。ソフトウェア配信サーバ400は、これに応答して、指定されたソフトウェアのソフトウェア情報を管理装置500に送信する(ステップS18)。
管理装置500は、ソフトウェア配信サーバ400からプラグインAおよびプラグインBのソフトウェア情報を取得すると、必須ソフトウェア情報を生成する(ステップS19)。例えば、管理装置500は、仲介装置200から受信したソフトウェア設定情報を参照し、取得したソフトウェア情報の中からインストール先の機器100にインストールされていない依存ソフトウェア情報を抽出し、抽出した依存ソフトウェア情報とインストール対象のプラグインAおよびプラグインBのソフトウェア情報を合せて必須ソフトウェア情報として生成する。
管理装置500は生成した必須ソフトウェア情報を仲介装置200に送信する(ステップS20)。仲介装置200は必須ソフトウェア情報を受信すると、ソフトウェア配信サーバ400に必須ソフトウェア情報が示すソフトウェアの送信要求を送信する(ステップS21)。ソフトウェア配信サーバ400はこれに応答して、指定された必須ソフトウェアのソフトウェア情報を仲介装置200に送信する(ステップS22)。
仲介装置200はソフトウェア配信サーバ400から必須ソフトウェアを受信すると、受信した必須ソフトウェアを含むインストール指示を機器100に送信する(ステップS23)。これにより、機器100では、インストール指示で指定されたソフトウェアのインストールが行われる。
このように、本実施の形態によれば、管理装置500はインストール要求があった場合に、仲介装置200によりインストール先の機器100から最新のソフトウェア設定情報を取得し、インストール対象となるソフトウェアの依存ソフトウェアであって、機器100のソフトウェア設定情報に含まれないソフトウェアを必須ソフトウェア情報に含めるので、依存ソフトウェアの削除等によるインストールの失敗を防止することができる。つまり、本実施の形態によれば、遠隔操作によりソフトウェアを的確にインストールすることができる。
(実施の形態2)
実施の形態1では、管理装置500はプラグインのインストール要求があった場合に、仲介装置200を介して取得したインストール先の機器100の最新のソフトウェア設定情報をもとに必須ソフトウェア情報を生成した。これに対して、本実施の形態では、仲介装置が、管理装置により管理装置が保存しているインストール先の機器のソフトウェア設定情報をもとに生成された必須ソフトウェア情報と、インストール先の機器100の最新のソフトウェア設定情報とを比較して、修復すべきソフトウェアの有無を判断する。
本実施の形態のソフトウェア配信システムのネットワーク構成は実施の形態1と同様である。本実施の形態では、管理装置とソフトウェア配信サーバの構成が実施の形態1と異なっている。
まず、管理装置1200の詳細について説明する。図11は、実施の形態2の管理装置1200の機能的構成を示すブロック図である。実施の形態2の管理装置1200は、通信部1201と、ソフトウェア情報抽出部1202と、必須ソフトウェア情報生成部503と、HDD510とを主に備える。なお、通信部1201と、ソフトウェア情報抽出部1201以外の各部の機能および構成は実施の形態1と同様である。
通信部1201は、実施の形態1と同様であるが、仲介装置1300からの機器情報の受信については一定のタイミングで行われる。また、通信部1201は、インストール要求送信部としての機能において、実施の形態1と異なり、必須ソフトウェア情報と、インストール先の機器100の機器IDに加えて依存ソフトウェア情報を含むインストール要求を仲介装置1300に送信する。
ソフトウェア情報抽出部1202は、HDD510に保存されたインストール先の機器100の機器情報のソフトウェア設定情報のプロダクトIDと、対象ソフトウェアのプロダクトIDと、対象ソフトウェアの依存ソフトウェアのプロダクトIDとを比較して、インストール先の機器100にインストールされていない依存ソフトウェアの構成情報を抽出する。なお、ここでHDD510に保存されたインストール先機器100の機器情報は仲介装置1300から一定のタイミングで受信したものであるため、最新の機器100の機器情報とは限らない。
次に、仲介装置1300の詳細について説明する。図12は、仲介装置1300の機能的構成を示すブロック図である。仲介装置1300は、図12に示すように、通信部1301と、修復要求部1304と、インストール要求部202と、ライセンス取得部203と、HDD1310とを主に備えている。なお、HDD1310と、ソフトウェア取得部1303と、修復要求部1304以外の各部の機能および構成は実施の形態1と同様である。
HDD1310は、実施の形態1と同様であるが、さらに、機器100から受信した最新のソフトウェア設定情報を含む機器情報、ソフトウェア配信サーバ400から受信したソフトウェア、および機器100にソフトウェアをインストールした日時とインストールしたソフトウェアのプロダクトIDを対応付けた更新履歴を保存する。
修復要求部1304は、通信部201により必須ソフトウェア情報と、インストール先の機器100の機器IDと、依存ソフトウェア情報とを含むインストール要求を受信した場合に、機器100に修復すべきソフトウェア(以下、修復ソフトウェアという。)のソフトウェア情報(以下、修復ソフトウェア情報という。)が存在するか否かを判断する。
例えば、修復要求部1304は、依存ソフトウェア情報と、必須ソフトウェア情報と、機器100のインストール済みソフトウェア情報とを比較し、依存ソフトウェア情報の中に、必須ソフトウェア情報およびインストール済みソフトウェア情報に含まれないソフトウェア情報が存在するか否かを判断する。次に、修復要求部1304は、依存ソフトウェア情報の中に、必須ソフトウェア情報およびインストール済みソフトウェア情報に含まれないソフトウェア情報が存在すると判断した場合に、さらに、当該ソフトウェア情報がインストール履歴に存在するか否かを確認する。つまり、当該ソフトウェアが一度機器100にインストールされた後に削除されたことにより、現在のソフトウェア設定情報に含まれないこととなった修復ソフトウェアであるか否かを確認する。
修復要求部1304は、インストール履歴があることを確認すると、修復ソフトウェアをHDD1310から取得して機器100に送信し、修復を要求する。ここで、必須ソフトウェア情報に含まれるソフトウェア情報は、管理装置1200により、機器100の最新のソフトウェア設定情報とは限らない機器情報に基づいて生成されたものであるため、依存ソフトウェア情報が欠落している可能性がある。このため、修復要求部1304が、HDD1310に保存している機器100の最新のソフトウェア設定情報を確認することにより必須ソフトウェア情報に含まれない依存ソフトウェアを修復することによりインストールの失敗を防止することができる。
次に、以上のように構成された本実施の形態のソフトウェア配信システムによるインストール処理について説明する。図13は、実施の形態2のインストール処理の流れを示すシーケンス図である。
Webサーバ600は、インストール対象のプラグインAと、プラグインBと、機器IDとを含むインストール要求を管理装置500に送信する(ステップS31)。管理装置1200はWebサーバ600から当該インストール要求を受信すると、HDD510に保存されているインストール要求に含まれる機器IDの機器情報からソフトウェア設定情報を取得する(ステップS32)。なお、ここで管理装置1200に保存されている機器情報は2日前に仲介装置1300から受信した機器情報であり、機器情報にプラグインCが含まれているとする。
ステップS33からステップS37までの処理については、実施の形態1で説明した図10のフローチャートのステップS15からステップS19と同様である。ステップS38において、管理装置1200は、仲介装置1300に必須ソフトウェア情報と、インストール先の機器の機器IDを含むインストール要求を送信する(ステップS38)。
仲介装置1300は、管理装置1200からインストール要求を受信すると、HDD1210に保存している機器100の機器情報から最新のソフトウェア設定情報を取得する(ステップS39)。仲介装置1300は、インストール要求に含まれる依存ソフトウェア情報と、必須ソフトウェア情報と、取得した最新のソフトウェア設定情報と、HDD1210に保存されている更新履歴とから、修復ソフトウェアの有無を判断する(ステップS40)。例えば、1日前に機器100にインストールされていたプラグインCが削除されていた場合、ステップS37において管理装置1200により生成された必須ソフトウェア情報にはプラグインCが含まれないこととなる。つまり、管理装置1200により生成された必須ソフトウェア情報のもととなった機器100のソフトウェア設定情報は、2日前のプラグインCが含まれる機器情報であるため、プラグインCは必須ソフトウェア情報に含まれていない。
そこで、仲介装置1300は、修復ソフトウェアとしてプラグインCがあると判断し、修復ソフトウェアであるプラグインCをHDD1310から取得し、修復ソフトウェアであるプラグインCを含む更新指示を機器100に送信する(ステップS41)。仲介装置1300は、機器100が更新、すなわち修復ソフトウェアであるプラグインCが機器100に再インストールされた後に、必須ソフトウェア情報が示す必須ソフトウェアの送信要求をソフトウェア配信サーバ400に送信する(ステップS42)。ソフトウェア配信サーバ400はこれに応答して、指定された必須ソフトウェアを仲介装置1200に送信する(ステップS43)。
仲介装置1300は、ソフトウェア配信サーバ400から受信した必須ソフトウェアを含むインストール指示を機器100に送信する(ステップS44)。これにより、機器100では、インストール指示で指定されたソフトウェアのインストールが行われる。
このように、本実施の形態によれば、仲介装置1300が機器100の最新のソフトウェア設定情報をもとに管理装置1200から受信した必須ソフトウェア情報に含まれないソフトウェアを修復した上で、新たにソフトウェアをインストールするので、機器100に一度インストールされたソフトウェアが削除されたことにより新たなインストールが失敗する事態を防止することができる。つまり、本実施の形態によれば、遠隔操作によりソフトウェアを的確にインストールすることができる。
図14は、実施の形態1および2にかかる機器100のハードウェア構成を示すブロック図である。本図に示すように、この機器100は、コントローラ10とエンジン部(Engine)60とをPCI(Peripheral Component Interface)バスで接続した構成となる。コントローラ10は、機器100全体の制御と描画、通信、図示しない操作部からの入力を制御するコントローラである。エンジン部60は、PCIバスに接続可能なプリンタエンジンなどであり、たとえば白黒プロッタ、1ドラムカラープロッタ、4ドラムカラープロッタ、スキャナまたはファックスユニットなどである。なお、このエンジン部60には、プロッタなどのいわゆるエンジン部分に加えて、誤差拡散やガンマ変換などの画像処理部分が含まれる。
コントローラ10は、CPU11と、ノースブリッジ(NB)13と、システムメモリ(MEM−P)12と、サウスブリッジ(SB)14と、ローカルメモリ(MEM−C)17と、ASIC(Application Specific Integrated Circuit)16と、ハードディスクドライブ(HDD)103とを有し、ノースブリッジ(NB)13とASIC16との間をAGP(Accelerated Graphics Port)バス15で接続した構成となる。また、MEM−P12は、ROM(Read Only Memory)12aと、RAM(Random Access Memory)12bと、をさらに有する。
CPU11は、機器100の全体制御をおこなうものであり、NB13、MEM−P12およびSB14からなるチップセットを有し、このチップセットを介して他の機器と接続される。
NB13は、CPU11とMEM−P12、SB14、AGP15とを接続するためのブリッジであり、MEM−P12に対する読み書きなどを制御するメモリコントローラと、PCIマスタおよびAGPターゲットとを有する。
MEM−P12は、プログラムやデータの格納用メモリ、プログラムやデータの展開用メモリ、プリンタの描画用メモリなどとして用いるシステムメモリであり、ROM12aとRAM12bとからなる。ROM12aは、プログラムやデータの格納用メモリとして用いる読み出し専用のメモリであり、RAM12bは、プログラムやデータの展開用メモリ、プリンタの描画用メモリなどとして用いる書き込みおよび読み出し可能なメモリである。
SB14は、NB13とPCIデバイス、周辺デバイスとを接続するためのブリッジである。このSB14は、PCIバスを介してNB13と接続されており、このPCIバスには、ネットワークインターフェース(I/F)部なども接続される。
ASIC16は、画像処理用のハードウェア要素を有する画像処理用途向けのIC(Integrated Circuit)であり、AGP15、PCIバス、HDD103およびMEM−C17をそれぞれ接続するブリッジの役割を有する。このASIC16は、PCIターゲットおよびAGPマスタと、ASIC16の中核をなすアービタ(ARB)と、MEM−C17を制御するメモリコントローラと、ハードウェアロジックなどにより画像データの回転などをおこなう複数のDMAC(Direct Memory Access Controller)と、エンジン部60との間でPCIバスを介したデータ転送をおこなうPCIユニットとからなる。このASIC16には、PCIバスを介してFCU(Facsimile Control Unit)30、USB(Universal Serial Bus)40、IEEE1394(the Institute of Electrical and Electronics Engineers 1394)インターフェース50が接続される。操作表示部20はASIC16に直接接続されている。
MEM−C17は、コピー用画像バッファ、符号バッファとして用いるローカルメモリであり、HDD(Hard Disk Drive)103は、画像データの蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積を行うためのストレージである。
AGP15は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレーターカード用のバスインターフェースであり、MEM−P12に高スループットで直接アクセスすることにより、グラフィックスアクセラレーターカードを高速にするものである。
なお、機器100で実行されるインストールプログラムは、ROM等に予め組み込まれて提供される。
上記実施の形態の機器100で実行されるインストールプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
さらに、上記実施の形態の機器100で実行されるインストールプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、上記実施の形態の機器100で実行されるインストールプログラムをインターネット等のネットワーク経由で提供または配信するように構成しても良い。
上記実施の形態の機器100で実行されるインストールプログラムは、上述した各部(ソフトウェア情報抽出プログラム、必須ソフトウェア情報生成プログラム)を含むモジュール構成となっており、実際のハードウェアとしてはCPU(プロセッサ)が上記ROMからソフトウェア配信プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、ソフトウェア情報抽出プログラム、必須ソフトウェア情報生成プログラムが主記憶装置上に生成されるようになっている。
なお、上記実施の形態は、機器100のアプリケーションのソフトウェアのインストールについて説明したが、アプリケーション以外のソフトウェアにも適用可能である。
また、上記実施の形態の管理装置500、ソフトウェア配信サーバ400、ライセンス管理サーバ300およびWebサーバ600は、CPUなどの制御装置と、ROM(Read Only Memory)やRAMなどの記憶装置と、HDD、CDドライブ装置などの外部記憶装置と、ディスプレイ装置などの表示装置と、キーボードやマウスなどの入力装置を備えており、通常のコンピュータを利用したハードウェア構成となっている。
また、上記実施の形態の管理装置で実行されるソフトウェア情報プログラム、インストール要求生成プログラム、ソフトウェア配信サーバで実行されるソフトウェア情報抽出プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
また、上記実施の形態の管理装置で実行されるソフトウェア情報プログラム、インストール要求生成プログラム、ソフトウェア配信サーバで実行されるソフトウェア情報抽出プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、上記実施の形態の管理装置で実行されるソフトウェア情報プログラム、インストール要求生成プログラム、ソフトウェア配信サーバで実行されるソフトウェア情報抽出プログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
また、上記実施の形態の管理装置で実行されるソフトウェア情報抽出プログラム、必須ソフトウェア情報生成プログラムを、ROM等に予め組み込んで提供するように構成してもよい。
上記実施の形態の管理装置で実行されるソフトウェア情報抽出プログラム、必須ソフトウェア情報生成プログラムは、上述した機能的構成の各部を含むモジュール構成となっており、実際のハードウェアとしてはCPU(プロセッサ)が上記記憶媒体からソフトウェア配信プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、各部が主記憶装置上に生成されるようになっている。
80 ネットワーク
90 ファイアウォール
100 機器
101 白黒レーザプリンタ
102 カラーレーザプリンタ
103 HDD
104 その他ハードウェアリソース
105 通信I/F
110 ソフトウェア群
112 コピーアプリ
113 ファックスアプリ
114 スキャナアプリ
115 ネットファイルアプリ
116 工程検査アプリ
117 WEBアプリ
172 外部アプリ
120 プラットホーム
121 汎用OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
129 NRS
130 アプリケーション
131 アプリインストール制御サービス
200、1300 仲介装置
201、401、501 通信部
202、1305 インストール要求部
203 ライセンス取得部
210、410、510、1310 HDD
300 ライセンス管理サーバ
400 ソフトウェア配信サーバ
500、1200 管理装置
502 ソフトウェア情報抽出部
503、1202 必須ソフトウェア情報生成部
600 Webサーバ
1304 修復要求部
特許第3602036号公報

Claims (5)

  1. ソフトウェアを配信するソフトウェア配信サーバ、機器、およびインストールの対象となる対象ソフトウェアと、前記対象ソフトウェアをインストールする前に前記機器にインストールが必要な依存ソフトウェアとをインストールする要求を送信するソフトウェア管理装置とにネットワークで接続された情報処理装置であって、
    前記機器にインストール済みのソフトウェアを識別する第1識別情報と、前記第1識別情報により識別されるソフトウェア、および前記機器へのインストール履歴を記憶する記憶部と、
    前記依存ソフトウェアを識別する第2識別情報と、前記対象ソフトウェアを識別する第3識別情報と、前記第2識別情報のうち、前記機器にインストールされていない前記依存ソフトウェアを識別する第4識別情報とを含む前記機器にソフトウェアをインストールする要求を前記ソフトウェア管理装置から受信する要求受信部と、
    前記機器にソフトウェアをインストールする要求があった場合に、受信した前記機器にソフトウェアをインストールする要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在するか否かを判定し、受信した前記要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在すると判定した場合に、前記機器に当該ソフトウェアを再インストールすることにより修復させる修復要求部と、
    前記ソフトウェアの再インストール後に、前記第3識別情報および前記第4識別情報により識別されるソフトウェアを前記ソフトウェア配信サーバから受信する第3受信部と、
    を備えたことを特徴とする情報処理装置。
  2. 機器と、情報処理装置と、前記機器にソフトウェアを配信するソフトウェア配信サーバと、前記情報処理装置と前記ソフトウェア配信サーバとにネットワークで接続され、前記ソフトウェアのインストールを管理するソフトウェア管理装置とを備えたソフトウェア配信システムであって、
    前記機器は、前記機器にインストール済みのソフトウェアを識別する第1識別情報を前記情報処理装置に送信し、
    前記情報処理装置は、
    前記機器において前記インストール済みのソフトウェアが変更された場合に、変更後の前記第1識別情報を前記機器から受信する第4受信部と、
    を備え、
    前記ソフトウェア管理装置は、
    インストールの対象となる対象ソフトウェアのインストールが要求された場合に、前記第1識別情報を、前記情報処理装置から受信する第1受信部と、
    前記対象ソフトウェアをインストールする前にインストールが必要な依存ソフトウェアを識別する第2識別情報と、前記対象ソフトウェアを識別する第3識別情報とを前記ソフトウェア配信サーバから受信する第2受信部と、
    前記第1識別情報と前記第2識別情報とを比較して、前記機器にインストールされていない前記依存ソフトウェアを抽出するソフトウェア情報抽出部と、
    抽出された前記依存ソフトウェアと前記対象ソフトウェアとをインストールする要求を前記情報処理装置に送信する第1送信部と、
    を備え、
    前記情報処理装置は、さらに、
    前記ソフトウェア管理装置から、前記第1識別情報の取得要求があった場合に、前記第1識別情報を前記ソフトウェア管理装置に送信する第2送信部と、
    前記ソフトウェア管理装置から、抽出された前記依存ソフトウェアと前記対象ソフトウェアとをインストールする要求を受信する要求受信部と、
    前記ソフトウェア管理装置から、抽出された前記依存ソフトウェアと前記対象ソフトウェアとをインストールする要求を受信した場合に、前記ソフトウェア配信サーバに前記要求に含まれる抽出された前記依存ソフトウェアと前記対象ソフトウェアとの取得要求を送信し、抽出された前記依存ソフトウェアと前記対象ソフトウェアとを受信する第3受信部と、
    取得された抽出された前記依存ソフトウェアと前記対象ソフトウェアとともに当該ソフトウェアをインストールする指示を前記機器に送信するインストール要求部と、
    を備え、
    前記ソフトウェア配信サーバは、
    ソフトウェアの識別情報および前記ソフトウェアを記憶するソフトウェア記憶部と、
    前記ソフトウェア管理装置からの要求に応じて、前記第2識別情報と前記第3識別情報とを前記ソフトウェア記憶部から取得して、取得した前記第2識別情報と前記第3識別情報とを前記ソフトウェア管理装置に送信するソフトウェア情報送信部と、
    前記情報処理装置からの前記取得要求に応じて、抽出された前記依存ソフトウェアと前記対象ソフトウェアとを前記ソフトウェア記憶部から取得して、取得した抽出された前記依存ソフトウェアと前記対象ソフトウェアとを前記情報処理装置に送信するソフトウェア送信部と、
    を備えたことを特徴とするソフトウェア配信システム。
  3. 機器と、情報処理装置と、前記機器にソフトウェアを配信するソフトウェア配信サーバと、前記情報処理装置と前記ソフトウェア配信サーバとにネットワークで接続され、前記ソフトウェアのインストールを管理するソフトウェア管理装置とを備えたソフトウェア配信システムであって、
    前記ソフトウェア管理装置は、
    前記機器にインストール済みのソフトウェアを識別する第1識別情報を記憶する第1記憶部と、
    インストールの対象となる対象ソフトウェアのインストールが要求された場合に、前記対象ソフトウェアをインストールする前にインストールが必要な依存ソフトウェアを識別する第2識別情報と、前記対象ソフトウェアを識別する第3識別情報とを前記ソフトウェア配信サーバから受信する第2受信部と、
    前記第1識別情報と前記第2識別情報とを比較して、前記機器にインストールされていない前記依存ソフトウェアを抽出するソフトウェア情報抽出部と、
    前記第2識別情報と、前記第3識別情報と、前記第2識別情報のうち、前記機器にインストールされていない前記依存ソフトウェアを識別する第4識別情報とを含む前記機器にソフトウェアをインストールする要求を前記情報処理装置に送信する第1送信部と、
    を備え、
    前記機器は、前記第1識別情報を前記情報処理装置に送信し、
    前記情報処理装置は、
    前記ソフトウェア管理装置から前記要求を受信する要求受信部と、
    前記第1識別情報と、前記インストール済みのソフトウェア、および前記機器へのインストール履歴を記憶する第2記憶部と、
    前記ソフトウェア管理装置から前記要求を受信した場合に、受信した前記要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在するか否かを判定し、受信した前記要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在すると判定した場合に、前記機器に当該ソフトウェアを再インストールすることにより修復させる修復要求部と、
    前記ソフトウェアの再インストール後に、前記第3識別情報および前記第4識別情報により識別されるソフトウェアを前記ソフトウェア配信サーバから受信する第3受信部と、
    取得された前記第3識別情報および前記第4識別情報により識別されるソフトウェアとともに当該ソフトウェアをインストールする指示を前記機器に送信するインストール要求部と、
    を備えたことを特徴とするソフトウェア配信システム。
  4. ソフトウェアを配信するソフトウェア配信サーバ、機器、およびインストールの対象となる対象ソフトウェアと、前記対象ソフトウェアをインストールする前に前記機器にインストールが必要な依存ソフトウェアとをインストールする要求を送信するソフトウェア管理装置とにネットワークで接続された情報処理装置で実行されるインストール方法であって、
    前記機器にインストール済みのソフトウェアを識別する第1識別情報と、前記第1識別情報により識別されるソフトウェア、および前記機器へのインストール履歴を記憶部に保存する保存ステップと、
    前記依存ソフトウェアを識別する第2識別情報と、前記対象ソフトウェアを識別する第3識別情報と、前記第2識別情報のうち、前記機器にインストールされていない前記依存ソフトウェアを識別する第4識別情報とを含む前記機器にソフトウェアをインストールする要求を前記ソフトウェア管理装置から受信する要求受信ステップと、
    前記機器にソフトウェアをインストールする要求があった場合に、受信した前記機器にソフトウェアをインストールする要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在するか否かを判定し、受信した前記要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在すると判定した場合に、前記機器に当該ソフトウェアを再インストールすることにより修復させる修復要求ステップと、
    前記ソフトウェアの再インストール後に、前記第3識別情報および前記第4識別情報により識別されるソフトウェアを前記ソフトウェア配信サーバから受信する第3受信ステップと、
    を含むことを特徴とするインストール方法。
  5. ソフトウェアを配信するソフトウェア配信サーバ、機器、およびインストールの対象となる対象ソフトウェアと、前記対象ソフトウェアをインストールする前に前記機器にインストールが必要な依存ソフトウェアとをインストールする要求を送信するソフトウェア管理装置とにネットワークで接続されたコンピュータで実行されるコンピュータ読み取り可能なプログラムであって、
    前記コンピュータを、
    前記機器にインストール済みのソフトウェアを識別する第1識別情報と、前記第1識別情報により識別されるソフトウェア、および前記機器へのインストール履歴を記憶部に保存する保存部と、
    前記依存ソフトウェアを識別する第2識別情報と、前記対象ソフトウェアを識別する第3識別情報と、前記第2識別情報のうち、前記機器にインストールされていない前記依存ソフトウェアを識別する第4識別情報とを含む前記機器にソフトウェアをインストールする要求を前記ソフトウェア管理装置から受信する要求受信部と、
    前記機器にソフトウェアをインストールする要求があった場合に、受信した前記機器にソフトウェアをインストールする要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在するか否かを判定し、受信した前記要求に含まれる前記第2識別情報の中に、前記第1識別情報および前記第4識別情報に含まれず、かつ、前記インストール履歴に存在するソフトウェアの識別情報が存在すると判定した場合に、前記機器に当該ソフトウェアを再インストールすることにより修復させる修復要求部と、
    前記ソフトウェアの再インストール後に、前記第3識別情報および前記第4識別情報により識別されるソフトウェアを前記ソフトウェア配信サーバから受信する第3受信部、
    として機能させることを特徴とするプログラム。
JP2010152488A 2010-07-02 2010-07-02 情報処理装置、ソフトウェア配信システム、インストール方法およびプログラム Expired - Fee Related JP5581856B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010152488A JP5581856B2 (ja) 2010-07-02 2010-07-02 情報処理装置、ソフトウェア配信システム、インストール方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010152488A JP5581856B2 (ja) 2010-07-02 2010-07-02 情報処理装置、ソフトウェア配信システム、インストール方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2012014596A JP2012014596A (ja) 2012-01-19
JP5581856B2 true JP5581856B2 (ja) 2014-09-03

Family

ID=45600915

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010152488A Expired - Fee Related JP5581856B2 (ja) 2010-07-02 2010-07-02 情報処理装置、ソフトウェア配信システム、インストール方法およびプログラム

Country Status (1)

Country Link
JP (1) JP5581856B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5769786B2 (ja) * 2013-11-29 2015-08-26 ソフトバンクモバイル株式会社 サーバ、端末、通信システム及び制御プログラム
WO2018167821A1 (ja) * 2017-03-13 2018-09-20 三菱電機株式会社 通信装置、サーバ、通信システム、通信方法及びプログラム
JP2020140636A (ja) * 2019-03-01 2020-09-03 株式会社デンソー アプリケーションサーバ装置及び電子制御装置
JP7125374B2 (ja) * 2019-07-03 2022-08-24 本田技研工業株式会社 情報処理装置、情報処理方法、及びプログラム
CN110750764A (zh) * 2019-09-17 2020-02-04 平安银行股份有限公司 终端控件管理方法、装置、计算机设备及存储介质
CN115544465B (zh) * 2022-11-25 2023-02-28 卓望数码技术(深圳)有限公司 一种用于软件构建的第三方组件的安全管控方法及装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07334436A (ja) * 1994-06-06 1995-12-22 Mitsubishi Electric Corp ソフトウエア自動配布方式
JP3671759B2 (ja) * 1999-08-26 2005-07-13 株式会社日立製作所 ソフトウェア配布方法およびシステム
JP3861538B2 (ja) * 1999-12-15 2006-12-20 株式会社日立製作所 プログラム配付管理システム
JP2005044011A (ja) * 2003-07-24 2005-02-17 Hitachi Ltd ソフトウェアパッケージ管理方法
JP2005135187A (ja) * 2003-10-30 2005-05-26 Toshiba Corp 電子機器および組み込みソフトウェア更新方法
JP5232427B2 (ja) * 2007-09-25 2013-07-10 京セラドキュメントソリューションズ株式会社 情報処理システム及びファームウェアの設定変更方法
JP2010079546A (ja) * 2008-09-25 2010-04-08 Hitachi Software Eng Co Ltd プログラム配信更新システム

Also Published As

Publication number Publication date
JP2012014596A (ja) 2012-01-19

Similar Documents

Publication Publication Date Title
JP5454102B2 (ja) ライセンス更新管理装置、ライセンス管理システム、ライセンス更新方法、およびプログラム
JP5454035B2 (ja) 画像処理装置、遠隔管理システム、ライセンス更新方法、およびライセンス更新プログラム
JP5509754B2 (ja) ソフトウェア管理装置、ソフトウェア配信システム、インストール方法およびプログラム
JP5515904B2 (ja) 情報処理システム、管理装置、情報処理装置、インストール処理方法、プログラム及び記憶媒体
JP5428668B2 (ja) ライセンス管理サーバ、ライセンス管理方法およびプログラム
JP2011170638A (ja) プログラム管理システム、プログラム管理方法、クライアントおよびプログラム
JP5434174B2 (ja) 機器管理システム、画像処理装置、機器管理装置、機器管理方法、機器管理プログラムおよび記憶媒体
JP5581856B2 (ja) 情報処理装置、ソフトウェア配信システム、インストール方法およびプログラム
JP5454208B2 (ja) 画像処理装置、ソフトウェア管理システム、ソフトウェア管理方法およびプログラム
JP5359427B2 (ja) ライセンス管理システム、ライセンス管理サーバ、情報処理装置、画像形成装置、ライセンス管理方法、およびライセンス管理プログラム
JP2011180902A (ja) ライセンス管理システム、ライセンス管理方法およびプログラム
JP5509929B2 (ja) 情報処理装置、情報処理方法およびプログラム、ならびに、ライセンス管理システム
JP5594413B2 (ja) 画像処理装置
JP5672347B2 (ja) ライセンス管理システムおよびライセンス管理方法
JP5347612B2 (ja) 画像処理装置、遠隔管理システム、ライセンス更新方法、およびプログラム
JP5298998B2 (ja) 機器管理装置、ライセンス移行方法、ライセンス移行システムおよびライセンス移行プログラム
JP5637323B2 (ja) ライセンス管理システム、ライセンス管理方法、およびプログラム
JP2014112378A (ja) 機器管理システム、画像処理装置、機器管理装置、機器管理方法、機器管理プログラムおよび記憶媒体
JP5549765B2 (ja) ライセンス移行システム
JP5482297B2 (ja) ライセンス管理システム、ライセンス管理方法およびプログラム
JP2011170463A (ja) 情報処理システム、管理装置、インストール処理方法、プログラム及び記憶媒体
JP5359911B2 (ja) 情報処理システム、情報処理装置、管理装置、インストール処理方法、プログラム及び記憶媒体
JP2011126134A (ja) 情報処理装置、サーバ、一覧表示方法、一覧表示支援方法及びプログラム
JP2011060184A (ja) 画像形成装置、ライセンス期限延長方法、およびライセンス期限延長プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130404

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140114

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140305

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140408

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140529

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: 20140617

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140630

R151 Written notification of patent or utility model registration

Ref document number: 5581856

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees