Patent ID: 11861734
Assignee: INTUIT INC.
Field: IT methods for management (Electrical engineering)
Classification: CPC G | IPC G

Claim 0:
1. A method implemented by a server computing device that automatically calculates a tax return with a computerized tax return preparation system during preparation of an electronic tax return for a preparer operating a computer in communication with the server over a network, the server including a memory and a processor, the computerized tax return preparation system comprising a shared data store, a calculation engine, a rule-based logic agent and a user interface controller, the computerized tax return preparation system being stored as computer-executable instructions in the memory of the server, the method comprising:
by executing the calculation engine of the computerized tax return preparation system stored in the server, reading first stored taxpayer-specific data stored in the shared data store of the computerized tax preparation system, determining first calculated data based at least in part upon calculations performed using the first stored taxpayer-specific data and a calculation graph, the calculation graph representing a calculation graph data structure and comprising a plurality of nodes, each node representing a tax data input, a tax concept, a function or a tax calculation, where at least one node of the calculation graph is interconnected to another node of the calculation graph by a tax gist function, and a plurality of calculation paths connecting respective nodes, respective calculation paths defining respective data dependencies between respective nodes, a first node having a data dependency on another node based on a determination at the first node depends on a value of the another node, writing the first calculated data to the shared data store resulting in second stored taxpayer-specific data comprising the first calculated data;
by executing the rule-based logic agent of the computerized tax preparation system stored in the server, reading, from the shared data store, the second stored taxpayer-specific data, determining at least one question of at least one topic of the electronic tax return that remains unanswered based at least in part upon the second stored taxpayer-specific data and a decision table derived from a completeness graph comprising a plurality of rows defining respective rules and a plurality of columns defining respective topic questions, generating at least one non-binding suggestion including the at least one unanswered question that is presented to a display of the computer operated by the preparer of the electronic tax return providing the at least one non-binding suggestion to the user interface controller of the computerized tax preparation system stored in the server;
by executing the user interface controller, presenting, through the display of the computer to the preparer of the electronic tax return, a computer generated interview screen involving the unanswered question of the non-binding suggestion, receiving, through the generated interview screen, a response from the computer to the unanswered question, and writing the response to the shared data store that updates the second stored taxpayer-specific data resulting in third stored taxpayer-specific data, where a portion of the third stored taxpayer-specific data is new taxpayer-specific data that was not previously utilized to determine the first calculated data; and
by executing the calculation engine, reading, from the shared data store, at least the new taxpayer-specific data of the third stored taxpayer-specific data, determining the second calculated data by only performing those calculations at nodes in the calculation graph having a direct or indirect data dependency on a node that changed as a result of the new taxpayer-specific data, writing the second calculated data to the shared data store resulting in fourth stored taxpayer-specific data; using the tax gist function to determine a reason why there is, or is not, a difference between the first calculated data and the second calculated data; and presenting, through the display of the computer, the reason why there is, or is not, a difference to the preparer.