説明

ライセンス管理システム、画像形成装置およびライセンス管理方法

【課題】 ライセンス下のみでアプリケーションプログラムがインストールされ得る画像形成装置に、所定の条件下で追加アプリケーションプログラムをインストールできるようにする。
【解決手段】 複合機1において、記憶装置16は、アプリケーションプログラムの1つとしてSDK管理アプリケーションプログラム102を格納している。演算処理装置17は、SDK管理アプリケーションプログラム102を実行し、当該SDK管理アプリケーションプログラム102のライセンスに対応する正当なライセンスコードを、端末装置2にインストールされているSDK41が有する場合には、管理アプリケーションプログラム102に従って、開発アプリケーションプログラムを要求し、SDK41によるSDKプラットホーム61から、その開発アプリケーションプログラムを取得し記憶装置16にインストールする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ライセンス管理システム、画像形成装置およびライセンス管理方法に関するものである。
【背景技術】
【0002】
複合機などの画像形成装置に商用アプリケーションプログラムをインストールし使用する場合、通常、ライセンス(使用許諾)が必要であり、ライセンスコードの入力、アクティべーションなどの処理を経ないと、商用アプリケーションプログラムが使用可能とならないようになっている。
【0003】
あるシステムでは、アプリケーションと、プラットホームと、キーファイルとがSDメモリカードに格納され、そのSDメモリカードから、キーファイルにおいて指定されている複合機へそのアプリケーションがインストールされた後、複合機が所定のサーバへアクセスしてアクティべーションを要求し、アクティべーションに成功すると、そのアプリケーションが使用可能となる(例えば特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008−16013号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
上述の技術では、ライセンス管理が、サーバを使用したアクティべーションで行われる。このため、ライセンスに合致したアプリケーションプログラムのみが使用可能となる。
【0006】
しかしながら、ライセンスコードの入力、アクティベーション処理などによってライセンス下でのみ商用アプリケーションプログラムがインストールされ得る複合機においては、開発段階のアプリケーションプログラムといった製品化されていない追加アプリケーションプログラムを、サーバを利用したアクティべーションシステムで、通常の商用アプリケーションプログラムと同様にしてインストールすることはできない。
【0007】
したがって、ライセンス下のみでアプリケーションプログラムがインストールされ得る複合機においては、開発段階のアプリケーションプログラムといった追加アプリケーションプログラムをインストールして使用することは困難である。
【0008】
本発明は、上記の問題に鑑みてなされたものであり、ライセンス下のみでアプリケーションプログラムがインストールされ得る画像形成装置に、所定の条件下で追加アプリケーションプログラムをインストールできるライセンス管理システムおよびライセンス管理方法、並びに、それらで使用可能な画像形成装置を得ることを目的とする。
【課題を解決するための手段】
【0009】
上記の課題を解決するために、本発明では以下のようにした。
【0010】
本発明に係るライセンス管理システムは、画像形成装置と、画像形成装置にインストールするための追加アプリケーションプログラムを画像形成装置へ供給する端末装置とを備える。そして、画像形成装置は、ライセンス下でインストールされるアプリケーションプログラムを格納可能な第1記憶装置と、第1記憶装置に格納されているアプリケーションプログラムを実行する第1演算処理装置とを有する。第1記憶装置は、アプリケーションプログラムの1つとして管理アプリケーションプログラムを格納している。第1演算処理装置は、管理アプリケーションプログラムを実行し、当該管理アプリケーションプログラムのライセンスに対応する正当なライセンスコードを、端末装置にインストールされている所定のソフトウェアが有する場合には、管理アプリケーションプログラムに従って、追加アプリケーションプログラムを端末装置に要求し、端末装置から、その追加アプリケーションプログラムを取得し第1記憶装置にインストールする。一方、端末装置は、ライセンス下で所定のソフトウェアをインストールされ、所定のソフトウェアにおけるデータとしてライセンスコードを格納する第2記憶装置と、所定のソフトウェアに含まれるプログラムを実行する第2演算処理装置とを有する。第2演算処理装置は、所定のソフトウェアに含まれるプログラムを実行し、そのプログラムに従って、画像形成装置からの追加アプリケーションプログラムの要求に応答して画像形成装置へ追加アプリケーションプログラムを送信する。
【0011】
これにより、ライセンス下のみでアプリケーションプログラムがインストールされ得る画像形成装置においても、管理アプリケーションがインストールされることで、管理アプリケーションのライセンスの範囲内で、その管理アプリケーションのライセンスに対応するライセンスコードを有する特定のソフトウェアからのみ追加アプリケーションプログラムを取得しインストールできる。
【0012】
また、本発明に係るライセンス管理システムは、上記のライセンス管理システムに加え、次のようにしてもよい。この場合、上述の所定のソフトウェアは、プログラム開発環境を提供するソフトウェア開発キットであり、上述の追加アプリケーションプログラムは、そのソフトウェア開発キットで開発されるアプリケーションプログラムである。
【0013】
これにより、ライセンスが設定されていない開発途中のアプリケーションプログラムであっても、試験的に画像形成装置にインストールして実行させることができる。
【0014】
また、本発明に係るライセンス管理システムは、上記のライセンス管理システムのいずれかに加え、次のようにしてもよい。この場合、ライセンスコードは、所定のソフトウェアがライセンス認証を経て端末装置にインストールされたときに取得され、第2記憶装置に格納される。
【0015】
これにより、正規ではない所定のソフトウェア(不正コピーなど)を使って、追加アプリケーションが画像形成装置へインストールされることを防止できる。
【0016】
また、本発明に係るライセンス管理システムは、上記のライセンス管理システムのいずれかに加え、次のようにしてもよい。この場合、1つの所定のソフトウェアから追加アプリケーションプログラムを、所定の数の画像形成装置に対してのみ提供可能であり、1つの画像形成装置は、所定の数の所定のソフトウェアからのみ追加アプリケーションプログラムを取得可能である。
【0017】
これにより、所定のソフトウェアなどのライセンス条件において、所定のソフトウェアから追加アプリケーションプログラムをインストールできる画像形成装置の数、および画像形成装置へ追加アプリケーションプログラムを提供可能な所定のソフトウェア(つまり端末装置)の数を制限することができる。
【0018】
また、本発明に係るライセンス管理システムは、上記のライセンス管理システムのいずれかに加え、次のようにしてもよい。この場合、第1演算処理装置は、管理アプリケーションプログラムに従って、端末装置に対して、追加アプリケーションプログラムのリストを要求し、リストから選択された追加アプリケーションプログラムを端末装置に対して要求する。そして、第2演算処理装置は、所定のソフトウェアに含まれるプログラムに従って、画像形成装置からの追加アプリケーションプログラムのリストの要求に応答して画像形成装置へ追加アプリケーションプログラムのリストを送信する。
【0019】
また、本発明に係るライセンス管理システムは、上記のライセンス管理システムのいずれかに加え、次のようにしてもよい。この場合、追加アプリケーションプログラムは、管理アプリケーションプログラムからのみ呼び出され、第1演算処理装置により実行される。
【0020】
これにより、追加アプリケーションプログラムを起動させるためには、まず、管理アプリケーションプログラムを起動させる必要がある。このため、ライセンス下でインストールされるアプリケーションプログラムとは区別され、不正にあるいは誤って、追加アプリケーションプログラムを実行させることを防止できる。
【0021】
また、本発明に係るライセンス管理システムは、上記のライセンス管理システムのいずれかに加え、次のようにしてもよい。この場合、画像形成装置は、表示装置と入力装置とを有する。第1演算処理装置は、所定の制御プログラムに従って、第1記憶装置に格納されているアプリケーションプログラムのリストを表示装置に表示させ、入力装置への所定のユーザ操作があると、アプリケーションプログラムのリストから管理アプリケーションプログラムを選択し、管理アプリケーションプログラムを起動する。また、第1演算処理装置は、管理アプリケーションプログラムに従って、第1記憶装置にインストールされている追加アプリケーションのリストを表示装置に表示させ、入力装置へのユーザ操作に従って、追加アプリケーションプログラムのリストから追加アプリケーションプログラムを選択し、その追加アプリケーションプログラムを起動する。
【0022】
また、本発明に係るライセンス管理システムは、上記のライセンス管理システムのいずれかに加え、次のようにしてもよい。この場合、第1演算処理装置は、JAVA仮想マシンとして動作する。また、管理アプリケーションプログラムおよび追加アプリケーションプログラムは、そのJAVA仮想マシン上で動作するJAVAプログラムである。
【0023】
本発明に係る画像形成装置は、ライセンス下でインストールされるアプリケーションプログラムを格納可能な記憶装置と、記憶装置に格納されているアプリケーションプログラムを実行する演算処理装置とを備える。そして、記憶装置は、アプリケーションプログラムの1つとして管理アプリケーションプログラムを格納している。演算処理装置は、管理アプリケーションプログラムを実行し、管理アプリケーションプログラムのライセンスに対応する正当なライセンスコードを、端末装置にインストールされている所定のソフトウェアが有する場合には、管理アプリケーションプログラムに従って、追加アプリケーションプログラムを要求し、端末装置から、その追加アプリケーションプログラムを取得し記憶装置にインストールする。
【0024】
本発明に係るライセンス管理方法は、端末装置から画像形成装置へ追加アプリケーションプログラムを追加インストールする際のライセンス管理方法であって、(a)画像形成装置において、第1演算処理装置で、ライセンス下でインストールされるアプリケーションプログラムを格納可能な第1記憶装置から、アプリケーションプログラムの1つである管理アプリケーションプログラムを読み出して実行し、(b)端末装置において、ライセンス下でインストールされている所定のソフトウェアにおけるデータとしてライセンスコードを格納する第2記憶装置から、第2演算処理装置で、所定のソフトウェアに含まれるプログラムを読み出して実行し、(c)管理アプリケーションプログラムのライセンスに対応する正当なライセンスコードを、端末装置にインストールされている所定のソフトウェアが有する場合には、画像形成装置において、第1演算処理装置で、管理アプリケーションプログラムに従って、追加アプリケーションプログラムを端末装置に要求し、(d)端末装置において、第2演算処理装置で、所定のソフトウェアに含まれるプログラムに従って、画像形成装置からの追加アプリケーションプログラムの要求に応答して画像形成装置へ追加アプリケーションプログラムを送信し、(e)画像形成装置において、第1演算処理装置で、管理アプリケーションプログラムに従って、追加アプリケーションプログラムを受信し第1記憶装置にインストールする。
【0025】
これにより、ライセンス下のみでアプリケーションプログラムがインストールされ得る画像形成装置においても、管理アプリケーションがインストールされることで、管理アプリケーションのライセンスの範囲内で、ライセンスコードを有する特定のソフトウェアからのみ追加アプリケーションプログラムを取得しインストールできる。
【発明の効果】
【0026】
本発明によれば、ライセンス下のみでアプリケーションプログラムがインストールされ得る画像形成装置に、所定の条件下で追加アプリケーションプログラムをインストールできるライセンス管理システムおよびライセンス管理方法、並びに、それらで使用可能な画像形成装置を得ることができる。
【図面の簡単な説明】
【0027】
【図1】図1は、本発明の実施の形態1に係るライセンス管理システムの構成を示すブロック図である。
【図2】図2は、図1に示すシステムにおける複合機にインストールされる商用アプリケーションのインストールパッケージを示す図である。
【図3】図3は、図1に示すシステムにおける複合機に商用アプリケーションプログラムがインストールされ実行されている状態での複合機の構成を示すブロック図である。
【図4】図4は、図3に示すシステムにおいて、複合機へ開発アプリケーションプログラムをインストールする際の処理を示すシーケンス図である。
【図5】図5は、図4に示す処理において、複合機の操作パネルに表示される画面の例を示す図である。
【図6】図6は、図3に示す複合機において、開発アプリケーションプログラムがインストールされている状態での複合機の構成を示すブロック図である。
【図7】図7は、図6に示すシステムにおいて、複合機において開発アプリケーションプログラムが起動される際の処理を示すシーケンス図である。
【図8】図8は、図7に示す処理において、複合機の操作パネルに表示される画面の例を示す図である。
【図9】図9は、図6に示す複合機において、開発アプリケーションプログラムが起動されている状態での複合機の構成を示すブロック図である。
【発明を実施するための形態】
【0028】
以下、図に基づいて本発明の実施の形態を説明する。
【0029】
実施の形態1.
図1は、本発明の実施の形態1に係るライセンス管理システムの構成を示すブロック図である。図1に示すシステムは、複合機1と、開発者端末装置2とを有する。複合機1と、開発者端末装置2との間では、ネットワークなどの通信路を介してデータ通信が可能である。複合機1は、画像形成装置の一種である。開発者端末装置2は、例えばパーソナルコンピュータなどで構成される。
【0030】
複合機1は、プリンタ11と、スキャナ12と、FAX装置13と、操作パネル14と、通信装置15と、記憶装置16と、演算処理装置17とを備える。
【0031】
プリンタ11は、印刷データに基づいて文書画像を印刷する装置である。スキャナ12は、文書から文書画像を光学的に読み取り、文書画像の画像データを生成する装置である。ファクシミリ装置13は、送信すべき文書データからファクシミリ信号を生成し送信するとともに、ファクシミリ信号を受信し文書データに変換する装置である。
【0032】
また、操作パネル14は、複合機1の筐体表面に配置され、ユーザに対して各種情報を表示する表示装置と、ユーザ操作を検出する入力装置とを有する。表示装置としては例えば液晶ディスプレイが使用される。入力装置としては、キースイッチ、タッチパネルなどが使用される。
【0033】
また、通信装置15は、通信路に接続され、開発者端末装置2との間でデータ通信が可能な装置である。複合機1および開発者端末装置2が同一のコンピュータネットワークに接続されている場合には、通信装置15には、ネットワークインタフェースが使用される。複合機1および開発者端末装置2が同一の電話網に接続されている場合には、通信装置15には、モデムが使用される。
【0034】
また、記憶装置16は、各種プログラムおよび各種データを格納可能な装置である。記憶装置16としては、ハードディスクドライブ、不揮発性メモリなどが使用される。
【0035】
また、演算処理装置17は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)などを有するコンピュータであり、記憶装置16などからRAMへプログラムをロードし、そのプログラムをCPUで実行することにより、各種処理部を実現する。
【0036】
記憶装置16には、複合機1の動作に最低限必要なプログラムが少なくとも予め格納されている。そして、複合機1の起動後にそのプログラムが演算処理装置17により適宜実行される。このプログラムにより、オペレーティングシステム(OS)21、コントローラ22、JAVA仮想マシン23、コントローラAPI24およびアプリケーション管理部25が実現される。
【0037】
コントローラ22は、プリンタ11、スキャナ12、ファクシミリ装置13および操作パネル14を制御するとともに、それらとの間でデータ入出力を行う処理部である。
【0038】
コントローラAPI24は、プリンタ11、スキャナ12、ファクシミリ装置13および操作パネル14の機能を実行させたり、それらとの間でデータ入出力を実行させたりする際に、JAVA仮想マシン23上で動作するアプリケーションからの指令に従って、コントローラ22を動作させる処理部である。
【0039】
アプリケーション管理部25は、商用アプリケーションのライフサイクル(インストール、起動、停止およびアンインストール)を管理する処理部である。つまり、アプリケーション管理部25が、商用アプリケーションのインストール、起動、停止およびアンインストールを行う。商用アプリケーションのインストールの詳細に関しては後述する。
【0040】
一方、開発者端末装置2は、記憶装置31と、演算処理装置32と、入力装置33と、表示装置34と、通信装置35とを備える。
【0041】
記憶装置31は、各種プログラムおよび各種データを格納可能な装置である。記憶装置31としては、ハードディスクドライブ、不揮発性メモリなどが使用される。
記憶装置31には、ソフトウェア開発キット51が予め格納されている。
【0042】
ソフトウェア開発キット(SDK)41は、SDKプログラム51およびSDKライセンスコード52を有するソフトウェアである。SDKプログラム51は、複合機1で実行可能なアプリケーションプログラムの開発環境を提供するためのプログラムである。SDKライセンスコード52は、ソフトウェア開発キット51のインストール時に、ライセンス認証の成功後に付与されるデータである。SDKライセンスコード52は、正当なライセンスを有するSDK41に固有なライセンス識別データとして使用される。
【0043】
このSDK41は、後述のSDK管理アプリケーションプログラムと対をなし、ライセンス管理される。したがって、対となるSDK41とSDK管理アプリケーションプログラムには、共通のシリアル番号、共通の識別子などといった、共通情報が付与されている。そして、SDKライセンスコード52は、その共通情報に基づいて生成される。
【0044】
また、演算処理装置32は、CPU、ROM、RAMなどを有するコンピュータであり、記憶装置31などからRAMへプログラムをロードし、そのプログラムをCPUで実行することにより、各種処理部を実現する。
【0045】
開発者端末装置2の起動後に演算処理装置32によりSDKプログラム51が実行されると、SDKプラットホーム61が実現される。SDKプラットホーム61は、ウィンドウズ(登録商標)などOS上で動作し、エディタ、コンパイラ、ライブラリ、デバッガ、シミュレータなどを有するプログラム開発環境を提供する処理部である。SDKプラットホーム61で開発されたあるいは開発途中のアプリケーションプログラム(開発アプリケーションプログラム)71,72は、記憶装置31に格納される。
【0046】
また、入力装置33は、ユーザ操作を検出する装置である。入力装置33としては、キーボード、マウスなどが使用される。表示装置34は、ユーザに対して各種情報を表示する装置である。表示装置34としては、例えば液晶ディスプレイが使用される。
【0047】
また、通信装置35は、通信路に接続され、複合機1との間でデータ通信が可能な装置である。複合機1および開発者端末装置2が同一のコンピュータネットワークに接続されている場合には、通信装置35には、ネットワークインタフェースが使用される。複合機1および開発者端末装置2が同一の電話網に接続されている場合には、通信装置35には、モデムが使用される。
【0048】
次に、図1における複合機1への商用アプリケーションのインストールについて説明する。図2は、図1に示すシステムにおける複合機1にインストールされる商用アプリケーションのインストールパッケージを示す図である。
【0049】
インストールパッケージ1001は、商用アプリケーションプログラム1011、アプリケーション属性情報1012およびライセンスコード1013を有するデータファイルである。正規のインストールパッケージ1001は、正規の発行元により生成されており、正規のアプリケーション属性情報1012およびライセンスコード1013を有する。
【0050】
アプリケーション属性情報1012は、商用アプリケーションプログラム1011を起動する際に必要な情報である。例えば、アプリケーション属性情報1012は、ベンダ情報、バージョン情報、その商用アプリケーションプログラムの起動後最初に表示するウェブページのURLなどを含む。
【0051】
ライセンスコード1013は、商用アプリケーションプログラム1011のライセンス(使用許諾)の認証処理に使用されるデータである。ライセンスコード1013は、ユーザがインストール時に入力したライセンスコードが正しいか否かを判定するために使用されたり、図示せぬアクティベーションサーバに対するアクティベーション要求とともに送信されたりする。
【0052】
このインストールパッケージ1001が、記録媒体または通信媒体から複合機1に格納された後、アプリケーション管理部25は、アプリケーション属性情報1012およびライセンスコード1013を使用して、ライセンス認証処理を実行する。
【0053】
ライセンス認証処理としては、(a)入力画像を操作パネルに表示してユーザに対してライセンスコードの入力を促し、ユーザにより入力されたライセンスコードとライセンスコード1013が一致するか否かに基づいて、ライセンスの有無を判定する処理、および/または(b)図示せぬアクティベーションサーバに対するアクティベーション要求とともにライセンスコード1013を送信し、アクティベーションの可否を含む応答をそのサーバから受信し、その応答に基づいてライセンスの有無を判定する処理が、行われる。
【0054】
なお、ライセンスコード1013をインストールパッケージ1001に含めずに、商用アプリケーションプログラム1011の説明書などの紙面上に印刷しておき、ユーザに入力させるようにしてもよい。その場合、入力されたライセンスコードが、図示せぬアクティベーションサーバに対するアクティベーション要求とともに送信され、アクティベーションの可否を含む応答がそのサーバから受信され、その応答に基づいてライセンスの有無を判定する処理が行われる。
【0055】
そして、ライセンス認証処理においてライセンスが有ると判定した場合、アプリケーション管理部25は、商用アプリケーションプログラム1011、アプリケーション属性情報1012およびライセンスコード1013をインストールパッケージ1001から読み出し、それらを記憶装置16に格納する。
【0056】
これにより、正規のライセンスを有する商用アプリケーションプログラムのみが複合機1にインストールされる。
【0057】
図3は、図1に示すシステムにおける複合機1に商用アプリケーションプログラムがインストールされ実行されている状態での複合機1の構成を示すブロック図である。図3に示す構成では、商用アプリケーションプログラムとして、商用アプリケーションプログラム101およびSDK管理アプリケーションプログラム102がインストールされている。
【0058】
SDK管理アプリケーションプログラム102のライセンスコード1013は、上述の対となるSDK41との共通情報に基づいて生成されている。したがって、一方のライセンスコードに基づいて、その対となる他方のライセンスコードが特定可能とされている。例えば、対となるSDK41とSDK管理アプリケーションプログラム102のライセンスコードを同一の値としてもよい。
【0059】
そして、商用アプリケーションプログラム101がJAVA仮想マシン23上で実行されると、商用アプリケーション111が実現される。また、SDK管理アプリケーションプログラム102がJAVA仮想マシン23上で実行されると、SDK管理アプリケーション112が実現される。
【0060】
SDK管理アプリケーション112は、商用アプリケーションの1つであり、このSDK管理アプリケーション112に対応する特定のSDKプラットホーム61で開発された追加アプリケーションプログラム(開発アプリケーションプログラム71,72)を、その追加アプリケーションプログラムについてのライセンス認証なしでインストールできる処理部である。
【0061】
次に、複合機1への開発アプリケーションプログラムのインストールについて説明する。図4は、図3に示すシステムにおいて、複合機1へ開発アプリケーションプログラムをインストールする際の処理を示すシーケンス図である。図5は、図4に示す処理において、複合機1の操作パネル14に表示される画面の例を示す図である。
【0062】
複合機1のアプリケーション管理部25は、インストール済みの商用アプリケーションプログラムを選択するためのアプリケーションメニューを、例えば図5(A)に示すように操作パネル14の表示装置に表示させる。そして、このメニューにおいて、「SDK管理アプリケーション」が選択されて、「起動」ボタンが押下されると、それらのユーザ操作が操作パネル14の入力装置で検出され、アプリケーション管理部25に通知される(ステップS1)。アプリケーション管理部25は、その通知があると、SDK管理アプリケーションプログラム102を呼び出してSDK管理アプリケーション112を起動する(ステップS2)。
【0063】
SDK管理アプリケーション112は、起動すると、動作メニューを、例えば図5(B)に示すように操作パネル14の表示装置に表示させる。そして、このメニューにおいて、開発アプリケーションのインストールが選択されると、そのユーザ操作が操作パネル14の入力装置で検出され、SDK管理アプリケーション112に通知される(ステップS3)。SDK管理アプリケーション112は、その通知があると、SDKプラットホームのアドレスリストを含む選択画面を、例えば図5(C)に示すように操作パネル14の表示装置に表示させる。このとき、SDK管理アプリケーション112は、予め格納されている設定データに登録されているSDKプラットホームのアドレスを読み出し、表示させる(ステップS4)。なお、図5(C)に示すアドレスの選択画面において、「登録」ボタンが押下されると、新たなアドレスを入力するための入力画面が表示され、その入力画面で新たなアドレスが入力されると、そのアドレスが設定データに登録される。また、その選択画面において、「削除」ボタンが押下されると、選択されているアドレスが、設定データから削除される。
【0064】
そして、このリストにおいて、開発者端末装置2のSDKプラットホーム61のアドレスが選択されて、「次へ」ボタンが押下されると、それらのユーザ操作が操作パネル14の入力装置で検出され、SDK管理アプリケーション112に通知される(ステップS5)。SDK管理アプリケーション112は、その通知があると、選択されたアドレスのSDKプラットホーム61へ、そのSDKプラットホーム61で開発され記憶装置31に格納されている開発アプリケーションプログラム71,72のリストの送信要求を、通信装置15で送信する(ステップS6)。
【0065】
開発者端末装置2のSDKプラットホーム61は、その送信要求を通信装置35で受信すると、SDKプラットホーム61で開発され記憶装置31に格納されている開発アプリケーションプログラム71,72のリストを通信装置35で複合機1へ送信する(ステップS7)。
【0066】
複合機1のSDK管理アプリケーション112は、通信装置15でそのリストを受信すると、そのリストを含む選択画面を、例えば図5(D)に示すように、操作パネル14の表示装置に表示させる(ステップS8)。そして、このリストにおいて、いずれかの開発アプリケーションプログラムが選択され、「インストール」ボタンが押下されると、それらのユーザ操作が操作パネル14の入力装置で検出され、SDK管理アプリケーション112に通知される(ステップS9)。SDK管理アプリケーション112は、その通知があると、ステップS5で選択されたSDKプラットホーム61に対して、ライセンスコードの送信要求を通信装置15で送信する(ステップS10)。
【0067】
開発者端末装置2のSDKプラットホーム61は、その送信要求を通信装置35で受信すると、ライセンスコード52を読み出し、通信装置35で複合機1へ送信する(ステップS11)。
【0068】
複合機1のSDK管理アプリケーション112は、通信装置15でそのライセンスコード52を受信すると、そのライセンスコード52に基づいてSDKプラットホーム61のついての認証処理を実行する(ステップS12)。
【0069】
認証処理では、そのライセンスコード52がSDK管理アプリケーション112のライセンスコードに対応するものであるか否かが判定される。たとえば、両者が一致するか否かで、あるいは、これらの一方に対する所定の関数値が他方の値と一致するか否かで、そのライセンスコード52がSDK管理アプリケーション112のライセンスコードに対応するものであるか否かが判定される。そのライセンスコード52がSDK管理アプリケーション112のライセンスコードに対応するものである場合には、そのライセンスコード52を有するSDKプラットホーム61からの開発アプリケーションプログラム71,72のダウンロードが許可され、そうでない場合には、そのSDKプラットホーム61からの開発アプリケーションプログラム71,72のダウンロードが許可されない。
【0070】
あるいは、この認証処理において、SDK管理アプリケーション112は、図示せぬサーバ装置に、そのライセンスコード52、SDK管理アプリケーション112のライセンスコード、および認証要求を送信し、そのライセンスコード52を有するSDKプラットホーム61からの開発アプリケーションプログラム71,72のダウンロードが許可されるか否かを示す認証結果をそのサーバ装置から受信するようにしてもよい。
【0071】
そして、そのSDKプラットホーム61からの開発アプリケーションプログラムのダウンロードが許可された場合、SDK管理アプリケーション112は、ステップS9で選択された開発アプリケーションプログラムの送信要求を、通信装置15でSDKプラットホーム61へ送信する(ステップS13)。
【0072】
開発者端末装置2のSDKプラットホーム61は、その送信要求を通信装置35で受信すると、その送信要求で指定されている開発アプリケーションプログラムを読み出し、その開発アプリケーションプログラムの属性情報とともに、通信装置35で複合機1へ送信する(ステップS14)。この属性情報には、開発アプリケーションプログラムの名称などが含まれる。
【0073】
複合機1のSDK管理アプリケーション112は、通信装置15でその開発アプリケーションプログラムおよび属性情報を受信すると、その開発アプリケーションプログラムを、記録装置16における所定の記憶領域に格納し、その属性情報に基づいて、図示せぬ追加アプリケーションリストにその開発アプリケーションプログラムを登録する(ステップS15)。この追加アプリケーションリストは、記憶装置16に格納されており、各開発アプリケーションプログラムの名称、格納場所などの属性情報を含む。
【0074】
このようにして開発アプリケーションプログラムのインストールが完了すると、SDK管理アプリケーション112は、インストール完了のメッセージを含む画面を、例えば図5(E)に示すように、操作パネル14の表示装置に表示させる(ステップS16)。その後、その画面におけるOKボタンが押下されると、そのユーザ操作が操作パネル14の入力装置で検出され、SDK管理アプリケーション112に通知される。SDK管理アプリケーション112は、その通知があると、例えば図5(B)に示すように、動作メニュー画面を再度表示させる。
【0075】
このようにして、複合機1への開発アプリケーションプログラムのインストールが行われる。図6は、図3に示す複合機において、開発アプリケーションプログラムがインストールされている状態での複合機1の構成を示すブロック図である。図6に示す構成では、2つの開発アプリケーションプログラム121,122がインストールされている。
【0076】
次に、複合機1にインストールされている開発アプリケーションの起動について説明する。図7は、図6に示すシステムにおいて、複合機1において開発アプリケーションプログラムが起動される際の処理を示すシーケンス図である。図8は、図7に示す処理において、複合機1の操作パネルに表示される画面の例を示す図である。
【0077】
上述したように、複合機1において、アプリケーション管理部25がSDK管理アプリケーション112を起動すると(ステップS1,S2)、SDK管理アプリケーション112は、動作メニューを、例えば図8(A)に示すように操作パネル14の表示装置に表示させる。そして、このメニューにおいて、開発アプリケーションの起動が選択されると、そのユーザ操作が操作パネル14の入力装置で検出され、SDK管理アプリケーション112に通知される(ステップS21)。SDK管理アプリケーション112は、その通知があると、上述の追加アプリケーションリストを参照して、インストール済みの追加アプリケーションプログラム(上述の開発アプリケーションプログラム121,122)を特定し、そのインストール済みの追加アプリケーションプログラムのリストを、例えば図8(B)に示すように、操作パネル14の表示装置に表示させる(ステップS22)。
【0078】
そして、このリストにおいて、いずれかの開発アプリケーションプログラムが選択され、起動ボタンが押下されると、それらのユーザ操作が操作パネル14の入力装置で検出され、SDK管理アプリケーション112に通知される(ステップS23)。SDK管理アプリケーション112は、その通知があると、選択された開発アプリケーションプログラムを特定し、その開発アプリケーションプログラムの属性情報に基づいて、その開発アプリケーションプログラムを呼び出して、開発アプリケーションを起動する(ステップS24)。開発アプリケーションは、起動後に、例えば図8(C)に示すような、その開発アプリケーションの画面を、操作パネル14の表示装置に表示させる。開発アプリケーションプログラムは、JAVA仮想マシン23上で実行される。
【0079】
このようにして、複合機1にインストールされている開発アプリケーションが、SDK管理アプリケーション112により起動される。図9は、図6に示す複合機1において、開発アプリケーションプログラム121,122が起動されている状態での複合機1の構成を示すブロック図である。図9に示す構成では、2つの開発アプリケーションプログラム121,122による開発アプリケーション131,132が動作している。
【0080】
以上のように、上記実施の形態1によれば、複合機1は、ライセンス下でインストールされるアプリケーションプログラムを格納可能な記憶装置16と、記憶装置16に格納されているアプリケーションプログラムを実行する演算処理装置17とを有する。記憶装置16は、アプリケーションプログラムの1つとしてSDK管理アプリケーションプログラム102を格納している。また、演算処理装置17は、SDK管理アプリケーションプログラム102を実行し、当該SDK管理アプリケーションプログラム102のライセンスに対応する正当なライセンスコードを、端末装置2にインストールされているSDK41が有する場合には、管理アプリケーションプログラム102に従って、開発アプリケーションプログラムを要求し、SDK41によるSDKプラットホーム61から、その開発アプリケーションプログラムを取得し記憶装置16にインストールする。一方、端末装置2は、ライセンス下でSDK41をインストールされ、SDK41におけるデータとしてライセンスコード52を格納する記憶装置31と、SDK41に含まれるSDKプログラム51を実行する演算処理装置32とを有する。演算処理装置32は、SDK41に含まれるSDKプログラム51を実行し、そのプログラム51に従って、複合機1からの開発アプリケーションプログラムの要求に応答して複合機1へ開発アプリケーションプログラムを送信する。つまり、SDKプラットホーム61が起動している状態でのみ、開発アプリケーションプログラムが複合機1へ送信される。
【0081】
これにより、ライセンス下のみで商用アプリケーションプログラムがインストールされ得る複合機1においても、SDK管理アプリケーション112がインストールされることで、SDK管理アプリケーション112のライセンスの範囲内で、ライセンスコード52を有する特定のSDK41のSDKプラットホーム61からのみ開発アプリケーションプログラムを取得しインストールできる。
【0082】
したがって、SDK41のライセンス管理が効果的に行うことができる。また、SDK管理アプリケーション112からのみ、開発アプリケーションを起動可能なため、開発アプリケーションプログラムを不正に配布されたとしても、SDK管理アプリケーションのない複合機では、その開発アプリケーションプログラムを実行することができない。
【0083】
また、開発アプリケーションプログラムを試験的に複合機1(つまり、実機)で動作させることができる。
【0084】
実施の形態2.
本発明の実施の形態2に係るライセンス管理システムは、実施の形態1のシステムに加えて、1つのSDK41の開発アプリケーションプログラム71,72は、所定の数(1または複数)の複合機1に対してのみ提供可能であり、1つの複合機1は、所定の数(1または複数)のSDK41(つまり、所定の数のSDK41がインストールされている端末装置2)からのみ追加アプリケーションプログラムを取得可能である。
【0085】
その際、例えば、複合機1では、SDK管理アプリケーション112が、開発アプリケーションプログラムのダウンロード元の端末装置2(あるいはSDKプラットホーム61)の識別情報(ネットワークアドレス、製品シリアル番号など、複合機1が端末装置2から取得可能なもの)を登録していき、所定の数の端末装置2のSDKプラットホーム61からのみ開発アプリケーションプログラムをダウンロードする。
【0086】
また、例えば、端末装置2では、SDKプラットホーム61が、開発アプリケーションプログラムを送信した複合機1の識別情報(ネットワークアドレス、製品シリアル番号など、端末装置2が複合機1から取得可能なもの)を登録していき、所定の数の複合機1のみに開発アプリケーションプログラムを供給する。
【0087】
以上のように、上記実施の形態2によれば、所定のソフトウェアなどのライセンス条件において、所定のソフトウェアから追加アプリケーションプログラムをインストールできる画像形成装置の数、および画像形成装置へ追加アプリケーションプログラムを提供可能な所定のソフトウェア(つまり端末装置)の数を制限することができる。
【0088】
なお、上述の各実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
【0089】
例えば、上記各実施の形態において、複合機1においてアプリケーションプログラムを記憶装置16に格納せずに、通信可能な他の装置における記憶装置16に格納しておき、記憶装置16には、他の装置におけるそのアプリケーションプログラムの格納場所を示す情報(ファイルパス、URLなど)を格納しておくようにしてもよい。その場合、演算処理装置17は、その情報に基づいて、アプリケーションプログラムの格納場所を特定し、他の装置から取得する。
【0090】
また、上記各実施の形態においては、画像形成装置として、複合機1が使用されているが、その代わりに、コピー機、ファクシミリ機などをしようしてもよい。
【0091】
また、上記各実施の形態において、SDKプラットホーム61のアドレスの登録数を、所定の数以下に制限するようにしてもよい。
【0092】
また、上記各実施の形態において、1台の複合機1にインストール可能な開発アプリケーションプログラムの数を、所定の数以下に制限するようにしてもよい。
【0093】
また、上記各実施の形態において、複合機1と端末装置2との間のデータ通信に、可搬性のある記録媒体(USBメモリ、メモリカードなど)を使用してもよい。その場合、通信装置15,35の代わりに、その記録媒体に対するリーダライタがそれぞれ使用される。
【0094】
また、上記各実施の形態において、端末装置2の代わりに、クライアント装置のSDKプラットホームで開発された開発アプリケーションプログラムを保存して管理するサーバ装置から、開発アプリケーションプログラムを複合機1へダウンロードするようにしてもよい。
【0095】
なお、上記各実施の形態において、SDK管理アプリケーションプログラム102、および開発アプリケーションプログラムは、JAVA仮想マシン23上で動作するJAVAプログラムである。
【産業上の利用可能性】
【0096】
本発明は、例えば、複合機にインストールするアプリケーションを開発するSDKのライセンス管理に適用可能である。
【符号の説明】
【0097】
1 複合機(画像形成装置の一例)
2 開発者端末装置(端末装置の一例)
14 操作パネル(表示装置の一例,入力装置の一例)
16 記憶装置(第1記憶装置の一例,記憶装置の一例)
17 演算処理装置(第1演算処理装置の一例,演算処理装置の一例)
23 JAVA仮想マシン
31 記憶装置(第2記憶装置の一例)
32 演算処理装置(第2演算処理装置の一例)
41 ソフトウェア開発キット(所定のソフトウェアの一例)
52 ライセンスコード
61 SDKプラットホーム(所定のソフトウェアの一例)
71,72,121,122 開発アプリケーションプログラム(追加アプリケーションプログラムの一例)
101 商用アプリケーション(アプリケーションプログラムの一例)
102 SDK管理アプリケーションプログラム(管理アプリケーションプログラムの一例)

【特許請求の範囲】
【請求項1】
画像形成装置と、
前記画像形成装置にインストールするための追加アプリケーションプログラムを前記画像形成装置へ供給する端末装置とを備え、
前記画像形成装置は、
ライセンス下でインストールされるアプリケーションプログラムを格納可能な第1記憶装置と、
前記第1記憶装置に格納されている前記アプリケーションプログラムを実行する第1演算処理装置とを有し、
前記第1記憶装置は、前記アプリケーションプログラムの1つとして管理アプリケーションプログラムを格納しており、
前記第1演算処理装置は、前記管理アプリケーションプログラムを実行し、当該管理アプリケーションプログラムのライセンスに対応する正当なライセンスコードを、端末装置にインストールされている所定のソフトウェアが有する場合には、前記管理アプリケーションプログラムに従って、前記追加アプリケーションプログラムを前記端末装置に要求し、前記端末装置から、その追加アプリケーションプログラムを取得し前記第1記憶装置にインストールし、
前記端末装置は、
ライセンス下で前記所定のソフトウェアをインストールされ、前記所定のソフトウェアにおけるデータとして前記ライセンスコードを格納する第2記憶装置と、
前記所定のソフトウェアに含まれるプログラムを実行する第2演算処理装置とを有し、
前記第2演算処理装置は、前記所定のソフトウェアに含まれるプログラムを実行し、そのプログラムに従って、前記画像形成装置からの前記追加アプリケーションプログラムの要求に応答して前記画像形成装置へ前記追加アプリケーションプログラムを送信すること、
を特徴とするライセンス管理システム。
【請求項2】
前記所定のソフトウェアは、プログラム開発環境を提供するソフトウェア開発キットであり、
前記追加アプリケーションプログラムは、前記ソフトウェア開発キットで開発されるアプリケーションプログラムであること、
を特徴とする請求項1記載のライセンス管理システム。
【請求項3】
前記ライセンスコードは、前記所定のソフトウェアがライセンス認証を経て前記端末装置にインストールされたときに取得され、前記第2記憶装置に格納されることを特徴とする請求項1記載のライセンス管理システム。
【請求項4】
1つの前記所定のソフトウェアから前記追加アプリケーションプログラムを、所定の数の前記画像形成装置に対してのみ提供可能であり、
1つの前記画像形成装置は、所定の数の前記所定のソフトウェアからのみ前記追加アプリケーションプログラムを取得可能であること、
を特徴とする請求項1記載のライセンス管理システム。
【請求項5】
前記第1演算処理装置は、前記管理アプリケーションプログラムに従って、前記端末装置に対して、前記追加アプリケーションプログラムのリストを要求し、前記リストから選択された前記追加アプリケーションプログラムを前記端末装置に対して要求し、
前記第2演算処理装置は、前記所定のソフトウェアに含まれるプログラムに従って、前記画像形成装置からの前記追加アプリケーションプログラムのリストの要求に応答して前記画像形成装置へ前記追加アプリケーションプログラムのリストを送信すること、
を特徴とする請求項1記載のライセンス管理システム。
【請求項6】
前記追加アプリケーションプログラムは、前記管理アプリケーションプログラムからのみ呼び出され、前記第1演算処理装置により実行されることを特徴とする請求項1記載のライセンス管理システム。
【請求項7】
前記画像形成装置は、表示装置と入力装置とを有し、
前記第1演算処理装置は、所定の制御プログラムに従って、前記第1記憶装置に格納されているアプリケーションプログラムのリストを前記表示装置に表示させ、前記入力装置への所定のユーザ操作があると、前記アプリケーションプログラムのリストから前記管理アプリケーションプログラムを選択し、前記管理アプリケーションプログラムを起動し、
前記第1演算処理装置は、前記管理アプリケーションプログラムに従って、前記第1記憶装置にインストールされている前記追加アプリケーションのリストを前記表示装置に表示させ、前記入力装置へのユーザ操作に従って、前記追加アプリケーションプログラムのリストから前記追加アプリケーションプログラムを選択し、その追加アプリケーションプログラムを起動すること、
を特徴とする請求項6記載のライセンス管理システム。
【請求項8】
前記第1演算処理装置は、JAVA仮想マシンとして動作し、
前記管理アプリケーションプログラムおよび前記追加アプリケーションプログラムは、前記JAVA仮想マシン上で動作するJAVAプログラムであること、
を特徴とする請求項1から請求項7のいずれか1項記載のライセンス管理システム。
【請求項9】
追加アプリケーションプログラムを当該画像形成装置へ供給する端末装置と通信可能な画像形成装置において、
ライセンス下でインストールされるアプリケーションプログラムを格納可能な記憶装置と、
前記記憶装置に格納されている前記アプリケーションプログラムを実行する演算処理装置とを備え、
前記記憶装置は、前記アプリケーションプログラムの1つとして管理アプリケーションプログラムを格納しており、
前記演算処理装置は、前記管理アプリケーションプログラムを実行し、前記管理アプリケーションプログラムのライセンスに対応する正当なライセンスコードを、前記端末装置にインストールされている所定のソフトウェアが有する場合には、前記管理アプリケーションプログラムに従って、前記追加アプリケーションプログラムを前記端末装置に要求し、前記端末装置から、その追加アプリケーションプログラムを取得し前記記憶装置にインストールすること、
を特徴とする画像形成装置。
【請求項10】
端末装置から画像形成装置へ追加アプリケーションプログラムを追加インストールする際のライセンス管理方法において、
前記画像形成装置において、第1演算処理装置で、ライセンス下でインストールされるアプリケーションプログラムを格納可能な第1記憶装置から、前記アプリケーションプログラムの1つである管理アプリケーションプログラムを読み出して実行し、
前記端末装置において、ライセンス下でインストールされている所定のソフトウェアにおけるデータとしてライセンスコードを格納する第2記憶装置から、第2演算処理装置で、前記所定のソフトウェアに含まれるプログラムを読み出して実行し、
前記管理アプリケーションプログラムのライセンスに対応する正当なライセンスコードを、前記端末装置にインストールされている所定のソフトウェアが有する場合には、前記画像形成装置において、前記第1演算処理装置で、前記管理アプリケーションプログラムに従って、追加アプリケーションプログラムを前記端末装置に要求し、
前記端末装置において、前記第2演算処理装置で、前記所定のソフトウェアに含まれるプログラムに従って、前記画像形成装置からの前記追加アプリケーションプログラムの要求に応答して前記画像形成装置へ前記追加アプリケーションプログラムを送信し、
前記画像形成装置において、前記第1演算処理装置で、前記管理アプリケーションプログラムに従って、前記追加アプリケーションプログラムを受信し前記第1記憶装置にインストールすること、
を特徴とするライセンス管理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2010−186376(P2010−186376A)
【公開日】平成22年8月26日(2010.8.26)
【国際特許分類】
【出願番号】特願2009−30952(P2009−30952)
【出願日】平成21年2月13日(2009.2.13)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVA
【出願人】(000006150)京セラミタ株式会社 (13,173)
【Fターム(参考)】