しかしながら特許文献1及び特許文献2に開示されている様に、既存のデータベースに記録されている情報をダミー情報に変換したテスト用データベースを自動的に作成し、作成したテスト用データベースを用いてアプリケーションプログラムに係るテストを行う場合、テスト用データベースを作成するという事前準備に係る作業及び時間を要するという問題がある。
なお特許文献1及び特許文献2に開示されている技術を用いずに手作業でテスト用データベースを作成した場合、更に事前準備に多大なる作業及び時間を要することは言うまでもなく、また実際のデータベース又はそれをコピーしたテスト用データベースを用いる場合、前述した様に情報漏洩に係る問題がある。
本発明は斯かる事情に鑑みてなされたものであり、ユニークなコードデータ及び記録データを対応付けて記録した実際に使用されているデータベースに対し、コードデータに相当するキーデータを受け付けた場合に、記録データに代替して模擬記録データを出力し、また記録データに相当するキーデータを受け付けた場合に、データベースに記録されているコードデータを出力することにより、テスト用データベースを事前準備することなく、また情報漏洩に係る問題を解消することが可能な模擬処理装置、該模擬処理装置を用いた模擬処理システム、及び前記模擬処理装置を実現するためのコンピュータプログラムの提供を主たる目的とする。
さらに本発明は、出力した結果に基づきコードデータ及び模擬記録データを対応付けて記録した模擬データベースを作成することにより、データベースを用いたテストを実施しながらテスト用データベースとして用いることが可能な模擬データベースを自動的に作成することが可能な模擬処理装置等の提供を他の目的とする。
本願に記載の模擬処理装置は、ユニークなコードデータに対応付けて記録データを記録してあるデータベースにアクセスし、受け付けたキーデータに対して記録されているデータを出力する検索処理の模擬処理を実行する模擬処理装置において、模擬処理用の模擬記録データを記録する模擬テーブルと、受け付けたキーデータに合致するコードデータが、前記データベースに記録されているか否かを判定する第1判定手段と、該第1判定手段により、キーデータに合致するコードデータが前記データベースに記録されていると判定した場合に、模擬テーブルに記録されている模擬記録データを出力する手段とを備える。
本願に記載の模擬処理装置は、前記コードデータに対応付けて模擬記録データを記録する模擬データベースと、受け付けたキーデータに合致するコードデータが模擬データベースに記録されているか否かを判定する第2判定手段と、該第2判定手段により、キーデータに合致するコードデータが模擬データベースに記録されていると判定した場合に、合致するコードデータに対応付けて記録されている模擬記録データを出力する手段とを更に備え、前記第1判定手段は、第2判定手段により、キーデータに合致するコードデータが模擬データベースに記録されていないと判定した場合に判定する様に構成してあり、前記第1判定手段の判定に基づいて出力した模擬記録データを、キーデータに合致するコードデータに対応付けて模擬データベースに記録する手段を更に備える。
本願に記載の模擬処理装置は、前記データベースは、コードデータに対応付けて記録データ及び該記録データに関連する関連データを記録する様に構成してあり、受け付けたキーデータに合致するコードデータに対応付けて記録されている関連データを出力する手段を更に備える。
本願に記載の模擬処理装置は、ユニークなコードデータに対応付けて記録データを記録してあるデータベースにアクセスし、受け付けたキーデータに対して記録されているデータを出力する検索処理の模擬処理を実行する模擬処理装置において、模擬処理用の模擬記録データを記録する模擬テーブルと、受け付けたキーデータに合致する模擬記録データが模擬テーブルに記録されているか否かを判定する第3判定手段と、該第3判定手段により、キーデータに合致する模擬記録データが模擬テーブルに記録されていると判定した場合に、前記データベースに記録されているコードデータを出力する出力手段とを備える。
本願に記載の模擬処理装置は、前記コードデータに対応付けて模擬記録データを記録する模擬データベースと、受け付けたキーデータに合致する模擬記録データが模擬データベースに記録されているか否かを判定する第4判定手段と、該第4判定手段により、キーデータに合致する模擬記録データが模擬データベースに記録されていると判定した場合に、合致する模擬記録データに対応付けて記録されているコードデータを出力する手段とを更に備え、前記第3判定手段は、第4判定手段により、キーデータに合致する模擬記録データが模擬データベースに記録されていないと判定した場合に判定する様に構成してあり、前記第3判定手段の判定に基づいて出力したコードデータを、キーデータに合致する模擬記録データに対応付けて模擬データベースに記録する手段とを更に備える。
本願に記載の模擬処理装置は、前記模擬テーブルは、模擬記録データに対応付けて自然数を記録する様に構成してあり、前記出力手段は、合致する模擬記録データに対応付けて模擬テーブルに記録されている自然数が示す数のコードデータを出力する様に構成してある。
本願に記載の模擬処理装置は、前記データベースは、コードデータに対応付けて記録データ及び該記録データに関連する関連データを記録する様に構成してあり、出力するコードデータに対応付けて記録されている関連データを出力する手段を更に備える。
本願に記載の模擬処理システムは、上述した模擬処理装置と、該模擬処理装置からのアクセスが可能で、ユニークなコードデータに対応付けて記録データを記録してあるデータベースとを備える。
本願に記載の模擬処理システムは、ユニークなコードデータに対応付けて記録データを記録してあるデータベースにアクセスし、受け付けたキーデータに対して記録されているデータを出力する検索処理の模擬処理を実行する模擬処理システムにおいて、ユニークなコードデータに対応付けて記録データを記録してあるデータベースと、模擬処理用の模擬記録データを記録する模擬テーブルと、受け付けたキーデータに合致するコードデータが、前記データベースに記録されているか否かを判定する手段と、キーデータに合致するコードデータが前記データベースに記録されていると判定した場合に、模擬テーブルに記録されている模擬記録データを出力する手段とを備える。
本願に記載の模擬処理システムは、ユニークなコードデータに対応付けて記録データを記録してあるデータベースにアクセスし、受け付けたキーデータに対して記録されているデータを出力する検索処理の模擬処理を実行する模擬処理システムにおいて、ユニークなコードデータに対応付けて記録データを記録してあるデータベースと、模擬処理用の模擬記録データを記録する模擬テーブルと、受け付けたキーデータに合致する模擬記録データが模擬テーブルに記録されているか否かを判定する手段と、キーデータに合致する模擬記録データが模擬テーブルに記録されていると判定した場合に、前記データベースに記録されているコードデータを出力する手段とを備える。
本願に記載のコンピュータプログラムは、コンピュータに、ユニークなコードデータに対応付けて記録データを記録してあるデータベースにアクセスし、受け付けたキーデータに対して記録されているデータを出力する検索処理の模擬処理を実行させるコンピュータプログラムにおいて、コンピュータに、受け付けたキーデータに合致するコードデータが、前記データベースに記録されているか否かを判定させる手順と、コンピュータに、キーデータに合致するコードデータが前記データベースに記録されていると判定した場合に、模擬処理用の模擬記録データを記録する模擬テーブルに記録されている模擬記録データを出力させる手順とを実行させる。
本願に記載のコンピュータプログラムは、コンピュータに、ユニークなコードデータに対応付けて記録データを記録してあるデータベースにアクセスし、受け付けたキーデータに対して記録されているデータを出力する検索処理の模擬処理を実行させるコンピュータプログラムにおいて、コンピュータに、受け付けたキーデータに合致する模擬記録データが、模擬処理用の模擬記録データを記録する模擬テーブルに記録されているか否かを判定させる手順と、コンピュータに、キーデータに合致する模擬記録データが模擬テーブルに記録されていると判定した場合に、前記データベースに記録されているコードデータを出力させる手順とを実行させる。
本願では、社員番号等のコードデータに相当するキーデータを受け付けた場合に、実際に用いられているデータベースに記録してある記録データではなく、模擬記録データを出力することにより、例えばアプリケーションプログラムのシミュレーションテスト等の模擬処理を行う場合に、個人情報、機密情報等の情報の漏洩を防止することが可能である。またテスト用のデータベースの事前準備が不要であるので、事前準備に要する作業量及び時間を削減することが可能である。しかも実環境での模擬処理を行うことができるので、信頼性の高いテストの実施が可能である。
本願では、社員の氏名等の記録データに相当するキーデータを受け付けた場合に、コードデータを出力することにより、例えばアプリケーションプログラムのシミュレーションテスト等の模擬処理を行う場合に、入力した氏名と出力したコードデータとが一致しないことから、個人とそれに関連する情報との関係の漏洩を防止することが可能である。またテスト用のデータベースの事前準備が不要であるので、事前準備に要する作業量及び時間を削減することが可能である。しかも実環境での模擬処理を行うことができるので、信頼性の高いテストの実施が可能である。
本願では、検索処理の結果に基づいて模擬データベースを自動的に作成することにより、コードデータと模擬記録データとの対応関係の整合性を継続して保持することが可能である。しかも個人情報等の記録データを伏せたテスト用データベースとして用いることが可能な模擬データベースを、事前準備を行うことなくテスト中に自動的に作成することが可能である。
本願では、実際の記録データと関連データとの関係を伏せた状態で関連データを出力させることができるので、情報の漏洩を防止しながらも様々な処理の結果を擬似的に再現することが可能である。
本願では、例えば同一姓の複数の社員の姓をキーデータとした場合の処理結果を擬似的に再現することができるので、シミュレーションテストとして実施する模擬処理の範囲を拡大することが可能である。
本発明に係る模擬処理装置、模擬処理システム及びコンピュータプログラムは、社員番号等のユニークなコードデータに対応付けて社員の姓等の記録データを記録するデータベースにアクセスし、受け付けたキーデータに対して、記録されているデータを出力する検索処理の模擬処理を実行する。そしてコードデータに対応付けて記録データを記録してある実際に運用されているデータベースと、模擬処理用の社員の姓等の模擬記録データを記録する模擬テーブルとを用い、コードデータに相当するキーデータを受け付けた場合に、受け付けたキーデータに合致するコードデータがデータベースに記録されているか否かを判定し、キーデータに合致するコードデータがデータベースに記録されていると判定した場合に、記録データに代替するデータとして模擬テーブルに記録されている模擬記録データを出力する。
この構成により、本発明では、例えばアプリケーションプログラムのシミュレーションテスト等の模擬処理を行う場合に、実際に運用されているデータベースに記録されている記録データを出力することが無いので、記録データとして記録されている個人情報、機密情報等の情報の漏洩を防止することが可能である等、優れた効果を奏する。またテスト用のデータベースの事前準備が不要となるので、テスト用のデータベースの作成等の事前準備に要する作業量及び時間を削減することが可能である等、優れた効果を奏する。更に実環境での模擬処理を行うことができるので、実環境での運用に近い状態での信頼性の高いテストの実施が可能である等、優れた効果を奏する。また模擬記録データを出力すると共に、記録データに関連する関連データをも出力する様に構成した場合には、実際の記録データと関連データとの関係を伏せた状態で関連データを出力させることができるため、情報の漏洩を防止しながらも様々な処理の結果を擬似的に再現することができるので、シミュレーションテストとして実施する模擬処理の範囲を拡大することが可能である。
さらに本発明に係る模擬処理装置等は、コードデータに対応付けて模擬記録データを記録する模擬データベースを用い、受け付けたキーデータに対して出力した模擬記録データを、キーデータに合致するコードデータに対応付けて模擬データベースに記録する。受け付けたキーデータに合致するコードデータが模擬データベースに記録されている場合に、合致するコードデータに対応付けて記録されている模擬記録データを出力する。
この構成により、本発明では、検索処理の結果に基づいて、個人情報等の記録データを伏せたテスト用データベースとして用いることが可能な模擬データベースを、事前準備を行うことなくテスト中に自動的に作成することが可能である等、優れた効果を奏する。しかも模擬データベースにより、コードデータと模擬記録データとの対応関係の整合性を継続して保持することが可能である等、優れた効果を奏する。
また本発明に係る模擬処理装置、模擬処理システム及びコンピュータプログラムは、記録データに相当するキーデータを受け付けた場合に、受け付けたキーデータに合致する模擬記録データが模擬テーブルに記録されているか否かを判定し、キーデータに合致する模擬記録データが模擬テーブルに記録されていると判定した場合に、データベースに記録されているコードデータを出力する。
この構成により、本発明では、例えばアプリケーションプログラムのシミュレーションテスト等の模擬処理を行う場合に、入力した氏名と出力したコードデータとが一致しないことから、個人とそれに関連する情報との関係の漏洩を防止することが可能である等、優れた効果を奏する。またテスト用のデータベースの事前準備が不要であるので、テスト用のデータベースの作成等の事前準備に要する作業量及び時間を削減することが可能である等、優れた効果を奏する。更に実環境での模擬処理を行うことができるので、実環境での運用に近い状態での信頼性の高いテストの実施が可能である等、優れた効果を奏する。また模擬記録データを出力すると共に、記録データに関連する関連データをも出力する様に構成した場合には、実際の記録データと関連データとの関係を伏せた状態で関連データを出力させることができるため、情報の漏洩を防止しながらも様々な処理の結果を擬似的に再現することができるので、シミュレーションテストとして実施する模擬処理の範囲を拡大することが可能である。
さらに本発明に係る模擬処理装置等は、模擬記録データに対応付けて自然数を模擬テーブルに記録しておき、データベースに記録されているコードデータを出力する際に、自然数が示す数のコードデータを出力することにより、例えば同一姓の複数の社員の姓をキーデータとした場合の処理結果を擬似的に再現することができるので、シミュレーションテストとして実施する模擬処理の範囲を拡大することが可能である等、優れた効果を奏する。
さらに本発明に係る模擬処理装置等は、受け付けたキーデータに対して出力したコードデータを、キーデータに合致する模擬記録データに対応付けて模擬データベースに記録する。また受け付けたキーデータに合致する模擬記録データが模擬データベースに記録されている場合に、合致する模擬記録データを出力する。
この構成により、本発明では、検索処理の結果に基づいて、個人情報等の記録データを伏せたテスト用データベースとして用いることが可能な模擬データベースを、事前準備を行うことなくテスト中に自動的に作成することが可能である等、優れた効果を奏する。しかも模擬データベースにより、コードデータと模擬記録データとの対応関係の整合性を継続して保持することが可能である等、優れた効果を奏する。
以下、本発明とその実施の形態を示す図面に基づいて詳述する。図1は、本発明の模擬処理システムの構成例を示す概念図である。図1中1は、ウェブサーバコンピュータ等のコンピュータを用いた本発明の模擬処理装置であり、模擬処理装置1は、イントラネット等の通信網100に接続されている。通信網100には、データベースサーバコンピュータ等のコンピュータを用いた記録装置2、及びユーザが操作するクライアントコンピュータ等のコンピュータを用いた入出力装置3が接続されている。本発明はこれらの装置を用いて例えばデータベースに対してアクセスを行い、検索処理を実行するアプリケーションプログラムの開発、設計、保守等の作業に係るシミュレーションテスト等の模擬処理を支援する。
記録装置2には、実際に運用されているデータベース(実DB)21aが記録されており、ユーザは、入出力装置3を用いてデータベース21aに記録されているデータに対する様々な操作を行う。模擬処理装置1は、入出力装置3からの操作に基づきデータベース21aに対する処理を行うアプリケーションプログラム(AP)1b、テスト用データベースとして用いられる模擬データベース(模擬DB)12a、及びシミュレーションテスト等の模擬処理用の模擬記録データを記録する模擬テーブル(模擬TBL)12b、並びにデータベース21a、アプリケーションプログラム1b、模擬データベース12a及び模擬テーブル12b間でやりとりされるデータに関する処理を実行させる本発明のコンピュータプログラム(CP)1aを備えている。なお以降の説明では、模擬データベース12aと明確に区別するために、実際に運用しているデータベース21aを実データベース21aと称する。
本発明の模擬処理システムは、実際に運用しているシステムを模擬処理にも用いることが可能なシステムであり、模擬処理に用いる場合、入出力装置3を操作するユーザとは、模擬処理に係る作業を行う開発担当者、保守担当者等の試験担当者である。また模擬処理に用いる場合、アプリケーションプログラム1bとは、開発中のアプリケーションプログラム等のテストの対象となるプログラムである。
実際の運用を行う場合、ユーザとは、実データベース21aに記録された社員情報等の様々な情報に関与する人事担当者、給与担当者等の実使用担当者である。また実際の運用に用いる場合、アプリケーションプログラム1bとは、実際に稼動しているプログラムであり、実際の運用時には、本発明のコンピュータプログラム1aは、停止し、又は中継程度の簡単な処理を実行するに止まり、アプリケーションプログラム1bが、実データベース21aに対する様々な処理を実行する。
図2及び図3は、本発明の模擬処理システムが備える各装置の構成例を示すブロック図である。図2は、主に本発明の模擬処理装置1を示し、図3は主に記録装置2及び入出力装置3を示している。模擬処理装置1は、装置全体を制御するCPU等の制御手段10と、本発明のコンピュータプログラム1a及びデータ等の各種情報を記録したCD−ROM等の記録媒体から各種情報を読み取るCD−ROMドライブ等の補助記憶手段11と、補助記憶手段11により読み取った本発明のコンピュータプログラム1a等の各種情報を記録するハードディスク等の記録手段12と、情報を一時的に記憶するRAM等の記憶手段13とを備えている。そして記録手段12に記録した本発明のコンピュータプログラム1aを記憶手段13に記憶させて、制御手段10の制御にて実行することにより、ウェブサーバコンピュータは、本発明の模擬処理装置1として動作する。さらに模擬処理装置1は、通信網100に接続するLANボード等の通信手段14を備えている。
また記録手段12には、データベースに対する様々な処理を実行する模擬処理用のアプリケーションプログラム1bが記録されており、模擬処理の際に実行することが可能である。なお前述した様に、実際の運用に用いるアプリケーションプログラム1bを実行することも可能である。さらに記録手段12には、テスト用データベースとして用いられる模擬データベース12a及びシミュレーションテスト等の模擬処理用の模擬記録データを記録する模擬テーブル12bが記録されている。
記録装置2は、制御手段20、記録手段21、記憶手段22及び通信手段23を備えており、記録手段21の記録領域の一部は、実際に運用されている実データベース21aとして用いられている。
入出力装置3は、制御手段30、記録手段31、記憶手段32及び通信手段33、並びにキーボード、マウス等の入力手段34、及びモニタ、プリンタ等の出力手段35を備えている。
図4は、本発明の模擬処理システムにて用いられる実データベース21aの記録内容の一例を概念的に示す説明図である。記録装置2が備える実データベース21aには、社員マスタ、所属マスタ等の名称が付与されており、図4に例示した実データベース21aは、社員の個人情報を記録する社員マスタを示している。実データベース21aには、社員番号等のユニークなコードデータに対応付けて、氏名(姓)、氏名(名)、住所、電話番号、生年月日等の様々な項目のデータがレコード単位で記録されている。なお以降の説明では、氏名(姓)に対する検索処理の例について説明するため、便宜上、氏名(姓)の項目に対応するデータを実記録データと称し、コードデータ及び実記録データ以外の氏名(名)、住所、電話番号、生年月日等の項目のデータを実記録データに関連する関連データと称する。但し、複数の項目、例えば氏名(姓)、氏名(名)及び電話番号の三項目のデータを実記録データとする様にし、これらの項目以外のデータを関連データとしても良い等、実施状況に応じて適宜設定することが可能である。
図5は、本発明の模擬処理システムにて用いられる模擬データベース12aの記録内容の一例を概念的に示す説明図である。模擬処理装置1が備える模擬データベース12aは、実データベース21aに基づき作成されるテスト用データベースであり、実記録データに対応する項目のデータが、ダミーデータである模擬記録データに代替されている。図5では、実データベース21aの社員マスタに対応するテスト用データベースとして用いられる模擬データベース12aを例示している。模擬データベース12aは、社員番号等のユニークなコードデータに対応付けて、氏名(姓)、氏名(名)、住所、電話番号、生年月日等の様々な項目のデータ、及び削除フラグの項目のデータがレコード単位で記録されている。模擬データベース12aは、実データベース21aに設定された各項目に削除フラグの項目を追加したデータベースである。なお実記録データを記録する氏名(姓)の項目には、実記録データのダミーデータである模擬記録データが記録されている。また削除フラグの項目に、「0」が記録されている場合、当該レコードは、記録されているものとして取り扱われ、「1」が記録されている場合、当該レコードは削除されており、記録されていないものとして取り扱われる。
図6は、本発明の模擬処理システムにて用いられる模擬テーブル12bの記録内容の一例を概念的に示す説明図である。模擬テーブル12bには、マスタ名称及び項目名に対応付けて、模擬記録データ、使用許可回数、使用済み回数等の項目のデータがレコード単位で記録されている。マスタ名称及び項目名は、実データベース21a及び模擬データベース12aのマスタ名称及び項目名に対応し、ダミーデータとして代替する対象となる項目を特定している。模擬記録データは、実記録データに代替して用いられるダミーデータを示している。使用許可回数は、ダミーデータを使用可能な回数の上限値を示す自然数であり、使用済み回数は既に使用した回数である。例えば図6に例示したレコードは、社員マスタの氏名(姓)の項目に記録された実記録データを代替する模擬記録データに関するレコードであり、山田という模擬記録データを10回使用することが許可されており、既に1回使用されていることが示されている。なお山田、田中等の多数存在すると見なされる模擬記録データの使用許可回数には大きな値を設定し、少数しか存在しないと見なされる模擬記録データの使用許可回数は小さな値を設定することが望ましい。
図6では、一のマスタ名称に対応付けて一の項目名を記録した模擬テーブル12bを例示しているが、一のマスタ名称に複数の項目名を記録する様にしても良い。また図6では、マスタ名称及び項目名に対応付けて模擬記録データを記録する模擬テーブル12bを例示しているが、項目名に対応付けて模擬記録データを記録するテーブルと、マスタ名称に対応付けて項目名を記録するテーブルとに分割し、氏名(姓)等の一の項目に対応する模擬記録データを、社員マスタ、所属マスタ等の複数のマスタの夫々の項目で共用する様にしても良い。
次に本発明の模擬処理システムにて用いられる各装置の模擬処理時に実行される処理について説明する。先ずレコード追加処理として、データベースに新たなレコードを追加する処理の模擬処理について説明する。図7は、本発明の模擬処理装置1のレコード追加処理の一例を示すフローチャートである。入出力装置3を操作するユーザは、追加すべきコードデータ、模擬記録データ、関連データ等のデータを含むレコードを入力する操作を行う。入出力装置3は、入力手段34から追加すべき各種データを含むレコードであるレコード情報の入力を受け付け、受け付けたレコード情報を通信手段33から通信網100を介して模擬処理装置1へ送信する。
模擬処理装置1は、制御手段10の制御により、通信手段14にて各種データを含むレコード情報を受け付け、受け付けたレコード情報をアプリケーションプログラム1bに渡し、アプリケーションプログラム1bは、受け付けた各種データを含むレコード情報を記録すべく本発明のコンピュータプログラム1aに渡す。
模擬処理装置1は、本発明のコンピュータプログラム1aを実行する制御手段10の制御により、各種データを含むレコード情報を受け付け(S101)、受け付けたレコード情報に含まれるコードデータ、模擬記録データ、関連データ等の各種情報を新たなレコードとして模擬データベース12aに記録する(S102)。ステップS102において、新たに記録されたレコードの削除フラグには、記録されているレコードとして取り扱うことを示す「0」が記録される。そして本発明のコンピュータプログラム1aは、レコードの追加が完了したことを示す情報を、アプリケーションプログラム1bを介して入出力装置3へ出力し、レコード記録処理を終了する。入出力装置3は、受け付けた情報に基づいて、出力手段35からユーザに対する出力を行う。
次にレコード削除処理として、データベースに記録されているレコードを削除する処理の模擬処理について説明する。図8は、本発明の模擬処理装置1のレコード削除処理の一例を示すフローチャートである。ユーザは、模擬データベース12aに記録されているレコードを指定して、指定したレコードを削除する入力を行う。入出力装置3は、入力手段34から削除するレコードを指定する入力を受け付け、受け付けたレコードを指定するレコード指定情報を通信手段33から通信網100を介して模擬処理装置1へ送信する。
模擬処理装置1は、制御手段10の制御により、通信手段14にてレコード指定情報を受け付け、受け付けたレコード指定情報をアプリケーションプログラム1bに渡し、アプリケーションプログラム1bは、受け付けたレコード指定情報にて指定されたレコードを削除すべく本発明のコンピュータプログラム1aに渡す。
模擬処理装置1は、本発明のコンピュータプログラム1aを実行する制御手段10の制御により、レコード指定情報を受け付け(S201)、受け付けたレコード指定情報にて指定されているレコードの削除フラグに、記録されていないレコードとして取り扱うことを示す「1」を記録する(S202)。そして本発明のコンピュータプログラム1aは、レコードの削除が完了したことを示す情報を、アプリケーションプログラム1bを介して入出力装置3へ出力し、レコード削除処理を終了する。入出力装置3は、受け付けた情報に基づいて、出力手段35からユーザに対する出力を行う。
次にコードデータ検索処理として、コードデータをキーデータとして検索する処理の模擬処理について説明する。図9は、本発明の模擬処理装置1のコードデータ検索処理の一例を示すフローチャートである。ユーザは、データベースからコードデータに対応付けて記録されているデータを検索すべく、検索に係るキーデータとしてコードデータを入力する。入出力装置3は、入力手段34からコードデータに相当するキーデータの入力を受け付け、受け付けたキーデータを通信手段33から通信網100を介して模擬処理装置1へ送信する。
模擬処理装置1は、制御手段10の制御により、通信手段14にてコードデータに相当するキーデータを受け付け、受け付けたキーデータをアプリケーションプログラム1bに渡し、アプリケーションプログラム1bは、受け付けたキーデータに基づく検索処理の模擬処理を実行すべく本発明のコンピュータプログラム1aに渡す。
模擬処理装置1は、本発明のコンピュータプログラム1aを実行する制御手段10の制御により、キーデータを受け付け(S301)、受け付けたキーデータに合致するコードデータが模擬データベース12aに記録されているか否かを判定する(S302)。
ステップS302において、キーデータに合致するコードデータが模擬データベース12aに記録されており、かつその削除フラグが「0」であると判定した場合(S302:YES)、模擬処理装置1は、制御手段10の制御により、模擬データベース12aから、キーデータに合致するコードデータに対応付けて記録されている模擬記録データ及び関連データを読み取り(S303)、キーデータに合致するコードデータ、並びに読み取った模擬記録データ及び関連データを、キーデータに基づく検索結果として出力する(S304)。ステップS304において、本発明のコンピュータプログラム1aは、コードデータ、模擬記録データ及び関連データを、アプリケーションプログラム1bを介して入出力装置3へ出力し、コードデータ検索処理を終了する。入出力装置3は、受け付けた各種データに基づいて、出力手段35からユーザに対する出力を行う。ステップS304にて出力される模擬記録データは、コードデータに対応する本来の実記録データとは異なるデータであるため、個人情報等の情報が漏洩することはない。なおステップS302において、キーデータに合致するコードデータが模擬データベース12aに記録されていても、削除フラグが「1」であると判定した場合、模擬処理装置1は、キーデータに対応するレコードに係る各種データは、記録されていないことを示すエラー情報を出力し、コードデータ検索処理を終了する。
ステップS302において、キーデータに合致するコードデータが模擬データベース12aに記録されていないと判定した場合(S302:NO)、模擬処理装置1は、制御手段10の制御により、受け付けたキーデータに合致するコードデータが実データベース21aに記録されているか否かを判定する(S305)。
ステップS305において、キーデータに合致するコードデータが実データベース21aに記録されていると判定した場合(S305:YES)、模擬処理装置1は、制御手段10の制御により、模擬テーブル12bに記録されている任意の模擬記録データを読み取る(S306)。
ステップS306において、模擬処理装置1は、模擬テーブル12bに記録されている模擬記録データの中で、使用許可回数より使用済み回数が小さい値の模擬記録データ、即ち使用した回数が使用許可回数に到達していない模擬記録データの中から、一の模擬記録データを例えば乱数関数を用いてランダムに選択する。そして模擬処理装置1は、選択された模擬記録データを読み取った後、使用済み回数の値を1増加させる更新処理を行う。なおここでは図6に例示した社員マスタの氏名(姓)の項目に記録されたデータを代替する模擬記録データを読み取る例について説明する。また前述した様に、項目名に対応付けて模擬記録データを記録するテーブルと、マスタ名称に対応付けて項目名を記録するテーブルとを用いる場合、キーデータに基づいてマスタを選択し、選択したマスタに対応する項目名に対応付けて記録されている模擬記録データを読み取る。さらに選択したマスタに複数の項目名が対応付けられている場合、項目名毎に模擬記録データを読み取る。
そして模擬処理装置1は、制御手段10の制御により、受け付けたキーデータに合致するコードデータに対応付けて記録されている関連データを、実データベース21aから読み取り(S307)、受け付けたキーデータに合致するコードデータ、模擬テーブル12bから読み取った模擬記録データ、及び実データベース21aから読み取った関連データを夫々対応付けた新たなレコードとして模擬データベース12aに記録する(S308)。ステップS308において、新たに記録されたレコードの削除フラグには、記録されているレコードとして取り扱うことを示す「0」が記録される。なおコードデータに対応付けて記録されている全ての項目が模擬テーブル12bに設定されている場合、全ての項目のデータに代替して模擬記録データが用いられるため、関連データは存在しないこととなり、ステップS307の読取処理を省略することができる。
そして模擬処理装置1は、制御手段10の制御により、模擬データベース12aに記録したコードデータ、模擬記録データ及び関連データを、キーデータに基づく検索結果として出力する(S309)。ステップS309において、本発明のコンピュータプログラム1aは、コードデータ、模擬記録データ及び関連データを、アプリケーションプログラム1bを介して入出力装置3へ出力し、コードデータ検索処理を終了する。入出力装置3は、受け付けた各種データに基づいて、出力手段35からユーザに対する出力を行う。ステップS309にて出力される模擬記録データは、コードデータに対応する本来の実記録データとは異なるデータであるため、個人情報等の情報が漏洩することはない。例えばキーデータとして受け付けたコードデータに対応する記録情報である氏名(姓)が「田中」であっても、コードデータに対応付けて氏名(姓)が「佐藤」である模擬記録情報が出力される。
ステップS305において、キーデータに合致するコードデータが実データベース21aに記録されていないと判定した場合(S305:NO)、模擬処理装置1は、制御手段10の制御により、模擬処理装置1は、キーデータに対応するレコードに係る各種データは、記録されていないことを示すエラー情報を出力する(S310)。ステップS310において、本発明のコンピュータプログラム1aは、エラー情報を、アプリケーションプログラム1bを介して入出力装置3へ出力し、コードデータ検索処理を終了する。入出力装置3は、受け付けた情報に基づいて、出力手段35からユーザに対する出力を行う。
次に記録データ検索処理として、記録データをキーデータとして検索する処理の模擬処理について説明する。図10は、本発明の模擬処理装置1の記録データ検索処理の一例を示すフローチャートである。ユーザは、データベースから記録データに対応付けて記録されているデータを検索すべく、検索に係るキーデータとして記録データを入力する。入出力装置3は、入力手段34から記録データに相当するキーデータの入力を受け付け、受け付けたキーデータを通信手段33から通信網100を介して模擬処理装置1へ送信する。
模擬処理装置1は、制御手段10の制御により、通信手段14にて記録データに相当するキーデータを受け付け、受け付けたキーデータをアプリケーションプログラム1bに渡し、アプリケーションプログラム1bは、受け付けたキーデータに基づく検索処理の模擬処理を実行すべく本発明のコンピュータプログラム1aに渡す。
模擬処理装置1は、本発明のコンピュータプログラム1aを実行する制御手段10の制御により、キーデータを受け付け(S401)、受け付けたキーデータに合致する模擬記録データが模擬データベース12aに記録されているか否かを判定する(S402)。
ステップS402において、キーデータに合致する模擬記録データが模擬データベース12aに記録されていると判定した場合(S402:YES)、模擬処理装置1は、制御手段10の制御により、模擬テーブル12bから、キーデータに合致する模擬記録データに対応付けて記録されている使用許可回数及び使用済み回数を読み取り、使用許可回数及び使用済み回数が一致するか否かを判定する(S403)。ステップS403において、使用許可回数及び使用済み回数が一致する場合、当該模擬記録データについて使用許可回数分の読み取りが行われ、模擬データベース12aに記録されていると判定することができる。また使用許可回数及び使用済み回数が一致しない場合、当該模擬記録データについては、使用許可回数から使用済み回数を減じた回数分の更なる使用が可能であると判定することができる。
ステップS403において、使用許可回数及び使用済み回数が一致すると判定した場合(S403:YES)、模擬処理装置1は、制御手段10の制御により、模擬データベース12aから、キーデータに合致する模擬記録データを含むレコードを選択し、選択したレコードに模擬記録データに対応付けて記録されているコードデータ及び関連データを読み取る(S404)。ステップS404において、該当するキーデータに合致する模擬記録データを含むレコードが複数である場合、全てのレコードのコードデータ及び関連データを読み取る。
そして模擬処理装置1は、制御手段10の制御により、キーデータに合致する模擬記録データ、並びにステップS404にて読み取ったコードデータ及び関連データを、キーデータに基づく検索結果として出力する(S405)。ステップS405では、一組又は複数組の模擬記録データ、コードデータ及び関連データが出力される。ただしステップS405で検索結果とし出力するコードデータ及び関連データは、削除フラグが「0」の状態のレコードに係るコードデータ及び関連データであり、削除フラグが「1」の状態のレコードに係るコードデータ及び関連データは、出力の対象とはならない。そしてステップS405において、本発明のコンピュータプログラム1aは、削除フラグが「0」のレコードに係る模擬記録データ、コードデータ及び関連データを、アプリケーションプログラム1bを介して入出力装置3へ出力し、記録データ検索処理を終了する。入出力装置3は、受け付けた各種データに基づいて、出力手段35からユーザに対する出力を行う。ステップS405にて出力される模擬記録データとコードデータ及び関連データとの関係は本来の関係とは異なる。例えばキーデータとして氏名(姓)が「鈴木」である記録データを受け付けたとしても、「山田」、「佐藤」等の記録データに対応するコードデータが出力される。なおステップS405において、削除フラグが「1」のレコードしか記録されていない場合、模擬処理装置1は、キーデータに対応するレコードに係る各種データは、記録されていないことを示すエラー情報を出力する。
ステップS403において、使用許可回数及び使用済み回数が一致しないと判定した場合(S403:NO)、模擬処理装置1は、制御手段10の制御により、使用許可回数から使用済み回数を減じた差が示す数の任意のコードデータ及び該コードデータに対応付けられた関連データを実データベース21aから読み取る(S406)。
ステップS406において、例えば使用許可回数が10で、使用済み回数が3である場合、7のレコードを実データベース21aから例えば乱数関数を用いてランダムに選択し、選択したレコードに記録されているコードデータ及び関連データを読み取る。なお模擬データベース12aに模擬記録データと対応付けて記録されているコードデータに係るレコードについては、選択の対象から除外される。なお模擬処理装置1は、実データベース21aから、使用許可回数から使用済み回数を減じた差が示す数のコードデータ及び関連データを読み取った後、使用済み回数の数値を使用許可回数の数値と一致させる更新処理を行う。上述した例では、使用済み回数に、使用許可回数と同じ値である10が設定される。
そして模擬処理装置1は、制御手段10の制御により、受け付けたキーデータに合致する模擬記録データ、並びに実データベース21aから読み取ったコードデータ及び関連データを夫々対応付けた新たなレコードとして模擬データベース12aに記録する(S407)。ステップS407において、新たに記録されたレコードの削除フラグには、記録されているレコードとして取り扱うことを示す「0」が記録される。
そして模擬処理装置1は、制御手段10の制御により、ステップS404へ進み、以降の処理を実行後、記録データ検索処理を終了する。なおステップS402において、キーデータに合致する模擬記録データが模擬データベース12a記録されていると判定した場合、模擬テーブル12bを参照する処理を省略して、ステップS404へ進み、以降の処理を実行する簡略処理を行う様にしても良い。
ステップS402において、キーデータに合致する模擬記録データが模擬データベース12aに記録されていないと判定した場合(S402:NO)、模擬処理装置1は、制御手段10の制御により、模擬テーブル12bにキーデータに合致する模擬記録データが記録されているか否かを判定する(S408)。
ステップS408において、キーデータに合致する模擬記録データが記録されていると判定した場合(S408:YES)、模擬処理装置1は、制御手段10の制御により、ステップS403へ進み、以降の処理を実行後、記録データ検索処理を終了する。なおステップS402の判定により、キーデータに合致する模擬記録データが模擬データベース12aに記録されていないことが明らかであるため、この段階で、使用済み回数は「0」であり、使用許可回数及び使用済み回数が一致することはない。従って、ステップS403へ進むのではなく、ステップS406へ進み、使用許可回数が示す数の任意のコードデータ及び該コードデータに対応付けられた関連データを実データベース21aから読み取る様にして、以降の処理を実行後、記録データ検索処理を終了する様にしても良い。
ステップS408において、キーデータに合致する模擬記録データが記録されていないと判定した場合(S408:NO)、模擬処理装置1は、キーデータに対応するレコードに係る各種データは、記録されていないことを示すエラー情報を出力し(S409)、記録データ検索処理を終了する。
前記実施の形態は、無限に存在する本発明の模擬処理システムの構成の一例を示したものであり、本発明は、上述した例に限らず、模擬処理装置、記録装置及び入出力装置を一又は2台の装置、更には4台以上の装置で実現する様にしても良く、またアプリケーションプログラムを入出力装置に実装する様にしても良く、更には実運用上の入出力装置と模擬処理用の入出力装置とを異なる装置として構成する様にしても良い等、様々な形態に展開することが可能である。