IP Library › Granted Patent US 11,288,259
Granted Patent B2
US 11,288,259 · App. 16/694,910 · Granted Mar 29, 2022

Validation and recommendation engine

Inventors: Daniel Mercier (Toronto, CA); Anthony Ruto (London, GB)
Assignee: AUTODESK, INC.
G06F16/2365G06N5/04
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,288,259
App. No.
16/694,910
Granted
Mar 29, 2022
Kind
B2
Abstract

One embodiment of the present invention sets forth a technique for validating a set of input data used by a software application, the method comprising: determining a first validation class for a first portion of the set of input data; determining a first validation operation to be performed on the first portion of the set of input data based on the first validation class; causing the first validation operation to be performed on the first portion of the set of input data; determining that the first validation operation is unsuccessful; and generating a validation report indicating that the set of input data includes an error.

Claims (54)

1. A computer-implemented method for validating a set of input data used by a software application, the method comprising:

determining an application model associated with the software application that is to receive the set of input data after the set of input data is validated;

determining a first validation class for a first portion of the set of input data based on the application model;

determining a first validation operation to be performed on the first portion of the set of input data based on the first validation class;

causing the first validation operation to be performed on the first portion of the set of input data;

determining that the first validation operation is unsuccessful; and

generating a validation report indicating that the set of input data includes an error.

2. The computer-implemented method of claim 1 , further comprising:

determining a second validation class for a second portion of the set of input data;

determining a second validation operation to be performed on second portion of the set of input data based on the second validation class; and

causing the second validation operation to be performed on the second portion of the set of input data.

3. The computer-implemented method of claim 2 , wherein determining the second validation operation comprises determining the second validation operation in response to determining the first validation class.

4. The computer-implemented method of claim 2 , wherein determining the first validation class and the second validation class comprises analyzing the set of input data with a semantic reasoner.

5. The computer-implemented method of claim 2 , wherein generating the validation report comprises generating the validation report based on a first outcome of the first validation operation and a second outcome of the second validation operation.

6. The computer-implemented method of claim 2 , wherein the first validation class and the second validation class are included in the application model associated with the software application.

7. The computer-implemented method of claim 6 , further comprising loading the set of input data into the application model, wherein the first portion of the set of input data comprises a first instance of the first validation class and the second portion of the set of input data comprises a second instance of the second validation class.

8. The computer-implemented method of claim 7 , wherein initiating validation of the first validation class is logically dependent on completion of validation of the first validation class.

9. The computer-implemented method of claim 1 , wherein causing the first validation operation to be performed on at least a portion of the set of input data comprises:

determining a first microservice to perform the first validation operation; and

causing the first microservice to perform the first validation operation on the first portion of the set of input data.

10. The computer-implemented method of claim 9 , wherein the first microservice performs the first validation operation while executed on one of a first computing device on which the determining the validation class is executed or a second computing device that is remote from the first computing device.

11. The computer-implemented method of claim 9 , wherein the first validation operation comprises a preprocessing operation that generates a value associated with the set of input data.

12. The computer-implemented method of claim 11 , further comprising causing a second validation operation to be performed on the first portion of the set of input data based on the value associated with the at first portion of the set of input data.

13. The computer-implemented method of claim 1 , wherein causing the first validation operation to be performed on the first portion of the set of input data comprises executing a plurality of validation rules specific to the first validation class.

14. The computer-implemented method of claim 1 , further comprising:

determining that the first validation operation is successful; and

causing the software application to generate a validation report indicating that the set of input data includes no errors.

15. The computer-implemented method of claim 1 , wherein causing the first validation operation to be performed comprises causing a validation rule specific to the first validation class to be executed.

16. One or more non-transitory computer-readable media storing instructions that, when executed by one or more processors, cause the one or more processors to perform the steps of:

determining an application model associated with a software application that is to receive a set of input data after the set of input data is validated;

determining a first validation class for at least a portion of the set of input data based on the application model;

causing a first validation operation to be performed on the at least a portion of the set of input data;

determining that the first validation operation is unsuccessful; and

generating a validation report indicating that the set of input data includes an error.

17. The one or more non-transitory computer-readable media of claim 16 , further comprising determining the first validation operation to be performed based on the first validation class by selecting one or more validation rules from a plurality of validation rules associated with the application model based on the first validation class.

18. The one or more non-transitory computer-readable media of claim 17 , wherein causing the first validation operation to be performed on the at least a portion of the set of input data further comprises executing the one or more validation rules.

19. The one or more non-transitory computer-readable media of claim 16 , wherein the first validation operation is associated with a domain feature of the application model.

20. The one or more non-transitory computer-readable media of claim 16 , wherein causing the first validation operation to be performed on the at least a portion of the set of input data comprises:

determining a first process or set of microservices that should perform at least a portion of the first validation operation; and

causing the first process or set of microservices to perform the at least a portion of the first validation operation on the at least a portion of the set of input data.

21. The one or more non-transitory computer-readable media of claim 20 , wherein the at least a portion of the first validation operation comprises a preprocessing operation that may generate a value associated with the at least a portion of the set of input data.

22. The one or more non-transitory computer-readable media of claim 21 , wherein causing the at least a portion of the first validation operation to be performed on the at least a portion of the set of input data further comprises executing at least one validation rule specific to the application model based on the value associated with the at least a portion of the set of input data.

23. The one or more non-transitory computer-readable media of claim 22 , further comprising:

determining that the first validation operation is successful; and

causing the software application to generate a validation report indicating that the set of input data include no errors.

24. The one or more non-transitory computer-readable media of claim 16 , wherein causing first validation operation to be performed comprises causing a validation rule specific to the application model to be executed.

25. A system, comprising:

a memory that stores instructions; and

at least one processor that is coupled to the memory and, upon executing the instructions, performs the steps of:

determining an application model associated with a software application that is to receive a set of input data after the set of input data is validated;

determining a first validation class for at least a portion of the set of input data based on the application model;

causing a first validation operation to be performed on the at least a portion of the set of input data;

determining that the first validation operation is unsuccessful; and

generating a validation report indicating that the set of input data includes an error.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2020
From: MERCIER, DANIEL; RUTO, ANTHONY
To: AUTODESK, INC.
Reel/Frame 052780/0799 →
Continuity (2)
Provisional Application 62880358 · Jul 30, 2019
Related Publication 20210034603A1 · Feb 4, 2021