(57)【要約】【課題】動作履歴情報をＩＣカード内に記録するシステムにおいて記録の失敗を許容しても矛盾が少なくかつ次回の記録に影響を及ぼさない。【解決手段】非接触型のＩＣカードのＣＰＵが、一連の処理ステップを実行し、ログファイルが、ラップアラウンド方式に従って複数の記録位置に順次記録された動作履歴情報の集合である動作履歴情報保存領域と、動作履歴情報保存領域における最新の動作履歴情報の記録位置を示すカレント情報とを有し、実行開始前に次の記録位置を判別し、各処理ステップの実行に先立って完了未確認メッセージを動作履歴情報として記録した後に実行を試み、実行完了した場合は通常メッセージにより完了未確認メッセージを上書きして動作履歴情報として記録し、完了できなかった場合は完了未確認メッセージがそのまま動作履歴情報となる。【選択図】図１
2009054090.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵ及び記録媒体を備えた非接触型のＩＣカードと、前記ＩＣカードと通信するＩＣカードリーダライタとを有し、前記ＣＰＵは、前記ＩＣカードリーダライタを介して情報処理装置と通信することにより前記ＩＣカードの各機能に係る一連の処理ステップを実行し、前記記録媒体は、前記一連の処理ステップの実行の結果を示す動作履歴情報を記録したログファイルを格納しているＩＣカードシステムであって、
前記ログファイルが、ラップアラウンド方式に従って複数の記録位置に順次記録された前記動作履歴情報の集合である動作履歴情報保存領域と、前記動作履歴情報保存領域における最新の動作履歴情報の記録位置を示すカレント情報とを有し、
前記ＣＰＵが前記ログファイルに対する記録及び参照を行う手段を有し、かつ、
前記記録及び参照を行う手段により前記ＣＰＵが、前記一連の処理ステップの実行を開始する際に前記カレント情報を参照して前記動作履歴情報保存領域における次の動作履歴情報を保存すべき記録位置を判別し、前記一連の処理ステップに含まれる各処理ステップの実行に先立って前記次の動作履歴情報を保存すべき記録位置に対して完了未確認メッセージを動作履歴情報として記録した後に各処理ステップの実行を試み、該各処理ステップの実行を完了した場合は通常メッセージにより前記完了未確認メッセージを上書きして動作履歴情報として記録し、各処理ステップの実行を完了できなかった場合は前記完了未確認メッセージがそのまま動作履歴情報となることを特徴とするＩＣカードシステム。
【請求項２】
前記動作履歴情報が、文字列データ以外の識別子であることを特徴とする請求項１に記載のＩＣカードシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＣカードの動作履歴情報を、ラップアラウンド方式でＩＣカードに記録するシステムに関する。
【背景技術】
【０００２】
特許文献１に記載されているように、銀行の決済処理において、サーバ側の履歴情報と同等な証拠能力を有するＩＣカードの使用履歴を、ＩＣカードへ記録するシステムがある。このシステムは、ＡＴＭなどの堅牢なＩＣカードリーダライタによりＩＣカードの使用履歴を記録することを想定している。しかしながら、非接触型のＩＣカードの場合は、ユーザが手動でＩＣカードをＩＣカードリーダライタにセットすることになるので、ＩＣカードへの電源供給の維持が保証されておらず、履歴の記録に失敗するリスクがあることが問題となる。
【０００３】
そのため、このような非接触型ＩＣカードの使用履歴の参照は、ＩＣカードを使用する際に通信するサーバに記録された履歴情報を照会するシステムが一般的となっている。また、特許文献２に記載されているように、携帯電話のＩＣカード機能に専用プログラムを組み合わせて履歴情報を携帯電話内に記録する例もあるが、上記と同様にサーバに記録されている履歴情報と同期している情報を、携帯電話にも記録するものである。
【特許文献１】特開平１０−１１１９００号公報
【特許文献２】特開２００３−８５４６６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
決済処理など、履歴情報の保証が必須であるシステムについては、履歴の記録に失敗するリスクのある手法は採用できない。一方で、証拠能力が無くてもよく、厳格な履歴情報の保証が必ずしも必要ない用途も存在する。このようなシステムでは、非接触型のＩＣカード自体に履歴情報を記録しても、つまり記録に失敗する可能性があるとしても、大きな支障を来すことが少ないと考えられる。そのような履歴情報の保証が必須ではない使用形態では、サーバにより履歴情報を管理する処理を排して、ＩＣカード内に履歴情報を記録するシステムとすることができる。また、場合によっては、サーバへ通信する処理も排して、スタンドアロンの情報処理装置とＩＣカードとの間だけで完結するシステムとすることもできる。
【０００５】
このようなシステムでは、履歴情報の記録に失敗する可能性があり、その際には正確な履歴が残らないが、メリットとして、システム環境を構築するコストの削減、ＩＣカードのレスポンスの向上、ＩＣカードリーダライタを設置するコストの削減、野外や航空機内等のＩＣカードリーダライタの設置場所の自由度を上げること、などが挙げられる。
【０００６】
例えば、商店でプレゼント引換や割引などの効果を持つ電子クーポンを、街頭に設置されたＩＣカードリーダライタからＩＣカードに受信するようなシステムを考える。電子クーポンの取得を試みた場合に、電圧不足などによるエラーが数回発生した後に無事に電子クーポンを取得したとする。この場合、エラーの履歴の記録が不正確であったとしてもユーザにとって実害はない。一方、これが決済処理であれば、不正アクセスを検知するために正確なエラーの履歴が必要である。
【０００７】
さらに、取得されＩＣカードに記録された電子クーポンを、店頭のＩＣカードライトリーダを介して使用する際、使用履歴を記録する前に電子クーポン情報の確認完了をもって電子クーポンを発効させた場合を考えてみる。この場合、電子クーポンの使用には成功したが、使用履歴の記録には失敗したということになる可能性がある。しかしながら、このような場合でもユーザへのデメリットは小さく、逆に電子クーポンの発効と使用履歴の記録とを同期させないことによるシステムのレスポンス向上のメリットが、デメリットを上回ると考えられる。
【０００８】
また、以下に述べるような、非接触型ＩＣカードリーダライタとの接触が不十分であり、ＩＣカードへの電波及び電源の供給が微弱になることを前提としたシステムも考えられる。例えば、上述のような電子クーポンや、告知したいメッセージ情報など、ユーザが意図しない状況でユーザが所有するＩＣカードへ一方的に配信するシステムである。例えば、ユーザが椅子に座ると、椅子に内蔵されたＩＣカードリーダライタからユーザのポケットに入っているＩＣカードへ通信する形態や、ユーザが特定の場所を歩くと床に内蔵されたＩＣカードリーダライタから靴に内蔵されたＩＣカードに通信する形態などが考えられる。このようなシステムは、サプライズ効果や遊び心にはたらきかける効果があり、宣伝効果を高めることが目的であるが、当然ながら履歴情報の記録に失敗する可能性は高まる。
【０００９】
本発明の目的は、ＩＣカードの使用履歴などの情報（以降、「動作履歴情報」と呼ぶ）を、ＩＣカード内に記録するシステムにおいて、動作履歴情報の記録の失敗をある程度許容する替わりにシステム全体の他のメリット（レスポンスの向上や負荷の軽減等）を確保することである。
【００１０】
具体的には、動作履歴情報の記録に失敗しても、次回の記録に影響しないようにＩＣカード内に動作履歴情報を記録する手段と、記録した動作履歴情報の内容を段階的に更新することで、動作履歴情報の記録に失敗しても、動作履歴情報の内容にできるだけ矛盾が生じないようにする手段とを提供する。なお、動作履歴情報を保存するＩＣカードが有する記録媒体の特徴を考慮すると、保存できる動作履歴情報の容量に上限を設けることが望ましいため、動作履歴情報の記録はラップアラウンド方式によるものとする。
【課題を解決するための手段】
【００１１】
上記課題を解決するために本発明は、ＣＰＵ及び記録媒体を備えた非接触型のＩＣカードと、前記ＩＣカードと通信するＩＣカードリーダライタとを有し、前記ＣＰＵは、前記ＩＣカードリーダライタを介して情報処理装置と通信することにより前記ＩＣカードの各機能に係る一連の処理ステップを実行し、前記記録媒体は、前記一連の処理ステップの実行の結果を示す動作履歴情報を記録したログファイルを格納しているＩＣカードシステムであって、前記ログファイルが、ラップアラウンド方式に従って複数の記録位置に順次記録された前記動作履歴情報の集合である動作履歴情報保存領域と、前記動作履歴情報保存領域における最新の動作履歴情報の記録位置を示すカレント情報とを有し、前記ＣＰＵが前記ログファイルに対する記録及び参照を行う手段を有し、かつ、前記記録及び参照を行う手段により前記ＣＰＵが、前記一連の処理ステップの実行を開始する際に前記カレント情報を参照して前記動作履歴情報保存領域における次の動作履歴情報を保存すべき記録位置を判別し、前記一連の処理ステップに含まれる各処理ステップの実行に先立って前記次の動作履歴情報を保存すべき記録位置に対して完了未確認メッセージを動作履歴情報として記録した後に各処理ステップの実行を試み、該各処理ステップの実行を完了した場合は通常メッセージにより前記完了未確認メッセージを上書きして動作履歴情報として記録し、各処理ステップの実行を完了できなかった場合は前記完了未確認メッセージがそのまま動作履歴情報となることを特徴とする。
【発明の効果】
【００１２】
以上のように本発明によれば、次のような効果がある。
ＩＣカードの使用目的に関連した各機能毎に設定された一連の処理ステップをＣＰＵが実行するにあたって、各処理ステップの実行に先立って、その処理ステップの動作履歴情報が記録される記録位置に対し、予め完了未確認メッセージを記録した後に処理ステップの実行を試み、実行を完了した場合は通常メッセージを上書きして動作履歴情報とする。一方、実行を完了できなかった場合は、予め記録した完了未確認メッセージがそのまま動作履歴情報となるので、実行完了後の上書きができなかった場合でもその内容に矛盾が少なくなるという効果がある。
【００１３】
このように、ログファイルに複数回上書き出力して段階的に内容を更新することにより、ＩＣカードに電源の供給が停止されるなどの問題が生じて動作履歴情報の記録が不完全であっても、処理ステップ終了後の動作履歴情報の内容に矛盾が少なくなる。
【００１４】
カレント情報は、常に最新の動作履歴情報の記録位置を示しているので、これを参照することにより、次回以降の動作履歴情報の記録は、確実に次の記録位置に対して行うことができる。従って、一連の処理ステップが中断した場合であっても、次回以降の一連の処理ステップの動作履歴情報の記録には何らの影響も及ぼさない。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の一実施例を示す図面を参照して本発明の実施の一形態を説明する。
図１は、本発明に係る一実施例によるシステム構成図である。図１において、本発明に係る一実施例によるＩＣカードシステムは、ＩＣカード１と、ＩＣカードリーダライタ６と、情報処理装置７とから構成されている。ＩＣカード１は、ＣＰＵ２と、アンテナ３と、記録媒体４とを有する非接触型である。記録媒体４は、動作履歴情報を記録するログファイル５を有する。なお、記録媒体４は、ＩＣカードの使用目的である各機能を実行するためのプログラム及び各機能に関連したデータ、並びに、本発明による動作履歴情報の記録を実行するためのプログラムも保存する。ＣＰＵ２は、記録媒体４に保存された所定のプログラムを読み込み、実行する。ＩＣカード１とＩＣカードリーダライタ６とは、非接触で通信を行う。ＩＣカードリーダライタ６と情報処理装置７は、適宜の無線又は有線の通信手段を介して通信を行う。
【００１６】
このように構成されたＩＣカードシステムは、ＩＣカード１のＣＰＵ２が、アンテナ３とＩＣカードリーダライタ６とを介して、情報処理装置７と通信することにより、ＩＣカード１の使用目的である電子クーポンの取得及び使用などの各機能に関するプログラムを実行する。例えば、その機能が電子クーポン取得機能である場合、ＣＰＵ２が、情報処理装置７からＩＣカード１に送信された電子クーポン情報を受信し、その受信した電子クーポン情報を記録媒体４の所定の記憶領域に保存するというプログラムを実行する。また別の例として、電子クーポン使用機能である場合は、ＣＰＵ２が、記録媒体４に保存されている電子クーポン情報を情報処理装置７に送信し、情報処理装置７が受信した電子クーポン情報が有効か無効かを確認してその結果をＩＣカード１に返信し、ＣＰＵ２がそれを受信するというプログラムを実行する。
【００１７】
上記のように、ＩＣカード１の一つの機能を実行するプログラムには、通常、複数の処理ステップが含まれる。本明細書では、この複数の処理ステップを「一連の処理ステップ」と称する。本発明により記録される動作履歴情報は、一連の処理ステップ全体の実行結果を対象としてもよいし、一連の処理ステップ全体を幾つかに細分化した部分的な各処理ステップ毎の実行結果を対象としてもよい。なお、どの程度に細分化したものを各処理ステップとするか、つまりどの程度細かく動作履歴情報を記録するかについては任意である。本発明は、処理ステップの細分化の程度に関わらず適用可能である。
【００１８】
後述するように、ＣＰＵ２は、一連の処理ステップの実行結果を、動作履歴情報としてログファイル５にラップアラウンド方式で蓄積する。各動作履歴情報は、後述するように、一連の処理ステップの実行を完了したことを示す情報(以下、これを「通常メッセージ」と総称する)、又は、実行が途中で不能になったことを示す情報（以下、これを「完了未確認メッセージ」と総称する）のいずれかとなる。
【００１９】
ここで、「実行が途中で不能になった場合」とは、一連の処理ステップの途中でＩＣカードへの電源供給が止まり後続の処理ステップが行われず、一連の処理ステップを終了できなかった場合が典型例である。このような場合は、以下の想定済みのエラーとは区別する。
【００２０】
これに対して、「実行を完了した場合」には、一連の処理ステップがエラーを生じることなく終了した場合と、エラーを生じても一応終了できた場合とが含まれる。プログラムが終了できるようなエラーは、想定済みのエラー（例えば、電子クーポンが期限切れで使用できなかった等）であって、プログラムの分岐処理に組み込まれているので、プログラムを一応終了することができる。
【００２１】
通常メッセージ及び完了未確認メッセージの各々の具体的内容は、処理ステップの内容に応じて様々に設定される。具体例については、図３以降でさらに詳細に説明する。
【００２２】
図２は、本発明の一実施例によるログファイル５のデータ構成図である。図２に示すように、ログファイル５は、カレント情報２１と、動作履歴情報の集合である動作履歴情報保存領域２２とから構成されている。
【００２３】
カレント情報２１は、動作履歴情報保存領域２２内における一番最近記録された最新の動作履歴情報の記録位置を常に示している。記録位置とは、具体的には記録媒体内のアドレスであり、カレント情報２１には、常に最新の動作履歴情報のアドレスがセットされている。
【００２４】
動作履歴情報保存領域２２において、新たに１つの動作履歴情報を記録する際には、一番古い動作履歴情報が保存されている記録位置（以下、「アドレス」と称する）にその新しい動作履歴情報を上書きして保存する。すなわちラップアラウンド方式による記録手段を備えており、これにより動作履歴情報の集合が保存されている。
【００２５】
図１に示したＣＰＵ２は、ログファイル５に記録された動作履歴情報を参照する手段と、ログファイル５に対して動作履歴情報を記録する手段とを備えている。なお、本明細書中の説明では、ＣＰＵ２によるログファイル５のデータの参照(又は取得)を「入力」と称し、また、ログファイル５に対するデータの記録(又は保存)を「出力」と称する場合がある。
ＣＰＵ２は、動作履歴情報保存領域２２における各動作履歴情報のアドレスと、各動作履歴情報が記録された順序とを判別することができ、ラップアラウンド方式に従った動作履歴情報の記録及び参照を行うことができる。一般的には、動作履歴情報保存領域２２が循環バッファと呼ばれる構造になっていることをもって、動作履歴情報の記録順序が明確となっている。また、動作履歴情報保存領域２２の容量は、ＣＰＵ２の制御により常に一定の容量以下となるように維持されている。
【００２６】
図３は、ＣＰＵ２による動作履歴情報の記録処理フローの一例を示す図である。必要に応じて図１及び図２で用いた符号を参照する。以下、電子クーポンの取得又は使用の機能（要求内容）を実行する場合の動作履歴情報の記録を一例として説明する。
【００２７】
ＩＣカード１がＩＣカードリーダライタ６の感知範囲内に入ると、ＩＣカードリーダライタ６からＩＣカード１へ電源が供給され、要求内容に関連する一連の処理ステップが開始される。同時に、ＩＣカード１内での動作履歴情報の記録処理ステップも開始されることになる。先ず、ＣＰＵ２は、ログファイル５のカレント情報２１の内容を入力して、一番最近出力された動作履歴情報のアドレスを把握する（ステップ３０１）。
【００２８】
ステップ３０１で把握したアドレスに基づいて、所定の記録順序に従い、次の動作履歴情報を記録すべき動作履歴情報保存領域２２内のアドレスを判別し、そのアドレスをカレント情報２１に出力する（ステップ３０２）。これによりカレント情報２１が更新される。
【００２９】
次に、ステップ３０２で出力したカレント情報２１が指し示すアドレスにおけるメッセージログ（以下、「カレント」と称する）に、「カードリーダを認識できませんでした」という完了未確認メッセージを出力する（ステップ３０３）。つまり、最初の処理ステップの実行に先立って、予め完了未確認メッセージを動作履歴情報としてカレントに記録しておく。
【００３０】
続いて、最初の処理ステップを実行する。すなわち、ＩＣカードリーダライタ６を介して情報処理装置７との通信を確立し、情報処理装置７から情報処理装置７がもつタイムスタンプと要求内容とを取得する処理を実行する（ステップ３０４）。
【００３１】
ステップ３０４の取得処理が成功した場合（ステップ３０５）、カレントに、タイムスタンプと、要求内容の処理の完了を確認できなかったという旨の完了未確認メッセージとを、上書きの形式で出力する（ステップ３０６）。例えば、要求内容がクーポンの取得である場合、「07/02/23  20:01:10  クーポンＡを取得します（完了未確認）」という完了未確認メッセージを出力する。つまり、上記ステップ３０３と同様に、ステップ３０６でも、次の処理ステップの実行に先立って、完了未確認メッセージを動作履歴情報として記録しておく。
【００３２】
ステップ３０４の取得処理が失敗した場合（ステップ３０５）、カレントに、失敗した理由を記述したエラーメッセージを、ステップ３０３で出力した完了未確認メッセージの上書きの形式で出力する（ステップ３０７）。例えば、電波の受信に失敗した場合は「電波を受信できませんでした」というエラーメッセージを出力する。エラーメッセージでカレントを上書きした後、電子クーポンの取得又は使用などの一連の処理ステップを終了する。ステップ３０７を経由したフローでも、一応、一連の処理ステップは終了するので、ステップ３０７で出力されるエラーメッセージは、通常メッセージの一つである。
【００３３】
ステップ３０５で取得処理が成功した場合、ＩＣカードリーダライタ６を介して情報処理装置７と通信して、電子クーポンの取得又は使用など、プログラムされている要求内容の処理を実行する（ステップ３０８）。
【００３４】
ステップ３０８の処理が成功した場合（ステップ３０９）、カレントに、要求内容の処理が問題なく完了したという旨の通常メッセージを、ステップ３０６で出力した完了未確認メッセージの上書きの形式で出力する（ステップ３１０）。例えば、要求内容がクーポンの取得である場合、「07/02/23  20:01:10  クーポンＡを取得しました」という通常メッセージを出力する。なお、タイムスタンプを記述した部分はステップ３０６で出力した内容から変更せず、メッセージ部分だけ更新してもよい。
【００３５】
ステップ３０８の処理が失敗した場合（ステップ３０９）、カレントに、失敗した理由を記述したエラーメッセージを、ステップ３０６で出力した完了未確認メッセージの上書きの形式で出力する（ステップ３１１）。例えば、クーポンの有効期限が切れていた場合は、「07/02/23  20:01:10  クーポンＡは有効期限切れのため使用できません」というエラーメッセージを出力する。エラーメッセージでカレントを上書きした後、電子クーポンの取得又は使用などの一連の処理ステップを終了する。ステップ３１１を経由したフローでも、一応、一連の処理ステップは終了するので、ステップ３１１で出力されるエラーメッセージは、通常メッセージの一つである。
【００３６】
以上の通り、図３のフローにより一連の処理ステップを行う場合、いずれかの処理ステップの途中でＩＣカードへの電源の供給が止まり、後続のステップが実行されないという事態が生じ得る。そのような事態が生じた場合、上記のステップ３０７、３１０又は３１１で出力される通常メッセージによる上書きが実行できないことになる。その場合、カレントにはステップ３０３又はステップ３０６で出力された完了未確認メッセージがそのまま動作履歴情報として残されることになる。しかしながら、その内容は、生じた事態と比較して矛盾の少ないものとなる。
【００３７】
例えば、ステップ３０４の処理中あるいは完了直後に電源の供給が止まり、ステップ３０６又は３０７による動作履歴情報の上書き出力が行われなかった場合、その時点でのカレント内の動作履歴情報は、ステップ３０３で出力した「カードリーダを認識できませんでした」という完了未確認メッセージの内容になっている。
【００３８】
また、ステップ３０８の処理中に電源の供給が止まり、ステップ３１１による動作履歴情報の上書き出力が行われなかった場合、その時点でのカレント内の動作履歴情報は、ステップ３０６で出力した「07/02/23  20:01:10  クーポンＡを取得します（完了未確認）」という完了未確認メッセージの内容になっている。
【００３９】
また、ステップ３０８の処理自体には成功した場合でも、直後に電源の供給が止まり、ステップ３１０による動作履歴情報の上書き出力が行われなかった場合（本発明では、この場合も、ステップ３０８の処理の実行を完了できなかった場合に含めることとする）は、その時点でのカレント内の動作履歴情報はステップ３０６で出力した「07/02/23  20:01:10  クーポンＡを取得します（完了未確認）」という完了未確認メッセージの内容になっている。
【００４０】
このように、以上に例示したいずれのケースも、矛盾の少ない動作履歴情報の内容になっている。なお、図３で示した例よりも処理ステップをさらに細分化し、それらの処理ステップの都度、適切な動作履歴情報の内容に上書き出力すれば、より矛盾の少ない動作履歴情報の内容にすることができる。また、動作履歴情報の容量を節約するために、完了未確認メッセージ及び通常メッセージを、文字列データではなく識別子で記録してもよい。ただしこの場合、これらのメッセージを参照する際に、識別子が意味する情報を認識できるようにする手段が必要である。
【００４１】
図４は、ログファイル５の記録状態の一例を示すデータ構造図である。この場合、動作履歴情報保存領域２２に動作履歴情報２２Ａ〜２２Ｄが連続して記録されており、記録する各動作履歴情報の容量は常に一定であり、動作履歴情報保存領域２２が循環バッファであるとする。
【００４２】
カレント情報２１が示す通り、一番最近記録された動作履歴情報は、動作履歴情報２２Ｃである。各動作履歴情報の容量が一定の循環バッファであるため、動作履歴情報が記録された順序は、動作履歴情報２２Ｄ(最古)、動作履歴情報２２Ａ、動作履歴情報２２Ｂ、動作履歴情報２２Ｃ(最新)であることが分かる。
【００４３】
動作履歴情報２２Ｃの次の動作履歴情報が記録されるべき領域は、各動作履歴情報の容量が一定の循環バッファであるため、丁度、動作履歴情報２２Ｄの領域になる。この状態から、例えばクーポンＢを使用する一連の処理ステップを実行した場合、クーポンＢの使用における動作履歴情報の記録は、動作履歴情報２２Ｄの領域に対して上書きするように動作履歴情報が出力される。
【００４４】
図５は、図４と同じ構成のデータ構造図であり、図４の状態から遷移した状態である。図４の状態から、クーポンＢを使用する一連の処理ステップの実行を開始したが、クーポン情報の送信中あるいは送信完了直後に電源の供給が止まったため、動作履歴情報２２Ｄの内容が「07/12/23  22:51:40  クーポンＢを使用します（完了未確認）」となっている状態である。
【００４５】
カレント情報２１は、クーポンＢを使用する一連の処理ステップの冒頭で更新されているため、正しく動作履歴情報２２Ｄを指し示している。各動作履歴情報の容量が一定の循環バッファであるため、動作履歴情報が記録された順序は、動作履歴情報２２Ａ(最古)、動作履歴情報２２Ｂ、動作履歴情報２２Ｃ、動作履歴情報２２Ｄ(最新)であることが分かる。
【００４６】
動作履歴情報２２Ｄの次の動作履歴情報が記録されるべき領域は、各動作履歴情報の容量が一定の循環バッファであるため、丁度、動作履歴情報２２Ａの領域になる。この状態から、例えばクーポンＤを取得する一連の処理ステップを実行した場合、クーポンＤの取得における動作履歴情報の記録は、動作履歴情報２２Ａの領域に対して上書きするように動作履歴情報が出力される。
【００４７】
以上のことから分かるように、クーポンＢを使用する一連の処理ステップの実行中に問題が発生して動作履歴情報の記録が不完全であっても、次回以降の動作履歴情報の記録には何ら影響をおよぼさない。
【００４８】
図６は、図５と同じ構成のデータ構造図であり、図５の状態からさらに遷移した状態である。図５の状態から、クーポンＤを取得する一連の処理ステップが問題無く完了し、動作履歴情報２２Ａの内容が「07/12/23  22:53:12  クーポンＤを取得しました」となっている状態である。
【００４９】
カレント情報２１が示す通り、一番最近記録された動作履歴情報が動作履歴情報２２Ａである。各動作履歴情報の容量が一定の循環バッファであるため、動作履歴情報が記録された順序は、動作履歴情報２２Ｂ(最古)、動作履歴情報２２Ｃ、動作履歴情報２２Ｄ、動作履歴情報２２Ａ(最新)であることが分かる。
【図面の簡単な説明】
【００５０】
【図１】本発明に係る一実施形態におけるシステム構成図である。
【図２】ログファイルのデータ構成図である。
【図３】動作履歴情報の記録処理フローの一例を示す図である。
【図４】ログファイルの記録状態の一例を表すデータ構成図である。
【図５】ログファイルの記録状態の一例を表すデータ構成図である。
【図６】ログファイルの記録状態の一例を表すデータ構成図である。
【符号の説明】
【００５１】
１…ＩＣカード、２…ＣＰＵ、３…アンテナ、４…記録媒体、５…ログファイル、６…ＩＣカードリーダライタ、７…情報処理装置、２１…カレント情報、２２…動作履歴情報保存領域、２２Ａ〜２２Ｄ…動作履歴情報
【図１】
2009054090.tif 000003
【図２】
2009054090.tif 000004
【図３】
2009054090.tif 000005
【図４】
2009054090.tif 000006
【図５】
2009054090.tif 000007
【図６】
2009054090.tif 000008