Method and apparatus for providing a user configurable system which integrates and manages a plurality of different task and software tools
First Claim
1. A system for integrating and managing the operations of a plurality of different software tools, the system comprising:
- means for storing a plurality of rule macros, each corresponding to a particular process;
means for inputting a process to the system;
means responsive to the inputted process for retrieving the corresponding macro;
execution means, responsive to the retrieved corresponding macro, for causing one or more selected tools to be executed in a predetermined sequence as determined by the corresponding rule macro, the macros each including rules for executing one receiving inputs and for providing outputs in response to the inputs, wherein each tool is individually operable to perform a desired function and is operable as part of a process with other software tools, wherein at least some of the tools receive inputs and/or provide outputs which are incompatible with the system;
means for determining whether one of the selected tools being executed is incompatible with the system based on a list of software tools; and
encapsulation means, responsive to the execution of an incompatible tool and to interpretation rules, for causing all transfers from and to the incompatible tool to be automatically checked and interpreted as necessary.
10 Assignments
0 Petitions
Accused Products
Abstract
A user configurable system which integrates and manages a plurality of different tasks and software tools. It is adapted primarily for use in design and production automation systems. The system has a main control routine which utilizes macros to control each process to be performed, including the sequencing of tasks and the encapsulation of any incompatible software tools which interface with the control program. The encapsulation controls the interpretations for transfers between the incompatible tool and the control program. Additional routines are provided for providing interfacing between various tools, including tools having various types of incompatibilities, and between an operator and the system or the various tools used therein. All such routines are rules based and such rules, including the macros used with the control routine, are written in an interpretive extension language which is both human and machine readable. This renders the system easily configurable and reconfigurable by the user.
85 Citations
68 Claims
-
1. A system for integrating and managing the operations of a plurality of different software tools, the system comprising:
-
means for storing a plurality of rule macros, each corresponding to a particular process; means for inputting a process to the system; means responsive to the inputted process for retrieving the corresponding macro; execution means, responsive to the retrieved corresponding macro, for causing one or more selected tools to be executed in a predetermined sequence as determined by the corresponding rule macro, the macros each including rules for executing one receiving inputs and for providing outputs in response to the inputs, wherein each tool is individually operable to perform a desired function and is operable as part of a process with other software tools, wherein at least some of the tools receive inputs and/or provide outputs which are incompatible with the system; means for determining whether one of the selected tools being executed is incompatible with the system based on a list of software tools; and encapsulation means, responsive to the execution of an incompatible tool and to interpretation rules, for causing all transfers from and to the incompatible tool to be automatically checked and interpreted as necessary. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system for integrating and managing the operations of a plurality of different software tools, at least some of which are incompatible with the system, a format for at least one of said tools being different from a format for another tool, and wherein transfer can occur in at least one direction between said one and said another tool, the system comprising:
-
means for storing a plurality of rule macros, each relating to a particular function; means for inputting a process to the system; means responsive to an inputted process for retrieving a corresponding macro; means responsive to the retrieved macro for causing selected tools to be executed in a predetermined sequence, wherein a macro includes rules for controlling the sequencing of tools and the interfacing of tools with the system, with a user, and with each other, wherein a software tool is a program for receiving inputs and for providing outputs in response to the inputs, wherein each tool is individually operable to perform a desired function and is operable as part of a process with other software tools, wherein at least some of the tools receive inputs and/or provide outputs which are incompatible with the system as determined by a list of software tool; a rules file containing format conversion rules for tools having incompatible formats; means, operative when there is to be a transfer between format incompatible tools, for retrieving the appropriate format conversion rules from the rules file; and means for utilizing the retrieved rules to control format conversion of material to be transferred between the format incompatible tools. - View Dependent Claims (10, 11)
-
-
12. A system for integrating a number of software tools, wherein a software tool is a program for receiving inputs and for providing outputs in response to the inputs, wherein each tool is individually operable to perform a desired function and is operable as part of a process with other software tools, wherein at least some of said tools provide outputs which are name incompatible with other tools so that means of outputs for one tool are not compatible as inputs to another tool, said system comprising:
-
means for storing a plurality of rule macros, each relating to a particular process; means for inputting a process to the system; means responsive to an inputted process for retrieving a corresponding macro; means responsive to the retrieved macro for causing selected tools to be executed in a predetermined sequence, wherein a macro includes rules for controlling the sequencing of tools and the interfacing of tools with the system, with a user, and with each other, wherein a software tool is a program for receiving inputs and for providing outputs in response to the inputs, wherein each tool is individually operable to perform a desired function and is operable as part of a process with other software tools, wherein at least some of the tools receive inputs and/or provide outputs which are incompatible with the system as determined by a list of software tools; a rules file including translation rules for tools which are name incompatible; and means operative when there is a transfer of names between name incompatible tools for utilizing appropriate rules in the rules file to effect translations necessary to render said tools compatible. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A system for integrating a number of software tools, wherein a software tool is a program for receiving inputs and for providing outputs in response to the inputs, wherein each tool is individually operable to perform a desired function and is operable as part of a process with other software tools, said system comprising:
-
means for storing a plurality of rule macros, each relating to a particular process; means for inputting a process to the system; means responsive to an inputted process for retrieving a corresponding macro; means responsive to the retrieved macro for causing selected tools to be executed in a predetermined sequence, wherein a macro includes rules for controlling the sequencing of tools and the interfacing of tools with the system, with a user, and with each other, wherein input information is required from a user for at least some tools, wherein a software tool is a program for receiving inputs and for providing outputs in response to the inputs, wherein each tool is individually operable to perform a desired function and is operable as part of a process with other software tools, wherein at least some of the tools receive inputs and/or provide outputs which are incompatible with the system as determined by a list of software tools; rules files; and means for utilizing the rules files to actively enter required input information. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34, 35)
-
-
36. A method for integrating and managing the operations of a plurality of different software tools, said method comprising the computer implemented steps of:
-
storing a plurality of rule macros, each corresponding to a particular process; inputting a process to the system; retrieving a corresponding macro in response to the inputted process; executing one or more selected tools in a predetermined sequence in response to the retrieved corresponding macro, the macros each including rules for executing one or more tools, wherein a software tool is a program for receiving inputs and for providing outputs in response to the inputs, wherein each tool is individually operable to perform a desired function and is operable as part of a process with other software tools, wherein at least some of the tools receive inputs and/or provide outputs which are incompatible with the system; determining if one of said selected tools being executed is incompatible with the system based on a list of software tools; and encapsulating the tool, causing all transfers from and to the tool to be checked and to be interpreted as necessary in accordance with interpretation rules in response to a determination that the selected tool being executed is incompatible. - View Dependent Claims (37, 38, 39, 40, 41, 42)
-
-
43. A method for integrating and managing the operations of a plurality of different software tools, at least some of which are incompatible with the system, said method comprising the computer implemented steps of:
-
storing a plurality of rule macros, each relating to a particular function; inputting a process to the system; retrieving a corresponding macro in response to an inputted process; and executing selected tools to be executed in a predetermined sequence in response to the retrieved macro, wherein a software tool is a program for receiving inputs and for providing outputs in response to the inputs, wherein each tool is individually operable to perform a desired function and is operable as part of a process with other software tools, wherein at least some of the tools receive inputs and/or provide outputs which are incompatible with the system; wherein a macro can include rules for controlling the sequencing of tools and the interfacing of tools with the system, with a user, and with each other through interpretation rules for translating outputs of one tool to another form for use as inputs to another tool which is incompatible as determined by a list of software tools. - View Dependent Claims (44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68)
-
-
59. A method as claimed in 58 including the steps of:
-
storing information concerning a design; storing translation information concerning a selected one or more tools; prompting a user to select an element of the stored design on which a selected translation is to be performed; and effecting, in response to a user input, the selected translation on the element selected by the user.
-
Specification