# US 10,162,326 B2 · 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 10,162,326 B2
- Document ID: US10162326B2
- Status: Granted
- Kind: B2
- Application number: 15/710,383
- Filed: 2017-09-20
- Published: 2018-01-11
- Granted: 2018-12-25
- 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/US10162326B2

## 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 in a manufacture of a product, the method comprising:
executing, using a hardware machine, a test case on the product, wherein the product being configured in manufacturing according to a first configuration, and wherein 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;
adjusting, responsive to the difference not being within the tolerance, the estimation function, wherein the adjusting using the set of data points and at least one other set of data points, and wherein 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;
computing the estimated time using a set of time components, wherein the estimated time comprises the set of time components, wherein each time component in the set of time components has a corresponding expression, and wherein each corresponding expression participating in the estimation function;
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, wherein the record including a data point from the other set of data points;
comparing the first configuration with the second configuration of the record;
determining that the first configuration matches the second configuration within a threshold degree; and
selecting the record into the subset of historical records responsive to the first configuration matching the second configuration within the threshold degree.

### 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:
evaluating, for a first time component in the set of time components, a corresponding first expression according to the first configuration, wherein the first expression is dependent on the first configuration.

### Claim 4 (depends on 1)

The method of claim 1, 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 first configuration.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
comparing the first configuration with a third configuration of a second record;
determining that the first 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 first configuration not matching the third configuration within the threshold degree.

### Claim 6 (depends on 1)

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

### Claim 7 (depends on 1)

The method of claim 1, wherein the second configuration is a baseline configuration, further comprising:
creating an it 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 8 (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 9

A computer usable program product comprising a computer readable storage medium including computer usable code for self-adjusting test time estimation in a manufacture of a product, which when executed by a processor causes operations comprising:
executing, using a hardware machine, a test case on the product, wherein the product being configured in manufacturing according to a first configuration, and wherein 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 noosed 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, wherein the adjusting using the set of data points and at least one other set of data points, and wherein 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;
computing the estimated time using a set of time components, wherein the estimated time comprises the set of time components, wherein each time component in the set of time components has a corresponding expression, and wherein each corresponding expression participating in the estimation function;
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, wherein the record including a data point from the other set of data points;
comparing the first configuration with the second configuration of the record;
determining that the first configuration matches the second configuration within a threshold degree; and
selecting the record into the subset of historical records responsive to the first configuration matching the second configuration within the threshold degree.

### Claim 10 (depends on 9)

The computer usable program product of claim 9, 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 11 (depends on 9)

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

### Claim 12 (depends on 9)

The computer usable program product of claim 9, the operations 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 first configuration.

### Claim 13 (depends on 9)

The computer usable program product of claim 9, 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 14 (depends on 9)

The computer usable program product of claim 9, 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 15

A data processing system for self-adjusting test time estimation in a manufacture of a product, 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 the product, wherein the product being configured in manufacturing according to a first configuration, and wherein 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;
computer usable code for 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;
computer usable code for adjusting, responsive to the difference not being within the tolerance, the estimation function, wherein the adjusting using the set of data points and at least one other set of data points, and wherein 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;
computer usable code for computing the estimated time using a set of time components, wherein the estimated time comprises the set of time components, wherein each time component in the set of time components has a corresponding expression, and wherein each corresponding expression participating in the estimation function;
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, wherein the record including a data point from the other set of data points;
computer usable code for comparing the first configuration with the second configuration of the record;
computer usable code for determining that the first configuration matches the second configuration within a threshold degree; and
computer usable code for selecting the record into the subset of historical records responsive to the first configuration matching the second configuration within the threshold degree.
