JP5620984B2 - テストデータの生成方法 - Google Patents

テストデータの生成方法 Download PDF

Info

Publication number
JP5620984B2
JP5620984B2 JP2012515111A JP2012515111A JP5620984B2 JP 5620984 B2 JP5620984 B2 JP 5620984B2 JP 2012515111 A JP2012515111 A JP 2012515111A JP 2012515111 A JP2012515111 A JP 2012515111A JP 5620984 B2 JP5620984 B2 JP 5620984B2
Authority
JP
Japan
Prior art keywords
values
test data
data
records
field
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2012515111A
Other languages
English (en)
Other versions
JP2012529716A5 (ja
JP2012529716A (ja
Inventor
リチャード ファインマンカール
カール リチャード ファインマン
Original Assignee
アビニシオ テクノロジー エルエルシー
アビニシオ テクノロジー エルエルシー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by アビニシオ テクノロジー エルエルシー, アビニシオ テクノロジー エルエルシー filed Critical アビニシオ テクノロジー エルエルシー
Publication of JP2012529716A publication Critical patent/JP2012529716A/ja
Publication of JP2012529716A5 publication Critical patent/JP2012529716A5/ja
Application granted granted Critical
Publication of JP5620984B2 publication Critical patent/JP5620984B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Description

関連出願の相互参照
この出願は、参照により本明細書に組み込まれる米国出願第61/185,797号(2009年6月10日出願)に基づく優先権を主張する。
本明細書は、テストデータの生成に関する。
組織によっては、秘密にしておきたい情報(たとえば、顧客情報を含む場合がある生産データ)を有するものがある。機密データをプログラムによって処理しようとする際に、セキュリティ上の理由から、開発者が、実際の生産データにアクセスすること無く、そのようなプログラムを開発する必要がある場合がある。たとえば、生産データの機密を保持する1つの方法は、それを見る人の数を最小限に抑えることである。しかしながら、それらのアプリケーションが生産データと共に正しく実行されることを保証するには、機密情報を全く公開すること無く生産データの特定の特性を示す、開発とテストのための現実的なテストデータをプログラマが必要とする場合がある。
1つの態様において、一般的に、テストデータを生成するための方法は、データソースから複数のレコードの少なくとも1つのフィールドにおいて発生する値を読み取ること;上記値を特徴づける統計を含むプロファイル情報を格納すること;上記統計に基づいて上記フィールドについての確率分布のモデルを生成すること;所定の値が上記テストデータ値において発生する頻度が、上記生成されたモデルによってその所定の値に割り当てられた確率に対応するように、上記モデルを使用して複数のテストデータ値を生成すること;および上記テストデータ値を含むテストデータのコレクションをデータストレージシステムに格納する。
態様によっては、以下の特徴の1つ以上を含むことができる。
上記生成されたモデルは、値の連続的な範囲に亘る確率密度に対応する確率分布の推定値の少なくとも第1の部分と、離散的な値についての1つ以上の離散的な確率値に対応する確率分布の推定値の少なくとも第2の部分と、を含む。
上記統計情報は、値の複数の連続的な範囲のそれぞれに該当する値の数を示す情報を含む。
上記第1の部分は、値の連続的な範囲の1つに該当する値の数を示す情報に少なくとも部分的に由来して導かれる。
上記統計情報は、複数の特定の値のそれぞれが上記レコードにおいて発生する頻度を示す情報を含む。
上記第2の部分における離散的な確率値の1つは、上記特定の値の1つが上記記録において発生する頻度を示す情報に少なくとも部分的に由来して導かれる。
上記方法は、上記生成されたモデルと上記フィールドにおいて発生するデータソースから読み取られた値の特性を示す追加情報とを使用して上記複数のテストデータ値を生成することを更に含む。
上記追加情報は、上記フィールドにおいて発生する無効な値の数を示す。
上記追加情報は、上記フィールドにおいて発生する個別の値の割合を示す。
上記方法は、上記データストレージシステムに格納されたテストデータのコレクションを使用して上記データソースに由来するレコードを処理するための少なくとも1つのプログラムを開発するための開発環境を提供することを更に含む。
上記データソースに由来するレコードは、上記開発環境にアクセスできない。
上記方法は、上記データソースが上記開発環境にアクセスできないことを含む。
もう1つの態様において、一般的に、テストデータを生成するためのシステムは、1つ以上のフィールドにおいて値を有するレコードを提供するデータソース、データストレージシステム、および実行環境を提供する上記データストレージシステムに結合された1つ以上のプロセッサであって、上記データソースから複数のレコードの少なくとも1つのフィールドにおいて発生する値を読み取り、上記値を特徴づける統計を含むプロファイル情報を格納し、上記統計に基づいて上記フィールドについての確率分布のモデルを生成し、所定の値が上記テストデータ値において発生する頻度が、上記生成されたモデルによってその所定の値に割り当てられた確率に対応するように、上記モデルを使用して複数のテストデータ値を生成し、そして上記テストデータ値を含むテストデータのコレクションを上記データストレージシステムに格納するプロセッサ、を含む。
もう1つの態様においては、一般的に、テストデータを生成するためのシステムは、1つ以上のフィールドにおいて値を有するレコードを提供するデータソース、データストレージシステム、および上記レコードを処理してテストデータを生成するための手段を含み、上記処理は、上記データソースから複数のレコードの少なくとも1つのフィールドにおいて発生する値を読み取ること、上記値を特徴づける統計を含むプロファイル情報を格納すること、上記統計に基づいて上記フィールドについての確率分布のモデルを生成すること、所定の値が上記テストデータ値において発生する頻度が、上記生成されたモデルによってその所定の値に割り当てられた確率に対応するように、上記モデルを使用して複数のテストデータ値を生成すること、および上記テストデータ値を含むテストデータのコレクションを上記データストレージシステムに格納することを含む。
もう1つの態様においては、一般的に、コンピュータ可読媒体が、テストデータを生成するためのコンピュータプログラムを格納する。上記コンピュータプログラムは、データソースから複数のレコードの少なくとも1つのフィールドにおいて発生する値を読み取ること、上記値を特徴づける統計を含むプロファイル情報を格納すること、上記統計に基づいて上記フィールドについての確率分布のモデルを生成すること、所定の値が上記テストデータ値において発生する頻度が、上記生成されたモデルによってその所定の値に割り当てられた確率に対応するように、上記モデルを使用して複数のテストデータ値を生成すること、および上記テストデータ値を含むテストデータのコレクションを上記データストレージシステムに格納することをコンピュータに実行させるための命令を含む。
態様によっては、以下の利点の1つ以上を含むことができる。
テストデータは、ランダムではあるが、生産データの元のセットの種々の特性を複製して、より現実的なテストのために提供することができるような方法によって生成され得る。機密情報が上記テストデータに含まれないことを確保しつつ、統計的プロパティおよび上記元のデータに由来するいくつかの実際の値などの特性は、上記テストデータに含めることができる。初期プロファイリングプロセスにより、後に上記テストデータを生成するために使用される、上記統計的プロパティおよび実際の値をプロファイル情報内に抽出および要約することが可能となる。上記プロファイル情報に機密情報が漏れない限り、いずれのテストデータにも機密情報は存在しない。上記プロファイル情報において表される実際の値は、それぞれのフィールドにおける最も一般的な値であり、機密情報(概して、所定の顧客に固有であり、故に、元のデータ内で稀である)に該当しそうにない。
本発明の他の特徴および利点は、以下の説明、および特許請求の範囲から明らかになるであろう。
生成されたテストデータを使用してプログラムを開発するための例示的なシステムである。 例示的なテストデータ生成プロセスのフローチャートである。 統計情報の例である。 統計情報の例である。 確率分布のモデルの一例である。
図1を参照すると、テストデータを使用してプログラムを開発するためのシステム100は、記憶装置またはオンラインデータストレージへの接続などの、データの1つ以上のソースを含んでもよいデータソース102を含み、それらはそれぞれ、種々のストレージフォーマット(たとえば、データベーステーブル、スプレッドシートファイル、フラットテキストファイル、またはメインフレームによって使用されるネイティブフォーマット)のいずれでデータを格納してもよい。テストデータ生成のための実行環境104は、データプロファイリングモジュール106およびテストデータ生成モジュール112を含む。実行環境104は、UNIX(登録商標)オペレーティングシステムなどの適切なオペレーティングシステムの制御下にある1つ以上の汎用コンピュータ上にホスティングされていてもよい。たとえば、実行環境108は、ローカル型(たとえば、SMPコンピュータなどのマルチプロセッサシステム)、もしくはローカル分散型(たとえば、クラスタまたはMPPとして結合された複数のプロセッサ)、またはリモート型、もしくはリモート分散型(たとえば、LANまたはWANネットワークを介して結合された複数のプロセッサ)、あるいはそれらの任意の組み合わせの、複数の中央処理装置(CPU)を使用するコンピュータシステムの構成を含む、複数ノードの並列コンピューティング環境を含むことができる。
データプロファイリングモジュール106は、データソース102からデータを読み取り、データソース102において発生するデータ値の種々の特性を記述するプロファイル情報を格納する。データソース102を提供するストレージデバイスは、実行環境104に対してローカルであってもよく(たとえば、実行環境104(たとえば、ハードドライブ108)を実行するコンピュータに接続されている記憶媒体上に格納されている)、または実行環境104に対してリモートであってもよい(たとえば、ローカルまたはワイドエリアのデータネットワーク越しに実行環境104を実行しているコンピュータと通信しているリモートシステム(たとえば、メインフレーム110)上にホスティングされている)。
テストデータ生成モジュール112は、データのプロファイリングモジュール106によって生成されたプロファイル情報を使用して、実行環境104にアクセス可能なデータストレージシステム116に格納されたテストデータ114のコレクションを生成する。また、データストレージシステム116は、開発者120がテストデータ114を使用してプログラムを開発し、テストすることができる開発環境118にもアクセス可能である。しかしながら、データソース102における元の生産データは、それを開発者120にアクセス不可能に保持することにより機密に保持することができる。開発環境118は、実装によっては、頂点間の有向リンク(作業要素のフローを表す)によって接続された頂点(コンポーネントまたはデータセット)を含むデータフローグラフとしてアプリケーションを開発するためのシステムである。たとえば、このような環境については、「グラフ基づくアプリケーションのためのパラメータ管理(Managing Parameters for Graph−Based Applications)」と題された米国公開第2007/0011668に詳細に記載されている(参照により本明細書に組み入れられる)。
データプロファイリングモジュール106は、データベースシステムの様々な形態を含む種々のタイプのシステムに由来するデータをプロファイルすることができる。当該データは、null値(空値)を含む可能性がある、それぞれのフィールドについての値を有するレコード(「属性」または「列」とも呼ばれる)として編成されてもよい。プロファイル情報は、それらのフィールドにおいて発生する値を記述する「フィールドプロファイル」と呼ばれる、様々なフィールドについての別々のプロファイルを提供するように編成することができる。データソースからデータを最初に読み込むとき、データプロファイリングモジュール106は、概して、そのデータソース内のレコードについてのいくつかの初期フォーマット情報を用いて起動する。(状況によっては、初めはデータソースのレコード構造さえ未知であり、代わりに、データソースの分析後に決定することができることに注意されたい)。レコードについての初期情報は、個別の値、レコード内のフィールドの順序、およびビットによって表される値の型(たとえば、文字列、符号付き/符号なしの整数)を表すビットの数を含むことができる。データプロファイリングモジュール106はデータソースからレコードを読み取ると、それは所定のフィールドの値を反映する統計と他の記述情報を計算する。次に、データプロファイリングモジュール106は、テストデータ生成モジュール112によるアクセスのためのフィールドプロファイルの形式で、それらの統計情報および記述情報を格納する。所定のフィールドについてのフィールドプロファイルにおける統計は、たとえば、そのフィールドにおける値のヒストグラム、そのフィールドにおいて発生する最大値、最小値、および平均値、並びにそのフィールドにおいて発生する最小公倍数および最大公約数のサンプルを含むことができる。また、プロファイル情報は、レコードの総数、および有効なまたは無効なレコードの総数などのデータソース102におけるレコードの複数のフィールドに関連する情報を含めることもできる。たとえば、データソースのフィールドをプロファイリングするためのプロセスの1つの説明は、「データプロファイリング」と題された、米国公開第2005/0114369に記載されている(参照により本明細書に組み入れられる)。
図2は、例示的なテストデータ生成プロセス200のフローチャートを示す。テストデータ生成モジュール112は、テストデータを生成する対象となる最初のフィールドについての格納されたフィールドのプロファイルを取得する(202)。実装によっては、上記フィールドプロファイルにおける情報から導くことができる追加情報が計算され、当該フィールドプロファイルが読み込まれた後に格納することができる。任意選択的に、モジュール112は、生成されたテストデータ値が有するべき特性(例えば、以下でより詳細に説明するように、テストデータ値に存在すべき個別の値の数を示す情報)についてのユーザ入力を受け取る(204)。モジュール112は、当該フィールドについて取得されたフィールドプロファイルにおける統計に基づいて、当該フィールドについての確率分布のモデルを生成する。当該モデルは、図3の例を参照しながら以下に説明するように、当該フィールドにおいて発生することが許される値の範囲についての確率の推定値を含む。
モジュール112は、各テストデータ値が生成される毎に1回ずつテストデータジェネレータ関数を呼び出す(208)。テストデータジェネレータ関数は、より詳細に以下に説明するように、確率分布のモデルと、任意選択的な引数「インデックス」および「極限(limit)」とを入力引数として受け取る。テストデータジェネレータ関数は、後述する入力および他の特性として提供されるモデルに従って、テストデータ値を出力として提供する。場合によっては、所定のフィールドに対して生成されるべきテストデータ値の数は、上記プロファイル情報に含まれる、元のデータソースからプロファイリングされたデータセット内のレコードの総数と一致するように選択することができる。場合によっては、(例えば、ステップ204において)ユーザーが直接提供することができる、特定数の値を生成することをユーザーが希望するかもしれない。上記関数から出力される値は、テストデータ114のコレクションとして提供されるべきレコードの適切なフィールドに挿入される。モジュール112は、追加のフィールドを処理すべきか否かを特定し(210)、処理すべき場合は、テストデータ生成の別の繰り返しを実行する。モジュール112は、データストレージシステム116におけるテストデータ114の生成されたコレクションを格納する(212)。
実装によっては、所定のフィールドに対して生成されるべきテストデータ値の数は、入力レコードのストリームにおいて受け取られた各レコード毎に1回ずつテストデータジェネレータ関数を呼び出すことによって暗黙的に決定される。例えば、開発環境118がデータフローグラフなどのアプリケーションの開発および実行をサポートしている場合、実行環境104は、データフローグラフそのものとしてデータプロファイリングモジュール106およびテストデータ生成モジュール112を実装してもよい。実装によっては、データプロファイリングモジュールは、N個の個々のレコードのストリームとしてデータソース102から生産データを読み取り、N個の個々のレコードのストリームとして当該モジュール112にレコードを提供するであろう。当該モジュール112は、それらのフィールドについて生成されたテストデータ値を有する元のレコードの各フィールドにおける値を置き換えることができるであろう。当該モジュール112は、M個のフィールドのそれぞれについてN個のレコードのストリームを処理し、M回の繰り返しのそれぞれにおいてN個のテストデータ値を生成し、Mの各フィールドのNレコードのストリームを処理するの別個の繰り返しを実行することができる。様々な繰り返しのためのテストデータ値は、次々と連続的に、または同時に並行して、生成することができる。実装によっては、置き換えられる元の値の特定のプロパティは、生成されたテストデータ値で保持することができる(例えば、州および郵便番号などのフィールド間の機能的な依存関係など)。また、実装によっては、元のレコードのフィールドのサブセットは、それぞれのモデルに従って生成されたテストデータ値で置き換えられるように選択することができ、残りのフィールドは、それらの元の値を保つか、または(例えば、定数値または一様な確率分布に従って生成された擬似乱数値で置き換えるなどの)別の手法に従って処理することができる。
テストデータジェネレータ関数は、データ型が所定のフィールドについてのフィールドプロファイルに基づいて決定される特定のデータ型(例えば、文字列、10進、日付、または日付と時刻の両方を含む日付時刻型)のテストデータ値を返す。当該テストデータ値は、テストデータ114のコレクションにおけるレコード内の所定のフィールドの値として収集される。当該テストデータ値は、所定の値がテストデータ114において発生する頻度が、上記テストデータジェネレータ関数に入力として提供されたモデルによって、その値に割り当てられた確率に対応するように、当該モデルを使用して、少なくとも部分的にはランダムな選択に基づいて(例えば、擬似乱数生成技法を使用して)生成される。テストデータジェネレータ関数は、テストデータ114のコレクションを処理するデータプロファイリングモジュール106が、テストデータ114のコレクションを生成するために使用されるプロファイル情報と同様のプロファイル情報を生ずるように、テストデータ値を生成する。
図3Aおよび図3Bは、フィールドプロファイルにおける例示的な統計情報を示し、図3Cは、フィールドについての確率分布の例示的なモデル300を示す。この例におけるテストデータ値は、それらの間での定義された順序を有する可能な値(例えば、数値によって順序付けられた数、または定義されたアルファベット順によって順序付けられた文字列)の範囲から選択される。この例における統計は、上記値のどれくらいの割合が上記範囲の最小値と最大値との間にある10個の十分位数(この例においては、0と10との間の実数)の各々の中に入るのかを示す十分位数のプロット(図3A)を含む。図3Aに示すプロットの横軸には、それぞれの十分位数に対応する値の範囲(0−1、1−2、等)を示すラベルが付けられている。他の例においては、横軸は、どのフィールドがモデル化されているのかに対応する値の範囲をカバーするであろう。文字列を含む潜在的な値のいずれのドメインも、(例えば、適切なベースにおいて数字として文字列中の文字を解釈することにより)このようなプロットの数値範囲にマッピングすることができる。また、上記統計情報は、この例においては、最も頻出する上位5つの値と各値の出現回数を含む、頻出値のリスト(図3B)をも含む。このフィールドについての確率分布のモデル300は、上記十分位数プロットによって提供される連続的な情報および上記頻出値のリストによって提供される離散的な情報の両方を考慮に入れる。
例えば、モデル300は、上記十分位数プロットによって与えられる割合に比例する、それぞれの連続的な十分位数の範囲内の値についての連続的な確率密度、および上記頻出値リストにおける出現回数に比例する離散的な値における離散的な確率(例えば、デルタ関数)に対応する頻出値リストにおける値についての離散的な確率を含む。上記デルタ関数の高さに関連する確率分布の連続的な部分の高さは、十分位数によって表される元のデータにおける値の数に依存する。上記確率分布の連続的な部分の高さは、(それらの頻出値が2回カウントされないように)それぞれの十分位数内に入る頻出値リスト内の任意の値によって表される出現回数の総数を減算することによって、上記十分位の高さに比べて低くされる。頻出値が十分位数の間の境界(例えば、図3Cにおける値4.0)に当たる場合は、その値の出現回数は、その値を含んでいた十分位数から減算される。例えば、その値の出現回数は、以下テスト(equal−to−or−less−than test)に基づいて値が十分位数に割り当てられる実装においては、左側の十分位数から減算される。確率の絶対値は、分布の積分が1(unity)になる(すなわち、すべての確率の合計が1に等しい)ように決定される。統計情報の他の型を使用してモデルを導くこともできる(プロファイリングされたデータのフィールドに現れる値のヒストグラムなど)。特定の範囲に該当する値の数を示す統計情報はモデルの連続部分につながり、特定の値の出現頻度を示す統計情報はモデルの離散的な部分(例えば、デルタ関数)につながる。
プロファイリングされたデータの確率分布にモデルを整合させることにより、、平均値、標準偏差、一般的な値(例えば、モデルのデルタ関数における値)などの確率分布によって決定される生成されたテストデータの特性、並びに最大許容値および最小許容値許容値は、プロファイリングされたデータのそれらの特性に自動的に整合される。
確率分布によって決定される特性に加えて、上記テストデータジェネレータ関数は、追加の特性を考慮に入れて、フィールドについてのプロファイル情報により近い整合を達成することができる。以下は、テストデータジェネレータ関数が提供されるモデルに基づいてランダムな選択を行うときに考慮に入れることができる幾つかの例示的な特性である。
・無効な値の割合:
上記テストデータジェネレータ関数は、プロファイリングされたデータにおけるのと、ほぼ同じ割合で当該フィールドにおいて無効な値を生成することができる。場合によっては、フィールドプロファイルは、選択することができる一般的な無効値のリストを含んでもよい。場合によっては、フィールドプロファイルが当該フィールドについての有効値を構成するものの妥当性の仕様を含む場合、テストデータジェネレータ関数は、その仕様に違反する無効な値を選択することができる。あるいは、サンプル無効値または妥当性の仕様がまったく存在しない場合、当該関数は、当該フィールドについてのデータ型に関して無効な値(例えば、10進数で記載された文字または不適切にフォーマットされた日付)を選択することができる。
・個別値の割合:
上記テストデータジェネレータ関数は、プロファイリングされたデータにおけるのと、ほぼ同じ割合(すなわち、別個の値/値の総数の数)で、当該フィールドにおいて個別値を生成することができる。これを行うには、当該関数が、任意選択的な「インデックス」および「極限」の引数を入力として受け取る。インデックス引数は、当該関数の呼び出し毎に異なる、負ではない整数(例えば、レコード毎にインクリメントする整数)であり、極限引数は、上記インデックス引数として提供されたか、または提供されるであろう任意の値以上である。極限引数は、フィールドについてのテストデータ値の生成を初めに一度決定することができ、ユーザー入力に基づいて提供することができる(例えば、ステップ204)。例えば、極限引数の値は、ユーザーが要求しようとするレコードの数に設定することができ、ユーザーによって事前に知られていてもよいけれども、テストデータジェネレータを実行しているプロセッサ(または複数のプロセッサ)によっては事前に知られていないであろう。
・最大長および最小長:
上記テストデータジェネレータ関数は、プロファイリングされたデータにおけるのと同じ最大長および最小長を有する値を生成することができる。例えば、文字列の場合、その長さは文字数に対応し、数の場合、その長さは、小数点以下の桁を含む数字の数を定義することができる。
・観察された文字:
上記テストデータジェネレータ関数は、(フィールドプロファイルにおいて示されているように)プロファイリングされたデータに出現する文字のみで構成される、文字列などの値を生成することができる。
上記テストデータジェネレータ関数に使用して、極限引数Lの所定の値について、インデックス引数Iが0からL−1になる際に、出力テストデータ値を決定することができる技法の一例は、0からL−1のIの値のすべての疑似ランダム置換を生成すること、および、これらの値が0から1の範囲に入るように、それらをスケーリングすること(例えば、Lで割ること)を含む。このように、Iのそれぞれの入力値を、モデル化された確率分布の対応する部分を定義する数の異なる範囲にマッピングすることができる。例えば、L=10の場合、0から9まで10個のインデックス値は、上記置換を使用して、0と1の間の10個の異なる範囲(0.1〜0、0.1〜0.2等)に擬似乱数的にマッピングされる。確率分布は、等しい確率のスライスの対応する数(この例においては10スライス)にスライスされ、選択されたスライス内のどこかの出力値が、出力テストデータ値として選択される。当該関数は、それに応じてスライスの数を減らし且つ異なるスライス内に値を複数回出力することによって出力されるべき固有の値の数を考慮に入れる。例えば、合計値として多くの固有値の半分がある場合、それぞれの値は2回出力される。種々の技法のいずれかを使用して、上記置換を生成することができる(例えば、参照により本明細書に組み込まれる、”Advances in Cryptology − EUROCRYPT ’92 (Lecture Notes in Computer Science),” Berlin: Springer Verlag, vol 658, pp 239−255, 1992におけるUeli Maurerによる”Luby−Rackoff擬似ランダム置換ジェネレータの簡略化と一般化処理”において記載されているアルゴリズムのLuby−Rackoffタイプに基づく技法)。
上記テストデータ生成手法は、コンピュータ上で実行するためのソフトウェアを使用して実装することができる。例えば、当該ソフトウェアは、それぞれが、少なくとも1つのプロセッサ、少なくとも1つのデータ記憶システム(揮発性および不揮発性メモリおよび/または記憶要素を含む)、少なくとも1つの入力デバイスまたはポート、並びに少なくとも1つの出力デバイスまたはポートを含む(分散型、クライアント/サーバ、またはグリッドなどの種々のアーキテクチャのものであってよい)1つまたは複数のプログラムされたまたはプログラム可能なコンピュータシステム上で実行される1つ以上のコンピュータプログラムにおけるプロシージャを形成する。上記ソフトウェアは、例えば、計算グラフの設計および構成に関連する他のサービスを提供する、大規模なプログラムの1つ以上のモジュールを形成してもよい。上記グラフのノードおよび要素は、データリポジトリに格納されているデータモデルに準拠したコンピュータ可読媒体または他の編成データに格納されたデータ構造体として実装することができる。
上記ソフトウェアは、汎用または専用のプログラム可能なコンピュータによって読み取り可能なCD−ROMなどの記憶媒体上に提供してもよく、またはそれが実行されるコンピュータへのネットワークの通信媒体を介して(伝播信号中にエンコードして)配信してもよい。すべての関数を1つの専用コンピュータ上で実行してもよく、またはコプロセッサなどの専用ハードウェアを使用して実行してもよい。上記ソフトウェアは、ソフトウェアによって規定された計算の異なる部分が異なるコンピュータによって実行される分散方式で実装してもよい。それぞれのそのようなコンピュータプログラムは、好ましくは、汎用または専用のプログラム可能なコンピュータによって読み取り可能な記憶媒体又は記憶装置(例えば、固相メモリもしくは媒体、または磁気もしくは光媒体)がコンピュータシステムによって読み取られ、当該記憶媒体又は記憶装置に記載された手順を実行する際に当該コンピュータを構成および操作するために、当該記憶媒体または記憶装置上に格納またはダウンロードされる。また、本発明のシステムを、そのように構成された記憶媒体がコンピュータシステムを特定の且つ予め定義された方式で動作させて本明細書に記載された関数を実行させるコンピュータプログラムで構成された、コンピュータ読み取り可能な記憶媒体として実装することも考えられる。
本発明の多数の実施形態を記載した。にもかかわらず、本発明の精神および範囲から逸脱すること無く種々の改変を行うことができることが理解されるであろう。例えば、上記手順のいくつかは順序に依存せず、従って記載した順序とは異なる順序で実行することができる。
前の記述は本発明の範囲を説明することを目的とするものであり、添付の特許請求の範囲によって定義される本発明の範囲を限定することを目的とするものではないことが理解されるべきである。例えば、多数の上記機能ステップを、全体的な処理に影響を与えること無く、異なる順序で実行することができる。他の実施形態も、以下の特許請求の範囲内にある。

Claims (34)

  1. テストデータを生成するための方法であって、
    データソースから複数のレコードの少なくとも1つのフィールドにおいて発生する値を読み取ること、
    上記値を特徴づける統計を含むプロファイル情報を格納すること、
    上記統計に基づいて上記フィールドについての確率分布のモデルであって、値の連続的な範囲に亘る確率密度に対応する確率分布の少なくとも第1の部分と、頻出値についての1つ以上の離散的な確率値に対応する生起確率の少なくとも第2の部分と、を含む前記モデルを生成すること、
    所定の値が上記テストデータ値において発生する頻度が、上記モデルの上記第1の部分及び上記モデルの上記第2の部分によってその所定の値に割り当てられた確率に対応するように、上記生成されたモデルを使用して複数のテストデータ値を生成すること、および
    上記テストデータ値を含むテストデータのコレクションをデータストレージシステムに格納すること、
    を含む方法。
  2. 上記統計情報が、値の複数の連続的な範囲のそれぞれに該当する値の数を示す情報を含む、
    請求項に記載の方法。
  3. 上記第1の部分が、値の上記連続的な範囲の1つに該当する値の数を示す情報に少なくとも部分的に由来して導かれる、
    請求項に記載の方法。
  4. 上記統計情報が、複数の特定の値のそれぞれが上記複数のレコードにおいて発生する頻度を示す情報を含む、
    請求項1に記載の方法。
  5. 上記第2の部分における離散的な確率値の1つは、上記特定の値の1つが上記複数のレコードにおいて発生する頻度を示す情報に少なくとも部分的に由来して導かれる、
    請求項に記載の方法。
  6. 上記生成されたモデルと上記フィールドにおいて発生するデータソースから読み取られた値の特性を示す追加情報とを使用して上記複数のテストデータ値を生成することを更に含む、
    請求項1に記載の方法。
  7. 上記追加情報が、上記フィールドにおいて発生する無効な値の数を示す、
    請求項に記載の方法。
  8. 上記追加情報が、上記フィールドにおいて発生する個別の値の割合を示す、
    請求項に記載の方法。
  9. 上記データストレージシステムに格納されたテストデータのコレクションを使用して上記データソースに由来する上記複数のレコードを処理するための少なくとも1つのプログラムを開発するための開発環境を提供することを更に含む、
    請求項1に記載の方法。
  10. 上記データソースに由来する上記複数のレコードが上記開発環境にとってアクセスできない、
    請求項に記載の方法。
  11. 上記データソースが上記開発環境にとってアクセスできない、
    請求項10に記載の方法。
  12. テストデータを生成するためのシステムであって、
    1つ以上のフィールドにおいて値を有するレコードを提供するデータソース、
    データストレージシステム、および
    実行環境を提供する上記データストレージシステムに結合された1つ以上のプロセッサであって、
    上記データソースから複数のレコードの少なくとも1つのフィールドにおいて発生する値を読み取り、
    上記値を特徴づける統計を含むプロファイル情報を格納し、
    上記統計に基づいて上記フィールドについての確率分布のモデルであって、値の連続的な範囲に亘る確率密度に対応する確率分布の少なくとも第1の部分と、頻出値についての1つ以上の離散的な確率値に対応する生起確率の少なくとも第2の部分と、を含む前記モデルを生成し、
    所定の値が上記テストデータ値において発生する頻度が、上記モデルの上記第1の部分及び上記モデルの上記第2の部分によってその所定の値に割り当てられた確率に対応するように、上記生成されたモデルを使用して複数のテストデータ値を生成し、そして
    上記テストデータ値を含むテストデータのコレクションを上記データストレージシステムに格納する、
    プロセッサ、
    を含むシステム。
  13. テストデータを生成するためのシステムであって、
    1つ以上のフィールドにおいて値を有するレコードを提供するデータソース、
    データストレージシステム、および
    上記レコードを処理してテストデータを生成するための手段、
    を含み、
    上記処理は、
    上記データソースから複数のレコードの少なくとも1つのフィールドにおいて発生する値を読み取ること、
    上記値を特徴づける統計を含むプロファイル情報を格納すること、
    上記統計に基づいて上記フィールドについての確率分布のモデルであって、値の連続的な範囲に亘る確率密度に対応する確率分布の少なくとも第1の部分と、頻出値についての1つ以上の離散的な確率値に対応する生起確率の少なくとも第2の部分と、を含む前記モデルを生成すること、
    所定の値が上記テストデータ値において発生する頻度が、上記モデルの上記第1の部分及び上記モデルの上記第2の部分によってその所定の値に割り当てられた確率に対応するように、上記生成されたモデルを使用して複数のテストデータ値を生成すること、および
    上記テストデータ値を含むテストデータのコレクションを上記データストレージシステムに格納すること、
    を含むシステム。
  14. 上記統計情報が、値の複数の連続的な範囲のそれぞれに該当する値の数を示す情報を含む、
    請求項12に記載のシステム。
  15. 上記第1の部分が、値の上記連続的な範囲の1つに該当する値の数を示す情報に少なくとも部分的に由来して導かれる、
    請求項14に記載のシステム。
  16. 上記統計情報が、複数の特定の値のそれぞれが上記複数のレコードにおいて発生する頻度を示す情報を含む、
    請求項12に記載のシステム。
  17. 上記第2の部分における離散的な確率値の1つは、上記特定の値の1つが上記複数のレコードにおいて発生する頻度を示す情報に少なくとも部分的に由来して導かれる、
    請求項16に記載のシステム。
  18. 上記実行環境は、上記生成されたモデルと上記フィールドにおいて発生するデータソースから読み取られた値の特性を示す追加情報とを使用して上記複数のテストデータ値を生成する、
    請求項12に記載のシステム。
  19. 上記追加情報が、上記フィールドにおいて発生する無効な値の数を示す、
    請求項18に記載のシステム。
  20. 上記追加情報が、上記フィールドにおいて発生する個別の値の割合を示す、
    請求項18に記載のシステム。
  21. 上記実行環境は、上記データストレージシステムに格納されたテストデータのコレクションを使用して上記データソースに由来する上記複数のレコードを処理するための少なくとも1つのプログラムを開発するための開発環境を提供する、
    請求項12に記載のシステム。
  22. 上記データソースに由来する上記複数のレコードが上記開発環境にとってアクセスできない、
    請求項21に記載のシステム。
  23. 上記データソースが上記開発環境にとってアクセスできない、
    請求項22に記載のシステム。
  24. 上記生成されたモデルが、値の連続的な範囲に亘る確率密度に対応する確率分布の推定値の少なくとも第1の部分と、離散的な値についての1つ以上の離散的な確率値に対応する確率分布の推定値の少なくとも第2の部分と、を含む、
    請求項12に記載のシステム。
  25. 上記統計情報が、値の複数の連続的な範囲のそれぞれに該当する値の数を示す情報を含む、
    請求項24に記載のシステム。
  26. 上記第1の部分が、値の上記連続的な範囲の1つに該当する値の数を示す情報に少なくとも部分的に由来して導かれる、
    請求項25に記載のシステム。
  27. 上記統計情報が、複数の特定の値のそれぞれが上記複数のレコードにおいて発生する頻度を示す情報を含む、
    請求項24に記載のシステム。
  28. 上記第2の部分における離散的な確率値の1つは、上記特定の値の1つが上記複数のレコードにおいて発生する頻度を示す情報に少なくとも部分的に由来して導かれる、
    請求項27に記載のシステム。
  29. 上記実行環境は、上記生成されたモデルと上記フィールドにおいて発生するデータソースから読み取られた値の特性を示す追加情報とを使用して上記複数のテストデータ値を生成する、
    請求項21に記載のシステム。
  30. 上記追加情報が、上記フィールドにおいて発生する無効な値の数を示す、
    請求項29に記載のシステム。
  31. 上記追加情報が、上記フィールドにおいて発生する個別の値の割合を示す、
    請求項29に記載のシステム。
  32. 上記実行環境は、上記データストレージシステムに格納されたテストデータのコレクションを使用して上記データソースに由来する上記複数のレコードを処理するための少なくとも1つのプログラムを開発するための開発環境を提供する、
    請求項21に記載のシステム。
  33. 上記データソースに由来するレコードが上記開発環境にとってアクセスできない、
    請求項32に記載のシステム。
  34. 上記データソースが上記開発環境にとってアクセスできない、
    請求項33に記載のシステム。
JP2012515111A 2009-06-10 2010-06-09 テストデータの生成方法 Active JP5620984B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US18579709P 2009-06-10 2009-06-10
US61/185,797 2009-06-10
PCT/US2010/038018 WO2010144608A1 (en) 2009-06-10 2010-06-09 Generating test data

Publications (3)

Publication Number Publication Date
JP2012529716A JP2012529716A (ja) 2012-11-22
JP2012529716A5 JP2012529716A5 (ja) 2013-07-25
JP5620984B2 true JP5620984B2 (ja) 2014-11-05

Family

ID=43307221

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012515111A Active JP5620984B2 (ja) 2009-06-10 2010-06-09 テストデータの生成方法

Country Status (8)

Country Link
US (1) US9411712B2 (ja)
EP (1) EP2440882B1 (ja)
JP (1) JP5620984B2 (ja)
KR (2) KR20150040384A (ja)
CN (1) CN102460076B (ja)
AU (1) AU2010258731B2 (ja)
CA (1) CA2764390C (ja)
WO (1) WO2010144608A1 (ja)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10102398B2 (en) 2009-06-01 2018-10-16 Ab Initio Technology Llc Generating obfuscated data
US20120041989A1 (en) * 2010-08-16 2012-02-16 Tata Consultancy Services Limited Generating assessment data
JP5651050B2 (ja) * 2011-03-08 2015-01-07 株式会社富士通マーケティング データ生成装置及びデータ生成プログラム
US20120330880A1 (en) * 2011-06-23 2012-12-27 Microsoft Corporation Synthetic data generation
US9460069B2 (en) * 2012-10-19 2016-10-04 International Business Machines Corporation Generation of test data using text analytics
JP5933410B2 (ja) * 2012-10-25 2016-06-08 株式会社日立製作所 データベース分析装置及びデータベース分析方法
KR102026662B1 (ko) 2013-04-22 2019-09-30 삼성전자 주식회사 프로세서 검증을 위한 테스트 케이스 생성 장치 및 방법과, 검증장치
US9246935B2 (en) 2013-10-14 2016-01-26 Intuit Inc. Method and system for dynamic and comprehensive vulnerability management
US9313281B1 (en) 2013-11-13 2016-04-12 Intuit Inc. Method and system for creating and dynamically deploying resource specific discovery agents for determining the state of a cloud computing environment
CN104636404B (zh) * 2013-11-14 2019-02-19 华为技术有限公司 用于测试的大规模数据生成方法和装置
US20150169433A1 (en) * 2013-12-12 2015-06-18 Rafi Bryl Automated Generation of Semantically Correct Test Data for Application Development
JP6882892B2 (ja) * 2013-12-18 2021-06-02 アビニシオ テクノロジー エルエルシー データ生成
US9501345B1 (en) 2013-12-23 2016-11-22 Intuit Inc. Method and system for creating enriched log data
US9323926B2 (en) 2013-12-30 2016-04-26 Intuit Inc. Method and system for intrusion and extrusion detection
US20150304343A1 (en) 2014-04-18 2015-10-22 Intuit Inc. Method and system for providing self-monitoring, self-reporting, and self-repairing virtual assets in a cloud computing environment
US9325726B2 (en) 2014-02-03 2016-04-26 Intuit Inc. Method and system for virtual asset assisted extrusion and intrusion detection in a cloud computing environment
US9866581B2 (en) 2014-06-30 2018-01-09 Intuit Inc. Method and system for secure delivery of information to computing environments
US10757133B2 (en) 2014-02-21 2020-08-25 Intuit Inc. Method and system for creating and deploying virtual assets
US9276945B2 (en) 2014-04-07 2016-03-01 Intuit Inc. Method and system for providing security aware applications
US20150269064A1 (en) * 2014-03-21 2015-09-24 Intuit Inc. Method and system for testing cloud based applications in a production environment using fabricated user data
US9245117B2 (en) 2014-03-31 2016-01-26 Intuit Inc. Method and system for comparing different versions of a cloud based application in a production environment using segregated backend systems
US11294700B2 (en) 2014-04-18 2022-04-05 Intuit Inc. Method and system for enabling self-monitoring virtual assets to correlate external events with characteristic patterns associated with the virtual assets
US9374389B2 (en) 2014-04-25 2016-06-21 Intuit Inc. Method and system for ensuring an application conforms with security and regulatory controls prior to deployment
US9900322B2 (en) 2014-04-30 2018-02-20 Intuit Inc. Method and system for providing permissions management
US9319415B2 (en) 2014-04-30 2016-04-19 Intuit Inc. Method and system for providing reference architecture pattern-based permissions management
US9330263B2 (en) 2014-05-27 2016-05-03 Intuit Inc. Method and apparatus for automating the building of threat models for the public cloud
US10102082B2 (en) 2014-07-31 2018-10-16 Intuit Inc. Method and system for providing automated self-healing virtual assets
US9473481B2 (en) 2014-07-31 2016-10-18 Intuit Inc. Method and system for providing a virtual asset perimeter
EP3191963B1 (en) 2014-09-08 2023-11-22 AB Initio Technology LLC Data-driven testing framework
US9558089B2 (en) * 2014-11-12 2017-01-31 Intuit Inc. Testing insecure computing environments using random data sets generated from characterizations of real data sets
JP6482338B2 (ja) * 2015-03-19 2019-03-13 株式会社エヌ・ティ・ティ・データ 質問表回答テストデータ生成システム、質問表回答テストデータ生成方法及びプログラム
US10409802B2 (en) * 2015-06-12 2019-09-10 Ab Initio Technology Llc Data quality analysis
EP3188038B1 (en) * 2015-12-31 2020-11-04 Dassault Systèmes Evaluation of a training set
CN106021097B (zh) * 2016-05-09 2019-02-26 北京航空航天大学 基于测试特征的软件可靠性指标区间估计方法
US20180293272A1 (en) * 2017-04-05 2018-10-11 Futurewei Technologies, Inc. Statistics-Based Multidimensional Data Cloning
CN107577604B (zh) * 2017-09-04 2020-12-22 北京京东尚科信息技术有限公司 测试数据的生成方法、装置和计算机可读存储介质
CN111213146B (zh) * 2017-10-13 2024-05-03 日本电信电话株式会社 伪数据生成装置、其方法和记录介质
KR102392642B1 (ko) * 2017-11-08 2022-04-29 한국전력공사 Cfg를 이용한 패턴 기반의 소프트웨어 절차변경 동작 감시 장치 및 그 방법
US11443837B2 (en) * 2017-11-17 2022-09-13 International Business Machines Corporation Generation of test data for a data platform
CN108874666A (zh) * 2018-05-30 2018-11-23 平安普惠企业管理有限公司 测试数据自动生成方法、装置、计算机设备及存储介质
US11227065B2 (en) 2018-11-06 2022-01-18 Microsoft Technology Licensing, Llc Static data masking
US10956301B2 (en) * 2019-07-03 2021-03-23 Ownbackup Ltd. Production data in continuous integration flows
US11269757B2 (en) * 2019-07-03 2022-03-08 Ownbackup Ltd. Production data in continuous integration flows
US11188451B2 (en) * 2020-03-08 2021-11-30 Ownbackup Ltd. Test data generation for automatic software testing
KR102276290B1 (ko) 2020-04-10 2021-07-12 숭실대학교산학협력단 대용량 테스트 데이터 생성장치
CN112231232A (zh) * 2020-11-18 2021-01-15 深圳前海微众银行股份有限公司 确定测试数据模型及生成测试数据的方法、装置及设备
US11841836B2 (en) 2021-01-04 2023-12-12 Ownbackup Ltd. Target environment data seeding
US11914503B2 (en) * 2021-09-01 2024-02-27 Sap Se Automated performance measurement over software lifecycle
CN114860575B (zh) * 2022-03-31 2023-10-03 中国电信股份有限公司 测试数据生成方法及装置、存储介质及电子设备
US20240070141A1 (en) * 2022-08-31 2024-02-29 Palantir Technologies Inc. Systems and methods for generating interrelated notional data
CN116303102B (zh) * 2023-05-19 2023-08-11 建信金融科技有限责任公司 测试数据的生成方法、装置、电子设备和存储介质

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5664187A (en) * 1994-10-26 1997-09-02 Hewlett-Packard Company Method and system for selecting data for migration in a hierarchic data storage system using frequency distribution tables
JPH1030943A (ja) * 1996-07-15 1998-02-03 Ckd Corp センサ装置、表示装置及びデータ書き込み装置
US6581058B1 (en) * 1998-05-22 2003-06-17 Microsoft Corporation Scalable system for clustering of large databases having mixed data attributes
DE19911176A1 (de) 1999-03-12 2000-09-21 Lok Lombardkasse Ag Anonymisierungsverfahren
AU5782900A (en) * 1999-06-30 2001-01-31 Stephen Billester Secure, limited-access database system and method
US6546389B1 (en) * 2000-01-19 2003-04-08 International Business Machines Corporation Method and system for building a decision-tree classifier from privacy-preserving data
US6567936B1 (en) * 2000-02-08 2003-05-20 Microsoft Corporation Data clustering using error-tolerant frequent item sets
JP2001256076A (ja) * 2000-03-08 2001-09-21 Ricoh Co Ltd テストデータ生成装置、テストデータ生成方法及び記録媒体
US7237123B2 (en) * 2000-09-22 2007-06-26 Ecd Systems, Inc. Systems and methods for preventing unauthorized use of digital content
US20020138492A1 (en) * 2001-03-07 2002-09-26 David Kil Data mining application with improved data mining algorithm selection
AU2002254564A1 (en) 2001-04-10 2002-10-28 Latanya Sweeney Systems and methods for deidentifying entries in a data source
US7266699B2 (en) 2001-08-30 2007-09-04 Application Security, Inc. Cryptographic infrastructure for encrypting a database
US7136787B2 (en) * 2001-12-19 2006-11-14 Archimedes, Inc. Generation of continuous mathematical model for common features of a subject group
US7080063B2 (en) * 2002-05-10 2006-07-18 Oracle International Corporation Probabilistic model generation
US7194317B2 (en) * 2002-08-22 2007-03-20 Air Products And Chemicals, Inc. Fast plant test for model-based control
US20040107189A1 (en) * 2002-12-03 2004-06-03 Lockheed Martin Corporation System for identifying similarities in record fields
US7324109B2 (en) * 2003-04-24 2008-01-29 Palmer James R Method for superimposing statistical information on tubular data
US7085981B2 (en) 2003-06-09 2006-08-01 International Business Machines Corporation Method and apparatus for generating test data sets in accordance with user feedback
US7849075B2 (en) * 2003-09-15 2010-12-07 Ab Initio Technology Llc Joint field profiling
US6957161B2 (en) * 2003-09-25 2005-10-18 Dell Products L.P. Information handling system including power supply self diagnostics
US7334466B1 (en) * 2005-01-04 2008-02-26 The United States Of America As Represented By The Secretary Of The Army Method and apparatus for predicting and evaluating projectile performance
US7672967B2 (en) * 2005-02-07 2010-03-02 Microsoft Corporation Method and system for obfuscating data structures by deterministic natural data substitution
JP2006236220A (ja) * 2005-02-28 2006-09-07 Ntt Data Technology Corp テスト用データファイル作成装置、方法、プログラム及び記録媒体
US7684963B2 (en) * 2005-03-29 2010-03-23 International Business Machines Corporation Systems and methods of data traffic generation via density estimation using SVD
US7565349B2 (en) * 2005-11-10 2009-07-21 International Business Machines Corporation Method for computing frequency distribution for many fields in one pass in parallel
KR100735012B1 (ko) * 2006-01-23 2007-07-03 삼성전자주식회사 제품 파라미터들의 통계적 분포 특성을 평가하는 방법
US7937693B2 (en) * 2006-04-26 2011-05-03 9Rays.Net, Inc. System and method for obfuscation of reverse compiled computer code
US8209549B1 (en) * 2006-10-19 2012-06-26 United Services Automobile Association (Usaa) Systems and methods for cryptographic masking of private data
US7724918B2 (en) * 2006-11-22 2010-05-25 International Business Machines Corporation Data obfuscation of text data using entity detection and replacement
US8069129B2 (en) 2007-04-10 2011-11-29 Ab Initio Technology Llc Editing and compiling business rules
US7739249B2 (en) * 2007-04-16 2010-06-15 Sap, Ag Data generator apparatus testing data dependent applications, verifying schemas and sizing systems
JP4575416B2 (ja) 2007-10-29 2010-11-04 みずほ情報総研株式会社 テストデータ生成システム、テストデータ生成方法及びテストデータ生成プログラム
JP4986817B2 (ja) * 2007-11-13 2012-07-25 株式会社ソニーDadc 評価装置、評価方法、プログラム
US7877398B2 (en) * 2007-11-19 2011-01-25 International Business Machines Corporation Masking related sensitive data in groups
US9305180B2 (en) * 2008-05-12 2016-04-05 New BIS Luxco S.à r.l Data obfuscation system, method, and computer implementation of data obfuscation for secret databases
EP2189925A3 (en) * 2008-11-25 2015-10-14 SafeNet, Inc. Database obfuscation system and method
US9298878B2 (en) * 2010-07-29 2016-03-29 Oracle International Corporation System and method for real-time transactional data obfuscation
CN103348598B (zh) 2011-01-28 2017-07-14 起元科技有限公司 生成数据模式信息
US9558089B2 (en) * 2014-11-12 2017-01-31 Intuit Inc. Testing insecure computing environments using random data sets generated from characterizations of real data sets

Also Published As

Publication number Publication date
EP2440882A4 (en) 2017-06-14
KR101660853B1 (ko) 2016-09-28
AU2010258731B2 (en) 2015-07-23
KR20150040384A (ko) 2015-04-14
AU2010258731A1 (en) 2011-12-22
EP2440882A1 (en) 2012-04-18
CN102460076B (zh) 2015-06-03
JP2012529716A (ja) 2012-11-22
EP2440882B1 (en) 2020-02-12
WO2010144608A1 (en) 2010-12-16
CA2764390A1 (en) 2010-12-16
CN102460076A (zh) 2012-05-16
US20100318481A1 (en) 2010-12-16
CA2764390C (en) 2019-02-26
US9411712B2 (en) 2016-08-09
KR20120039616A (ko) 2012-04-25

Similar Documents

Publication Publication Date Title
JP5620984B2 (ja) テストデータの生成方法
US11475023B2 (en) Impact analysis
CN107430611B (zh) 过滤数据沿袭图
JP6427592B2 (ja) データ型に関連するデータプロファイリング操作の管理
CN107251021B (zh) 过滤数据沿袭图
JP6882892B2 (ja) データ生成
CN107409040B (zh) 用于推荐数据加密而不影响程序语义的代码分析工具
JP6526684B2 (ja) データベースキーの識別
Gutjahr Software dependability evaluation based on Markov usage models
US20230259521A1 (en) Metadata-based data processing
US9244820B2 (en) Creating benchmark graph data
US11775517B2 (en) Query content-based data generation
EP4433909A1 (en) Generating cryptographic proof of a series of transactions
Martínez et al. Efficient model similarity estimation with robust hashing
JP6567043B2 (ja) 階層的なエンティティのための計算の管理
Wu et al. Generalization based privacy-preserving provenance publishing
Andersson et al. Treating missing values in INAR (1) models: An application to syndromic surveillance data
Alexandrov et al. Myriad: parallel data generation on shared-nothing architectures
Wang et al. A differential privacy protection query language for medical data: a proof-of-concept system validation
Norrman Anonymization of production data to create functioning and useful test environment data
Lang An Analysis of Threshold Models on Networks: Modeling Social Contagions and Infectious Diseases
Zhang et al. # 8712; A Framework for Defining Differentially-Private Computations
Kotsogiannis et al. Dan Zhang

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130610

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130610

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140221

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140513

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140520

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140611

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140618

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140717

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140725

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140815

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140902

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140919

R150 Certificate of patent or registration of utility model

Ref document number: 5620984

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250