KR20150040384A - 테스트 데이터의 생성 - Google Patents

테스트 데이터의 생성 Download PDF

Info

Publication number
KR20150040384A
KR20150040384A KR1020157008165A KR20157008165A KR20150040384A KR 20150040384 A KR20150040384 A KR 20150040384A KR 1020157008165 A KR1020157008165 A KR 1020157008165A KR 20157008165 A KR20157008165 A KR 20157008165A KR 20150040384 A KR20150040384 A KR 20150040384A
Authority
KR
South Korea
Prior art keywords
values
test data
data
model
field
Prior art date
Application number
KR1020157008165A
Other languages
English (en)
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 KR20150040384A publication Critical patent/KR20150040384A/ko

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)

Abstract

테스트 데이터 생성은 데이터 소스로부터 다수의 레코드들의 하나 이상의 필드 내에서 발생하는 값들을 판독하는 단계(102); 상기 값들을 특징짓는 통계를 포함하는 프로파일 정보를 저장하는 단계; 상기 통계에 근거하여 상기 필드를 위한 확률 분포의 모델(300)을 생성하는 단계(206); 주어진 값이 상기 모델(300)에 의해 그 주어진 값에 할당된 확률에 해당하는 테스트 데이터 값들 내에서 발생하는 곳에서 그러한 빈도로 생성된 다수의 테스트 데이터 값을 생성하는 단계(206); 및 데이터 저장 시스템(116) 내에 상기 테스트 데이터 값들을 포함하는 수집된 테스트 데이터의 집합(114)을 저장하는 단계(212)를 포함한다.

Description

테스트 데이터의 생성{GENERATING TEST DATA}
이 출원은 2009년 6월 10일에 출원된 미국특허출원 제61/185,797호에 대한 우선권을 주장하며, 이 문헌은 참고로서 여기에 포함된다.
본 발명은 테스트 데이터의 생성에 관한 것이다.
일부 기관들은 그들이 기밀로 유지하기를 원하는 데이터를 가지고 있다(예를 들면 고객 정보를 포함하는 생산 데이터). 이러한 기밀 데이터가 프로그램들에 의해 처리될 때, 보안상의 이유로 개발자들은 실제 생산 데이터에 접근 권한을 가지 않은 채로 그런 프로그램들을 개발할 필요가 있을 수 있다. 예를 들면, 생산 데이터를 기밀로 유지하는 하나의 방법은 그것을 보는 사람들의 수를 최소화하는 것이다. 그러나 그들의 애플리케이션이 생산 데이터에 의해 정확하게 구동되도록 하기 위해서는, 프로그래머들은 임의의 기밀 정보의 노출 없이 생산 데이터의 어떤 특징을 나타내는 개발 및 테스트를 위한 실제적인 테스트 데이터를 필요로 할 수 있다.
본 발명은 종래 기술의 문제점을 해소할 수 있는 테스트 데이터의 생성 시스템 및 방법을 제공한다.
본 발명의 일 측면에서, 전체적으로 테스트 데이터의 생성 방법은 데이터 소스로부터의 다수의 레코드들의 하나 이상의 필드 내에 있는 값들(values)을 판독하는 단계; 상기 값들을 특징짓는 통계를 포함하는 프로파일 정보를 저장하는 단계; 상기 통계에 근거하여 상기 필드를 위한 확률 분포의 모델을 생성하는 단계; 상기 모델을 이용하여 다수의 테스트 데이터 값들을 생성하는 단계로서, 주어진 값이 상기 다수의 테스트 데이터 값들 내에서 나타나는 빈도가 상기 모델에 의해 상기 주어진 값에 할당된 확률에 대응하도록 하여 상기 다수의 테스트 데이터 값들을 생성하는 단계; 및 데이터 저장 시스템 내에 상기 테스트 데이터 값들을 포함하는 테스트 데이터의 컬렉션을 저장하는 단계를 포함한다.
본 발명의 여러 측면에서, 다음과 같은 하나 이상의 특징들을 포함할 수 있다.
상기 모델은, 일정 범위의 연속하는 값들(a continuous range of values)에 대한 확률 밀도에 대응하는 상기 확률 분포의 추정치의 적어도 제1 부분과, 이산 값들에 대한 하나 이상의 이산 확률 값들에 대응하는 상기 확률 분포의 추정치의 적어도 제2 부분을 포함한다.
상기 통계 정보는 연속하는 값들의 다수의 범위들의 각 범위에 속하는 값들의 수를 나타내는 정보를 포함한다.
상기 제1 부분은 상기 범위들 중 하나에 속하는 값들의 수를 나타내는 정보에 적어도 부분적으로 기초하여 도출된다.
상기 통계 정보는 상기 레코드들 내에서 다수의 특정 값들 각각이 나타나는 빈도를 나타내는 정보를 포함한다.
상기 제2 부분 내의 상기 이산 확률 값들(discrete proability values) 중의 하나는 적어도 부분적으로 상기 레코드들 내에서 상기 특정 값들 중 하나가 나타나는 빈도를 나타내는 정보로부터 도출된다.
상기 방법은 상기 모델, 및 상기 필드들 내에 있는 상기 데이터 소스로부터 판독된 값들의 특징을 나타내는 추가 정보를 이용하여 다수의 테스트 데이터 값들을 생성하는 단계를 더 포함한다.
상기 추가 정보는 상기 필드 내에 있는 무효한 값들의 수를 나타낸다.
상기 추가 정보는 상기 필드 내에 있는 이산 값들의 구성비(fraction)를 나타낸다.
상기 방법은 상기 데이터 저장 시스템에 저장된 테스트 데이터의 컬렉션을 사용하여 상기 데이터 소스로부터의 상기 레코드들을 처리하기 위한 하나 이상의 프로그램을 개발하기 위한 개발 환경을 제공하는 단계를 더 포함한다.
상기 데이터 소스로부터의 상기 레코드들은 상기 개발 환경에서 접근 불가능하다.
상기 데이터 소스는 상기 개발 환경에서 접근 불가능하다.
본 발명의 다른 측면에서, 전체적으로, 테스트 데이터 생성 시스템은 하나 이상의 필드들 내에 값들을 가진 레코드들을 제공하는 데이터 소스; 데이터 저장 시스템; 및 상기 데이터 소스로부터의 다수의 레코드들의 하나 이상의 필드 내에 있는 값들(values)을 판독하고, 상기 값들을 특징짓는 통계를 포함하는 프로파일 정보를 저장하며, 상기 통계에 기초하여 상기 필드를 위한 확률 분포의 모델을 생성하고, 상기 모델을 이용하여 다수의 테스트 데이터 값들을 생성하고 - 이때, 주어진 값이 상기 다수의 테스트 데이터 값들 내에서 나타나는 빈도가 상기 모델에 의해 상기 주어진 값에 할당된 확률에 대응하도록 하여 상기 다수의 테스트 데이터 값들을 생성함-, 상기 데이터 저장 시스템내에 상기 테스트 데이터 값들을 포함하는 테스트 데이터의 컬렉션을 저장하는 실행 환경을 제공하는, 상기 데이터 저장 시스템에 연결된 하나 이상의 프로세서들을 포함한다.
본 발명의 다른 측면에서, 전체적으로, 테스트 데이터 생성 시스템은 하나 이상의 필드들 내에 값들을 가진 레코드들 제공하는 데이터 소스; 데이터 저장 시스템; 및 상기 테스트 데이터를 생성하기 위해 상기 레코드들에 대해 처리를 행하기 위한 수단을 포함하고, 상기 처리는, 상기 데이터 소스로부터의 다수의 레코드들의 하나 이상의 필드 내에 있는 값들을 판독하는 단계; 상기 값들을 특징짓는 통계를 포함하는 프로파일 정보를 저장하는 단계; 상기 통계에 근거하여 상기 필드를 위한 확률 분포의 모델을 생성하는 단계; 상기 모델을 이용하여 다수의 테스트 데이터 값들을 생성하는 단계로서, 주어진 값이 상기 다수의 테스트 데이터 값들 내에서 나타나는 빈도가 상기 모델에 의해 상기 주어진 값에 할당된 확률에 대응하도록 하여 상기 다수의 테스트 데이터 값들을 생성하는 단계; 및 데이터 저장 시스템 내에 상기 테스트 데이터 값들을 포함한다.
본 발명의 다른 측면에서, 전체적으로, 테스트 데이터를 생성하기 위한 컴퓨터 프로그램을 저장하는 컴퓨터로 판독 가능한 기록 매체는, 상기 컴퓨터 프로그램은 컴퓨터로 하여금, 상기 데이터 소스로부터의 다수의 레코드들의 하나 이상의 필드 내에 있는 값들을 판독하는 단계; 상기 값들을 특징짓는 통계를 포함하는 프로파일 정보를 저장하는 단계; 상기 통계에 근거하여 상기 필드를 위한 확률 분포의 모델을 생성하는 단계; 상기 모델을 이용하여 다수의 테스트 데이터 값들을 생성하는 단계로서, 주어진 값이 상기 다수의 테스트 데이터 값들 내에서 나타나는 빈도가 상기 모델에 의해 상기 주어진 값에 할당된 확률에 대응하도록 하여 상기 다수의 테스트 데이터 값들을 생성하는 단계; 및 데이터 저장 시스템 내에 상기 테스트 데이터 값들을 포함하는 테스트 데이터의 컬렉션을 저장하는 단계를 실행시킨다.
이러한 측면들은 다음의 하나 이상의 장점들을 포함할 수 있다.
테스트 데이터는 무작위로 생성될 수 있지만, 생산 데이터의 원본 세트의 여러 가지 특징이 복제되어 보다 실제적인 테스트가 가능하도록 하는 방법으로 생성될 수 있다. 기밀 정보는 테스트 데이터 내에 포함되지 않으면서, 통계 특성과 같은 특징과 원본 데이터로부터의 일부 실제 값들이 테스트 데이터 내에 포함될 수 있다. 초기 프로파일링 프로세스는 통계 특성과 실제 값들이 추출되어, 이후에 테스트 데이터를 생성하는 데에 사용되는 프로파일 정보 내에 정리될 수 있도록 한다. 기밀 정보가 프로파일 정보 내에 누출되지 않는 이상 테스트 데이터 내에도 기밀 정보는 없을 것이다. 프로파일 정보 내에 나타나 있는 실제 값들은 각 필드에서 가장 공통된 값들이고, 이것은 기밀 정보에 대응할 가능성이 거의 없다(기밀 정보는 대체로 주어진 고객에 특이(unique)하고 따라서 원본 데이터 내에서는 드물다).
본 발명의 다른 특징과 장점은 후술하는 설명과 특허청구범위로부터 명백해질 것이다.
도 1은 프로그램들을 개발하기 위해 생성된 테스트 데이터를 사용하는 예시적인 시스템이다.
도 2는 예시적인 테스트 데이터 생성 프로세스의 흐름도이다.
도 3a-3b는 통계 정보의 예시들이다.
도 3c는 확률 분포(probability distribution)의 모델의 예시이다.
도 1을 참조하면, 프로그램들을 개발하기 위해 테스트 데이터를 사용하기 위한 시스템(100)은, 다양한 저장 포맷(예를 들면, 데이터베이스 테이블들, 스프레드시트 파일들, 플랫 텍스트 파일(flat text files), 또는 메인프레임에 의해 사용되는 네이티브 포맷) 중 어느 하나의 포맷으로 각각 저장할 수 있는, 저장 장치들 또는 온라인 데이터 스트림들과 같은 데이터의 하나 이상의 소스를 포함하는 데이터 소스(102)를 포함한다. 테스트 데이터 생성을 위한 실행 환경(104)은 데이터 프로파일링 모듈(106) 및 테스트 데이터 생성 모듈(112)을 포함한다. 실행 환경(104)은 UNIX 운영체제와 같은 적절한 운영체제의 제어하에 하나 이상의 범용 컴퓨터 상에서 호스트될 수 있다. 예를 들면, 실행 환경(108)은 로컬(local)(예를 들면, SMP 컴퓨터들과 같은 멀티프로세서 시스템들), 또는 근거리로 분산된(예를 들면, 클러스터 또는 MPP로서 연결된 멀티프로세서들) 또는 원격으로 분산된(예를 들면, LAN 또는 WAN 네트워크들을 통해 연결된 멀티 프로세서들) 또는 그 조합 중 어느 하나의 형태로 된 다수의 CPU를 사용하는 컴퓨터 시스템의 구성을 포함하는 다중 노드 병렬 컴퓨팅 환경(multiple-node parallel computing environment)을 포함할 수 있다.
데이터 프로파일링 모듈(106)은 데이터 소스(102)로부터 데이터를 판독하고, 데이터 소스(102) 내에 나타나는 데이터 값들의 다양한 특징들을 기술하는 프로파일 정보(profile information)를 저장한다. 데이터 소스(102)를 제공하는 저장 장치들은 실행 환경(104)의 로컬에 있을 수도 있고(예를 들면, 실행 환경(104)(예를 들면, 하드 드라이브 108)을 구동하는 컴퓨터에 연결된 저장 매체에 저장되어 있을 수 있음), 또는 실행 환경(104)에 대해 원격에 있을 수 있다(예를 들면, 근거리 통신망 또는 광대역 통신망에 실행 환경(104)을 구동하는 컴퓨터와 통신하는 원격 시스템(예를 들면, 메인프레임(110) 상에 호스트될 수 있음).
테스트 데이터 생성 모듈(112)은 실행 환경(104)에 접속할 수 있는 데이터 저장 시스템(116)에 저장되는 테스트 데이터(114)의 컬렉션을 생성하기 위해 데이터 프로파일링 모듈(106)에 의해 생성된 프로파일 정보를 이용한다. 데이터 저장 시스템(116)은 개발자(120)가 테스트 데이터(114)를 사용하는 프로그램들을 개발하고 테스트할 수 있는 개발 환경(118)에 또한 접속될 수 있다. 그러나 데이터 소스(102) 내 원본 생산 데이터는 개발자(120)가 접속불가능한 상태로 유지되면서 안전하게 보관될 수 있다. 개발 환경(118)은, 일부 구현예들에 있어서, 정점들(vertices)(요소 또는 데이터세트)과 이들 정점들 사이의 방향성 링크들(작업 요소의 흐름을 나타냄)을 포함하는 데이터 흐름 그래프들로서 애플리케이션을 개발하기 위한 시스템이다. 예를 들면, 개발 환경은 참고문헌에 의해 이 문서에 포함되는 "그래프 기반 응용프로그램들을 위한 파라미터들의 관리(Managing Parameters for Graph-Based Applications,"라는 명칭의 미국공개특허 제2007/0011668호에서 보다 자세하게 설명되어 있다.
데이터 프로파일링 모듈(106)은 상이한 형태의 데이터베이스 시스템들을 포함하는 다양한 타입의 시스템들로부터의 데이터를 프로파일링할 수 있다. 이 데이터는, 널 값(null value)을 포함하여 각 필드("속성(attributes)" 또는 컬럼(columns)"이라고도 함)에 대한 값을 갖는 레코드로서 조직화된다. 프로파일 정보는 상이한 필드에 대해 개별의 프로파일(그 필드 내에 있는 값들을 기술하는 "필드 프로파일"로 불림)을 제공하도록 조직화된다. 데이터 소스로부터 먼저 데이터를 판독하는 때, 데이터 프로파일링 모듈(106)은, 전형적으로, 그 데이터 소스 내의 레코드들에 대한 몇몇 초기의 포맷 정보를 가지고 시작한다. 어떤 상황에서는, 데이터 소스의 레코드의 구조조차 초기에는 알려지지 않을 수도 있고 대신 데이터 소스의 분석 후에 결정될 수 있음에 주목하여야 한다. 레코드들에 대한 초기 정보는 이산 값을 나타내는 비트들의 수, 레코드 내의 필드들의 순서 및 비트들에 의해 나타내어지는 값들의 타입(예컨대, 스트링, 부호 붙임/무부호 정수(signed/unsigned integer))를 포함할 수 있다. 데이터 프로파일링 모듈(106)이 데이터 소스로부터 레코드들을 판독하면서, 그것은 주어진 필드 내의 값들을 반영하는 통계 및 기타 기술 정보(descriptive information)을 산출한다. 그런 다음, 데이터 프로파일링 모듈(106)은 그 통계 및 기술 정보를 테스트 데이터 생성 모듈(112)에 의한 액세스용으로 필드 프로파일의 형태로 저장한다. 주어진 필드에 대한 필드 프로파일 내의 통계는, 예컨대, 그 필드 내의 값들의 히스토그램, 그 필드 내에 있는 최대값, 최소값 및 평균값, 그리고 그 필드에 있는 가장 공통된 값과 가장 공통되지 않은 값의 샘플들을 포함할 수 있다. 프로파일 정보는 또한, 레코드의 총수나 유효 레코드 또는 무효 레코드의 총수와 같은, 데이터 소스(102) 내의 레코드의 다수의 필드들과 연관된 정보를 포함할 수 있다. 예컨대, 데이터 소스의 필드를 프로파일링하기 위한 프로세스에 대한 설명이, "데이터 프로파일링(Data Profiling)"이라는 명칭의 미국공개특허 제2005/0114369호에 기술되어 있고 여기에 참조로서 통합된다.
도 2는 예시적인 테스트 데이터 생성 프로세스(200)의 흐름도를 나타낸 것이다. 테스트 데이터 생성 모듈(112)은 테스트 데이터가 생성되는 대상인 제1 필드에 대해 저장된 필드 프로파일을 탐색한다(단계 202). 일 실시예에서, 필드 프로파일이 로딩된 후 필드 프로파일로부터 도출될 수 있는 추가 정보가 산출되어 저장될 수 있다. 선택적으로, 모듈(112)은 생성된 테스트 데이터 값들이 가져야 할 특징(예컨대, 이하에서 더욱 상세하게 설명되는 바와 같이, 테스트 데이터 값들 내에 나타나야 할 이산 값들의 수에 대한 정보)에 대한 사용자 입력을 탐색한다(단계 204). 모듈(112)은 해당 필드에 대해 탐색된 필드 프로파일 내의 통계에 기초하여 해당 필드에 대한 확률 분포(probability distribution)의 모델을 생성한다(단계 206). 이 모델은 도 3의 예를 참조하여 후술하겠지만 해당 필드 내에 나타나도록 허용된 값들의 범위에 대한 확률의 추정치를 포함한다.
상기 모듈(112)은 생성될 각각의 테스트 값마다 한번 테스트 데이터 생성기 함수를 호출한다(단계 208). 이 테스트 데이터 생성기 함수는, 이하에서 보다 상세히 설명하는 바와 같이, 입력 인자들(input arguments)로서 확률 분포의 모델 및 선택적 인자들 "인덱스(index)" 및 "리미트(limit)"를 취한다. 테스트 데이터 생성기 함수는 입력으로서 제공된 모델과 이하에서 설명하는 다른 특징들에 따라 테스트 데이터 값을 출력으로서 제공한다. 어떤 경우, 주어진 필드에 대해 생성될 테스트 데이터 값들의 수는, 프로파일 정보 내에 포함되어 있는, 원본 데이터 소스로부터의 프로파일링된 데이터 세트 내의 레코드들의 총수에 일치하도록 선택될 수 있다. 어떤 경우, 사용자는 특정 수의 값들을 생성할 수도 있으며, 이때의 특정 수는 사용자에 의해 직접 제시될 수 있다(예컨대, 단계 204). 상기 함수로부터 출력된 값들은 테스트 데이터(114)의 컬렉션으로서 제공되는 레코드들의 적절한 필드 내에 삽입된다. 모듈(112)은 추가의 필드가 처리되어야 하는지를 판별하고(단계 210), 만약 그렇다면 테스트 데이터 생성을 위한 과정의 반복을 행한다. 모듈(112)은 생성된 테스트 데이터(114)의 컬렉션을 데이터 저장 시스템(116) 내에 저장한다.
일 구현예에서, 주어진 필드에 대해 생성될 테스트 데이터 값들의 수는, 입력 레코드들의 스트림에서 수신된 각 레코드마다 한 번씩 테스트 e이터 생성기 함수를 호출하는 것에 의해 내재적으로 결정된다. 예컨대, 실행 환경(118)이 데이터흐름 그래프들로서 애플리케이션의 개발 및 실행을 지원하는 경우, 그 실행 환경은 데이터흐름 그래프들 그 자체들로서 데이터 프로파일링 모듈(106) 및 테스트 데이터 생성 모듈(112)을 구현할 수도 있다. 몇몇 구현예에서, 데이터 프로파일링 모듈은 데이터 소스(102)로부터의 생산 데이터를 N개의 개별 레코드들의 스트림으로서 판독하고, 모듈(112)에게 그 레코드들을 N개의 개별 레코드들의 스트림으로서 제공할 것이다. 모듈(112)은 원본 레코드들의 각 필드 내의 값들을 그들 필드에 대해 생성된 테스트 데이터 값들로 교체할 수 있을 것이다. 모듈(112)은, M개의 필드 각각에 대해 N개의 레코드들의 스트림의 처리를 각각 반복하여 행하고, M번의 반복 처리에서 각 처리마다 N개의 테스트 데이터 값을 생성한다. 상이한 반복 처리에서 테스트 데이터 값들은 서로 순차적으로 생성될 수 있거나, 또는 동시에 병렬로 생성될 수 있다. 일 구현예에서, 교체되는 원본 값들의 어떤 특성(예컨대, 지역명과 우편번호와 같은 필드들 간의 기능적 의존성)은 생성된 테스트 데이터 값들 내에 보존될 수 있다. 또, 일 구현예에서, 원본 레코드들의 필드들 중 일부가 각각의 모델에 따라 생성되는 테스트 데이터 값들과 교체될 대상으로서 선택될 수 있고, 나머지 필드들은 그들의 원본 값을 유지하거나, 예컨대 일정한 값(constant value) 또는 균일한 확률 분포에 따라 생성된 의사랜덤값(pseudorandom value)으로 교체되는 식의 다른 기법에 따라 처리될 수 있다.
테스트 데이터 생성기 함수는 특정 데이터 타입(예컨대, 스트링, 십진수(decimal), 날짜(date), 또는 날짜와 시간을 모두 포함하는 날짜-시간 타입)의 테스트 데이터 값을 돌려주고, 여기서 이 데이터 타입은 주어진 필드에 대한 필드 프로파일에 기초하여 결정된다. 테스트 데이터 값들은 테스트 데이터(114)의 컬렉션 내의 레코드들 내에 주어진 필드의 값들로서 수집된다. 테스트 데이터 값들은 모델을 사용하여 적어도 부분적으로 랜덤 선택에 기초하여(예컨대, 의사램덤 수 생성 기법을 사용하여) 생성되는데, 테스트 데이터(114) 내에 주어진 값이 나타나는 빈도가 테스트 데이터 생성기 함수에 입력으로서 제공된 모델에 의해 해당 값에 할당된 확률에 대응하도록 하여 생성된다. 테스트 데이터 생성기 함수는, 테스트 데이터(114)의 컬렉션을 처리하는 데이터 프로파일링 모듈(106)이 테스트 데이터(114)의 컬렉션을 생성하는 데에 사용된 프로파일 정보와 유사한 프로파일 정보를 제공하도록 하여 테스트 데이터 값들을 생성한다.
도 3a 및 3b는 필드 프로파일 내의 예시적인 통계 정보를 보여주고, 도 3c는 필드에 대한 확률 분포의 예시적인 모델(300)을 보여준다. 이 예에서의 테스트 데이터 값들은 그들 간에 정해진 순서를 가지는 일정 범위의 가능한 값들로부터 선택된다. 이 예에서 통계는, 해당 범위의 최대값과 최소값 사이의 10개의 십분위수(deciles)(이 예에서는 1과 10 사이의 실수들)의 각각에 속하는 값들의 비율이 얼마인지를 나타내는 십분위수 도선(plot of deciles)(도 3a)을 포함한다. 도 3a의 도표의 가로축은 각 십분위수에 대응하는 범위의 값들(0-1, 1-2, 등)을 나타내는 라벨이 붙어있다. 다른 예에서, 이 가로축은 모델링된 필드라면 어떤 것이든 그 필들에 대응하는 범위의 값들을 커버하도록 될 수 있다. 스트링을 포함하여 잠재적인 값들의 어떠한 도메인도 이러한 도표의 수치적 범위에 매핑될 수 있다(예컨대, 적절한 규칙에 따라 스트링 내의 글자를 숫자로 변환하는 것에 의해). 통계 정보는 빈번히 출현하는 값들의 리스트를 포함할 수 있다. 이 예에서, 빈번히 출현하는 값들의 리스트는 가장 빈번히 출현하는 값들의 상위 5개 값과 각 값의 출현횟수를 포함할 수 있다. 이 필드에 대한 확률 분포의 모델(300)은 십분위수 도선에 의해 제공되는 연속적인 정보와 빈번히 출현하는 값들의 리스트에 의해 제공되는 이산 정보 모두를 고려한다.
예컨대, 모델(300)은, 십분위수 도선에 의해 주어진 비율에 비례하는, 각 연속하는 십분위수 범위 내의 값들에 대한 연속하는 확률 밀도와, 빈번히 출현하는 값들의 리스트 내의 값들의 이산 확률로서, 상기 리스트 내의 출현 횟수에 비례하는, 이들 이산 값들의 이산 확률(예컨대 델타 함수(delta function))에 대응하는 이산 확률을 포함한다. 델타 함수의 높이에 대한 확률 분포의 연속적인 부분의 높이는 십분위수에 의해 나타내어진 원본 데이터 내의 값들의 수에 의존한다. 확률 분포의 연속하는 부분의 높이는, 각 십분위수 내에 속하는, 빈번히 출현하는 값들 내의 값들에 의한 총 출현횟수를 빼는 것에 의해 십분위수의 높이에 비해 상대적으로 낮아진다(이로써 이들 빈번히 출현하는 값들은 두 번 카운트되지 않는다). 만일 빈번히 출현하는 값이 십분위수 사이의 경계(예컨대, 도 3c에서 값 4.0) 상에 있으면, 그 값의 출현횟수는 그 값을 포함하는 십분위수로부터 빼진다. 예컨대, 그 값의 출현횟수는, 값들이 '이하"의 기준으로 십분위수에 할당되는 구현예에서는 좌측의 십분위수로부터 감산된다. 확률의 절대값은 분포의 적산이 일정하게 되도록 결정된다(즉, 모든 확률의 합은 1이다). 통계 정보의 다른 타입(예컨대, 프로파일링된 데이터의 필드 내에 나타나는 값들의 히스토그램)이 모델을 만들어 내기 위해 사용될 수 있다. 어느 범위 내에 속하는 값들의 수를 나타내는 통계 정보는 그 모델의 연속적인 부분으로 되고, 특정 값이 나타나는 빈도를 나타내는 통계 정보는 그 모델의 이산 부분이 된다(예컨대, 델타 함수).
프로파일링된 데이터의 확률 분포에 모델을 매칭시키는 것에 의해, 평균, 표준 편차, 공통 값들(예컨대, 해당 모델 내의 델타 함수에서의 값들), 최대값 및 최소값과 같은, 확률 분포에 의해 결정되는 생성된 테스트 데이터의 특징이 자동적으로 프로파일링된 데이터의 특징에 매칭된다.
확률 분포에 의해 결정되는 특징에 더하여, 테스트 데이터 생성기 함수는 필드에 대한 프로파일 정보에 더 가깝게 매칭되도록 하기 위해 추가의 특징을 고려할 수 있다. 이하는, 테스트 데이터 생성기 함수가 주어진 모델에 기초하여 랜덤 선택을 행하는 때에 고려할 수 있는 몇몇 예시적인 특징들이다.
* 무효 값들의 비율: 테스트 데이터 생성기 함수는 프로파일링된 데이터 내에서와 거의 같은 비율로 해당 필드 내에 무효 값들을 생성할 수 있다. 어떤 경우에, 필드 프로파일이 해당 필드에 대해 유효 값으로 성립하기 위한 유효성에 대한 상세사항을 포함한다면, 테스트 데이터 생성기 함수는 그러한 상세사항에 맞지 않는 무효 값을 선택할 수 있다. 다르게는, 어떠한 샘플 무효 값이나 유효성에 대한 상세사항도 없다면, 테스트 데이터 생성기 함수는 해당 필드에 대한 데이터 타입에 대해 유효하지 않은 값을 선택할 수 있다(예컨대, 십분위수 내에 있는 글자나 부적합한 형식의 날짜).
* 이산 값들의 비율: 테스트 데이터 생성기 함수는 프로파일링된 데이터 내에서와 거의 같은 비율(즉, 값들의 총수에 대한 이산 값들의 수)로 해당 필드 내에 이산 값들을 생성할 수 있다. 이를 위해, 테스트 데이터 생성기 함수는 선택적인 "인덱스(index)" 및 "리미트(limit)" 인자들(arguments)을 입력으로 받아들인다. 인덱스 인자는 테스트 데이터 생성기 함수의 각 호출에 대해 상이한 음수가 아닌 정수이고(예컨대, 각 레코드마다 증분하는 정수), 리미트 인자는 인덱스 인자로서 제공되었거나 제공될 값보다 크거나 같다. 리미트 인자는 어느 한 필드에 대해 테스트 데이터 값을 생성하는 초기에 한번 정해질 수 있고, 사용자 입력(예컨대 단계 204)에 기초하여 제공될 수 있다. 예컨대, 리미트 인자의 값은, 사용자에 의해서는 미리 알려질 수 있지만 테스트 데이터 생성기 함수를 실행시키는 프로세서(들)에 의해서는 미리 알려질 수 없는, 사용자가 요청하게 될 레코드의 수로 설정될 수 있다.
* 최대 길이 및 최소 길이: 테스트 데이터 생성기 함수는 프로파일링된 데이터 내에서와 같은 최대 길이 및 최소 길이를 가지는 값들을 생성할 수 있다. 예컨대, 스트링의 경우, 그 길이는 글자의 수에 대응하고, 숫자의 경우 그 길이는 소수자리 뒤의 자릿수(digit)를 포함하여 자릿수로 정의될 수 있다.
* 관찰 대상 글자: 테스트 데이터 생성기 함수는, (필드 프로파일 내에서 나타내어지는 대로) 스트링과 같이 프로파일링된 데이터 내에 나타나는 글자만으로 구성된 값들을 생성할 수 있다.
출력으로서 테스트 데이터 값들 결정하기 위해 테스트 데이터 생성기 함수를 위해 사용될 수 있는 기법 중 일례로는, 리미트 인자 L의 주어진 값에 대해, 인덱스 인자 I가 0에서부터 L-1까지 되며, 0에서 L-1까지의 I 값 모두의 의사랜덤 순열(permutation)을 생성하고 이들 값들이 0에서 1까지의 범위 내에 들어가도록(예컨대 L로 나누는 것에 의해) 이들 값들을 일정 비율로 축척하여 조정한다. 이 방법에서는, 각각의 입력 값 I가 모델링된 확률 분포의 대응하는 부분을 정의하는 숫자들의 상이한 범위에 매핑될 수 있다. 예컨대, L=10인 경우, 0부터 9까지의 10개의 인덱스 값이 순열을 이용하여 의사램덤하게(pseudorandomly) 0와 1 사이의 10개의 상이한 범위들(즉, 0-0.1, 0.1-0.2, 등)에 매핑된다. 확률 분포는 동일한 확률의 대응하는 개수의 슬라이스(본 예에서는 10개의 슬라이스)로 잘게 쪼개지고, 선택된 슬라이스 내의 어딘가에서의 출력 값은 출력 테스트 데이터 값으로서 선택된다. 테스트 데이터 생성기 함수는 슬라이스의 수를 줄이고 한번 이상 상이한 슬라이스 내에 값들을 출력하는 것에 의해 출력되는 특유 값의 수를 고려한다. 예컨대, 만일 모든 값들의 총수의 절반에 해당하는 수의 특유 값이 있다면, 각 값은 두번 출력된다. 다양한 기법들 중 어느 것이든 순열을 생성하기 위해 사용될 수 있다(예컨대, "Advances in Cryptology -EUROCRYPT'92 (Letcture Notes in Computer Science)"에 실린 Ueli Maurer의 "A simplified and generalized treatment of Luby-Rackoff pseudorandom permutation genrators"(베를린, 스프린저 베르라그, vol 658, pp239-255, 1992)(본 명세서에 참조로 통합된다)에 기술된 루비-랙오프(Ruby-Rackoff) 타입의 알고리즘에 기초한 기법).
전술한 테스트 데이터 생성 기법은 컴퓨터 상에서 실행시키기 위해 소프트웨어를 이용하여 구현될 수 있다. 예컨대, 소프트웨어는, 각각이 적어도 하나의 프로세서, 적어도 하나의 데이터 저장 시스템(휘발성 및 비휘발성 메모리 및/또는 저장 소자를 포함함), 적어도 하나의 입력 장치 또는 포트, 및 적어도 하나의 출력 장치 또는 포트를 포함하는 하나 이상의 프로그래밍되었거나 프로그래밍 가능한 컴퓨터 시스템(분산, 클라이언트/서버, 또는 그리드 등의 여러 아키텍쳐의 것일 수 있다) 상에서 실행되는 하나 이상의 컴퓨터 프로그램으로 과정들을 구성한다. 소프트웨어는, 예컨대 연산 그래프의 설계 및 구성에 관련된 다른 서비스를 제공하는 더 큰 프로그램의 하나 이상의 모듈을 구성한다. 그래프의 노드들과 요소들은 컴퓨터 판독 가능한 기록 매체 내에 저장된 데이터 구조로서 구현되거나 데이터 저장소에 저장된 데이터 모델에 부합하는 다른 구조로 된 데이터로서 구현될 수 있다.
소프트웨어는 CD-ROM과 같은 저장 매체 상에 제공될 수 있으며, 범용 또는 특별 목적용 프로그래머블 컴퓨터에 의한 판독되거나 또는 그것이 실행되는 컴퓨터로 네트워크의 통신 매체를 통해 전달(전파 신호로 부호화되어)될 수 있다. 모든 기능들은 특별 목적용 컴퓨터 상에서 또는 코프로세서와 같은 특별 목적용 하드웨어를 이용하여 실행될 수 있다. 소프트웨어는, 상이한 컴퓨터에 의해 그 소프트웨어에 의해 특정되는 연산의 상이한 부분이 실행되는 분산 방식으로 구현될 수 있다. 각각의 그러한 컴퓨터 프로그램은, 범용 또는 특별 목적용 프로그래머블 컴퓨터에 의해 판독가능한 저장 매체 또는 장치(예컨대, 고체 상태(solid state) 메모리 또는 매체, 또는 자기 또는 광학 매체) 상에 저장되거나 또는 그 저장 매체 또는 장치로 다운로드되는 것이 바람직하고, 이로써 저장 매체 또는 장치가 그것에 기술된 과정들을 실행하기 위해 컴퓨터 시스템에 의해 판독되는 때에 그 컴퓨터를 구성하고 작동시킨다. 본 발명의 시스템은 또한, 컴퓨터 프로그램과 함께 구성된 컴퓨터 판독 가능한 저장 매체로서 구현될 수 있으며, 그렇게 구성된 저장 매체는 컴퓨터 시스템으로 하여금 여기에 기술된 기능을 실행하기 위해 미리 정의된 특정의 방법으로 동작하도록 한다.
본 발명의 많은 실시예들이 기술되었다. 그럼에도 발명의 기술적 사상 및 범위를 벗어나지 않는 범위 내에서 다양하게 변경될 수 있음을 이해해야 한다. 예를 들면, 상술한 일부 단계들의 순서는 한정되지 않고 따라서 그 설명과 다른 순서로 실행될 수 있다.
전술한 설명은 후술하는 특허청구범위에 의해 정의되는 발명의 예시를 보여주는 것이며 그 발명의 권리범위를 한정하기 위한 것이 아니다. 예를 들면 상술한 많은 기능 단계들은 실질적으로 전체 프로세싱에 영향을 미치지 않으면 다른 순서로 실행될 수 있다. 다른 구현예들도 후술하는 특허청구범위들의 범위 내에 있다.

Claims (1)

  1. 발명의 상세한 설명에 기재된, 또는 도면에 도시된 바와 같은 장치.
KR1020157008165A 2009-06-10 2010-06-09 테스트 데이터의 생성 KR20150040384A (ko)

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

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020127000470A Division KR101660853B1 (ko) 2009-06-10 2010-06-09 테스트 데이터의 생성

Publications (1)

Publication Number Publication Date
KR20150040384A true KR20150040384A (ko) 2015-04-14

Family

ID=43307221

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020157008165A KR20150040384A (ko) 2009-06-10 2010-06-09 테스트 데이터의 생성
KR1020127000470A KR101660853B1 (ko) 2009-06-10 2010-06-09 테스트 데이터의 생성

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020127000470A KR101660853B1 (ko) 2009-06-10 2010-06-09 테스트 데이터의 생성

Country Status (8)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102276290B1 (ko) 2020-04-10 2021-07-12 숭실대학교산학협력단 대용량 테스트 데이터 생성장치

Families Citing this family (48)

* 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
CN105917315B (zh) * 2013-12-18 2020-05-01 起元技术有限责任公司 一种用于生成数据记录的内容的方法和计算系统
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
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
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
US10757133B2 (en) 2014-02-21 2020-08-25 Intuit Inc. Method and system for creating and deploying virtual assets
US9866581B2 (en) 2014-06-30 2018-01-09 Intuit Inc. Method and system for secure delivery of information to computing environments
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
KR102356771B1 (ko) 2014-09-08 2022-01-27 아브 이니티오 테크놀로지 엘엘시 데이터 구동 테스트 프레임워크
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 北京京东尚科信息技术有限公司 测试数据的生成方法、装置和计算机可读存储介质
WO2019073912A1 (ja) * 2017-10-13 2019-04-18 日本電信電話株式会社 擬似データ生成装置、その方法、およびプログラム
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
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 中国电信股份有限公司 测试数据生成方法及装置、存储介质及电子设备
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
CN102982065B (zh) * 2003-09-15 2016-09-21 起元科技有限公司 数据处理方法、数据处理装置及计算机可读存储介质
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
KR101889120B1 (ko) 2011-01-28 2018-08-16 아브 이니티오 테크놀로지 엘엘시 데이터 패턴 정보 생성
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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102276290B1 (ko) 2020-04-10 2021-07-12 숭실대학교산학협력단 대용량 테스트 데이터 생성장치

Also Published As

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

Similar Documents

Publication Publication Date Title
KR101660853B1 (ko) 테스트 데이터의 생성
US10789054B2 (en) Methods, systems, apparatuses and devices for facilitating change impact analysis (CIA) using modular program dependency graphs
KR101983206B1 (ko) 데이터 레코드 선택
CN106663038B (zh) 用于机器学习的特征处理配方
CN106575246B (zh) 机器学习服务
US10318882B2 (en) Optimized training of linear machine learning models
US10282197B2 (en) Open application lifecycle management framework
CN107430611B (zh) 过滤数据沿袭图
CN106062751B (zh) 对与数据类型有关的数据剖析操作的管理
US20100318499A1 (en) Declarative framework for deduplication
JP2017507392A (ja) データベースキーの識別
US9317409B2 (en) Creating benchmark graph data
US8650180B2 (en) Efficient optimization over uncertain data
Martínez et al. Efficient model similarity estimation with robust hashing
Qian Big data Bayesian linear regression and variable selection by normal-inverse-gamma summation
EP2420967A1 (en) Generating assessment data
CN112749197B (zh) 数据分片刷新方法、装置、设备及存储介质
Kennedy et al. Jigsaw: Efficient optimization over uncertain enterprise data
US11645043B2 (en) Method and system for calculating minwise hash signatures from weighted sets
Zhang et al. εktelo: A framework for defining differentially private computations
CN114610809A (zh) 电网数据结构化处理方法及装置
Gandy Borromean: Preserving Binary Node Attribute Distributions in Large Graph Generations
Liso Tensor Based Monitoring of Large-Scale Network Traffic

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application