RULE-BASED SYSTEMS AND METHODS FOR CUSTOMIZING COMPLEX BUSINESS SOLUTIONS
Rule-based systems and methods for customizing complex business solutions in a low-risk, inexpensive manner. In some embodiments, a baseline all-encompassing master copy of a resource is created. It is then simplified using a rule-based system that generates a final solution based on declarative rules that express a customer's requirements. The master copy can be fully documented and fully tested, thus greatly reducing the scope of testing, documentation, and training that is required for individual customers.
1 . A computer-implemented method comprising:
selecting, by a processor, a resource from a master copy of resources;
creating, by the processor, a first resource that is a working copy of the resource;
editing, by the processor, the first resource, thereby generating a second resource;
testing and validating, by the processor, the second resource;
comparing, by the processor, the first resource with the second resource;
generating, by the processor, a recipe file from one or more differences between the first resource and the second resource, the recipe file comprising an annotated list of commands and/or modifications that transform the first resource to the second resource;
applying, by the processor, the recipe file to the first resource, thereby generating a third resource;
comparing, by the processor, the third resource with the second resource; and
validating, by the processor, the recipe file.
2 . The computer-implemented method of claim 1 , further comprising:
annotating, by the processor, a list of modifications in the recipe file;
merging, by the processor, the annotated list into a master recipe database, the master recipe database containing a catalogue of generated modifications; and
verifying, by the processor, the master recipe database to ensure there are no conflicts or inconsistencies with respect to other annotated lists of modifications in the master recipe database.
3 . The computer-implemented method of claim 1 , wherein the master copy is documented and tested; and includes a plurality of functionalities, a plurality of features, and a plurality of configuration options.
4 . The computer-implemented method of claim 1 , wherein the resources comprise at least one of workbooks, widgets, task flows, scripts, scorecards, responsibility, process templates, hierarchies, forms, filters, dashboards and alerts.
5 . The computer-implemented method of claim 1 , wherein comparing between any two resources is a schema-aware compare.
6 . The computer-implemented method of claim 5 , wherein comparing between any two resources compares schema metadata of the first resource and the second resource.
7 . A system comprising:
a processor; and
a memory storing instructions that, when executed by the processor, configure the system to:
select, by the processor, a resource from a master copy of resources;
create, by the processor, a first resource that is a working copy of the resource;
edit, by the processor, the first resource, thereby generating a second resource;
test and validate, by the processor, the second resource;
compare, by the processor, the first resource with the second resource;
generate, by the processor, a recipe file from one or more differences between the first resource and the second resource, the recipe file comprising an annotated list of commands and/or modifications that transform the first resource to the second resource;
apply, by the processor, the recipe file to the first resource, thereby generating a third resource;
compare, by the processor, the third resource with the second resource; and
validate, by the processor, the recipe file.
8 . The system of claim 7 , wherein the instructions further configure the system to:
annotate, by the processor, a list of modifications in the recipe file;
merge, by the processor, the annotated list into a master recipe database, the master recipe database containing a catalogue of generated modifications; and
verify, by the processor, the master recipe database to ensure there are no conflicts or inconsistencies with respect to other annotated lists of modifications in the master recipe database.
9 . The system of claim 7 , wherein the master copy is documented and tested; and includes a plurality of functionalities, a plurality of features, and a plurality of configuration options.
10 . The system of claim 7 , wherein the resources comprise at least one of workbooks, widgets, task flows, scripts, scorecards, responsibility, process templates, hierarchies, forms, filters, dashboards and alerts.
11 . The system of claim 7 , wherein comparing between any two resources is a schema-aware compare.
12 . The system of claim 11 , wherein comparing between any two resources compares schema metadata of the first resource and the second resource.
13 . A non-transitory computer-readable storage medium, the computer-readable storage medium including instructions that when executed by a computer, cause the computer to:
select, by a processor, a resource from a master copy of resources;
create, by the processor, a first resource that is a working copy of the resource;
edit, by the processor, the first resource, thereby generating a second resource;
test and validate, by the processor, the second resource;
compare, by the processor, the first resource with the second resource;
generate, by the processor, a recipe file from one or more differences between the first resource and the second resource, the recipe file comprising an annotated list of commands and/or modifications that transform the first resource to the second resource;
apply, by the processor, the recipe file to the first resource, thereby generating a third resource;
compare, by the processor, the third resource with the second resource; and
validate, by the processor, the recipe file.
14 . The computer-readable storage medium of claim 13 , wherein the instructions further configure the computer to:
annotate, by the processor, a list of modifications in the recipe file;
merge, by the processor, the annotated list into a master recipe database, the master recipe database containing a catalogue of generated modifications; and
verify, by the processor, the master recipe database to ensure there are no conflicts or inconsistencies with respect to other annotated lists of modifications in the master recipe database.
15 . The computer-readable storage medium of claim 13 , wherein the master copy is documented and tested; and includes a plurality of functionalities, a plurality of features, and a plurality of configuration options.
16 . The computer-readable storage medium of claim 13 , wherein the resources comprise at least one of workbooks, widgets, task flows, scripts, scorecards, responsibility, process templates, hierarchies, forms, filters, dashboards and alerts.
17 . The computer-readable storage medium of claim 13 , wherein comparing between any two resources is a schema-aware compare.
18 . The computer-readable storage medium of claim 17 , wherein comparing between any two resources compares schema metadata of the first resource and the second resource.