← Back to Patent Explorer
US5689711A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for representing data dependencies in software modeling systems

Assignee: Computervision Corp
•
Filing: 1995-04-21
•
Granted: 1997-11-18
•
Expires: 2015-04-21
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for converting a set of functions of any software system that does modeling into a corresponding set of parametric functions that, when called, generate not only a resulting model, but also a dependency graph representation of the model. The dependency graph can include directed functions and non-directed constraint relationships, and is used when a change is made to the model so that only affected portions of the model are reevaluated. The dependency graph can be visually presented to a user, and can be created or edited through a visual programming environment. The graph can be modified to change either input values to the model, or the graph elements that represent the functions used in creating the model. When changes to the dependency graph are made, it can be reevaluated to incorporate the changes into the model. When the visual programming environment is used to modify the graph, the environment calls the parametric set of functions. The set of parametric functions is generated by creating wrappers in a standard programming language around the functions of the software system. The dependency graph can also be used to generate a computer program in a standard language that, when executed on the software system, regenerates the model as well as the dependency representation. The computer program can also be edited and then executed on the software system to generate a modified version of the model.

Inventors

  • 👤 Theodore Bardasz
  • 👤 Stefano Malnati

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 21:13
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/30; G06F8/34

Claims Analysis

Total Claims: 32
Claim 1
Independent Claim 153 words
A method for providing parametric capabilities to a software modeling system having a plurality of functions and a user interface that responds to receipt of each one of a plurality of commands by calling a corresponding one of the plurality of functions, the plurality of functions being executed during a modeling session to create a model, the method including steps of: A. providing a wrapper around each of the plurality of functions in the software system to create a corresponding plurality of associative functions, each of the associative functions including a call to its corresponding function and further including a capability of creating and adding graph entities to a dependency representation of the model when its corresponding function is executed during the modeling session; and B. modifying the user interface so that in response to each received command, the associative function that corresponds to the function corresponding to the received command is called.
Claim 2
Independent Claim 153 words
A method for providing parametric capabilities to a software modeling system having a plurality of functions and a user interface that responds to receipt of each one of a plurality of commands by calling a corresponding one of the plurality of functions, the plurality of functions being executed during a modeling session to create a model, the method including steps of: A. providing a wrapper around each of the plurality of functions in the software system to create a corresponding plurality of associative functions, each of the associative functions including a call to its corresponding function and further including a capability of creating and adding graph entities to a dependency representation of the model when its corresponding function is executed during the modeling session; and B. modifying the user interface so that in response to each received command, the associative function that corresponds to the function corresponding to the received command is called.
Claim 3
Dependent Claim 19 words
The method of claim 1, wherein at least one of the plurality of functions has no inherent parametric capabilities.
Claim 4
Dependent Claim 87 words
The method of claim 1, wherein the plurality of functions includes a first function that operates upon a first set of arguments formatted in a first format, and wherein step A includes a step of: providing a first wrapper around the first function, the first wrapper being capable of receiving a second set of arguments formatted in a second format that is different from the first format, the first wrapper converting the second set of arguments to the first set of arguments when calling the first function.
Claim 5
Dependent Claim 21 words
The method of claim 1, wherein step A includes providing each of the wrappers in an object oriented computer programming language.
Claim 6
Dependent Claim 25 words
The method of claim 1, wherein steps A and B are implemented by a computer executing a computer program written in an object oriented language.
Claim 7
Dependent Claim 50 words
The method as recited in claim 1, further comprising a step of: providing a tool that, when a modification is made to the model, uses the dependency representation to reevaluate only the functions used in creating the model that correspond to graph entities affected by the modification to the design.
Claim 8
Dependent Claim 45 words
The method of claim 1, further comprising a step of: creating a hash table with a table entry for each associative function, each table entry identifying a topology of the graph entities created and added to the dependency representation when the associative function is executed.
Claim 9
Dependent Claim 50 words
The method of claim 7, wherein the step of creating a hash table includes a step of: creating each table entry to identify a number of input data arguments required by the associative function, a result of the associative function and descriptions of each input data argument and the result.
Claim 10
Dependent Claim 23 words
The method of claim 1, wherein step A includes a step of providing each of the wrappers in a standard computer programming language.
Claim 11
Dependent Claim 24 words
The method of claim 9, wherein step A includes a step of providing each of the wrappers in an object oriented computer programming language.
Claim 12
Dependent Claim 35 words
The method of claim 1, further including a step of: C. creating a single processor function that cooperates with each of the associative functions to create and add the graph entities to the dependency representation.
Claim 13
Dependent Claim 58 words
The method of claim 11, wherein step C includes a step of: creating the single processor function to generate a hash table with a table entry for each associative function, each table entry identifying a topology of the graph entities created and added to the dependency representation by the single processor function when the associative function is executed.
Claim 14
Dependent Claim 52 words
The method of claim 12, wherein step C further includes a step of: creating the single processor function to create the dependency graph by accessing an entry in the hash table, the single processor being generic and operating according to arguments passed to it when it is called by the associative function.
Claim 15
Dependent Claim 51 words
The method of claim 12, wherein step C includes a step of: creating the single processor function to create each table entry to identify a number of input data arguments required by the associative function, an output of the associative function and descriptions of each input data argument and the output.
Claim 16
Dependent Claim 175 words
A software modeling system for creating a model during a modeling session, the model being formed from a plurality of design entities, the software modeling system comprising: a processor having a plurality of functions that are executed thereon to create the plurality of design entities that form the model; a user interface that responds to receipt of each one of a plurality of commands by calling a corresponding one of the plurality of functions; a wrapper around each of the plurality of functions that creates a corresponding plurality of associative functions, each of the associative functions including a call to its corresponding function, each of the associative functions further including means for creating and adding entries to a dependency representation when its corresponding function is executed during the modeling session, the dependency representation indicating dependencies of the plurality of design entities that form the design; and means for modifying the user interface so that in response to each received command, the associative function that corresponds to the function corresponding to the received command is called.
Claim 17
Dependent Claim 175 words
A software modeling system for creating a model during a modeling session, the model being formed from a plurality of design entities, the software modeling system comprising: a processor having a plurality of functions that are executed thereon to create the plurality of design entities that form the model; a user interface that responds to receipt of each one of a plurality of commands by calling a corresponding one of the plurality of functions; a wrapper around each of the plurality of functions that creates a corresponding plurality of associative functions, each of the associative functions including a call to its corresponding function, each of the associative functions further including means for creating and adding entries to a dependency representation when its corresponding function is executed during the modeling session, the dependency representation indicating dependencies of the plurality of design entities that form the design; and means for modifying the user interface so that in response to each received command, the associative function that corresponds to the function corresponding to the received command is called.
Claim 18
Dependent Claim 43 words
The software modeling system of claim 15, wherein the plurality of functions includes directed and non-directed operations and wherein the software modeling system further includes: means for creating the dependency representation to include design entities created by both the directed and non-directed operations.
Claim 19
Dependent Claim 22 words
The software modeling system of claim 15, further including: means for generating a standard programming language computer program from the dependency representation.
Claim 20
Dependent Claim 69 words
The software modeling system of claim 15, wherein the plurality of functions includes directed and non-directed operations; wherein the creating means includes means for creating the dependency representation to include design entities created by both the directed and non-directed operations; and wherein the software modeling system further includes means for representing at least two of the plurality of design entities in the dependency representation with a same hierarchical operator.
Claim 21
Dependent Claim 59 words
The software modeling system of claim 15, wherein the plurality of functions includes directed and non-directed operations; the creating means includes means for creating the dependency representation to include design entities created by both directed and non-directed operations; and wherein the software modeling system further includes means for graphically editing the dependency representation to create a modified dependency representation.
Claim 22
Dependent Claim 60 words
The software modeling system of claim 15, wherein the plurality of functions includes directed and non-directed operations; wherein the creating means includes means for creating the dependency representation to include design entities created by both directed and non-directed operations; and wherein the software modeling system further includes means for generating a standard programming language computer program from the dependency representation.
Claim 23
Dependent Claim 29 words
The software modeling system of claim 15, further including: means for displaying the dependency representation; and means for generating a standard programming language computer program from the dependency representation.
Claim 24
Dependent Claim 91 words
The software modeling system of claim 15, wherein the plurality of functions includes a first function that operates upon a first set of arguments formatted in a first format, and wherein the software modeling system further includes means for providing a first wrapper around the first function, the first wrapper being capable of receiving a second set of arguments formatted in a second format that is different from the first format, the first wrapper converting the second set of arguments into the first set of arguments when calling the first function.
Claim 25
Dependent Claim 48 words
The software modeling system as recited in claim 15, further comprising: means for, when a modification is made to the model, using the dependency representation to reevaluate only those functions used to create the model that correspond to the design entities affected by the modification to the model.
Claim 26
Dependent Claim 95 words
The software modeling system of claim 15, wherein the plurality of functions includes directed and non-directed operations; wherein the creating means includes means for creating the dependency representation to include design entities created by both directed and non-directed operations, and wherein the software modeling system further includes: means for representing at least two of the plurality of design entities in the dependency representation with a same hierarchical operator; means for graphically editing the dependency representation to create a modified dependency representation; and means for generating a standard programming language computer program from the dependency representation.
Claim 27
Dependent Claim 90 words
The software modeling system of claim 24, wherein the plurality of functions includes a first function that operates upon a set of arguments formatted in a first format, and wherein the software modeling system further includes means for providing a first wrapper around the first function, the first wrapper being capable of receiving a second set of arguments formatted in a second format that is different from the first format, the first wrapper converting the second set of arguments into the first set of arguments when calling the first function.
Claim 28
Dependent Claim 15 words
The software modeling system of claim 15, further including means for displaying the dependency representation.
Claim 29
Dependent Claim 20 words
The software modeling system of claim 26, wherein the means for displaying the dependency representation includes a visual programming environment.
Claim 30
Dependent Claim 30 words
The software modeling system of claim 26, further including: means for representing at least two of the plurality of design entities in the dependency representation with a same hierarchical operator.
Claim 31
Dependent Claim 22 words
The software modeling system of claim 26, further including: means for graphically editing the dependency representation to create a modified dependency representation.
Claim 32
Dependent Claim 20 words
The software modeling system of claim 29, further including: means for generating a modified design from the modified dependency representation.

References Cited (Backward Citations)

US5265197A Cited
US5327529A Cited
US5581672A Cited
US5603034A Cited
US5438659A Cited
US5479601A Cited
US5530864A Cited
US5325533A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-11-17 2001-05-19 2001-11-18 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-11-17 2005-05-19 2005-11-18 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-11-17 2009-05-19 2009-11-18 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag