Smart form
First Claim
Patent Images
1. A method comprising:
- creating, by a processing device, a graphical user interface (GUI) to present a questionnaire comprising a set of questions and a user interface, wherein the user interface provides an input interface for a user to input one or more answers for the set of questions;
displaying a first question in the set of questions via the GUI;
receiving, by the processing device, a first response to the first question via the user interface;
generating, by a rule engine of the processing device, a logic tree comprising nodes and branches, each of the nodes representing a question in the set of questions and each of the branches representing a response to a question in the set of questions;
storing, by the rule engine, the logic tree in a working memory of the rule engine;
identifying a node of the nodes in the logic tree correlating to the first response, the node comprising a follow-up question;
removing a portion of the logic tree stored in the working memory corresponding to a second node in the logic tree connected to a branch of the branches representing a second response that is not received via the GUI, wherein the removing the portion of the logic tree from the working memory increases available memory space of the working memory;
modifying, by the processing device, the GUI to present the follow-up question within the questionnaire;
modifying, by the processing device, the user interface to receive an answer from the user in view of the follow-up question; and
displaying the GUI and the user interface, as modified, via a display device.
1 Assignment
0 Petitions
Accused Products
Abstract
Some embodiments of a system and a method to dynamically create a smart form have been presented. In one embodiment, a graphical user interface (GUI) module, running on a server, creates a GUI to present a questionnaire having at least one question to an end-user. A rule engine, running on the server, receives an answer to the at least one question via the GUI from the end-user. Using truth maintenance, the rule engine may determine what follow-up questions to ask the end-user based on the answer received. The GUI module may dynamically modify the GUI to present the follow-up questions to the end-user.
15 Citations
20 Claims
-
1. A method comprising:
-
creating, by a processing device, a graphical user interface (GUI) to present a questionnaire comprising a set of questions and a user interface, wherein the user interface provides an input interface for a user to input one or more answers for the set of questions; displaying a first question in the set of questions via the GUI; receiving, by the processing device, a first response to the first question via the user interface; generating, by a rule engine of the processing device, a logic tree comprising nodes and branches, each of the nodes representing a question in the set of questions and each of the branches representing a response to a question in the set of questions; storing, by the rule engine, the logic tree in a working memory of the rule engine; identifying a node of the nodes in the logic tree correlating to the first response, the node comprising a follow-up question; removing a portion of the logic tree stored in the working memory corresponding to a second node in the logic tree connected to a branch of the branches representing a second response that is not received via the GUI, wherein the removing the portion of the logic tree from the working memory increases available memory space of the working memory; modifying, by the processing device, the GUI to present the follow-up question within the questionnaire; modifying, by the processing device, the user interface to receive an answer from the user in view of the follow-up question; and displaying the GUI and the user interface, as modified, via a display device. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An apparatus comprising:
-
a memory; and a processing device operatively coupled to the memory, the processing device to; create a graphical user interface (GUI) to present a questionnaire comprising a set of questions and a user interface, wherein the user interface provides an input interface for a user to input one or more answers for the set of questions; display a first question in the set of questions via the GUI; receive a first response to the first question via the user interface; generate, by a rule engine, a logic tree comprising nodes and branches, each of the nodes representing a question in the set of questions and each of the branches representing a response to a question in the set of questions; store, by the rule engine, the logic tree in a working memory of the rule engine; identify a node of the nodes in the logic tree correlating to the first response, the node comprising a follow-up question; remove a portion of the logic tree stored in the working memory corresponding to a second node in the logic tree connected to a branch of the branches representing a second response that is not received via the GUI, wherein the processing device is further to remove the portion of the logic tree from the working memory to increase available memory space of the working memory; modify the GUI to present the follow-up question within the questionnaire; modify the user interface to receive an answer from the user in view of the follow-up question; and display the GUI and the user interface, as modified, via a display device. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to:
-
create, by the processing device, a graphical user interface (GUI) to present a questionnaire comprising a set of questions and a user interface, wherein the user interface provides an input interface for a user to input one or more answers for the set of questions; display a first question in the set of questions via the GUI; receive, by the processing device, a first response to the first question via the user interface; generate, by a rule engine, a logic tree comprising nodes and branches, each of the nodes representing a question in the set of questions and each of the branches representing a response to a question in the set of questions; store the logic tree in a working memory of the rule engine; identify a node of the nodes in the logic tree correlating to the first response, the node comprising a follow-up question; remove a portion of the logic tree corresponding to a second node in the logic tree stored in the working memory connected to a branch of the branches representing a second response that is not received via the GUI, wherein the processing device is further to remove the portion of the logic tree from the working memory to increase available memory space of the working memory; modify, by the processing device, the GUI to present the follow-up question; modify the user interface to receive an answer from the user in view of the follow-up question; and display the GUI and the user interface, as modified, via a display device. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification