Designing computer programs
First Claim
Patent Images
1. A method for designing a computer program, comprising:
- accessing a substantially complete set of domain rules, each domain rule being invariant and expressed as a narrative description;
defining a domain from the domain rules, the domain used to determine a problem space and a solution space, substantially all solutions of the solution space can be generated from the substantially complete set of domain rules;
identifying one or more requirements of the domain from one or more supplemental sources;
generating a model that establishes the requirements of the domain;
allocating the domain rules to a plurality of use cases and realizing the use cases, the realization comprising identifying a plurality of analysis classes of the use cases;
assessing the domain rules in accordance with the realization;
identifying a plurality of commonalities of the identified analysis classes by determining the identified analysis classes that appear in multiple use cases of the plurality of use cases;
determining one or more business rules based on variability identified in the identified common analysis classes, each business rule being variable;
associating the determined one or more business rules with the model; and
generating code corresponding to the model in order to design a computer program.
2 Assignments
0 Petitions
Accused Products
Abstract
Designing a computer program includes accessing invariant domain rules and displaying variable business rules. One or more business rules are selected in response to a user selection and are customized. The business rules are associated with a procedure, and the domain rules are associated with the procedure. A model representing the procedure is displayed, and a code corresponding to the procedure is generated to design a computer program.
-
Citations
33 Claims
-
1. A method for designing a computer program, comprising:
-
accessing a substantially complete set of domain rules, each domain rule being invariant and expressed as a narrative description; defining a domain from the domain rules, the domain used to determine a problem space and a solution space, substantially all solutions of the solution space can be generated from the substantially complete set of domain rules; identifying one or more requirements of the domain from one or more supplemental sources; generating a model that establishes the requirements of the domain; allocating the domain rules to a plurality of use cases and realizing the use cases, the realization comprising identifying a plurality of analysis classes of the use cases; assessing the domain rules in accordance with the realization; identifying a plurality of commonalities of the identified analysis classes by determining the identified analysis classes that appear in multiple use cases of the plurality of use cases; determining one or more business rules based on variability identified in the identified common analysis classes, each business rule being variable; associating the determined one or more business rules with the model; and generating code corresponding to the model in order to design a computer program. - View Dependent Claims (2, 3, 4, 5)
-
-
6. Logic for designing a computer program, the logic embodied in a computer-readable medium and when executed by a computer operable to:
-
access a substantially complete set of domain rules, each domain rule being invariant and expressed as a narrative description; define a domain from the domain rules, the domain used to determine a problem space and a solution space, substantially all solutions of the solution space can be generated from the substantially complete set of domain rules; identify one or more requirements of the domain from one or more supplemental sources; generate a model that establishes the requirements of the domain; allocate the domain rules to a plurality of use cases and realizing the use cases, the realization comprising identifying a plurality of analysis classes of the use cases; assess the domain rules in accordance with the realization; identify a plurality of commonalities of the identified analysis classes by determining the identified analysis classes that appear in multiple use cases of the plurality of use cases; determine one or more business rules based on variability identified in the identified common analysis classes, each business rule being variable; associate the one or more business rules with the model; and generate code corresponding to the model in order to design a computer program. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A system for designing a computer program, comprising:
-
a database operable to store a substantially complete set of domain rules, each domain rule being invariant and expressed as a narrative description; and a server coupled to the database and operable to; define a domain from the domain rules, the domain used to determine a problem space and a solution space, substantially all solutions of the solution space can be generated from the substantially complete set of domain rules; identify one or more requirements of the domain from one or more supplemental sources; generate a model that establishes the requirements of the domain; allocate the domain rules to a plurality of use cases and realizing the use cases, the realization comprising identifying a plurality of analysis classes of the use cases; assess the domain rules in accordance with the realization; identify a plurality of commonalities of the identified analysis classes by determining the identified analysis classes that appear in multiple use cases of the plurality of use cases; determine one or more business rules based on variability identified in the identified common analysis classes, each business rule being variable; associate the one or more business rules with the model; and generate code corresponding to the model in order to design a computer program. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. A system for designing a computer program, comprising:
-
means for accessing a substantially complete set of domain rules, each domain rule being invariant and expressed as a narrative description; means for defining a domain from the domain rules, the domain used to determine a problem space and a solution space, substantially all solutions of the solution space can be generated from the substantially complete set of domain rules; means for identifying one or more requirements of the domain from one or more supplemental sources; means for generating a model that establishes the requirements of the domain; means for allocating the domain rules to a plurality of use cases and realizing the use cases, the realization comprising identifying a plurality of analysis classes of the use cases; means for assessing the domain rules in accordance with the realization; means for identifying a plurality of commonalities of the identified analysis classes by determining the identified analysis classes that appear in multiple use cases of the plurality of use cases; means for determining one or more business rules based on variability identified in the identified common analysis classes, each business rule being variable; means for associating the one or more business rules with the model; and means for generating code corresponding to the model in order to design a computer program.
-
-
19. A method for designing a computer program, comprising:
-
collecting a substantially complete set of domain rules for a military theory, allocating the domain rules to a plurality of use cases, realizing the use cases, the realization comprising identifying a plurality of analysis classes of the use cases assessing the domain rules in accordance with the realization, and accessing the domain rules, each domain rule being invariant and expressed as a narrative description, the plurality of domain rules comprising a plurality of military theory domain rules setting an objective to destroy an enemy'"'"'s combat forces; defining a domain from the domain rules, the domain used to determine a problem space and a solution space, substantially all solutions of the solution space can be generated from the substantially complete set of domain rules; identifying one or more requirements of the domain from one or more supplemental sources; generating a model that establishes the requirements of the domain; identifying a plurality of commonalities of the identified analysis classes by determining the identified analysis classes that appear in multiple use cases of the plurality of use cases; determining a plurality of business rules for the military theory based on variability identified in the identified common analysis classes; displaying the plurality of business rules for the military theory, each business rule being variable, the plurality of business rules comprising a plurality of rules of engagement; selecting one or more rules of engagement in response to a user selection; customizing the one or more rules of engagement; associating the one or more rules of engagement with the model; associating the military theory domain rules with the model generating a code corresponding to the model in order to design a computer program; checking a syntax of the code, and providing a notification if a syntax error is detected; checking a logical consistency of the code, and providing a notification if a logical inconsistency is detected; and checking a compatibility between the model and the code, and providing a notification if an inconsistency is detected.
-
-
20. A method for managing rules for designing a computer program, comprising:
-
accessing a plurality of military theory rules for a military theory; accessing a plurality of legislated laws associated with the military theory; identifying military theory rules required by the laws as a substantially complete set of domain rules of the military theory, each domain rule being invariant and expressed as a narrative description; defining a domain from the domain rules, the domain used to determine a problem space and a solution space, substantially all solutions of the solution space can be generated from the substantially complete set of domain rules; identifying one or more requirements of the domain from one or more supplemental sources; generating a model that establishes the requirements of the domain; designating the other military theory rules as a plurality of business rules of the military theory, the business rules comprising a plurality of rules engagement, each business rule being variable; allocating the domain rules to a plurality of use cases and realizing the use cases, the realization comprising identifying a plurality of analysis classes of the use cases; identifying a plurality of commonalities of the identified analysis classes by determining the identified analysis classes that appear in multiple use cases of the plurality of use cases; determining one or more of the business rules based on variability identified in the identified common analysis classes; assessing the domain rules and the business rules in accordance with the realization; and providing a rule of engagement from the rules of engagement in response to a request for the business rule. - View Dependent Claims (21, 22, 23)
-
-
24. A system for managing rules for designing a computer program, comprising:
-
a database operable to; store a plurality of military theory rules for a military theory; and store a plurality of legislated laws associated with the military theory; and a server coupled to the database and operable to; identify military theory rules required by the laws as a substantially complete set of domain rules of the military theory, each domain rule being invariant and expressed as a narrative description; define a domain from the domain rules, the domain used to determine a problem space and a solution space, substantially all solutions of the solution space can be generated from the substantially complete set of domain rules; identify one or more requirements of the domain from one or more supplemental sources; generate a model that establishes the requirements of the domain; designate the other military theory rules as a plurality of business rules of the military theory, the business rules comprising a plurality of rules engagement, each business rule being variable; allocate the domain rules to a plurality of use cases and realizing the use cases, the realization comprising identifying a plurality of analysis classes; identify a plurality of commonalities of the identified analysis classes by determining the identified analysis classes that appear in multiple use cases of the plurality of use cases; determine one or more business rules of the plurality of business rules based on variability identified in the identified common analysis classes; assess the domain rules and the business rules in accordance with the realization; and provide a rule of engagement from the rules of engagement in response to a request for the business rule. - View Dependent Claims (25, 26, 27)
-
-
28. Logic for managing rules for designing a computer program, the logic embodied in a computer-readable medium and when executed by a computer operable to:
-
access a plurality of military theory rules for a military theory; access a plurality of legislated laws associated with the military theory; identify military theory rules required by the laws as a substantially complete set of domain rules of the military theory, each domain rule being invariant and expressed as a narrative description; define a domain from the domain rules, the domain used to determine a problem space and a solution space, substantially all solutions of the solution space can be generated from the substantially complete set of domain rules; identify one or more requirements of the domain from one or more supplemental sources; generate a model that establishes the requirements of the domain; designate the other military theory rules as a plurality of business rules of the military theory, the business rules comprising a plurality of rules engagement, each business rule being variable; allocate the domain rules to a plurality of use cases and realizing the use cases, the realization comprising identifying a plurality of analysis classes; identify a plurality of commonalities of the identified analysis classes by determining the identified analysis classes that appear in multiple use cases of the plurality of use cases; determining one or more business rules of the plurality of business rules based on variability identified in the identified common analysis classes; assess the domain rules and the business rules in accordance with the realization; and provide a rule of engagement from the rules of engagement in response to a request for the business rule. - View Dependent Claims (29, 30, 31)
-
-
32. A system for managing rules for designing a computer program, comprising:
-
means for accessing a plurality of military theory rules for a military theory; means for accessing a plurality of legislated laws associated with the military theory; means for identifying military theory rules required by the laws as a substantially complete set of domain rules of the military theory, each domain rule being invariant and expressed as a narrative description; means for defining a domain from the domain rules, the domain used to determine a problem space and a solution space, substantially all solutions of the solution space can be generated from the substantially complete set of domain rules; means for identifying one or more requirements of the domain from one or more supplemental sources; means for generating a model that establishes the requirements of the domain; means for designating the other military theory rules as a plurality of business rules of the military theory, the business rules comprising a plurality of rules engagement, each business rule being variable; means for allocating the domain rules to a plurality of use cases and realizing the use cases, the realization comprising identification of a plurality of analysis classes; means for identifying a plurality of commonalities of the identified analysis classes by determining the identified analysis classes that appear in multiple use cases of the plurality of use cases; means for determining one or more business rules of the plurality of business rules based on variability identified in the identified common analysis classes; means for assessing the domain rules and the business rules in accordance with the realization; and means for providing a rule of engagement from the rules of engagement in response to a request for the business rule.
-
-
33. A method for managing rules for designing a computer program, comprising:
-
accessing a plurality of military theory rules for a military theory; accessing a plurality of legislated laws associated with the military theory; identifying military theory rules required by the laws as a substantially complete set of domain rules of the military theory, each domain rule being invariant and expressed as a narrative description; designating the other military theory rules as a plurality of business rules of the military theory, the business rules comprising a plurality of rules engagement, each business rule being variable; defining a domain from the domain rules, the domain used to determine a problem space and a solution space, substantially all solutions of the solution space can be generated from the substantially complete set of domain rules; identifying one or more requirements of the domain from one or more supplemental sources; generating a model that establishes the requirements of the domain; allocating the domain rules and the business rules to a plurality of use cases; realizing the use cases, the realization comprising identification of a plurality of analysis classes; identifying a plurality of commonalities of the identified analysis classes by determining the identified analysis classes that appear in multiple use cases of the plurality of use cases; determining one or more business rules of the plurality of business rules based on variability identified in the identified common analysis classes; assessing the domain rules and the business rules in accordance with the realization; storing the rules of engagement; providing a rule of engagement from the stored rules of engagement in response to a request for the business rule; customizing the provided rule of engagement; associating the customized rule of engagement with the model; associating the domain rules with the model; and generating a code corresponding to the model in order to design a computer program.
-
Specification