説明

サービス生成装置、サービス処理システム、処理方法、プログラム及び記録媒体

【課題】
ネットワークサービスを提供する際のライセンス管理を改善する。
【解決手段】
サービスソースからサービスを生成するサービス生成手段と、一乃至複数のインストール先を記憶するインストール先記憶手段と、前記インストール先に応じたライセンスを生成するライセンス生成手段と、前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成手段と、前記インストーラブルバイナリを前記インストール先にインストールするインストール手段とを備えたことを特徴とするサービス生成装置等を提供する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ライセンスに適合するようにサービスを生成し、実行する装置並びにシステムに関する。
【背景技術】
【0002】
従来より、ソフトウエア、プログラム、あるいはサービス(以上のものをまとめて、以下、サービスと称す)を機器にインストールする、あるいは機器上でサービスを実行する際、サービスに組み込まれたライセンスで、サービスをその機器にインストールすることができるか、あるいはサービスを実行できるかを判断し、適正なライセンスを持っていなければ、インストールや実行を許可しない技術が存在している。
例えば、特許文献1,2はそのような技術の一例である。
【0003】
ライセンスはサービスを購入した人に付与する場合と、サービスを実行する機器に対して付与する場合がある。
後者の場合、ライセンスが機器のIDに対して一意になるようにバリエーションを作ることがある。単純には、ライセンスの中に機器IDが含まれようにする。このようにすれば、インストール時あるいは実行時に、ライセンスの中に含まれる機器IDと自機器IDが一致するかどうかを調べて、一致する場合のみ、インストールあるいは実行が可能になるという制御を行うことによって、ライセンスが発行されていない機器へのインストールあるいは実行禁止が達成される。
ライセンスの不正コピーや改竄を防止するため、暗号化技術が用いられることも一般的である。
【0004】
従来技術の構成を図3のブロック図に示す。
管理用PC103から複合機1 102a及び複合機2 102bに対してサービスをインストールする。サービスについては、複合機1 102aに対してインストールするサービスプログラム1 302aと複合機2 102bに対してインストールするサービスプログラム2 302bがCD−ROM301に収められており、それを管理PC103で読み出してインストールする。サービスプログラム1 302aは複合機1 102aに対応するライセンス1 303aを含む。サービスプログラム2 302bは複合機2 102bに対応するライセンス2 303bを含む。
前記2つのサービスプログラムは同一のサービスを提供する。
【0005】
そして、管理用PC103からサービスプログラムをインストールするときは、前述のように動作し、ライセンス適合性を確認しながらインストールを行う。
【0006】
以上のように、ライセンス生成は、不正使用防止の鍵となる技術なので、厳重に管理される。通常は、サービス提供者のサイトにインストールあるいは実行する機器の情報を集めてライセンスを生成し、生成されたライセンスを組み込んだサービスを顧客に提供する。
このようにすることによって、安全性が確保されている。
【0007】
【特許文献1】特開2004−46606号公報
【特許文献2】特開2004−135325号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
しかしながら、上記従来の技術には以下のような課題が存在する。
すなわち、サービスを機器上で動的に生成する場合のライセンス付与方法である。サービスを機器上で動的に生成するような場合、生成する前はサービスが存在していないのだから、ライセンスも作成されていない。このようなサービスに対してライセンスをどのように付与するかが問題になる。
【0009】
自機器だけでなく、他の機器にもサービスをインストールしようとすると、この場合のライセンス付与方法も問題である。
また、ライセンスを一旦、付与したら、それをサービス提供者が知り得るようにしなければ意味がない。ライセンスが動的に生成され、あるいは削除されるとしたら、それがそこに確かにあったという痕跡を残さなければならない。ライセンスがどの機器に対して発行されたのか、機器がそのサービスをどのくらい利用しているか、このような情報を正確にサービス提供者を知ることができなければならない。課金に関連する事項だからである。
但し、たとえサービス提供者のサイトと機器がネットワークで接続されていたとしても、前記の情報を機器からサイトに送ってしまえばよいということにはならない。ライセンスが適正に付与されていることをユーザも把握できるようにすることが望まれる。
【0010】
そして、適用範囲を広げるために、サービス提供者のサイトと機器がネットワーク接続されていることは要件とすべきではない。
また、ライセンス情報やサービス利用状況の情報は不正な手段による変更が困難でなければならない。
【0011】
また、ライセンス管理をサービス提供者のサイトで一元化して行うと、全世界に対して販売する多数の機器に対してライセンスを発行することになりかねず、サイトの負担が増す。従って、サイトの負担を減らすために、ライセンス発行を分散化することも望まれる。
例えば、サービス提供者サイトは各ユーザサイトに対して発行したライセンス数だけを管理し、各ユーザサイトで機器が前記ライセンス数を超えないように、ライセンス管理を行うという形態が好ましい。
【0012】
本発明は、上記の課題に鑑みてなされたものであり、サービスを機器上で動的に生成する場合、事前にライセンスが生成されていなくともライセンスを動的に生成し、ライセンス認証機構を用いながらサービスをインストールあるいは実行することを可能とするサービス生成装置、サービス処理システム、処理方法、プログラム及び記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0013】
本発明のサービス生成装置は、サービスソースからサービスを生成するサービス生成手段と、一乃至複数のインストール先を記憶するインストール先記憶手段と、前記インストール先に応じたライセンスを生成するライセンス生成手段と、 前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成手段と、前記インストーラブルバイナリを前記インストール先にインストールするインストール手段とを備える。
【0014】
本発明のサービス処理システムは、サービスソースからサービスを生成するサービス生成装置と、前記サービスを実行するサービス実行装置とを含むサービス処理システムにおいて、前記サービス生成装置は、サービスソースからサービスを生成するサービス生成手段と、一乃至複数のインストール先であるサービス実行装置を記憶するインストール先記憶手段と、前記インストール先に応じたライセンスを生成するライセンス生成手段と、前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成手段と、前記インストーラブルバイナリを前記インストール先にインストールするインストール手段とを備え、前記サービス実行装置は、前記インストーラブルバイナリを入力するインストーラブルバイナリ入力手段と、前記インストーラブルバイナリのライセンスの条件が自装置に適合するかどうかを判定するライセンス適合性判定手段と、前記ライセンス適合性判定手段が、ライセンス条件が自装置に適合すると判定した場合に、前記インストーラブルバイナリのサービスをインストールするインストール手段とを備える。
【0015】
本発明のサービス生成装置は、サービスソースからサービスを生成するサービス生成手段と、一乃至複数のインストール先を記憶するインストール先記憶手段と、前記インストール先に応じたライセンスを生成するライセンス生成手段と、前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成手段と、前記インストーラブルバイナリを前記インストール先にインストールするインストール手段と、前記インストール先から送られるサービス利用状況を記憶するサービス利用状況記憶手段と、前記インストール先記憶手段もしくは前記サービス利用状況記憶手段に記憶された情報を外部に出力する情報出力手段とを備える。
【0016】
本発明のサービス処理システムは、サービスソースからサービスを生成するサービス生成装置と、前記サービスを実行するサービス実行装置とを含むサービス処理システムにおいて、前記サービス生成装置は、 サービスソースからサービスを生成するサービス生成手段と、一乃至複数のインストール先であるサービス実行装置を記憶するインストール先記憶手段と、前記インストール先に応じたライセンスを生成するライセンス生成手段と、前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成手段と、前記インストーラブルバイナリを前記インストール先にインストールするインストール手段と、前記インストール先から送られるサービス利用状況を記憶するサービス利用状況記憶手段と、前記インストール先記憶手段もしくは前記サービス利用状況記憶手段に記憶された情報を外部に出力する情報出力手段とを備え、前記サービス実行装置は、前記インストーラブルバイナリを入力するインストーラブルバイナリ入力手段と、前記インストーラブルバイナリのライセンスの条件が自装置に適合するかどうかを判定するライセンス適合性判定手段と、前記ライセンス適合性判定手段が、ライセンス条件が自装置に適合すると判定した場合に、前記インストーラブルバイナリのサービスをインストールするインストール手段と、自装置におけるサービス利用状況を前記サービス生成装置に送信するサービス利用状況送信手段とを備える。
【0017】
本発明のサービス生成方法は、サービスソースからサービスを生成するサービス生成工程と、一乃至複数のインストール先を記憶するインストール先記憶工程と、前記インストール先に応じたライセンスを生成するライセンス生成工程と、前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成工程と、前記インストーラブルバイナリを前記インストール先にインストールするインストール工程とを備える。
【0018】
本発明のサービス処理システムの処理方法は、サービスソースからサービスを生成するサービス生成装置の処理方法と、前記サービスを実行するサービス実行装置の処理方法とを含むサービス処理システムの処理方法において、前記サービス生成装置の処理方法は、サービスソースからサービスを生成するサービス生成工程と、一乃至複数のインストール先であるサービス実行装置を記憶するインストール先記憶工程と、前記インストール先に応じたライセンスを生成するライセンス生成工程と、前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成工程と、前記インストーラブルバイナリを前記インストール先にインストールするインストール工程とを備え、前記サービス実行装置の処理方法は、前記インストーラブルバイナリを入力するインストーラブルバイナリ入力工程と、前記インストーラブルバイナリのライセンスの条件が自装置に適合するかどうかを判定するライセンス適合性判定工程と、前記ライセンス適合性判定工程が、ライセンス条件が自装置に適合すると判定した場合に、前記インストーラブルバイナリのサービスをインストールするインストール工程とを備える。
【0019】
本発明のサービス生成方法は、サービスソースからサービスを生成するサービス生成工程と、一乃至複数のインストール先を記憶するインストール先記憶工程と、前記インストール先に応じたライセンスを生成するライセンス生成工程と、前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成工程と、前記インストーラブルバイナリを前記インストール先にインストールするインストール工程と、前記インストール先から送られるサービス利用状況を記憶するサービス利用状況記憶工程と、前記インストール先記憶工程もしくは前記サービス利用状況記憶工程に記憶された情報を外部に出力する情報出力工程とを備える。
【0020】
本発明のサービス処理システムの処理方法は、サービスソースからサービスを生成するサービス生成装置の処理方法と、前記サービスを実行するサービス実行装置の処理方法とを含むサービス処理システムの処理方法において、前記サービス生成装置の処理方法は、サービスソースからサービスを生成するサービス生成工程と、一乃至複数のインストール先であるサービス実行装置を記憶するインストール先記憶工程と、前記インストール先に応じたライセンスを生成するライセンス生成工程と、前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成工程と、前記インストーラブルバイナリを前記インストール先にインストールするインストール工程と、前記インストール先から送られるサービス利用状況を記憶するサービス利用状況記憶工程と、前記インストール先記憶工程もしくは前記サービス利用状況記憶工程に記憶された情報を外部に出力する情報出力工程とを備え、前記サービス実行装置の処理方法は、前記インストーラブルバイナリを入力するインストーラブルバイナリ入力工程と、前記インストーラブルバイナリのライセンスの条件が自装置に適合するかどうかを判定するライセンス適合性判定工程と、前記ライセンス適合性判定工程が、ライセンス条件が自装置に適合すると判定した場合に、前記インストーラブルバイナリのサービスをインストールするインストール工程と、自装置におけるサービス利用状況を前記サービス生成装置に送信するサービス利用状況送信工程とを備える。
【発明の効果】
【0021】
以上の手段を備えることによって、本発明は以下に示す諸効果を奏する。
すなわち、サービスを機器上で動的に生成する場合、事前にライセンスが生成されていなくともライセンスを動的に生成し、ライセンス認証機構を用いながらサービスをインストールあるいは実行することができる。
このようにすることによって、静的なサービスを機器にインストールする時と同じライセンス認証機構を用いることができる。
【0022】
また、自機器だけでなく、他の機器向けにもライセンスを生成し、サービスをインストールあるいは実行することができる。
また、動的に生成したライセンス情報及びそのライセンスを使用してインストールあるいは実行したサービスの利用状況の情報をサービス提供者もしくはユーザが正確に、安全性をもって、知ることができる。
また、前記情報の取得は、サービス提供者のサイトと機器がネットワーク接続されていなくても実現できる。
【0023】
また、ライセンス情報やサービス利用状況の情報は不正な手段による変更が困難である。
また、ライセンス管理をサービス提供者のサイトで一元化して行わず、機器上でライセンス管理を行うことによって、ライセンス管理の分散化が達成され、サービス提供者サイトの負担を減らすことができる。
【発明を実施するための最良の形態】
【0024】
以下、本発明を実施するための最良の形態について図を用いて説明する。
図1は本発明のサービス処理システムの構成を示すブロック図であり、同図において、101はセンター複合機、102は複合機、103は管理用PCであり、互いにネットワークで接続されている。
【0025】
センター複合機101はサービス及びライセンスを生成し、ライセンスを管理するという、本発明の構成において中心的な役割を果たす。複合機102にはサービスがインストールされ、そのサービスを実行する。複合機102におけるサービスの利用状況がセンター複合機101に報告される。
【0026】
管理用PC103はセンター複合機101に対して、サービスのソースをインストールしたり、動的に生成するサービスのインストール先を指定したり、静的に構築されたサービスをセンター複合機101や複合機102に対してインストールしたりする。
センター複合機101あるいは複合機102の内部構成を図2のブロック図を用いて説明する。
【0027】
同図において、センター複合機101あるいは複合機102は、機器全体を制御するところの中央処理装置(以下、CPUと称す)201、各種動作プログラムを読み取り可能に格納したROM202、プログラム動作中の一時的な値の保存に用いるRAM203、各種時間を計測するタイマ204、各種設定メニュー及び画像を表示するディスプレイ205、スキャナ206、プリンタ207、各種操作ボタン208、各種設定データファイルを保存しておくための不揮発性メモリであるFlashROM209、機器外部と接続するインタフェースとなるネットワークI/F210、サービスのソースやバイナリ、各種動作プログラム、各種設定データファイルを保存しておくためのハードディスク(以下、HDと称す)211からなる。
【0028】
本発明で説明するサービスのソースやバイナリ及びライセンス情報は、前記で挙げたいくつかの記録媒体のうち、これに入っていなければならないということはないが、本実施形態ではHD211に格納されているものとする。
【0029】
次に、センター複合機101上で動作するソフトウエアの階層について、図13を用いて説明する。
まず、最下層にハードウエア1301が存在する。その上にハードウエア1301を制御するためのオペレーティングシステム(以下、OSと称す)1302が存在する。OS1302の上には、OS1302上で動作する各種のプログラムが存在する。
その一つにJava(登録商標)仮想マシン(Java(登録商標)は米国Sun Microsystems Inc.の米国およびその他の国における商標または登録商標である。以下、Java(登録商標)VMと称す)1303が存在する。
【0030】
Java(登録商標)VM1303は中間コード形式の一種であるJava(登録商標)バイトコードを実行できる。Java(登録商標)バイトコードは中間コードであるから機器依存度が低く、他の機器に送り込んでそこで実行するのに適している。
本実施形態で説明するサービス1320はJava(登録商標)バイトコードで実現されており、Java(登録商標)VM1303の上で動作する。
【0031】
さらに、OS1302上で動作する各種のコンパイラ、ツールが存在するが、これらについては、図4を用いて説明する。
次に、サービスが生成される流れを図4のブロック図を用いて説明する。
ここでは、サービスのソースとして、Java(登録商標)ソース410とWSDLソース411を挙げている。
【0032】
WSDLとはWeb Services Description Languageの略であり、Webサービスのプロトコルスタックのサービス記述言語である。これはXML(eXtensive Markup Language)で記述され、プラットフォーム非依存である。WSDLソース411は、あるWebサービスのパブリックインタフェースを記述したものである。WSDLソース411を解釈なり、コンパイルするなりして、機器上で動作できる形態にすれば、その形態を組み込んだプログラムはそのWebサービスにアクセスできることになる。このような仕組みは、Webサービスへのアクセス手段の柔軟性を高めることができる。本実施形態では、WSDLソース411は最終的にJava(登録商標)クラス412にコンパイルされるが、本発明の意図するところはこれにとどまらず、他の実行形式でもよい。
【0033】
HD211に格納されたJava(登録商標)ソース410はJava(登録商標)コンパイラ401によって、Java(登録商標)クラスファイル412にコンパイルされる。Java(登録商標)クラスファイル412はJava(登録商標)バイトコードで記述され、Java(登録商標)VM1303はこれを実行できる。
なお、Java(登録商標)コンパイラ401やJava(登録商標)VM1303といったソフトウエアの動作の主体はCPU201である。以降、同様の場合は説明を控える。
【0034】
HD211に格納されたWSDLソース411が変換されるルートは2つある。
一つは、WSDL2Java(登録商標)ツール402がWSDLソース411をJava(登録商標)ソース410に変換してから、前記と同様、Java(登録商標)コンパイラ401がそのJava(登録商標)ソース410をJava(登録商標)クラスファイル412に変換するルートである。
【0035】
もう一つは、WSDLコンパイラ403がWSDLソース411を直接、Java(登録商標)クラスファイル412に変換するルートである。双方のルートを備えていなければならないということはなく、どちらか片方に対応していればよい。これは変換の多様性を示すものである。
最終的に、Java(登録商標)ソース410、WSDLソース411共、Java(登録商標)クラスファイル412に変換される。
【0036】
次に、アーカイバ404はJava(登録商標)クラスファイル412、リソースファイル415及びマニフェストファイル416を組み合わせて、Jarファイル417を生成する。Jarファイル417はJava(登録商標)VM1303が実行できる形式のファイルである。
ここで、リソースファイル415あるいはマニフェストファイル416は静的に最初から与えられてもよいし、動的に作成されてもよい。Java(登録商標)言語でサービスを作る場合は、これらのファイルをサービスの機能の一部とすることができる。
【0037】
次に、サービスをインストールする先の機器に応じて、ライセンスファイルが生成され、HD211に格納される。
最後に、アーカイバ404がJarファイル417とライセンスファイル413をまとめて、インストーラブルバイナリ414を作成する。
【0038】
なお、Jarファイル417の生成は必須ではない。Jarファイル417の形式にまとめなくても、Java(登録商標)VM1303はサービスを実行可能だからである。Java(登録商標)クラスファイル412、リソースファイル415、マニフェストファイル416及びライセンスファイル413をアーカイバ404によってまとめて、インストーラブルバイナリ404を作成してもよい。
【0039】
以降、サービスという語は、実行可能な形式の単位という意味では、Jarファイル417、あるいはJava(登録商標)クラスファイル412、リソースファイル415、マニフェストファイル416の組み合わせの形式を指すものとし、インストール可能な単位という意味では、インストーラブルバイナリ414を指すものとする。
【0040】
サービスソースはJava(登録商標)ソース410、WSDLソース411、リソースファイル415、あるいはマニフェストファイル416を指すものとする。但し、本発明上、サービスソースの役割として重要なのは、Java(登録商標)ソース410及びWSDLソース411であるので、これらを主にサービスソースとして扱う。
【0041】
次に、サービス処理システムの動作について、フローチャートを用いて説明する。
図5のフローチャートはサービス処理システムのサービスインストール手順を示した図である。
同図において最初に、管理用PC103から、Java(登録商標)ソース410及びWSDLソース411がセンター複合機101にインストールされる(ステップS501)。格納場所はHD211である。必ず、両者をインストールしなければならないということはなく、原理上、片方のソースでもサービス生成は可能であるが、ここでは両者をインストールしている。
【0042】
次に、前記でインストールしたソースからサービスを生成する(ステップS502)。
サービス生成手順ステップS502の詳細は図6のフローチャートで示される。最初に、センター複合機101のJava(登録商標)コンパイラ401はHD211上のJava(登録商標)ソース410をコンパイルし、Java(登録商標)クラスファイル412を生成する(ステップS601)。
次に、センター複合機101のWSDLコンパイラ403がHD211上のWSDLソース411をコンパイルし、Java(登録商標)クラスファイル412を生成する(ステップS602)。
【0043】
最後に、センター複合機101のアーカイバ404がJava(登録商標)クラスファイル412、リソースファイル415及びマニフェストファイル416を組み合わせて、Jarファイル417を生成する(ステップS603)。
ステップS502の次の手順として、サービスのインストール先である複合機102を指定するために、複合機102のアドレス情報を入力する(ステップS503)。インストール先は自分、つまりセンター複合機101でも構わないが、ここでは他の複合機102にもインストールできることを示している。
【0044】
インストール先は一乃至複数個、指定できる。
インストール先の指定は、センター複合機101のディスプレイ205と操作ボタン208を用いて、センター複合機101上で行ってもよいし、管理用PC103からWebブラウザ等の手段を用いて行ってもよい。
【0045】
インストール先の指定を受けたセンター複合機101は、指定された全てのインストール先について、以下の処理を繰り返す。
まず、全てのインストールが終了したかどうかを判定する(ステップS513)。終了していれば、図5のシーケンスを終了する。
終了していなければ、センター複合機101は、インスト−ルが終了していない複合機102を一つ選択し、そのIDを取得する(ステップS504)。これは例えば、複合機102のシリアルNo.を取得することになる。アドレス情報がそのままIDとして利用可能ならば、それを用いることもできる。
【0046】
次に、前ステップで得たIDを基に、ライセンスファイル413を生成する(ステップS505)。ライセンスファイル413には、前記IDが含まれる。あるいは、セキュリティ向上のために、前記含まれるID部分もしくはライセンスファイル413全体が暗号化され、なりすまし、改竄を困難にする。
【0047】
図示しないが、ライセンスファイル413は、インストール手順終了後、削除するのが通常である。悪用されないためである。但し、暗号化技術等を用いて、ライセンスファイル413自体の悪用が防止できるのであれば、次のサービスのインストール時に備えて、ライセンスファイル413を残しておいてもよい。そのようにすると、ID取得及びライセンスファイル413生成の手間が省ける。
【0048】
次に、センター複合機101のアーカイバ404はJarファイル417とライセンスファイル413を組み合わせて、インストーラブルバイナリ414を生成する(ステップS506)。
そして、センター複合機101は、生成されたインストーラブルバイナリ414を複合機102にインストールする(ステップS507)。
インストール先である複合機102では、ネットワークを通じてインストールのために送られてきたインストーラブルバイナリ414を受信し、インストーラブルバイナリ414からライセンスファイル413を抽出して、該ライセンスファイル413の中に含まれるIDが自分のIDと一致するかをチェックすることにより、ライセンスの確認を行う(ステップS508)。
【0049】
IDが一致する、すなわち、ライセンスが有効である場合は、インストーラブルバイナリ414に含まれているサービスであるところのJarファイル417を抽出し、HD211にインストールする(ステップS510)。
最後に、インストールしたサービスを開始して(ステップS511)、ステップS513に戻る。
ステップS509でライセンスが有効でないと判定された場合は、エラー処理をして(ステップS512)、ステップS513に戻る。
【0050】
以上の手順によって、一つのサービスを一乃至複数の複合機102にインストールすることができる。図示はしないが、どの複合機102にどのサービスをインストールしたか、または、どのサービスをどの複合機102にインストールしたかというデータをセンター複合機101は管理しているものとする。
【0051】
また、サービスを追加インストールすることも可能である。サービスインストールが一旦終了した後も、センター複合機101はすぐにサービスソースあるいはJarファイル417をHD211から削除することはしない。ユーザが明示的な削除の指示があるまで(図示なし)残しておく。残しておいたサービスを、未インストール複合機102に対してインストールする指示をユーザが行った場合、ステップS503からの手順をたどることによって、インストールが可能である。
【0052】
次にサービス利用状況の取得及び出力について、図7及び図9を用いて説明する。
サービス利用状況について説明する。複合機102では、スキャナ206やプリンタ207の利用回数をカウントしている。サービス利用に対する課金はこのカウント情報に基づいて行われる。利用回数のカウンタは厳重なセキュリティによって守られ、例えばカウンタを不正に減じることができないようにしている。これは仕様がオープンである汎用PCに比べると、独自仕様機器の利点である。また、サービスの利用状況として、スキャナ206やプリンタ207の利用回数で判断するには不都合がある場合は、他の要素を利用状況に加えてもよい。例えば、サービスの稼働日数を利用状況に入れることも考えられる。
【0053】
それを示したのが、図9の表である。同図では、サービス毎に、スキャンカウンタ901、プリントカウンタ902、及び稼働日数903というサービス利用状況を示す項目が用意され、サービスが利用される度に、項目データが更新されるようになっている。
【0054】
図9の表に示したデータはHD211あるいは、FlashROM209に保存される。
サービス利用状況を示す項目はこれらに限らず、あるサービス独自の項目を追加してもよい。
新たなサービスがインストールされる度に、行が増やされ、新たなサービスに対するカウントが開始される。
【0055】
なお、図9では、サービス毎にデータ項目を設けているが、さらにこれを細分化し、各サービスのデータをインストール先の複合機102別に分けてもよい(図示せず)。その場合は、各サービスがどの複合機102にインストールされているかということも図9の表が示すことになる。
【0056】
従って、複合機102別にサービス利用状況、すなわちライセンス付与状況を管理できることになる。
もちろん、図9の表の形式以外でもこれを実現できることは、同業者にとって自明の理である。
【0057】
次に、図7を用いて、サービス利用状況を取得する手順について説明する。
センター複合機101はサービスをインストールした複合機102からサービスの利用状況を集計する(ステップS701)。集計の方法は、センター複合機101が複合機102に問い合わせを行って、複合機102が応答する方法でもよいし、複合機102がサービスの利用の度に、あるいは所定の時間毎に、センター複合機に対して報告するという方法でもよい。
【0058】
次に、センター複合機101はユーザからのサービス利用状況出力要求があるかどうかを判定する(ステップS702)。サービス利用状況出力要求があった場合、例えば、ユーザが管理用PC103からサービス利用状況出力を要求する操作を行った場合、図9の表に示したデータが記録媒体から読み出され、管理用PC103に向けて出力され(ステップS703)、終了する。サービス利用状況出力要求がない場合は、何もせず終了する。
【0059】
次に、図8のフローチャートを用いて、サービスをアンインストールする手順について説明する。
ユーザが管理用PC103から、あるサービスのアンインストールを指示したとする(ステップS801)。
ユーザはその時、アンインストール対象となる複合機102を一乃至複数個指示する(ステップS802)。
センター複合機101はアンインストール指示された全ての複合機102について以下の手順を繰り返す。
【0060】
すなわち、まず、アンインストール指示された全ての複合機102について、アンインストールが終了したかどうかを判定する(ステップS803)。
まだ、アンインストールすべき複合機102が残っていれば、その中から一つの複合機102を選択し、サービスが動作していれば、停止する(ステップS804)。
【0061】
次に、該サービスをHD211からアンインストールする(ステップS805)。具体的には、サービスのJarファイル417がHD211の所定の場所から削除される。
そして、まだ複合機102からセンター複合機101に対して送っていないサービス利用状況データがあれば(最後のサービス利用状況報告がされた後に、サービス利用があった場合、そのようなデータが存在する)、センター複合機101はそのデータを集計する(ステップS806)。そして、ステップS803に戻る。
【0062】
ステップS803で全てのアンインストールが終了したと判定された場合、ユーザがアンインストール時に指定したオプションから(図示せず)、センター複合機101はサービスソースの削除も行うかどうかを判定する(ステップS807)。
ユーザが「アンインストール時にサービスのソースも削除」というオプションをONにしていれば、サービスのソースをHD211から削除する(ステップS808)。そして、終了する。
【0063】
次に、サービスをインストールする手順について、センター複合機101と複合機102の各々の手順を示したものを図10のフローチャートを用いて説明する。
同図において最初に、管理用PC103から、Java(登録商標)ソース410及びWSDLソース411がセンター複合機101にインストールされる(ステップS1001)。格納場所はHD211である。必ず、両者をインストールしなければならないということはなく、原理上、片方のソースでもサービス生成は可能であるが、ここでは両者をインストールしている。
【0064】
次に、前記でインストールしたソースからサービスを生成する(ステップS1002)。
サービス生成手順ステップS1002の詳細は図6のフローチャートで示される。
次に、サービスのインストール先である複合機102を指定するために、複合機102のアドレス情報を入力する(ステップS1003)。インストール先は自分、つまりセンター複合機101でも構わないが、ここでは他の複合機102にもインストールできることを示している。
【0065】
インストール先は一乃至複数個、指定できる。
インストール先の指定は、センター複合機101のディスプレイ205と操作ボタン208を用いて、センター複合機101上で行ってもよいし、管理用PC103からWebブラウザ等の手段を用いて行ってもよい。
【0066】
インストール先の指定を受けたセンター複合機101は、指定された全てのインストール先について、以下の処理を繰り返す。
まず、全てのインストールが終了したかどうかを判定する(ステップS1004)。終了していれば、図10のシーケンスを終了する。
終了していなければ、センター複合機101は、インスト−ルが終了していない複合機102を一つ選択し、その複合機102に対してIDを問い合わせる(ステップS1005)。
【0067】
複合機102ではID問い合わせを受信すると(ステップS1051)、自分のIDを返信する(ステップS1052)。
センター複合機101は返信されたIDを取得する(ステップS1006)。
次に、前ステップで得たIDを基に、ライセンスファイル413を生成する(ステップS1007)。ライセンスファイル413には、前記IDが含まれる。あるいは、セキュリティ向上のために、前記含まれるID部分もしくはライセンスファイル413全体が暗号化され、なりすまし、改竄を困難にする。
【0068】
次に、センター複合機101のアーカイバ404はJarファイル417とライセンスファイル413を組み合わせて、インストーラブルバイナリ414を生成する(ステップS1008)。
そして、センター複合機101は、生成されたインストーラブルバイナリ414を複合機102にインストールする(ステップS1009)。
【0069】
インストール先である複合機102では、ネットワークを通じてインストールのために送られてきたインストーラブルバイナリ414を受信する(ステップS1061)。
次に、インストーラブルバイナリ414からライセンスファイル413及びJarファイル417を抽出する(ステップS1062)。
【0070】
そして、該ライセンスファイル413の中に含まれるIDを取得した(ステップS1063)後、それが自分のIDと一致するかをチェックする(ステップS1064)。
IDが一致する、すなわち、ライセンスが有効である場合は、Jarファイル417をHD211にインストールする(ステップS1065)。
【0071】
次に、インストールしたサービスを開始する(ステップS1066)。
最後に成功をセンター複合機101に通知して(ステップS1068)、終了する。
ステップS1064でライセンスが有効でないと判定された場合は、センター複合機101にエラー通知をして(ステップS1067)、終了する。
【0072】
一方、センター複合機101は、ステップS1067のエラー通知かステップS1068の成功通知を待つ(ステップS1010)。エラーが通知されれば、処理中の複合機102に対してインストールが失敗した旨のエラーを表示して(ステップS1011)、ステップS1004に戻る。成功通知があれば、エラー表示はしないで、ステップS1004に戻る。なお、ID通知やライセンスファイル生成が正しく行われていれば、プログラムのバグでもない限り、通常エラーは起こりえない。
【0073】
次に、図11を用いて、サービス利用状況を取得する手順のもう一つの実施形態について説明する。
センター複合機101は複合機102からサービス利用状況が通知されたかどうかを監視している(ステップS1101)。
通知された場合は、その利用状況を集計する(ステップS1102)。例えば、図9のサービス1 904について、複合機1 102aからスキャンカウンタ901が増分3という報告があった場合、該当項目のデータを+3インクリメントする。
【0074】
なお、図9では、サービス毎のデータ集計を行っているが、さらに、これをインストール先の複合機102毎に集計するという細分化をしてもよい。そのときは、複合機2 102bでのサービス1 904の利用は、異なるデータとしてインクリメントされることになる。
【0075】
次に、センター複合機101は、管理用PC103からサービスの利用状況出力要求があるかどうかを監視する(ステップS1103)。
要求があった場合は、サービス利用状況として、図9のデータを出力する(ステップS1104)。
【0076】
次に、センター複合機101は、管理用PC103からサービス利用状況データのクリア要求があるかどうかを監視する(ステップS1105)。
所定の期間ごとにサービス利用状況を集計して課金を行う場合、集計した後はサービス利用状況をクリアしてしまって、0から再開するのが分かりやすい。それを行うため、管理用PC103からサービス利用状況データがクリアできるようになっている。
サービス利用状況クリア要求があった場合は、クリア要求されたサービスの利用状況をクリアする(ステップS1106)。例えばサービス1 904についてクリア要求があった場合は、図9のサービス1 904の行のデータをクリアする。
そして、ステップS1101に戻って監視を続ける。
【0077】
次に、サービスをアンインストールする手順について、センター複合機101と複合機102の各々の手順を示したものを図12のフローチャートを用いて説明する。
ユーザが管理用PC103から、あるサービスのアンインストールを指示したとする(ステップS1201)。
ユーザはその時、アンインストール対象となる複合機102を一乃至複数個指示する(ステップS1202)。
【0078】
センター複合機101はアンインストール指示された全ての複合機102について以下の手順を繰り返す。
すなわち、まず、アンインストール指示された全ての複合機102について、アンインストールが終了したかどうかを判定する(ステップS1203)。
まだ、アンインストールすべき複合機102が残っていれば、その中から一つの複合機102を選択し、その複合機102に対し、サービスアンインストール要求を行う(ステップS1204)。
【0079】
サービスアンインストール要求を受けた複合機102はそのサービスを動作させていれば、停止する(ステップS1251)。
次に、該サービスをHD211からアンインストールする(ステップS1252)。具体的には、サービスのJarファイル417をHD211の所定の場所から削除する。
そして、まだ複合機102からセンター複合機101に対して未通知のサービス利用状況データがあれば(最後のサービス利用状況報告がされた後に、サービス利用があった場合、そのようなデータが存在する)、通知する(ステップS1253)。
センター複合機101はその利用状況データを受信し、集計する(ステップS1205)。
【0080】
複合機102はアンインストールが終了すると、アンインストール完了通知をセンター複合機101に送る(ステップS1254)。
センター複合機101はアンインストール完了通知を受けるまで待ち(ステップS1206)、通知を受けると、ステップS1203に戻る。
ステップS1203で全てのアンインストールが終了したと判定された場合、ユーザがアンインストール時に指定したオプションから(図示せず)、センター複合機101はサービスソースの削除も行うかどうかを判定する(ステップS1207)。
ユーザが「アンインストール時にサービスのソースも削除」というオプションをONにしていれば、サービスのソースをHD211から削除する(ステップS1208)。そして、終了する。
【0081】
以上の実施形態では、サービスの例として、Java(登録商標)ソース410やWSDLソース411をJava(登録商標)クラスファイル412にコンパイルして、それをJava(登録商標)VM1303上で動作させる形態について説明してきたが、サービスの形態はこれにとどまらない。
同業者であれば、サービスは言語非依存であり、Java(登録商標)以外のプログラム記述言語でも本発明が達成され得ることは容易に理解できよう。
【0082】
また、WSDLソース411を使用した実施形態を説明したが、本発明はこれにとどまらず、最終的に実行可能なサービス形式に至るのであれば、他のソース形式であってもよいことも明白である。
【0083】
また、以上の実施形態では、これまで説明してきたサービス処理システムのサービスインストール元の機器がセンター複合機101であり、サービスインストール先の機器が複合機102あるとして説明してきた。
センター複合機101のような機器では、HD211等の内部記録媒体に外部からアクセスできる手段が限られ、内部記録媒体上に存在する情報を不正に書き換えることが一般的なコンピュータに比べると困難である。また、一般的なコンピュータと違って、独自仕様を盛り込めるので、セキュリティ向上のため様々な対策を施すことができる。その意味では、ライセンス管理の安全性がより高い。
【0084】
しかし、本発明を実施するのにそれらが複合機でなければならないということはない。両者は一般的なコンピュータでもよい。
但し、サービス処理システムが汎用的なOS、汎用的なCPUで構成されていると、ライセンス管理情報が不正に改竄される可能性が高まる。そこで、サービス処理システムに一般的なコンピュータを用いる場合は、ライセンス管理情報にさらに暗号化技術を用いて、不正なアクセスを困難にすることが考えられる。
【0085】
以上、本発明について説明してきたが、本発明は、ハードウエアを必要とするものの、それぞれの装置上で動作するプログラムにより実現可能である。従って、前述した実施形態の機能を実現するソフトウエアのプログラム、及びプログラムコードを記憶した記録媒体においても、それを読み出してコンピュータによって実行することにより、上記機能を実現することが可能である。
【図面の簡単な説明】
【0086】
【図1】本発明に係るサービス処理システムの構成を示すブロック図である。
【図2】センター複合機または複合機の内部構成を示すブロック図である。
【図3】従来の構成を示すブロック図である。
【図4】サービスが生成される流れを示した図である。
【図5】サービスインストール手順を示したフローチャートである。
【図6】サービス生成手順を示したフローチャートである。
【図7】サービス利用状況取得手順を示したフローチャートである。
【図8】サービスアンインストール手順を示したフローチャートである。
【図9】サービス利用状況データの構造を示した表を示す図である。
【図10】サービスインストール手順を示したフローチャートである。
【図11】サービス利用状況取得手順を示したフローチャートである。
【図12】サービスアンインストール手順を示したフローチャートである。
【図13】サービス生成装置のソフトウエア階層を示した図である。
【符号の説明】
【0087】
101… センター複合機
102… 複合機
103… 管理用PC
201… CPU
211… ハードディスク
401… Java(登録商標)コンパイラ
403… WSDLコンパイラ
404… アーカイバ
410… Java(登録商標)ソース
411… WSDLソース
412… Java(登録商標)クラスファイル
413… ライセンスファイル
414… インストーラブルバイナリ
417… Jarファイル
1303… Java(登録商標)VM

【特許請求の範囲】
【請求項1】
サービスソースからサービスを生成するサービス生成手段と、
一乃至複数のインストール先を記憶するインストール先記憶手段と、
前記インストール先に応じたライセンスを生成するライセンス生成手段と、
前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成手段と、
前記インストーラブルバイナリを前記インストール先にインストールするインストール手段と
を備えたことを特徴とするサービス生成装置。
【請求項2】
サービスソースからサービスを生成するサービス生成装置と、前記サービスを実行するサービス実行装置とを含むサービス処理システムにおいて、
前記サービス生成装置は、
サービスソースからサービスを生成するサービス生成手段と、
一乃至複数のインストール先であるサービス実行装置を記憶するインストール先記憶手段と、
前記インストール先に応じたライセンスを生成するライセンス生成手段と、
前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成手段と、
前記インストーラブルバイナリを前記インストール先にインストールするインストール手段とを備え、
前記サービス実行装置は、
前記インストーラブルバイナリを入力するインストーラブルバイナリ入力手段と、
前記インストーラブルバイナリのライセンスの条件が自装置に適合するかどうかを判定するライセンス適合性判定手段と、
前記ライセンス適合性判定手段が、ライセンス条件が自装置に適合すると判定した場合に、前記インストーラブルバイナリのサービスをインストールするインストール手段と
を備えたことを特徴とするサービス処理システム。
【請求項3】
サービスソースからサービスを生成するサービス生成手段と、
一乃至複数のインストール先を記憶するインストール先記憶手段と、
前記インストール先に応じたライセンスを生成するライセンス生成手段と、
前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成手段と、
前記インストーラブルバイナリを前記インストール先にインストールするインストール手段と、
前記インストール先から送られるサービス利用状況を記憶するサービス利用状況記憶手段と、
前記インストール先記憶手段もしくは前記サービス利用状況記憶手段に記憶された情報を外部に出力する情報出力手段と
を備えたことを特徴とするサービス生成装置。
【請求項4】
サービスソースからサービスを生成するサービス生成装置と、前記サービスを実行するサービス実行装置とを含むサービス処理システムにおいて、
前記サービス生成装置は、
サービスソースからサービスを生成するサービス生成手段と、
一乃至複数のインストール先であるサービス実行装置を記憶するインストール先記憶手段と、
前記インストール先に応じたライセンスを生成するライセンス生成手段と、
前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成手段と、
前記インストーラブルバイナリを前記インストール先にインストールするインストール手段と、
前記インストール先から送られるサービス利用状況を記憶するサービス利用状況記憶手段と、
前記インストール先記憶手段もしくは前記サービス利用状況記憶手段に記憶された情報を外部に出力する情報出力手段とを備え、
前記サービス実行装置は、
前記インストーラブルバイナリを入力するインストーラブルバイナリ入力手段と、
前記インストーラブルバイナリのライセンスの条件が自装置に適合するかどうかを判定するライセンス適合性判定手段と、
前記ライセンス適合性判定手段が、ライセンス条件が自装置に適合すると判定した場合に、前記インストーラブルバイナリのサービスをインストールするインストール手段と、
自装置におけるサービス利用状況を前記サービス生成装置に送信するサービス利用状況送信手段と
を備えたことを特徴とするサービス処理システム。
【請求項5】
サービスソースからサービスを生成するサービス生成工程と、
一乃至複数のインストール先を記憶するインストール先記憶工程と、
前記インストール先に応じたライセンスを生成するライセンス生成工程と、
前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成工程と、
前記インストーラブルバイナリを前記インストール先にインストールするインストール工程と
を備えたことを特徴とするサービス生成方法。
【請求項6】
サービスソースからサービスを生成するサービス生成装置の処理方法と、前記サービスを実行するサービス実行装置の処理方法とを含むサービス処理システムの処理方法において、
前記サービス生成装置の処理方法は、
サービスソースからサービスを生成するサービス生成工程と、
一乃至複数のインストール先であるサービス実行装置を記憶するインストール先記憶工程と、
前記インストール先に応じたライセンスを生成するライセンス生成工程と、
前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成工程と、
前記インストーラブルバイナリを前記インストール先にインストールするインストール工程とを備え、
前記サービス実行装置の処理方法は、
前記インストーラブルバイナリを入力するインストーラブルバイナリ入力工程と、
前記インストーラブルバイナリのライセンスの条件が自装置に適合するかどうかを判定するライセンス適合性判定工程と、
前記ライセンス適合性判定工程が、ライセンス条件が自装置に適合すると判定した場合に、前記インストーラブルバイナリのサービスをインストールするインストール工程と
を備えたことを特徴とするサービス処理システムの処理方法。
【請求項7】
サービスソースからサービスを生成するサービス生成工程と、
一乃至複数のインストール先を記憶するインストール先記憶工程と、
前記インストール先に応じたライセンスを生成するライセンス生成工程と、
前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成工程と、
前記インストーラブルバイナリを前記インストール先にインストールするインストール工程と、
前記インストール先から送られるサービス利用状況を記憶するサービス利用状況記憶工程と、
前記インストール先記憶工程もしくは前記サービス利用状況記憶工程に記憶された情報を外部に出力する情報出力工程と
を備えたことを特徴とするサービス生成方法。
【請求項8】
サービスソースからサービスを生成するサービス生成装置の処理方法と、前記サービスを実行するサービス実行装置の処理方法とを含むサービス処理システムの処理方法において、
前記サービス生成装置の処理方法は、
サービスソースからサービスを生成するサービス生成工程と、
一乃至複数のインストール先であるサービス実行装置を記憶するインストール先記憶工程と、
前記インストール先に応じたライセンスを生成するライセンス生成工程と、
前記サービス及び前記ライセンスからインストーラブルバイナリを生成するインストーラブルバイナリ生成工程と、
前記インストーラブルバイナリを前記インストール先にインストールするインストール工程と、
前記インストール先から送られるサービス利用状況を記憶するサービス利用状況記憶工程と、
前記インストール先記憶工程もしくは前記サービス利用状況記憶工程に記憶された情報を外部に出力する情報出力工程とを備え、
前記サービス実行装置の処理方法は、
前記インストーラブルバイナリを入力するインストーラブルバイナリ入力工程と、
前記インストーラブルバイナリのライセンスの条件が自装置に適合するかどうかを判定するライセンス適合性判定工程と、
前記ライセンス適合性判定工程が、ライセンス条件が自装置に適合すると判定した場合に、前記インストーラブルバイナリのサービスをインストールするインストール工程と、
自装置におけるサービス利用状況を前記サービス生成装置に送信するサービス利用状況送信工程と
を備えたことを特徴とするサービス処理システムの処理方法。
【請求項9】
コンピュータに、請求項5又は7に記載のサービス生成方法を実行させるためのプログラム。
【請求項10】
請求項9に記載のプログラムが記録されたコンピュータ読み取り可能な記録媒体。
【請求項11】
コンピュータに、請求項6又は8に記載のサービス処理システムの処理方法を実行させるためのプログラム。
【請求項12】
請求項11に記載のプログラムが記録されたコンピュータ読み取り可能な記録媒体。

【図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

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2006−285774(P2006−285774A)
【公開日】平成18年10月19日(2006.10.19)
【国際特許分類】
【出願番号】特願2005−106577(P2005−106577)
【出願日】平成17年4月1日(2005.4.1)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】