Interactive computer program specification and simulation system
First Claim
1. A method practiced in a computer system of interactively creating specifications for a computer program, comprising:
- wherein an actor comprises data and procedures for manipulating that data, wherein said data of an actor comprises a knowledge base, comprising a series of logical assertions, and a history of changes to said data and said logical assertions;
responsive to receipt of actor data, receivable via an input device, specifying actors for use in a plurality of tape programs and storing data for said actors, wherein said specifying comprises creating new actors, selecting previously created actors, and modifying actor data;
wherein a tape program comprises a set of actors and a set of rules of behavior between actors of said set;
responsive to receipt of specification data for operational steps of a plurality of tape programs, receivable via said input device, storing for subsequent execution communications among said actors, relationships among said actors, logical or arithmetic computations for said actors, and decision points for said plurality of tape programs; and
thereafter executing steps of a first tape program, responsive to receipt of a decision choice via said input device, said executing comprising;
simulating ones of said operational steps upon the occurrence of predetermined conditions for said ones of said operational steps; and
storing results of said simulating;
wherein said simulating comprises at least one of the steps of executing communications among said actors, asserting relationships among said actors, executing a logical or arithmetical computation for said actors or requesting input of a decision choice.
1 Assignment
0 Petitions
Accused Products
Abstract
A computer program specification system is disclosed for interactively creating program specifications responsive to user input. The system includes facilities to respond to changes, supplied interactively, to a program specification without recompiling the program specification, and immediately to display a simulation of those changes. The system also supports the merging of actors, which are software objects comprising data structures and program procedures, and the merging of actor behavior. A user of the system creates a program specification by specifying actors for use in a plurality of scenarios, and operational steps of the plurality of scenarios. The system executes operational steps of a scenario to evaluate the consistency of the specification and actor data. Execution of an operational step comprises simulating the operational step upon the occurrence of predetermined conditions and storing the results of the simulation. Execution of a sequence of operational steps can be reversed or undone in order to insert a change in the specification prior to resimulating the undone sequence or other related sequences. Simulation of an operational step comprises one or more of: executing communications among actors, asserting relationships among actors, executing a logical or arithmetical computation for actors or requesting input of a decision choice.
-
Citations
42 Claims
-
1. A method practiced in a computer system of interactively creating specifications for a computer program, comprising:
-
wherein an actor comprises data and procedures for manipulating that data, wherein said data of an actor comprises a knowledge base, comprising a series of logical assertions, and a history of changes to said data and said logical assertions; responsive to receipt of actor data, receivable via an input device, specifying actors for use in a plurality of tape programs and storing data for said actors, wherein said specifying comprises creating new actors, selecting previously created actors, and modifying actor data; wherein a tape program comprises a set of actors and a set of rules of behavior between actors of said set; responsive to receipt of specification data for operational steps of a plurality of tape programs, receivable via said input device, storing for subsequent execution communications among said actors, relationships among said actors, logical or arithmetic computations for said actors, and decision points for said plurality of tape programs; and thereafter executing steps of a first tape program, responsive to receipt of a decision choice via said input device, said executing comprising; simulating ones of said operational steps upon the occurrence of predetermined conditions for said ones of said operational steps; and storing results of said simulating; wherein said simulating comprises at least one of the steps of executing communications among said actors, asserting relationships among said actors, executing a logical or arithmetical computation for said actors or requesting input of a decision choice. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 29, 30, 31, 32, 33, 34)
-
-
28. The method of claim further comprising:
removing a subset of a first tape program for subsequent reuse in another tape program.
-
35. A method practiced in a computer system of interactively creating specifications for a computer program, comprising:
-
wherein an actor comprises data and procedures for manipulating that data, wherein said data of an actor comprises a knowledge base, comprising a series of logical assertions, and a history of changes to said data and said logical assertions; responsive to receipt of actor data receivable via an input device, specifying actors for use in a plurality of tape programs and storing data for said actors, wherein said specifying creating new actors, selecting previously created actors, and modifying actor data; wherein a tape program comprises a set of actors and a set of rules of behavior between actors of said set; responsive to receipt of operational steps receivable via said input device, storing for subsequent execution communications among said actors, relationships among said actors, logical or arithmetic computations for said actors, and decision points for said plurality of tape programs.
-
-
36. In a system containing stored actor data and stored specification data for operational steps of a plurality of tape programs, a method of testing said stored actor data and stored specification data for operational steps, comprising:
-
wherein an actor comprises data and procedures for manipulating that data, wherein said data of an actor comprises a knowledge base, comprising a series of logical assertions, and a history of changes to said data and said logical assertions; executing a first program of said plurality of tape programs responsive to receipt of a first decision choice, receivable via an input device, said executing comprising simulating operational steps of said first program upon the occurrence of a predetermined condition for each operational step; and wherein a tape program comprises a set of actors and a set of rules of behavior between actors of said set; storing results of said simulating; wherein said simulating comprises at least one of the steps of executing communications among actors, asserting relationships among actors, executing a logical or arithmetical computation for actors or requesting input of a decision choice.
-
-
37. A computer program specification system comprising:
-
wherein an actor comprises data and procedures for manipulating that data, wherein said data of an actor comprises a knowledge base, comprising a series of logical assertions, and a history of changes to said data and said logical assertions; means, responsive to receipt of actor data, receivable via an input device, for specifying actors for use in a plurality of tape programs and for storing data for said actors, wherein said specifying comprises creating new actors, selecting previously created actors, and modifying actor data; wherein a tape program comprises a set of actors and a set of rules of behavior between actors of said set; means, responsive to receipt of operational steps receivable via said input device, for storing for subsequent execution communications among said actors, relationships among said actors, logical or arithmetic computations for said actors, and decision points for said plurality of tape programs.
-
-
38. A computer program specification testing system containing stored actor data and stored specification data for operational steps of a plurality of tape programs, comprising means for testing said stored actor data and stored specification data for operational steps, wherein said testing means comprises:
-
wherein an actor comprises data and procedures for manipulating that data, wherein said data of an actor comprises a knowledge base, comprising a series of logical assertions, and a history of changes to said data and said logical assertions; means for executing a first of said plurality of tape programs for evaluating the consistency of a specification, responsive to receipt of a first decision choice, receivable via an input device, said executing comprising simulating operational steps of said first tape program upon the occurrence of a predetermined condition for each operational step; and wherein a tape program comprises a set of actors and a set of rules of behavior between actors of said set; means for storing results of said simulating; wherein said simulating comprises at least one of the steps of executing communications among actors, asserting relationships among actors, executing a logical or arithmetical computation for actors or requesting input of a decision choice. - View Dependent Claims (39, 40, 41, 42)
-
Specification