# US 2018/0011464 A1 · Self-adjusting test time estimation

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2018/0011464 A1
- Document ID: US20180011464A1
- Status: Published application
- Kind: A1
- Application number: 15/710,383
- Filed: 2017-09-20
- Published: 2018-01-11
- Earliest claimed: 2014-08-08
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: David Monczynski; Kaoru Stabnow; Jason Yue
- Web page: https://patentgrep.com/patent/US20180011464A1

## CPC

- G05B 19/0428: {Safety, monitoring (G05B19/0423 takes precedence)}
- G05B 15/02: electric
- G05B 19/41875: {characterised by quality surveillance of production}
- G06F 11/00: Error detection; Error correction; Monitoring (error detection, correction or monitoring in information storage based on relative movement between record carrier and transducer G11B20/18; monitoring, i.e. supervising the progress of recording or reproducing G11B27/36; in static stores G11C29/00)
- G05B 2219/14075: Test of interface
- Y02P 90/02: Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
- G05B: CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS (systems for controlling or regulating non-electric variables G05D; systems for regulating electric or magnetic variables G05F; control devices or systems insofar as characterised by mechanical features only G05G)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- Y02P: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS

## Abstract

A test case is executed on a product using a hardware machine, the product being configured in manufacturing according to a configuration, the test case being related to an estimation function. A set of data points resulting from the executing is collected. Using the estimation function, an estimated time needed for the executing is computed. Using the set of data points, an actual time used for the executing is computed. A determination is made whether a difference between the estimated time and the actual time is within a tolerance. Responsive to the difference not being within the tolerance, the estimation function is adjusted using the set of data points and at least one other set of data points, the other set of data points being generated by executing the test case on a second product configured according to a second configuration at a previous time.

## Claims

### Claim 1

A method for self-adjusting test time estimation, the method comprising:
executing, using a hardware machine, a test case on a product, the product being configured in manufacturing according to a configuration, the test case being related to an estimation function;
collecting a set of data points resulting from the executing;
computing, using the estimation function, an estimated time needed for the executing;
computing, using the set of data points, an actual time used for the executing;
determining whether a difference between the estimated time and the actual time is within a tolerance; and
adjusting, responsive to the difference not being within the tolerance, the estimation function, the adjusting using the set of data points and at least one other set of data points, the other set of data points being generated by executing the test case on a second product configured according to a second configuration at a previous time.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
generating a data point in the set of data points by encountering a data point marker located in the test case, wherein the data point marker outputs an indication of a time at which the data point marker was encountered during the executing.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
computing the estimated time using a set of time components, wherein the estimated time comprises the set of time components, and wherein each time component in the set of time components has a corresponding expression, each corresponding expression participating in the estimation function.

### Claim 4 (depends on 3)

The method of claim 3, further comprising:
evaluating, for a first time component in the set of time components, a corresponding first expression according to the configuration, wherein the first expression is dependent on the configuration.

### Claim 5 (depends on 3)

The method of claim 3, further comprising:
evaluating, for a second time component in the set of time components, a corresponding second expression, wherein the second expression is independent of the configuration.

### Claim 6 (depends on 3)

The method of claim 3, further comprising:
selecting, from a set of historical records, a subset of historical records, a record in the subset of the historical records comprising an actual value of a time component in the set of time components when the test case was previously executed relative to the second configuration, the record including a data point from the other set of data points.

### Claim 7 (depends on 6)

The method of claim 6, further comprising:
comparing the configuration with the second configuration of the record;
determining that the configuration matches the second configuration within a threshold degree; and
selecting the record into the subset of historical records responsive to the configuration matching the second configuration within the threshold degree.

### Claim 8 (depends on 6)

The method of claim 6, further comprising:
comparing the configuration with a third configuration of a second record;
determining that the configuration does not match the third configuration within the threshold degree; and
omitting selecting the second record into the subset of historical records responsive to the configuration not matching the third configuration within the threshold degree.

### Claim 9 (depends on 1)

The method of claim 1, wherein the test case is a portion of a second test case, and wherein the configuration specifies a portion of the product.

### Claim 10 (depends on 1)

The method of claim 1, wherein the second configuration is a baseline configuration, further comprising:
creating an initial estimation function related to the test case using the other set of data points, wherein the estimation function is the initial estimation function, wherein the adjusting uses the set of data points and the other set of data points in a curve-fitting algorithm to change the initial estimation function into a second estimation function, wherein the second estimation function causes the difference between the estimated time and the actual time to be within a tolerance.

### Claim 11 (depends on 1)

The method of claim 1, wherein the test case comprises computer usable instructions and the hardware machine comprises a processor and a memory, wherein the computer usable instructions are executed using the processor and the memory.

### Claim 12

A computer usable program product comprising a computer readable storage device including computer usable code for self-adjusting test time estimation, the computer usable code comprising:
computer usable code for executing, using a hardware machine, a test case on a product, the product being configured in manufacturing according to a configuration, the test case being related to an estimation function;
computer usable code for collecting a set of data points resulting from the executing;
computer usable code for computing, using the estimation function, an estimated time needed for the executing;
computing, using the set of data points, an actual time used for the executing;
computer usable code for determining whether a difference between the estimated time and the actual time is within a tolerance; and
computer usable code for adjusting, responsive to the difference not being within the tolerance, the estimation function, the adjusting using the set of data points and at least one other set of data points, the other set of data points being generated by executing the test case on a second product configured according to a second configuration at a previous time.

### Claim 13 (depends on 12)

The computer usable program product of claim 12, further comprising:
computer usable code for generating a data point in the set of data points by encountering a data point marker located in the test case, wherein the data point marker outputs an indication of a time at which the data point marker was encountered during the executing.

### Claim 14 (depends on 12)

The computer usable program product of claim 12, further comprising:
computer usable code for computing the estimated time using a set of time components, wherein the estimated time comprises the set of time components, and wherein each time component in the set of time components has a corresponding expression, each corresponding expression participating in the estimation function.

### Claim 15 (depends on 14)

The computer usable program product of claim 14, further comprising:
computer usable code for evaluating, for a first time component in the set of time components, a corresponding first expression according to the configuration, wherein the first expression is dependent on the configuration.

### Claim 16 (depends on 14)

The computer usable program product of claim 14, further comprising:
computer usable code for evaluating, for a second time component in the set of time components, a corresponding second expression, wherein the second expression is independent of the configuration.

### Claim 17 (depends on 14)

The computer usable program product of claim 14, further comprising:
computer usable code for selecting, from a set of historical records, a subset of historical records, a record in the subset of the historical records comprising an actual value of a time component in the set of time components when the test case was previously executed relative to the second configuration, the record including a data point from the other set of data points.

### Claim 18 (depends on 12)

The computer usable program product of claim 12, wherein the computer usable code is stored in a computer readable storage medium in a data processing system, and wherein the computer usable code is transferred over a network from a remote data processing system.

### Claim 19 (depends on 12)

The computer usable program product of claim 12, wherein the computer usable code is stored in a computer readable storage medium in a server data processing system, and wherein the computer usable code is downloaded over a network to a remote data processing system for use in a computer readable storage medium associated with the remote data processing system.

### Claim 20

A data processing system for self-adjusting test time estimation, the data processing system comprising:
a storage device including a storage medium, wherein the storage device stores computer usable program code; and
a processor, wherein the processor executes the computer usable program code, and wherein the computer usable program code comprises:
computer usable code for executing, using a hardware machine, a test case on a product, the product being configured in manufacturing according to a configuration, the test case being related to an estimation function;
computer usable code for collecting a set of data points resulting from the executing;
computer usable code for computing, using the estimation function, an estimated time needed for the executing;
computing, using the set of data points, an actual time used for the executing;
computer usable code for determining whether a difference between the estimated time and the actual time is within a tolerance; and
computer usable code for adjusting, responsive to the difference not being within the tolerance, the estimation function, the adjusting using the set of data points and at least one other set of data points, the other set of data points being generated by executing the test case on a second product configured according to a second configuration at a previous time.
