(57)【特許請求の範囲】
【請求項１】
モジュールのライセンスを管理する更新用カードの情報を取得する取得手段と、
前記取得手段により取得された前記更新用カードの情報に基づいて、前記モジュールの更新が許容されているかを判定する判定手段と、
前記判定手段により前記モジュールの更新が許容されていると判定された場合、情報提供装置に前記モジュールの情報を送信するとともに、前記情報提供装置から前記モジュールを受信する通信手段と、
前記通信手段により受信された前記モジュールを更新するとともに、前記モジュールのライセンス数を１減じて、前記更新用カードに書き込む制御手段とを備え、
前記制御手段は、前記判定手段により前記モジュールを更新できると判定された場合、前記モジュールが更新中であることを示す稼働中フラグをセットして、前記更新用カードに書き込み、
前記判定手段は、前記通信手段により前記モジュールを受信した場合、前記更新用カードに書き込まれている前記稼働中フラグがセットされているかをさらに判定し、
前記制御手段は、前記判定手段により前記稼働中フラグがセットされていると判定されたとき、前記通信手段により受信された前記モジュールを更新し、
前記判定手段は、前記通信手段により受信された前記モジュールの更新が成功したかをさらに判定し、
前記制御手段は、前記判定手段により前記通信手段により受信された前記モジュールの更新が成功したと判定されたとき、前記稼働中フラグをリセットすると共に、前記モジュールのライセンス数を１減じて、前記ライセンス数の情報および前記稼働中フラグの状態を前記更新用カードに書き込む
情報処理装置。
【請求項２】
前記更新用カードは、非接触のＩＣカードであり、
前記取得手段は、アンテナを介して前記更新用カードの情報を取得する
請求項１に記載の情報処理装置。
【請求項３】
前記制御手段は、前記取得手段により前記更新用カードの情報から取得された複数の前記モジュールを同時に更新する
請求項２に記載の情報処理装置。
【請求項４】
前記更新用カードは、前記モジュールのライセンスが記録された状態でユーザに提供される
請求項３に記載の情報処理装置。
【請求項５】
モジュールのライセンスを管理する更新用カードの情報を取得する取得ステップと、
前記取得ステップの処理により取得された前記更新用カードの情報に基づいて、前記モジュールの更新が許容されているかを判定する判定ステップと、
前記判定ステップの処理により前記モジュールの更新が許容されていると判定された場合、情報提供装置に前記モジュールの情報を送信するとともに、前記情報提供装置から前記モジュールを受信する通信ステップと、
前記通信ステップの処理により受信された前記モジュールを更新するとともに、前記モジュールのライセンス数を１減じて、前記更新用カードに書き込む制御ステップとを含み、
前記制御ステップの処理は、前記判定ステップの処理により前記モジュールを更新できると判定された場合、前記モジュールが更新中であることを示す稼働中フラグをセットして、前記更新用カードに書き込み、
前記判定ステップの処理は、前記通信ステップの処理により前記モジュールを受信した場合、前記更新用カードに書き込まれている前記稼働中フラグがセットされているかをさらに判定し、
前記制御ステップの処理は、前記判定ステップの処理により前記稼働中フラグがセットされていると判定されたとき、前記通信ステップの処理により受信された前記モジュールを更新し、
前記判定ステップの処理は、前記通信ステップの処理により受信された前記モジュールの更新が成功したかをさらに判定し、
前記制御ステップの処理は、前記判定ステップの処理により前記通信ステップの処理により受信された前記モジュールの更新が成功したと判定されたとき、前記稼働中フラグをリセットすると共に、前記モジュールのライセンス数を１減じて、前記ライセンス数の情報および前記稼働中フラグの状態を前記更新用カードに書き込む
情報処理方法。
【請求項６】
コンピュータを、
モジュールのライセンスを管理する更新用カードの情報を取得する取得手段と、
前記取得手段により取得された前記更新用カードの情報に基づいて、前記モジュールの更新が許容されているかを判定する判定手段と、
前記判定手段により前記モジュールの更新が許容されていると判定された場合、情報提供装置に前記モジュールの情報を送信するとともに、前記情報提供装置から前記モジュールを受信する通信手段と、
前記通信手段により受信された前記モジュールを更新するとともに、前記モジュールのライセンス数を１減じて、前記更新用カードに書き込む制御手段として機能させ、
前記制御手段は、前記判定手段により前記モジュールを更新できると判定された場合、前記モジュールが更新中であることを示す稼働中フラグをセットして、前記更新用カードに書き込み、
前記判定手段は、前記通信手段により前記モジュールを受信した場合、前記更新用カードに書き込まれている前記稼働中フラグがセットされているかをさらに判定し、
前記制御手段は、前記判定手段により前記稼働中フラグがセットされていると判定されたとき、前記通信手段により受信された前記モジュールを更新し、
前記判定手段は、前記通信手段により受信された前記モジュールの更新が成功したかをさらに判定し、
前記制御手段は、前記判定手段により前記通信手段により受信された前記モジュールの更新が成功したと判定されたとき、前記稼働中フラグをリセットすると共に、前記モジュールのライセンス数を１減じて、前記ライセンス数の情報および前記稼働中フラグの状態を前記更新用カードに書き込む
ように機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置および方法、情報提供装置および方法、並びにプログラムに関し、特に、ライセンス情報を容易に管理できるようにした情報処理装置および方法、情報提供装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
電子機器システムにおいて、電子機器のファームウェアを更新する技術が提案されている。
【０００３】
特許文献１には、POS（Point Of Sales）システムに接続された電子機器のファームウェアを更新することが記載されている。ここでは、POSシステムがインターネットを介してサーバにアクセスして認証を行うことにより、POSシステムが更新ファームウェアをダウンロードし、電子機器に転送することが記載されている。
【０００４】
また特許文献２には、次のことが記載されている。すなわち、POSシステムに接続された電子機器のファームウェアを更新する場合、電子機器がPOSシステムからファームウェアの更新要求を受け付ける。そして、それぞれの電子機器のファームウェアの更新状況に応じてファームウェアが更新される。
【０００５】
【特許文献１】特開２００９−２４５３９８
【特許文献２】特開２００８−１８１２２８
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら特許文献１の手法では、ファームウェアの更新、または新たなモジュール機能を追加するときにライセンスを必要とする場合、ライセンス情報を管理することが難しい。
【０００７】
また特許文献２の手法では、ライセンスの管理は可能であるが、ファームウェア更新後に課金されるため、予めライセンス料を徴収することができない。
【０００８】
さらに従来の手法では、ファームウェアを更新するときにPOSシステムに接続する必要があるので、POSシステムに接続されていないファームウェアを更新することはできなかった。
【０００９】
本発明は、このような状況に鑑みてなされたものであり、ライセンス情報を容易に管理できるようにするものである。また、本発明は、ソフトウェアを容易に更新できるようにするものである。
【課題を解決するための手段】
【００１０】
本発明の一側面の情報処理装置は、モジュールのライセンスを管理する更新用カードの情報を取得する取得手段と、前記取得手段により取得された前記更新用カードの情報に基づいて、前記モジュールの更新が許容されているかを判定する判定手段と、前記判定手段により前記モジュールの更新が許容されていると判定された場合、情報提供装置に前記モジュールの情報を送信するとともに、前記情報提供装置から前記モジュールを受信する通信手段と、前記通信手段により受信された前記モジュールを更新するとともに、前記モジュールのライセンス数を１減じて、前記更新用カードに書き込む制御手段とを備え、前記制御手段は、前記判定手段により前記モジュールを更新できると判定された場合、前記モジュールが更新中であることを示す稼働中フラグをセットして、前記更新用カードに書き込み、前記判定手段は、前記通信手段により前記モジュールを受信した場合、前記更新用カードに書き込まれている前記稼働中フラグがセットされているかをさらに判定し、前記制御手段は、前記判定手段により前記稼働中フラグがセットされていると判定されたとき、前記通信手段により受信された前記モジュールを更新し、前記判定手段は、前記通信手段により受信された前記モジュールの更新が成功したかをさらに判定し、前記制御手段は、前記判定手段により前記通信手段により受信された前記モジュールの更新が成功したと判定されたとき、前記稼働中フラグをリセットすると共に、前記モジュールのライセンス数を１減じて、前記ライセンス数の情報および前記稼働中フラグの状態を前記更新用カードに書き込む。
【００１３】
前記更新用カードは、非接触のＩＣカードであり、前記取得手段は、アンテナを介して前記更新用カードの情報を取得することができる。
【００１４】
前記制御手段は、前記取得手段により前記更新用カードの情報から取得された複数の前記モジュールを同時に更新することができる。
【００１５】
前記更新用カードは、前記モジュールのライセンスが記録された状態でユーザに提供されることができる。
【００１６】
本発明の一側面の情報処理方法は、モジュールのライセンスを管理する更新用カードの情報を取得する取得ステップと、前記取得ステップの処理により取得された前記更新用カードの情報に基づいて、前記モジュールの更新が許容されているかを判定する判定ステップと、前記判定ステップの処理により前記モジュールの更新が許容されていると判定された場合、情報提供装置に前記モジュールの情報を送信するとともに、前記情報提供装置から前記モジュールを受信する通信ステップと、前記通信ステップの処理により受信された前記モジュールを更新するとともに、前記モジュールのライセンス数を１減じて、前記更新用カードに書き込む制御ステップとを含み、前記制御ステップの処理は、前記判定ステップの処理により前記モジュールを更新できると判定された場合、前記モジュールが更新中であることを示す稼働中フラグをセットして、前記更新用カードに書き込み、前記判定ステップの処理は、前記通信ステップの処理により前記モジュールを受信した場合、前記更新用カードに書き込まれている前記稼働中フラグがセットされているかをさらに判定し、前記制御ステップの処理は、前記判定ステップの処理により前記稼働中フラグがセットされていると判定されたとき、前記通信ステップの処理により受信された前記モジュールを更新し、前記判定ステップの処理は、前記通信ステップの処理により受信された前記モジュールの更新が成功したかをさらに判定し、前記制御ステップの処理は、前記判定ステップの処理により前記通信ステップの処理により受信された前記モジュールの更新が成功したと判定されたとき、前記稼働中フラグをリセットすると共に、前記モジュールのライセンス数を１減じて、前記ライセンス数の情報および前記稼働中フラグの状態を前記更新用カードに書き込む。
【００１７】
本発明の一側面のプログラムは、コンピュータを、モジュールのライセンスを管理する更新用カードの情報を取得する取得手段と、前記取得手段により取得された前記更新用カードの情報に基づいて、前記モジュールの更新が許容されているかを判定する判定手段と、前記判定手段により前記モジュールの更新が許容されていると判定された場合、情報提供装置に前記モジュールの情報を送信するとともに、前記情報提供装置から前記モジュールを受信する通信手段と、前記通信手段により受信された前記モジュールを更新するとともに、前記モジュールのライセンス数を１減じて、前記更新用カードに書き込む制御手段として機能させ、前記制御手段は、前記判定手段により前記モジュールを更新できると判定された場合、前記モジュールが更新中であることを示す稼働中フラグをセットして、前記更新用カードに書き込み、前記判定手段は、前記通信手段により前記モジュールを受信した場合、前記更新用カードに書き込まれている前記稼働中フラグがセットされているかをさらに判定し、前記制御手段は、前記判定手段により前記稼働中フラグがセットされていると判定されたとき、前記通信手段により受信された前記モジュールを更新し、前記判定手段は、前記通信手段により受信された前記モジュールの更新が成功したかをさらに判定し、前記制御手段は、前記判定手段により前記通信手段により受信された前記モジュールの更新が成功したと判定されたとき、前記稼働中フラグをリセットすると共に、前記モジュールのライセンス数を１減じて、前記ライセンス数の情報および前記稼働中フラグの状態を前記更新用カードに書き込むように機能させる。
【００１８】
本発明の一側面においては、モジュールのライセンスを管理する更新用カードの情報が取得され、取得された更新用カードの情報に基づいて、モジュールの更新が許容されているかが判定され、モジュールの更新が許容されていると判定された場合、情報提供装置にモジュールの情報が送信されるとともに、情報提供装置からモジュールが受信、受信されたモジュールが更新されるとともに、モジュールのライセンス数が１減じられ、更新用カードに書き込まれ、前記モジュールを更新できると判定された場合、前記モジュールが更新中であることを示す稼働中フラグがセットされて、前記更新用カードに書き込まれ、前記モジュールが受信された場合、前記更新用カードに書き込まれている前記稼働中フラグがセットされているかがさらに判定され、前記稼働中フラグがセットされていると判定されたとき、受信された前記モジュールが更新され、受信された前記モジュールの更新が成功したかがさらに判定され、受信された前記モジュールの更新が成功されたと判定されたとき、前記稼働中フラグがリセットされると共に、前記モジュールのライセンス数が１減じられて、前記ライセンス数の情報および前記稼働中フラグの状態が前記更新用カードに書き込まれる。
【発明の効果】
【００２８】
本発明の側面によれば、ライセンス情報を容易に管理することが可能になる。また、本発明の側面によれば、ソフトウェアを容易に更新することが可能になる。
【図面の簡単な説明】
【００２９】
【図１】本発明のモジュール更新システムの一実施形態の構成例を示す図である。
【図２】モジュール更新システムの端末装置の構成例を示すブロック図である。
【図３】端末装置のMPUの機能的構成例を示すブロック図である。
【図４】モジュール更新システムの更新用カードの例を示す図である。
【図５】モジュール更新システムの管理サーバの構成例を示すブロック図である。
【図６】管理サーバのMPUの機能的構成例を示すブロック図である。
【図７】モジュール更新の制御に関連するソフトウェアの構成例を示す図である。
【図８】端末装置のモジュール更新処理を説明するフローチャートである。
【図９】端末装置のモジュール更新処理を説明するフローチャートである。
【図１０】管理サーバの更新モジュール提供処理を説明するフローチャートである。
【図１１】端末装置の他のモジュール更新処理を説明するフローチャートである。
【図１２】管理サーバの他の更新モジュール提供処理を説明するフローチャートである。
【発明を実施するための最良の形態】
【００３０】
［モジュール更新システムの構成］
【００３１】
図１は、本発明が適用されるモジュール更新システム１の一実施形態としての構成例を示す図である。
【００３２】
図１のモジュール更新システム１は、端末装置１１、アンテナ１２、更新用カード１３、ネットワーク１４、および管理サーバ１５から構成されている。
【００３３】
端末装置１１と更新用カード１３は、アンテナ１２を介して非接触で情報の送受信を行う。また端末装置１１と管理サーバ１５は、ネットワーク１４を介して情報の送受信を行う。
【００３４】
［端末装置の構成］
【００３５】
図２は、端末装置１１の構成例を示すブロック図である。端末装置１１は、例えば、非接触型のＩＣ（Integrated Circuit）カードのリーダライタである。
【００３６】
端末装置１１において、MPU（Micro Processing Unit）３１、RAM（Random Access Memory）３２、POS接続用インタフェース３３、入出力インタフェース３５、アンテナ接続用インタフェース３８、およびネットワーク接続用インタフェース３９は、バス３４により相互に接続されている。
【００３７】
入出力インタフェース３５には、ディスプレイ、スピーカなどよりなる出力部３６、および不揮発性メモリ３７が接続されている。
【００３８】
端末装置１１は、POS接続用インタフェース３３を介して、POSシステム１６と情報の送受信を行う。また端末装置１１は、アンテナ接続用インタフェース３８を介して、アンテナ１２と情報の送受信を行う。アンテナ１２は更新用カード１３と非接触通信を行う。さらに端末装置１１は、ネットワーク接続用インタフェース３９を介して、インターネットに代表されるネットワーク１４と接続を行う。
【００３９】
以上のように構成される端末装置１１では、MPU３１が、例えば、不揮発性メモリ３７に記憶されているソフトウェアであるプログラムを、入出力インタフェース３５及びバス３４を介して、RAM３２にロードして実行することにより、一連の処理が行われる。端末装置１１（具体的には、MPU３１）が実行するプログラムは、ネットワーク１４を介して提供され、ネットワーク接続用インタフェース３９を介して受信し、不揮発性メモリ３７にインストールすることができる。その他、プログラムは、不揮発性メモリ３７に、あらかじめインストールしておくことができる。
【００４０】
図３は、MPU３１の機能的構成例を示すブロック図である。
【００４１】
MPU３１は、取得部５１、判定部５２、出力部５３、制御部５４、および通信部５５から構成されている。なおMPU３１の各ブロックは、必要に応じて相互に信号、データを授受することが可能とされている。
【００４２】
MPU３１の取得手段としての取得部５１は、更新用カード１３、不揮発性メモリ３７から各種情報を取得する。判定手段としての判定部５２は、処理が所定の条件を満たしているかを判定する。出力部５３は、出力部３６に各種情報を出力する。制御手段としての制御部５４は、モジュールの更新処理を制御する。通信手段としての通信部５５は、ネットワーク１４を介して管理サーバ１５と各種情報を授受する。
【００４３】
［更新用カードの構成］
【００４４】
図４は、更新用カード１３の例を示す図である。更新用カード１３は、例えば、非接触のＩＣカードである。更新用カード１３は、ソフトウェアであるモジュールのライセンス情報が予め記録された状態でユーザに提供される。
【００４５】
更新用カード１３には、カードＩＤ７１、更新モジュールＩＤ７２、更新バージョン情報７３、ライセンス情報７４、および稼働中フラグ７５が記録されている。
【００４６】
カードＩＤ７１には、カードの識別番号、更新用カード１３または通常のカードのいずれかを示すフラグが記録されている。更新用カード１３とは、ソフトウェアを更新するためにユーザに有償または無償で提供されるカードである。
【００４７】
通常のカードとは、電子マネーや社員証などの機能を有するカードである。いずれも例えば、FeliCa（ソニー株式会社の登録商標）などのＩＣカードにより構成される。
【００４８】
更新モジュールＩＤ７２には、更新するモジュールのＩＤが記録されている。更新バージョン情報７３には、更新モジュールＩＤ７２に対応するモジュールのバージョン情報が記録されている。
【００４９】
ライセンス情報７４には、更新モジュールＩＤ７２に対応するモジュールのライセンス数が記録されている。モジュールのライセンス情報７４は、予めユーザにより取得され、更新用カード１３に記録されている。
【００５０】
稼働中フラグ７５には、更新モジュールＩＤ７２に対応するモジュールを取得する処理を実行しているかを示すフラグ、すなわちモジュールが更新中であるかを示すフラグが記録されている。稼働中フラグ７５には、初期値としてリセット（例えば、０）が設定されている。
【００５１】
［管理サーバの構成］
【００５２】
図５は、管理サーバ１５の構成例を示すブロック図である。
【００５３】
管理サーバ１５において、MPU９１、ROM（Read Only Memory）９２、RAM９３は、バス９４により相互に接続されている。バス９４には、さらに、入出力インタフェース９５が接続されている。入出力インタフェース９５には、キーボード、マウス、マイクロフォンなどよりなる入力部９６、ディスプレイ、スピーカなどよりなる出力部９７、ハードディスクや不揮発性のメモリなどよりなる記憶部９８が接続されている。さらに、入出力インタフェース９５には、ネットワークインタフェースなどよりなる通信部９９、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア１０１を駆動するドライブ１００が接続されている。
【００５４】
以上のように構成される管理サーバ１５では、MPU９１が、例えば、記憶部９８に記憶されているプログラムを、入出力インタフェース９５及びバス９４を介して、RAM９３にロードして実行することにより、一連の処理が行われる。管理サーバ１５（具体的には、MPU９１）が実行するプログラムは、例えば、パッケージメディアであるリムーバブルメディア１０１に記録して提供される。なお、パッケージメディアとしては、磁気ディスク（フレキシブルディスクを含む）、光ディスク(CD-ROM(Compact Disc-Read Only Memory)，DVD(Digital Versatile Disc)等)、光磁気ディスク、もしくは半導体メモリなどが用いられる。あるいは、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。そして、プログラムは、リムーバブルメディア１０１をドライブ１００に装着することにより、入出力インタフェース９５を介して、記憶部９８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部９９で受信し、記憶部９８にインストールすることができる。その他、プログラムは、ROM９２や記憶部９８に、あらかじめインストールしておくことができる。
【００５５】
図６は、MPU９１の機能的構成例を示すブロック図である。
【００５６】
MPU９１は、通信部１２１、判定部１２２、取得部１２３、および制御部１２４から構成されている。なおMPU９１の各ブロックは、必要に応じて相互に信号、データを授受することが可能とされている。
【００５７】
MPU９１の通信手段としての通信部１２１は、ネットワーク１４を介して端末装置１１と各種情報を授受する。判定部１２２は、処理が所定の条件を満たしているかを判定する。取得部１２３は、記憶部９８、通信部９９から各種情報を取得する。制御手段としての制御部１２４は、更新するモジュールを提供する処理を制御する。
【００５８】
［ソフトウェアの構成］
【００５９】
図７は、端末装置１１のソフトウェアの構成を示す図である。
【００６０】
端末装置１１には、基本ファームウェア１４１、モジュール管理プログラム１４２、音声出力モジュール１４３、ネットワークモジュール１４４、LCD（Liquid Crystal Display）出力モジュール１４５、およびUSB（Universal Serial Bus）ホストモジュール１４６が保持されている。USBホストモジュール１４６は、実際にはまだインストールされていない。
【００６１】
基本ファームウェア１４１は、端末装置１１を制御する。基本ファームウェア１４１上で動作するモジュール管理プログラム１４２は、端末装置１１に記憶されているモジュールを管理する。音声出力モジュール１４３、ネットワークモジュール１４４、およびLCD出力モジュール１４５は、モジュール管理プログラム１４２の上で動作する。まだインストールされていないUSBホストモジュール１４６も同様である。音声出力モジュール１４３は、音声の出力を制御する。ネットワークモジュール１４４は、ネットワーク１４との接続を制御する。LCD出力モジュール１４５は、出力部３６のうちの液晶ディスプレイへの出力を制御する。USBホストモジュール１４６は、端末装置１１とUSBを介して接続する機器を制御する。
【００６２】
なお端末装置１１が保持するソフトウェアは、図７の例に限られない。
【００６３】
［端末装置のモジュール更新処理１］
【００６４】
図８と図９は、端末装置１１のモジュール更新処理を説明するフローチャートである。ユーザがＩＣカードを端末装置１１にかざすことで端末装置１１のモジュール更新処理が開始される。
【００６５】
ユーザはソフトウェアを更新するとき、有償で更新用カード１３を事前に購入する。従って、ソフトウェア提供者は、ソフトウェアの更新料、ライセンス料等の料金を予め徴収することができる。
【００６６】
なお本実施の形態において、モジュールの更新は、モジュールの追加も含むものとする。すなわち更新モジュールＩＤ７２に対応するモジュールが端末装置１１にまだ記録されていない場合でも、更新モジュールＩＤ７２に対応する更新バージョン情報７３に記述されているバージョンの新たなモジュールが取得される。
【００６７】
ステップＳ１において、端末装置１１の取得部５１は、アンテナ１２を介してＩＣカードからカード内情報を取得する。すなわちユーザがかざしたＩＣカード内の情報が取得される。
【００６８】
更新用カード１３のカード内情報には、図４を参照して示したように、カードＩＤ７１、更新モジュールＩＤ７２、更新バージョン情報７３、ライセンス情報７４、および稼働中フラグ７５が記録されている。
【００６９】
ステップＳ２において、判定部５２は、かざされたのが更新用カード１３であるかを判定する。すなわち、カード内情報が取得されたＩＣカードがモジュールの更新用カード１３であるのか、または通常のカードであるのかが判定される。
【００７０】
ステップＳ２において、かざされたのが更新用カード１３であると判定された場合、ステップＳ３において、判定部５２は、更新モジュールを保持しているかを判定する。
【００７１】
すなわち更新するバージョンのモジュールがすでにダウンロードされ、保持されているかが判定される。
【００７２】
ステップＳ３において、更新モジュールが保持されていると判定された場合、ステップＳ４において、判定部５２は、更新モジュールがインストールされているかを判定する。すなわち端末装置１１上で更新するバージョンのモジュールが動作しているかが判定される。
【００７３】
ステップＳ４において、更新モジュールがインストールされていると判定された場合、ステップＳ５において、出力部５３は、出力部３６に例えば「更新なし」のメッセージを表示する。なお出力部５３は、音声を出力するようにしてもよい。
【００７４】
すなわち、ソフトウェアが既にインストールされている場合には、二重にダウンロードするような処理の実行が阻止される。
【００７５】
一方ステップＳ３において、更新モジュールが保持されていないと判定された場合、ステップＳ６において、判定部５２は、ライセンスが存在するかを判定する。すなわちライセンス情報７４に記録されているライセンス数が１以上であるかが判定される。
【００７６】
ステップＳ６において、ライセンスが存在しないと判定された場合、すなわちライセンス情報７４に記録されているライセンス数が０である場合、既に許容される回数分だけダウンロードが行なわれていることになる。
【００７７】
この場合、モジュールの更新が許容されていないと判定される。そこでこの場合、ステップＳ７において、出力部５３は、出力部３６に例えば「ライセンス無し」のメッセージを表示する。
【００７８】
ステップＳ６において、ライセンスが存在すると判定された場合、すなわちライセンス情報７４に記録されているライセンス数が１以上である場合、モジュールの更新が許容されていると判定される。
【００７９】
この場合、ステップＳ８において、制御部５４は、稼働中フラグ７５をセットする。すなわち稼働中フラグ７５に、例えば１が設定される。
【００８０】
ステップＳ９において、制御部５４は、稼働中フラグ７５の状態、すなわちセット（例えば「１」）を更新用カード１３に書き込む。ステップＳ９の処理の後、処理は図９のステップＳ２１に進む。
【００８１】
図９のステップＳ２１において、通信部５５は、ネットワーク１４を介して管理サーバ１５と接続する。管理サーバ１５との接続には、SSL（Secure Socket Layer）などを用いて安全にネットワーク接続が行われる。
【００８２】
なお安全にネットワーク通信できる環境があればSSL接続は行わなくてもよい。
【００８３】
ステップＳ２２において、通信部５５は、更新モジュール情報を送信する。更新モジュール情報は、カードＩＤ７１、更新モジュールＩＤ７２、更新バージョン情報７３、および更新モジュールのダウンロード要求を含む。
【００８４】
ステップＳ２３において、通信部５５は、アンテナ１２を介して管理サーバ１４からダウンロードの可否を受信する。すなわち後述する図１０のステップＳ４４またはＳ４５の処理結果を受信する。
【００８５】
ステップＳ２４において、判定部５２は、ダウンロードが許可されたかを判定する。すなわち管理サーバ１５から、図１０のステップＳ４５の処理によりダウンロードの許可が通知されたか、またはステップＳ４４の処理によりダウンロードの不許可が通知されたかが判定される。
【００８６】
ステップＳ２４において、ダウンロードが許可されたと判定された場合、すなわち図１０のステップＳ４５の処理により管理サーバ１５からダウンロードの許可が送信された場合、処理はステップＳ２５に進む。
【００８７】
ステップＳ２５において、通信部５５は、図１０のステップＳ４７の処理により、管理サーバ１５から送信された更新モジュールを受信する。すなわち更新モジュールがダウンロードされる。
【００８８】
ステップＳ２６において、判定部５２は、ダウンロードが成功したかを判定する。すなわちダウンロード中に接続が中断されるなどして、ダウンロードが失敗しなかったかが判定される。
【００８９】
ステップＳ２６において、ダウンロードが失敗したと判定された場合、すなわち、例えばダウンロード中に管理サーバ１５との接続が中断された場合、ステップＳ２７において、通信部５５は、ダウンロードの失敗を管理サーバ１５に通知する。
【００９０】
そしてステップＳ２８において、出力部５３は、出力部３６にエラーを表示する。
【００９１】
ステップＳ２４において、ダウンロードが許可されなかったと判定された場合、すなわち、図１０のステップＳ４４の処理によりダウンロードの不許可が通知された場合にもステップＳ２８の処理が実行される。
【００９２】
ステップＳ２６において、ダウンロードが成功したと判定された場合、ステップＳ２９において、通信部５５は、ダウンロードの成功を管理サーバ１５に送信する。ステップＳ２９の処理の後、処理は図８のステップＳ１０に進む。
【００９３】
図８に戻り、ステップＳ４において、更新モジュールがインストールされていないと判定された場合、すなわち図７を参照して示した破線で示されたモジュール（USBホストモジュール１４６）が存在する場合、処理はステップＳ１０に進む。
【００９４】
つまり、ダウンロードされ、保持されてはいるが、まだインストールされていない場合、ステップＳ１０の処理が行なわれる。また、図９のステップＳ２９の処理の後にもステップＳ１０の処理が実行される。
【００９５】
ステップＳ１０において、判定部５２は、稼働中フラグ７５がセットされているかを判定する。すなわち稼働中フラグ７５に１が設定されているかが判定される。
【００９６】
ステップＳ１０において、稼働中フラグ７５がセットされていないと判定された場合、すなわち稼働中フラグ７５に０が設定されている場合、ステップＳ１１において、出力部５３は、出力部３６にエラーを表示する。
【００９７】
ソフトウェアがダウンロードされ、保持されているものの、インストールがされていない状態のときは、稼働中フラグ７５は、ステップＳ８でセットされたままの状態になっている。従って、この状態で稼働中フラグ７５がリセットされているときはエラーとされる。
【００９８】
ステップＳ１０において、稼働中フラグ７５がセットされていると判定された場合、すなわち稼働中フラグ７５に１が設定されている場合、ステップＳ１２において、制御部５４は、モジュールを更新する。すなわち更新モジュールをインストールする。
【００９９】
ステップＳ４において、更新モジュールがインストールされていないと判定され、ステップＳ１０において、稼働中フラグ７５がセットされていると判定される場合とは、例えば、図９のステップＳ２５の処理の後、且つ図８のステップＳ１２の処理の前にモジュール更新処理が中断した場合である。
【０１００】
ステップＳ１３において、判定部５２は、モジュールの更新が完了したかを判定する。すなわちステップＳ１２で実行した更新モジュールのインストールが成功したかが判定される。
【０１０１】
ステップＳ１３において、モジュールの更新が成功したと判定された場合、すなわち更新するモジュールのインストールに成功した場合、処理はステップＳ１４に進む。
【０１０２】
ステップＳ１４において、制御部５４は、稼働中フラグ７５をリセットし、ライセンス情報７４のライセンス数を１だけデクリメントする。すなわち稼働中フラグ７５に「０」が設定され、ライセンス数が１減じられる。
【０１０３】
ステップＳ１５において、制御部５４は、稼働中フラグ７５の状態およびライセンス情報７４を更新用カード１３に書き込む。ステップＳ１６において、出力部５３は、出力部３６に例えば「更新完了」のメッセージを表示する。
【０１０４】
ステップＳ１３において、モジュールの更新が成功していないと判定された場合、すなわち更新モジュールのインストールに失敗した場合、ステップＳ１７において、出力部５３は、出力部３６に例えば「更新失敗」のメッセージを表示する。
【０１０５】
このように更新が失敗すると、稼働中フラグ７５がセットされたままの状態になる。そこで更新用カード１３が次にかざされたとき、ステップＳ３，Ｓ４，Ｓ１０，Ｓ１２の処理が実行される。
【０１０６】
ステップＳ２において、かざされたのが更新用カード１３でないと判定された場合、すなわち通常のＩＣカードであると判定された場合、上述のようなモジュール更新処理は実行されない。
【０１０７】
ステップＳ５，Ｓ７，Ｓ１１，Ｓ１７の処理の後、または図９のステップＳ２８の処理の後、端末装置１１のモジュール更新処理は終了する。
【０１０８】
このように端末装置１１は、更新用カード１３によりモジュールのライセンスを管理し、管理されているライセンスに基づいて、モジュールの更新を実行することができる。また端末装置１１は、POSシステムに接続することなく、モジュールの更新を実行することができる。
【０１０９】
［管理サーバのモジュール提供処理１］
【０１１０】
図１０は、管理サーバ１５のモジュール提供処理を説明するフローチャートである。この処理は、図８と図９に示した端末装置１１のモジュール更新処理に対応して実行される。
【０１１１】
なお管理サーバ１５には、販売された更新用カード１３に基づきユーザに提供される更新モジュール、カードＩＤ７１、更新モジュールＩＤ７２、更新バージョン情報７３、およびライセンス情報７４が予め記憶部９８に記憶されている。
【０１１２】
管理サーバ１５の記憶部９８に記憶されている情報は、更新用カード１３のカード内情報とは独立して記憶されている。
【０１１３】
ステップＳ４１において、通信部１２１は、ネットワーク１４を介して端末装置１１と接続する。この処理は図９の端末装置１１のステップＳ２１の処理と対応する。
【０１１４】
ステップＳ４２において、通信部１２１は、更新モジュール情報を端末装置１１から受信する。更新モジュール情報は、図９のステップＳ２２の処理において端末装置１１から送信されてくる。
【０１１５】
ステップＳ４３において、判定部１２２は、モジュールのライセンスが存在するかを判定する。
【０１１６】
すなわち記憶部９８を参照して、ステップＳ４２で受信した更新モジュール情報のカードＩＤ７１、更新モジュールＩＤ７２、および更新バージョン情報７３に基づくライセンスが存在するかが判定される。
【０１１７】
ステップＳ４３において、モジュールのライセンスが存在しないと判定された場合、すなわちカードＩＤ７１、更新モジュールＩＤ７２、および更新バージョン情報７３に基づくライセンスが存在しない場合、処理はステップＳ４４に進む。
【０１１８】
ステップＳ４４において、通信部１２１は、ダウンロードの不許可を端末装置１１に通知する。この通知に基づき、端末装置１１において、上述した図９のステップＳ２４の判定処理が行なわれる。
【０１１９】
ステップＳ４３において、モジュールのライセンスが存在すると判定された場合、すなわちカードＩＤ７１、更新モジュールＩＤ７２、および更新バージョン情報７３に基づくライセンスが存在する場合、処理はステップＳ４５に進む。
【０１２０】
ステップＳ４５において、通信部１２１は、ダウンロードの許可を端末装置１１に通知する。この通知に基づき、端末装置１１において、上述した図９のステップＳ２４の判定処理が行なわれる。
【０１２１】
ステップＳ４６において、取得部１２３は、カードＩＤ７１、更新モジュールＩＤ７２、および更新バージョン情報７３に基づく更新モジュールを取得する。更新モジュールは記憶部９８に記憶されている。
【０１２２】
ステップＳ４７において、通信部１２１は、取得された更新モジュールを端末装置１１に送信する。この更新モジュールは図９のステップＳ２５において、端末装置１１により受信される。
【０１２３】
ステップＳ４８において、通信部１２１は、ダウンロードの成否を受信する。すなわち図９のステップＳ２７，Ｓ２９の処理の結果を端末装置１１から受信する。
【０１２４】
ステップＳ４９において、判定部１２２は、ダウンロードが成功したかを判定する。すなわちステップＳ４８で受信した、図９のステップＳ２７，Ｓ２９のダウンロードの結果に基づいて、端末装置１１が更新モジュールを取得できたかが判定される。
【０１２５】
ステップＳ４９において、ダウンロードが成功したと判定された場合、すなわち端末装置１１が更新モジュールを取得できた場合、ステップＳ５０において、制御部１２４は、記憶部９８に記憶されている更新モジュールのライセンス数を１だけデクリメントする。
【０１２６】
すなわちカードＩＤ７１、更新モジュールＩＤ７２、および更新バージョン情報７３に基づくライセンス情報７４のライセンス数が１減じられる。
【０１２７】
ステップＳ４４，Ｓ５０の処理の後、またはステップＳ４９において、ダウンロードが失敗したと判定された場合、管理サーバ１５の更新モジュール提供処理は終了する。
【０１２８】
このように管理サーバ１５は、端末装置１１からの要求に基づいて更新モジュールを提供するとともに、管理サーバ１５内において更新モジュールのライセンス数を更新用カード１３と独立して管理することができる。
【０１２９】
［端末装置のモジュール更新処理２］
【０１３０】
図１１は、端末装置１１のモジュール更新処理の他の例を説明するフローチャートである。
【０１３１】
図１１の例では、無償ライセンスのモジュールなど、ライセンス情報７４を有しないモジュールについて、非接触のＩＣカードとしての更新用カード１３を用いて更新を行う例が示されている。
【０１３２】
図１１においてステップＳ６１乃至Ｓ６５の処理は、図８のステップＳ１乃至Ｓ５の処理に対応する処理であり、ステップＳ６６乃至Ｓ６８の処理は、図９のステップＳ２１，Ｓ２２，Ｓ２５の処理に対応する処理であり、ステップＳ６９乃至Ｓ７２の処理は、図８のステップＳ１２，Ｓ１３，Ｓ１６，Ｓ１７の処理に対応する処理である。
【０１３３】
したがって、これらの処理は繰り返しになるので簡単に説明する。
【０１３４】
ステップＳ６１において、取得部５１は、かざされたＩＣカードのカード内情報を取得する。ステップＳ６２において、判定部５２は、かざされたＩＣカードがモジュールの更新用カード１３であるかを判定する。
【０１３５】
ステップ６２において、かざされたＩＣカードが更新用カード１３であると判定された場合、ステップＳ６３において、判定部５２は、更新モジュールを保持しているかを判定する。
【０１３６】
ステップＳ６３において、更新モジュールを保持していると判定された場合、ステップＳ６４において、判定部５２は、更新モジュールがインストールされているかを判定する。すなわち、モジュールの更新が許容されているかが判定される。
【０１３７】
ステップＳ６４において、更新モジュールがインストールされていると判定された場合、モジュールの更新が許容されていないので、ステップＳ６５において、出力部５３は、出力部３６に例えば「更新なし」のメッセージを表示する。
【０１３８】
一方ステップＳ６３において、更新モジュールが保持されていないと判定された場合、モジュールの更新が許容されていると判定され、ステップＳ６６において、通信部５５は、管理サーバ１５と接続する。
【０１３９】
ステップＳ６７において、通信部５５は、更新モジュール情報を管理サーバ１５に送信する。
【０１４０】
そしてステップＳ６８において、通信部５５は、管理サーバ１５から送信されてきた（後述する図１２のステップＳ９４の処理）更新モジュールを受信する。
【０１４１】
ステップＳ６４において、更新モジュールがインストールされていないと判定された場合、またはステップＳ６８の処理の後、ステップＳ６９において、制御部５４は、モジュールを更新する。
【０１４２】
ステップＳ７０において、判定部５２は、モジュールの更新が成功したかを判定する。ステップＳ７０において、モジュールの更新が成功したと判定された場合、ステップＳ７１において、出力部５３は、出力部３６に例えば「更新完了」のメッセージを表示する。
【０１４３】
ステップＳ７０において、モジュールの更新が成功していないと判定された場合、ステップＳ７２において、出力部５３は、出力部３６に例えば「更新失敗」のメッセージを表示する。
【０１４４】
ステップＳ６２において、更新用カード１３でないと判定された場合、またはステップＳ６５，Ｓ７１，Ｓ７２の処理の後、端末装置１１のモジュール更新処理は終了する。
【０１４５】
このようにユーザは、アンテナ１２を介して端末装置１１に非接触型のＩＣカードである更新用カード１３をかざすだけで、端末装置１１内のモジュールを更新することができる。また端末装置１１は、POSシステムに接続することなく、モジュールの更新を実行することができる。
【０１４６】
［管理サーバの更新モジュール提供処理２］
【０１４７】
図１２は、管理サーバ１５の更新モジュール提供処理の他の例を説明するフローチャートである。この処理は、図１１の端末装置１１のモジュール更新処理に対応して実行される。
【０１４８】
図１２においてステップＳ９１乃至Ｓ９４の処理は、図１０のステップＳ４１，Ｓ４２，Ｓ４６，Ｓ４７の処理に対応する処理である。したがって、これらの処理は繰り返しになるので簡単に説明する。
【０１４９】
ステップＳ９１において、通信部１２１は、端末装置１１と接続する。ステップＳ９２において、通信部１２１は、更新モジュール情報（図１１のステップＳ６７で送信されている）を端末装置１１から受信する。
【０１５０】
ステップＳ９３において、取得部１２３は、ステップＳ９２で受信された更新モジュール情報に基づく更新モジュールを記憶部９８から取得する。ステップＳ９４において、通信部１２１は、取得された更新モジュールを端末装置１１に送信する。
【０１５１】
この更新モジュールは図１１のステップＳ６８で、端末装置１１により受信される。
【０１５２】
ステップＳ９４の処理の後、管理サーバ１５の更新モジュール提供処理は終了する。
【０１５３】
以上の実施形態では、モジュール更新処理の終了後、システムを再起動させることにより、更新したモジュールの機能を使用することができる。
【０１５４】
また以上の実施形態では、モジュールの更新は、複数のモジュールを同時に更新することができる。また、図６の基本ファームウェア１４１の更新処理、LCD出力モジュール１４５の更新処理、およびUSBホストモジュール１４６の更新処理を同時に並行して実行することができる。
【０１５５】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行なわれる処理であっても良いし、並列に、あるいは呼び出しが行なわれたとき等の必要なタイミングで処理が行なわれるプログラムであっても良い。
【０１５６】
本発明の実施の形態は、上述した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０１５７】
１１  端末装置，  １２  アンテナ，  １３  更新用カード，  １５  管理サーバ，  ５１  取得部，  ５２  判定部，  ５４  制御部，  ５５  通信部，  １２１  通信部，  １２４  制御部
【図１】
0005590379.tif 000002
【図２】
0005590379.tif 000003
【図３】
0005590379.tif 000004
【図４】
0005590379.tif 000005
【図５】
0005590379.tif 000006
【図６】
0005590379.tif 000007
【図７】
0005590379.tif 000008
【図８】
0005590379.tif 000009
【図９】
0005590379.tif 000010
【図１０】
0005590379.tif 000011
【図１１】
0005590379.tif 000012
【図１２】
0005590379.tif 000013