Systems and methods for determining impact chains from a tax calculation graph of a tax preparation system
First Claim
1. A system for preparing an electronic tax return in which the process is individualized for a particular taxpayer, comprising:
- a computing device having a computer processor and memory;
a shared data store in communication with the computing device, the data store configured to store user-specific tax data therein;
a tax preparation software application executable by the computing device, the tax preparation software application having a tax calculation engine, a tax calculation graph, and an impact chain engine, a tax logic agent, a plurality of decision tables, and a user interface manager;
the tax calculation engine configured to read the user-specific tax data from the shared data store and write calculated tax data to the shared data store, the tax calculation engine configured to perform a plurality of tax calculation operations based on a tax calculation graph comprising a plurality of nodes including one or more of input nodes, functional nodes, and function nodes; and
the tax calculation graph comprising a plurality of calculation paths wherein each calculation path connects a plurality of nodes which are data dependent such that a node is connected to another node if the node depends on the other node; and
the impact chain engine configured to analyze the tax calculation graph and determine an impact chain for each of a plurality of nodes which are determined from the tax calculation graph, wherein an impact chain for a respective node consists of one of (a) each of the other nodes which are affected by the respective node, or (b) each of the other nodes which affect the respective node, the impact chain engine further configured to identify a first node in the impact chain which is relevant to a particular taxpayer based on the taxpayer'"'"'s tax data stored in the shared data store and determine respective relevancy scores for one or more tax questions based on the impact chain;
the plurality of decision tables collectively representing a completion graph for completing all required data fields for computing a tax return, each decision table representing a plurality of columns wherein each column corresponds to a tax question and a plurality of rows wherein each row corresponds to a completion path for a tax rule, thereby forming a plurality of cells with each cell corresponding to a particular row and column, each cell in a respective row having a logic operator corresponding to the tax question of each cell'"'"'s respective column such that completion of each respective row is determined by the logic operators in the respective row;
the tax logic agent configured to;
access the user-specific tax data in a shared data store for the particular taxpayer;
analyze the user-specific tax data for the particular taxpayer and traverse the decision tables to determine one or more suggested tax questions for obtaining missing tax data required to complete the tax return; and
determine a relevancy ranking for each of the suggested tax questions using the relevancy scores for the one or more tax questions;
the user interface manager configured to;
receive the suggested tax questions and relevancy rankings, determine a tax question to be presented to a user for completing a tax return and generating an interview screen having the tax question to be presented to a user based at least in part upon the suggested tax matters and the relevancy rankings of the tax return preparation system based at least in part upon the suggested tax matters and the relevancy rankings, the user interface manager being detached from the tax logic agent such that the interview screen is not rigidly defined by the tax logic agent.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems, methods and articles of manufacture for determining impact chains from a calculation graph for calculating taxes. The system includes a computing device, a data store in communication with the computing device and a tax preparation software application executable by the computing device. The tax preparation software application has a tax calculation engine, a tax calculation graph, and an impact chain engine. The tax calculation engine is configured to perform a plurality of tax calculation operations based on a tax calculation graph. The impact chain engine is configured to analyze the tax calculation graph and determine an impact chain for each of a plurality of nodes in the graph, wherein an impact chain for a respective node consists of one of (a) each of the other nodes which are affected by the respective node, or (b) each of the other nodes which affect the respective node.
-
Citations
18 Claims
-
1. A system for preparing an electronic tax return in which the process is individualized for a particular taxpayer, comprising:
-
a computing device having a computer processor and memory; a shared data store in communication with the computing device, the data store configured to store user-specific tax data therein; a tax preparation software application executable by the computing device, the tax preparation software application having a tax calculation engine, a tax calculation graph, and an impact chain engine, a tax logic agent, a plurality of decision tables, and a user interface manager; the tax calculation engine configured to read the user-specific tax data from the shared data store and write calculated tax data to the shared data store, the tax calculation engine configured to perform a plurality of tax calculation operations based on a tax calculation graph comprising a plurality of nodes including one or more of input nodes, functional nodes, and function nodes; and the tax calculation graph comprising a plurality of calculation paths wherein each calculation path connects a plurality of nodes which are data dependent such that a node is connected to another node if the node depends on the other node; and the impact chain engine configured to analyze the tax calculation graph and determine an impact chain for each of a plurality of nodes which are determined from the tax calculation graph, wherein an impact chain for a respective node consists of one of (a) each of the other nodes which are affected by the respective node, or (b) each of the other nodes which affect the respective node, the impact chain engine further configured to identify a first node in the impact chain which is relevant to a particular taxpayer based on the taxpayer'"'"'s tax data stored in the shared data store and determine respective relevancy scores for one or more tax questions based on the impact chain; the plurality of decision tables collectively representing a completion graph for completing all required data fields for computing a tax return, each decision table representing a plurality of columns wherein each column corresponds to a tax question and a plurality of rows wherein each row corresponds to a completion path for a tax rule, thereby forming a plurality of cells with each cell corresponding to a particular row and column, each cell in a respective row having a logic operator corresponding to the tax question of each cell'"'"'s respective column such that completion of each respective row is determined by the logic operators in the respective row; the tax logic agent configured to; access the user-specific tax data in a shared data store for the particular taxpayer; analyze the user-specific tax data for the particular taxpayer and traverse the decision tables to determine one or more suggested tax questions for obtaining missing tax data required to complete the tax return; and determine a relevancy ranking for each of the suggested tax questions using the relevancy scores for the one or more tax questions; the user interface manager configured to; receive the suggested tax questions and relevancy rankings, determine a tax question to be presented to a user for completing a tax return and generating an interview screen having the tax question to be presented to a user based at least in part upon the suggested tax matters and the relevancy rankings of the tax return preparation system based at least in part upon the suggested tax matters and the relevancy rankings, the user interface manager being detached from the tax logic agent such that the interview screen is not rigidly defined by the tax logic agent. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer-implemented method comprising:
-
a tax calculation engine accessing a tax calculation graph, the tax calculation graph comprising a plurality of nodes including one or more of input nodes, functional nodes, and function nodes, and a plurality of calculation paths wherein each calculation path connects a plurality of nodes which are data dependent such that a node is connected to another node if the node depends on the other node; the tax calculation engine reading user-specific tax data from a shared data store and performing a plurality of tax calculation operations based on a tax calculation graph using the user-specific tax data and writing calculated tax data to the shared data store; an impact chain engine analyzing the tax calculation graph and determining a plurality of impact chains from the tax calculation graph by, wherein an impact chain for a respective node consists of one of (a) each of the other nodes which are affected by the respective node, or (b) each of the other nodes which affect the respective node the impact chain engine identifying a first node in the impact chain which is relevant to a taxpayer based on the taxpayer'"'"'s tax data stored in the shared data store and determining respective relevancy scores for one or more tax questions based on the impact chain; a tax logic agent accessing a plurality of decision tables representing a completion graph for completing all required data fields for computing a tax return, each decision table representing a plurality of columns wherein each column corresponds to a tax question and a plurality of rows wherein each row corresponds to a completion path for a tax rule, thereby forming a plurality of cells with each cell corresponding to a particular row and column, each cell in a respective row having a logic operator corresponding to the tax question of each cell'"'"'s respective column such that completion of each respective row is determined by the logic operators in the respective row, wherein each cell is related to a node on the tax calculation graph; the tax logic agent analyzing the user-specific tax data for the particular taxpayer and traversing the decision tables using the user-specific tax data to determine one or more suggested tax questions for obtaining missing tax data required to complete the tax return; and the tax logic agent determining a relevancy ranking for each of the suggested tax questions using the relevancy scores for the one or more tax questions; a user interface manager receiving the suggested tax questions and relevancy rankings, determining a tax question to be presented to a user for completing a tax return and generating an interview screen having the tax question to be presented to a user based at least in part upon the suggested tax matters and the relevancy rankings, the user interface manager being detached from the tax logic agent such that the interview screen is not rigidly defined by the tax logic agent. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
Specification