(57)【特許請求の範囲】
【請求項１】
複数種類のデータを項目別に分類したテーブル形式で記憶するデータベースと、
既知の種類のデータについてそのデータの有する特徴のパターンを正規表現により記述した形式で記憶すると共に、その特徴について予め定められたポイントを記憶する特徴記憶部と、
前記データベースに記憶されているデータの中から、各項目別に複数のサンプルデータを抽出し、それぞれのサンプルデータが前記特徴記憶部に記憶されている正規表現により記述したパターンに適合するか否かを判定する特徴判定部と、
この特徴判定部によって前記各サンプルデータに前記各項目に特有の特徴が検出された場合に、その項目に対して、検出された特徴について予め定められたポイントを計数するポイント計数部と、
前記ポイント計数部によって計数されたポイントが一定値に達した場合に、そのサンプルデータが属する項目のデータが、前記特徴を有する既知の種類のデータであることを判定するデータ内容判定部と、
データベースに記憶されているデータ中の、前記データ内容判定部によってデータの特徴が判定された項目に属するデータについて、判定されたデータ内容に基づいてそのデータの一部または全部を秘匿用データに置換するデータ変換部と、
を有することを特徴とするテストデータ作成装置。
【請求項２】
前記特徴記憶部が、既知の項目名に特有の特徴と、その特徴についてのポイントを記憶するものであり、
前記特徴判定部が、データベースに記憶されているテーブル形式の項目名を抽出し、この項目名が前記特徴記憶部に記憶されている既知の項目名に関する特徴を有するか否かを分析するものであって、
前記ポイント計数部が、前記サンプルデータのポイントと共に、前記特徴判定部によって前記項目名に既知の項目名に特有の特徴が検出された場合に、その項目に対して、検出された特徴について予め定められたポイントを計数するものであることを特徴とする請求項１に記載のテストデータ作成装置。
【請求項３】
前記データベースが、テーブル形式で記憶されたデータの各項目ごとに、その項目に属するデータのデータ形式を項目の属性として記憶するものであり、
前記データ内容判定部が、前記サンプルデータ及び／または項目に基づくポイントと共に、この項目の属性と既知のデータのデータ構造との比較結果に基づいて、この項目に属するデータのデータ構造を判定するものであることを特徴とする請求項１または請求項２に記載のテストデータ作成装置。
【請求項４】
前記データ変換部が、既知のデータの種類ごとに、データベース内に記憶されているデータの一部または全部を置換するための置換ルールと、この置換ルールが使用するダミーデータとを記憶した変換データ記憶部を参照して、データの変換を行うものであることを特徴とする請求項１から請求項３のいずれかに記載のテストデータ作成装置。
【請求項５】
前記特徴記憶部が、その内部に記憶されている正規表現によって表現された特徴のパターンを、その正規表現の記述を変更することにより修正するための特徴修正部を備えることを特徴とする請求項１から請求項４のいずれかに記載のテストデータ作成装置。
【請求項６】
前記データ内容判定部が、前記ポイント計数部によって計数されたサンプルデータのポイントと、前記ポイント計数部によって計数された項目名及び／または項目の属性のポイントとについて、その重み付けを変更するための重み付け変更部を有することを特徴とする請求項２から請求項５のいずれかに記載のテストデータ作成装置。
【請求項７】
複数種類のデータを項目別に分類したテーブル形式で記憶するデータベースに記憶されているデータの中から複数のサンプルデータを抽出し、これらのサンプルデータが既知の種類のデータの有する特徴を有するか否かを、前記サンプルデータと既知のデータの特徴を正規表現で記述した特徴記述と比較することで判定する処理と、
前記判定処理によって前記各サンプルデータに前記既知の種類のデータに特有の特徴が検出された場合に、そのサンプルデータが記憶されている項目に対して、検出された特徴について予め定められたポイントを計数する処理と、
前記ポイント計数処理によって計数されたポイントが一定値に達した場合に、そのサンプルデータが属する項目のデータが、前記既知の種類のデータであると判定する処理と、
前記データベース中の前記判定処理によって既知の種類のデータであると判定された項目に属する複数のデータの一部もしくは全部をについて、判定された既知の種類のデータの特徴に従って、そのデータ内容の一部または全部を秘匿用データに変換する処理と、
を有することを特徴とするテストデータ作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベースシステムの開発時に使用するテストデータを、既存の顧客データベースに記憶されているデータに基づいて作成するためのテストデータ作成方法及び作成方法に関するものである。
【背景技術】
【０００２】
データベースシステムの開発時において、開発されたシステムのテストを行う場合には、開発されたシステムの問題点を洗い出すために、極力本番環境に近い状態でテストを行うことが要求される。そのため、従来では、テスト用のデータとして、本番環境用データの一部をそのまま使用することが行われていた。
【０００３】
しかし、本番環境用データの一部をそのままにテストに使用すると、個人情報等の情報資産の流失の危険性があった。それを改善する方法として、特許文献１や特許文献２に示すように、本番環境用データの一部を他の文字に変換することで、本番環境用データの内容を秘匿したテストデータを作成する方法が提案されている。
【特許文献１】特開２００４−３２６５１０号公報
【特許文献２】特開２００８−６５６８７号公報
【特許文献３】特開平０７−３６８７３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１の発明は、本番環境用データの各データがどのようなデータ構造や属性を持っているか、あるいは本番環境用データのどの部分をテストデータに変換するか、などの作業を開発者が指定する必要があり、多数の異なる種類のデータを記録するデータベースにあっては、開発者に多大な負担が要求される問題があった。
【０００５】
一方、特許文献２の発明は、デーブル形式で記録されたデータから、持ち出し用の中間データを作成し、この中間データと予め用意された置き換え用マスタデータとを関連づけることで、テストデータを作成している。そのため、本番環境用データと完成されたテストデータとの属性やデータ構造の同一性を維持することができない問題があった。
【０００６】
また、特許文献３の発明は、姓名を集めた辞書データベースを用意し、本番環境用データ中の各データと、この辞書データベースに記録された姓名とを比較することで、本番環境用データが氏名に関するデータであることを判定する。その後、この本番環境用データを辞書データベースの姓名と置換することで、テストデータを生成している。
【０００７】
しかし、この特許文献３の発明は、本番環境用データがどのような内容であるか、すなわち「氏名」「姓のみ」「名のみ」のいずれかであるかを判定することができない欠点があった。また、本番環境用のデータベースが氏名、住所、振り仮名、郵便番号、電話番号、年月日、金額などの数値、その他の文字列など、種々の種類のデータを記録したものである場合には、どの項目にどのような種類のデータが記憶されているかを判別することが難しいという問題があった。例えば、郵便番号や電話番号については、全国すべての番号をデータベースに登録していないと判定できなかった。
【０００８】
本発明は、前記のような従来技術の問題点を解決するために提案されたもので、既存のデータベースに記録されている各種のデータを、そのデータ内容と共にそのパターンを分析することにより、各項目のデータの種類を特定し、特定したデータの種類に応じたデータ内容の変換を行うことで、既存のデータベースのデータ内容を秘匿して、既存のデータベースのデータ構造に近いテストデータを作成することを可能としたテストデータ作成装置及び作成方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明のテストデータ作成装置は、次のような構成要件を有することを特徴とする。
(a) 複数種類のデータを項目別に分類したテーブル形式で記憶するデータベース。
(b) 既知の種類のデータについてそのデータの有する特徴のパターンを正規表現により記述した形式で記憶すると共に、その特徴について予め定められたポイントを記憶する特徴記憶部。
(c) 前記データベースに記憶されているデータの中から、各項目別に複数のサンプルデータを抽出し、それぞれのサンプルデータが前記特徴記憶部に記憶されている正規表現により記述したパターンに適合するか否かを判定する特徴判定部。
(d) この特徴判定部によって前記各サンプルデータに前記各項目に特有の特徴が検出された場合に、その項目に対して、検出された特徴について予め定められたポイントを計数するポイント計数部。
(e) 前記ポイント計数部によって計数されたポイントが一定値に達した場合に、そのサンプルデータが属する項目のデータが、前記特徴を有する既知の種類のデータであることを判定するデータ内容判定部。
(f) データベースに記憶されているデータ中の、前記データ内容判定部によってデータの特徴が判定された項目に属するデータについて、判定されたデータ内容に基づいてそのデータの一部または全部を秘匿用データに置換するデータ変換部。
【００１０】
また、前記のような構成を有するテストデータ作成装置において実行される各処理を構成要件とするテストデータ作成方法も、本発明の一態様である。
【００１１】
前記のような構成を有する本発明において、前記特徴記憶部が、既知の項目名に特有の特徴と、その特徴についてのポイントを記憶するものであり、前記特徴判定部が、データベースに記憶されているテーブル形式の項目名を抽出し、この項目名が前記特徴記憶部に記憶されている既知の項目名に関する特徴を有するか否かを分析するものであって、前記ポイント計数部が、前記サンプルデータのポイントと共に、前記特徴判定部によって前記項目名に既知の項目名に特有の特徴が検出された場合に、その項目名に対して、検出された特徴について予め定められたポイントを計数するものであることも、本発明の一態様である。
【００１２】
前記のような構成を有する本発明において、前記データベースが、テーブル形式で記憶されたデータの各項目ごとに、その項目に属するデータのデータ形式を項目の属性として記憶するものであり、前記データ構造判定部が、前記サンプルデータ及び／または項目名に基づくポイントと共に、この項目の属性と既知のデータのデータ構造との比較結果に基づいて、この項目に属するデータのデータ構造を判定するものであることも、本発明の一態様である。
【００１３】
前記のような構成を有する本発明において、前記データ変換部が、既知のデータの種類ごとに、データベース内に記憶されているデータの一部または全部を置換するための置換ルールと、この置換ルールが使用するダミーデータとを記憶した変換データ記憶部を参照してデータの変換を行うものであることも、本発明の一態様である。
【発明の効果】
【００１４】
本発明によれば、サンプルデータが特徴記憶部に記憶されている正規表現により記述したパターンに適合するか否かを判定することにより、データベースの各項目に属するデータが有するデータ構造のパターンを考慮しつつ、データの特徴を判定することが可能になる。その結果、文字列そのものを特徴記述とした場合に比較して、少ない特徴記述により種々データの特徴の判定を行うことが可能になり、本番環境用データの秘匿処理を少ないリソースでしかも正確に実現できる。
【発明を実施するための最良の形態】
【００１５】
本発明の一実施形態を図面に従って具体的に説明する。図１は、本実施形態の構成を示すブロック図、図２はその動作を示すフローチャートである。
【００１６】
［実施形態の構成及び作用］
本実施形態のテストデータ作成装置は、キーボードなどの入力装置１、ＣＰＵなどの演算装置２、プログラムやデータを展開するメモリ３、本番環境用データのデータベース４１や特徴記憶部４２、完成されたテストデータの記憶部４３、本番環境用データをテストデータに置換するための置換ルールと、この置換ルールが使用するダミーデータとを記憶した変換データ記憶部４４などとして使用されるハードディスクなどの記憶装置４、ディスプレイやプリンタなどの出力装置５などのハードウェアを備えている。
【００１７】
そして、このハードウェア上にコンピュータプログラムを実行させることにより、本発明のテストデータ作成装置６を構成する特徴判定部１０、ポイント計数部１１、データ内容判定部１２、データ変換部１３、特徴修正部１４及び重み付け変更部１５が、コンピュータ上に実現されている。
【００１８】
前記本番環境用データのデータベース４１には、複数種類のデータが、項目別に分類したテーブル形式で記憶されている。本実施形態では、データベースには、項目名、項目の属性、及び各項目ごとに分類された実データが記憶されている。これらは、一例として、次のようなものである。
【００１９】
（１）項目名（カラム名）
(a) 日付型
DATE
TIME
YEAR
(b) 文字列型
ADDRESS
JYUSHO
PREFECTURE
NAME
(c) 数値型
WEIGHT
LENGTH
AMOUNT
VOLUME
【００２０】
（２）項目の属性（データ型）
(a) 日付型
DATE
IMESTAMP
(b) 文字列型
VARCHAR
CHAR
(c) 数値型
INTEGER
BIGINT
FLOAT
REAL
DOUBLE
【００２１】
（３）実データの書式
(a) 日付
年、月、日、時、分、秒
年、月、日
yyyy/MM/dd hh:mm:ss
yyyy-MM-dd
(b) 文字列
都道府県名から番地等の詳細まで
都道府県
郵便番号
(c) 数値
１２３
456
123,456
【００２２】
前記特徴記憶部４２には、前記データベース４１に記憶されている本番環境用データについての前記（１）項目名、（２）項目の属性及び（３）実データとその書式に関する特徴記述が、そのポイントと共に記憶されている。この特徴記述は、各データの特徴のパターンを正規表現により記述したもので、例えば、次のようなものである。なお、この特徴記述の例は、必ずしも前記本番環境用のデータ例に対応するものではない。
【００２３】
（１）項目名（カラム名）
(a) 日付
.*[Dd][Aa][Tt][Ee].*
.*[Tt][Ii][Mm][Ee].*
(b) 文字列
.*[Aa][Dd][Dd][Rr][Ee][Ss][Ss]$
.*([Jj][Yy]|[Ji])[Uu][Ss]([Hh]|[Yy])[Oo]$
.*[Pp][Rr][Ee][Ff][Ee][Cc][Tt][Uu][Rr][Ee].*
(c) 数値
.*([Ww]|[Hh])[Ee][Ii][Gg][Hh][Tt]$
【００２４】
（２）項目の属性（データ型）
(a) 日付型
^[Dd][Aa][Tt][Ee]$
^[Tt][Ii][Mm][Ee][Ss][Tt][Aa][Mm][Pp]$
(b) 文字列型
^(VARCHAR|CHAR)$
(c) 数値型
^(TINYINT|SMALLINT|INTEGER|BIGINT|FLOAT|REAL|DOUBLE|NUMERIC|DECIMAL)$
【００２５】
（３）実データの書式
(a) 日付
^.*年.*月.*日.*時.*分.*秒$…年月日と時刻
.*年.*月.*日$…年月日
^((19|[2-9][0-9])[0-9]{2})/([1-9]|(0[1-9]|1[0-2]))/([1-9]|(0[1-9]|([12][0-9]|3[01])))$…西暦
(b) 文字
^(佐藤|鈴木|高橋|田中|渡辺|伊藤|山本).*…氏名
^(佐藤|鈴木|高橋|田中|渡辺|伊藤|山本)$…姓
^[0-9０-９]{1,}[-−][0-9０-９]{1,}[-−][0-9０-９]{1,}$…電話番号
^[0-9０-９]{3}[-−][0-9０-９]{4}$…郵便番号
(c) 数値
^[0-9.,]{1,}$
【００２６】
ここで、各特徴記述に使用されている正規表現は次のような意味を有する。
(a) ピリオドは改行を除く任意の１文字を意味する。
(b) アスタリスクは、直前にある正規表現の０回以上の繰り返しを検索する。
(c) ブラケット(角括弧)で囲んだ文字のいずれかひとつとマッチすればマッチしたと判断する。
(d) 「|」は、パターンの論理和を示す。このパターンの論理和は、「この文字列かこの文字列」を探したいという場合に使用する。
(e) パーレン（小括弧、丸括弧）は、パターンをグループ化して評価する。優先順位が高くなるので、パーレンの中を評価した後に全体を評価する。
(d) ドル記号は行末を意味する。
(f) カレットは行頭を意味する。
(g) {n}・{n,}・{n,m}は、パターンの繰り返し回数を指定する。{n}はn回の繰り返し、{n,}はn回以上の繰り返し、{n,m}はn回以上、m回以下の繰り返し。
【００２７】
前記のような特徴記述は、本番環境用データのデータベースにおいて使用されることが予想される各種の項目名、その属性及び実データの書式に合わせて、多数のパターンを用意しておく。
【００２８】
前記特徴判定部１０は、前記データベース４１に記憶されている本番環境用データの項目名、項目の属性及び実データの中から任意に取り出したサンプルデータ（例えば、１０から２０個余りのデータ）を抽出し（図２のステップ１，４，７）、それぞれが前記特徴記憶部４２に記憶されている正規表現により記述したパターンに適合するか否かを判定する（ステップ２，５，８）。
【００２９】
例えば、データベースに「氏名」のデータが記録されている場合、その項目名は、「NAMAE」や「SHIMEI」を含み、項目の属性は「VARCHAR」「CHAR」のいづれかと一致し、取り出したサンプルデータ中には、日本人に多数見られる「姓」と「名」とが存在するはずである。そこで、これら項目名、属性及びサンプルデータのそれぞれについて、特徴記憶部４２に記憶されているどの特徴記述と一致するか否かを判定する。
【００３０】
具体的には、開発対象となるデータベースが、氏名を記憶する場合に、「氏名」として１項目に記憶するか、「姓」と「名」とに２つの項目に分けて記憶するかによって、作成するテストデータも異なってくる。
【００３１】
そこで、特徴記憶部４２には、「氏名」と判定するための、^(佐藤|鈴木|高橋|田中|渡辺|伊藤|山本).*という正規表現の特徴記述と、「姓」のみと判定するための^(佐藤|鈴木|高橋|田中|渡辺|伊藤|山本)$という正規表現の特徴記述を用意しておき、本番環境用データから抽出したサンプルデータがいずれに該当するかを、特徴判定部１０によって分析する。例えば、「氏名」であれば、「佐藤|鈴木|高橋|田中|渡辺|伊藤|山本」というような日本人の姓に多く見られる名字のいずれかを含み、しかもその後に「.*」の正規表現で示すような繰り返し文字（名前が続くと考えられる）が出現する。一方、サンプルデータが「姓」の場合には、正規表現の末尾が「$」になっており、その後に文字が続くことがない。
【００３２】
同様に、電話番号や郵便番号については、使用される数字、その桁数、ハイフォンの位置などのパターンを正規表現で記述しておくことで、サンプルデータがどのような特徴を有するかを判定する。
【００３３】
前記ポイント計数部１１は、この特徴判定部１０によって、前記項目名、その属性、その項目から抽出されたサンプルデータと前記特徴記述とが一致した場合（その項目に特有の特徴が検出された場合）に、その項目に対して、検出された特徴について予め定められたポイントを計数する（ステップ３，６，９）。
【００３４】
すなわち、ポイント計数部１１は、
(a) 項目名とある特徴記述が一致すると、その特徴記述に対応して定められたポイントを計数する。
(b) 属性とある特徴記述が一致すると、その特徴記述に対応して定められたポイントを計数する。
(c) サンプルデータの１つとある特徴記述が一致すると、その特徴記述に対応して定められたポイントを計数する。
というように、特徴記述と一致する度にその項目についてポイントを加算していく。
【００３５】
前記データ内容判定部１２は、前記ポイント計数部１１によって計数されたポイントが一定値に達した場合に（ステップ１１のＹｅｓ）、その項目名、属性、及びサンプルデータが属する項目のデータが、前記特徴を有する既知の種類のデータであるとを判定する。
【００３６】
前記データ変換部１３は、データベース４１に記憶されている本番環境用データ中の、前記データ内容判定部１２によってデータの特徴が判定された項目に属するデータについて、判定されたデータ内容に基づいてそのデータの一部または全部を秘匿用データに置換するものである。すなわち、項目名、属性、及びサンプルデータに基づいて、その項目に属するデータの特徴が判定されると、データ変換部１３は、変換用データ記憶部４４に記憶されている変換ルールと、変換用ダミーデータとを参照して（ステップ１２）、その項目に属する本番環境用データをテストデータに変換する（ステップ１３）。
【００３７】
例えば、変換ルールとして、
(a) その項目のデータが、「氏名」や「住所」である時には、変換用データ記憶部４４に用意されている多数の「氏名」や「住所」の中からランダムに抽出したダミーデータに変換する。
(b) 電話番号や数値の場合には、ランダムな数字やアスタリスクに置き換える。
(c) ダミーデータを用意することなく、本番環境用データ中の他の文字列と入れ替える。(d) 数値や年月日については、一定の範囲の数字にのみ置き換える。
(e) 文字列や数値中の一定の位置にある値のみをダミーデータで置換する。
(f) 作成するテストデータの数。
など、開発対象となるデータベースシステムの動作確認に適した内容のテストデータを作成することのできるルールを用意しておく。
【００３８】
前記データ変換部１３によって変換されたテストデータは、テストデータ記憶部４３に記憶され、その後、出力装置５から外部に出力されたり、開発対象であるデータベースシステムのデータとして利用される。この場合、図３に示すように、テスト環境への接続が可能な場合は、テスト環境用データベース４５に対して、作成されたテストデータを直接に転送することが可能である。一方、テスト環境への接続が出来ない場合、ＸＭＬ，ＣＳＶ，ＴＳＶのような任意の書式のファイルへ出力することができる。
【００３９】
図４は、このようにして得られたテストデータの一例を示す画面例で、その上段には、データベースを構成する各項目の、項目名、属性などが、中段には変換前の本番環境用データが、下段には変換後のテストデータが示されている。
【００４０】
［実施形態の効果］
以上のような構成を有する本実施形態によれば、項目名、項目の属性、項目に属する実データの内容などについての特徴を正規表現を使用して記述したため、項目名やデータ内容の特徴を単なる文字列や数値の一致だけではなく、パターンとして把握することが可能になる。その結果、同じ数字を利用した電話番号と郵便番号のようなデータでも、両者の記録パターンを分別することで、正確に区別することが可能になる。また、正規表現の使用により、多種多量の特徴を簡単に集約して記述できるので、特徴記述部４２の記憶容量も少なくで済む利点がある。
【００４１】
本実施形態では、項目名、項目の属性、項目に属する実データ、及び正規表現で記述した特徴のいずれについても、前記の例に記載のように文字列によって表現しているため、その記述及び内容の把握が容易であり、特徴記述の修正、追加が容易に実施できる。特に、本実施形態では、特徴記憶部４２における特徴（パターン）記述は外部ファイルに記述されており、プログラムの動作に影響を与えることなく容易に修正可能である。
【００４２】
また、変換用データ記憶部４４に変換ルールとして、文字列のある範囲のみを置換するというようなルールを定めておいた場合には、開発するシステムとの整合性を十分に配慮したテストデータを作成することができる。例えば、本番環境用データが「Ｘ０１−００１」という番号の場合は、「Ｘ０１−」が識別番号であり、これを変更した場合は、データとしての整合性が取れずに、「ＹＢ４−」などと異なる識別番号となり、結果が異なることになる。しかし、本実施形態では、前記のような変換ルールを使用することで、「Ｘ０１−００１」中の「Ｘ０１−」は変換を行わず「００１」の部分だけを「００２」などと変換したテストデータを得ることができる。
【００４３】
［他の実施形態］
本発明は、前記の実施形態に限定されるものではなく、次のような他の実施形態も包含する。
(a) 前記実施形態は、項目名、項目の属性、項目に属する実データ（サンプルデータ）のすべてについて特徴の判定を行い、ポイントの計数を行っていたが、サンプルデータからだけでその項目に属するデータの内容を判定することも可能である。
【００４４】
(b) 特徴記憶部４２に記憶した各種のデータの特徴は、正規表現による記述を追加・変更することで、自由に変えることができる。特に、テストデータ作成装置自体に、特徴修正部１４を設けることで、特徴記憶部４２内に記憶されている正規表現を一覧表のような形でディスプレイなどの出力装置５に表示させ、入力装置１から正規表現の修正、追加を行うように構成することもできる。
【００４５】
(c) 特徴記憶部４２に、特徴記述と共に記憶する各特徴のポイントについては、自由に変更可能である。この場合、テストデータ作成装置自体に、重み付け変更部１５を設けることで、前記特徴記述と同様に入力装置１から各特徴についてのポイントを変更できる。特に、項目名、項目の属性は、１つの項目に対して１つの特徴を有するためポイントは一定であるが、項目に属する実データのポイントはサンプルデータ数に応じて加算されるため、重み付け変更部１５により「項目名、項目の属性」のポイントと「サンプルデータ」によるポイントとのバランスを取ることが望ましい。
【実施例】
【００４６】
図５は、本発明のデータ内容の判定処理の一実施例を示すものである。
図中、５１は本番環境用データを記憶したデータベースの特にサンプルデータを示す。５２は特徴判定部１０、ポイント計数部１１及びデータ内容判定部１２の処理内容、５３はその判断基準、５４は特徴記述に対応付けた点数の定義、５５は前記サンプルデータを定義５４の点数に当て嵌めて数値化した表、５６は各項目ごとに定義の点数を集積化した表、５７は項目のデータ内容の判定結果を示す表である。
【００４７】
この図５から解るように、本発明の評価定義情報（前記実施形態で説明した特徴記述とその特徴に応じ定めた各タイプ毎のポイント定義をあわせた情報）を用いた判別方法とは、数字データ型、文字データ型、日付データ型毎に評価定義情報の区分を変えることで、タイプ別に決められた点数を付けていき、件数を集めるデータ母体数の傾向を判読することである。ここでいうデータ型は、データベースの呼ばれるデータの性格や数値の表現範囲などを規定する型を示している。この点数を集積していくほど母体数が増えていき、データベースのカラム毎に点数の配分が順位として明確になる。
【００４８】
この例によると、データベースから取り出したテーブルとカラム一覧情報データは、評価定義情報を通して分別処理をしている。基準は、前記実施形態の特徴記述に応じ、１．「特定文字の一致」、２．「特定形式の一致」、３．「文字数の把握」、４．「母体数の集積により判断」である。
【００４９】
図５の５３に示すように、基準１では、「特定文字の一致」を点数により判別を行っている。テーブルやカラムに特定の文字が一致すれば、データ型の特定がよりできやすくなる。例えば、図５の５１では、一列目では「田中」と「佐藤」等というテーブル内に記載されている。通常の一般社会では「田中」と「佐藤」は、苗字に用いられることが多い名前として世間的に認識されている。コンピュータ処理上では言葉としての認識判断はできないが、予め名前である可能性が高い特徴的な言葉として、定義情報格納部（図１の特徴記憶部４２）内に正規表現を使用したＸＭＬ形式で記載をしている。この定義情報の登録により、「田中」と「佐藤」が基準に一致した場合に、点数として１点を付けている。
【００５０】
図５の５１の二列目については、「一郎」と「三子」いう二列目のデータであるが、「一郎」は通常の一般社会では人物名称に用いられる特徴的名前として、世間的に認識されている。しかし、「次郎」、「三郎」などという異なる名前には、全てが対応しなければならなくなる。また、「三子」は名前と地名等と推測し得る。
【００５１】
そこで、コンピュータ処理上では言葉としての認識判断はできないが、「郎」や「子」といった名前でよく使用される傾向にある言葉を、予め定義情報格納部（図１の特徴記憶部４２）内に正規表現を使用したＸＭＬ形式で記載をしている。これらは、上記一列目と同様に、「郎」や「子」が２の基準として一致した場合に、点数として２点が付けられる。
【００５２】
図５の５３でいう基準２では、「特定形式の一致」を点数により判別を行っている。テーブルやカラムに、予めに決まった形式に一致するかどうかで、「日付」であるかなどが判別できる可能性が高いことが挙げられる。そこで、定義情報格納部に正規表現を使用したＸＭＬ形式で記載されている日付データ型等のタイプ別に分けて、データベース等の表記方法の形式として用いられるＹＹＹＹ／ＭＭ／ＤＤ等の型に一致等の有無を評価判断している。
【００５３】
例として、図５の５１の三列目では、「２０００／０９／０１」とテーブル内に記載されている。コンピュータ処理上では、前記実施形態の特徴記憶部４２内で、コンピュータ上のデータベースの日付データ型を用いた場合は、ＹＹＹＹ／ＭＭ／ＤＤと一致することで、評価判断をしている。また、基準１との併用により、「年、月、日」等の特定文字が記載されていることにより判断ができる。これらは、上記一列目と同様に、「２０００／０９／０１」が基準として一致した場合に、点数として４点が付けられる。
【００５４】
図５の５３でいう基準３では、「文字数の把握」点数により判別を行っている。テーブルやカラムに、予めに決まった文字数が一致するかどうかで、「郵便番号」や「電話番号」などを判別できる可能性が高くなる。そこで、定義情報格納部のＸＭＬ形式で記載されている文字データ型等のタイプ別に分けて、正規表現により１から９といった連続した数字や文字があった場合に適用するように、定義している。
【００５５】
例として、図５の１番の四列目では、「１２３−７４５６」とテーブル内に記載されている。これは通常の一般社会では、「１２３−７４５６」は、郵便番号の７桁の規定された識別番号と認識されている。コンピュータ処理上では、定義情報格納部のＸＭＬ形式で記載されている文字データ型を用いた場合は、「［０−９］｛３｝［−］［０−９］｛４｝」正規表現で記載されている７桁の数字が入ることで評価判断を行っているために、点数として５点が付けられる。
【００５６】
そして、図５の５３の基準４では「母体数の集積により判断」に記載のように、点数の合計により判断している。データの点数評価が進むことにより、図５の５６で示している集積化イメージのようになる。点数として獲得したタイプ毎に合計され、点数の高いタイプに選定されて、適切な定義情報へと収束される。これにより、データの置換時に蓄積されたデータがより適切に変換されるようになる。
【図面の簡単な説明】
【００５７】
【図１】本発明の実施形態の機能ブロック図
【図２】図１の実施形態の処理フロー図
【図３】作成されたテストデータの出力形式を示す図
【図４】本番環境用データと作成されたテストデータの一例を示す表示画面
【図５】本発明の実施例における評価定義情報の処理を示す図
【符号の説明】
【００５８】
１…入力装置
２…演算装置
３…メモリ
４…記憶装置
４１…本番環境用データのデータベース
４２…特徴記憶部
４３…テストデータの記憶部
４４…変換データ記憶部
４５…テスト環境用データベース
５…出力装置
６…テストデータ作成装置
１０…特徴判定部
１１…ポイント計数部
１２…データ内容判定部
１３…データ変換部
１４…特徴修正部
１５…重み付け変更部
【図１】
0005212980.tif 000002
【図２】
0005212980.tif 000003
【図３】
0005212980.tif 000004
【図４】
0005212980.tif 000005
【図５】
0005212980.tif 000006