P
US9009195B2ExpiredUtilityPatentIndex 50

Software framework that facilitates design and implementation of database applications

Assignee: DILLON DAVID MPriority: Apr 30, 2003Filed: Jun 17, 2008Granted: Apr 14, 2015
Est. expiryApr 30, 2023(expired)· nominal 20-yr term from priority
Inventors:DILLON DAVID M
Y10S707/99943Y10S707/99942G06F 16/252G06F 17/3056
50
PatentIndex Score
0
Cited by
16
References
14
Claims

Abstract

An intelligent framework is provided that is disposed between a high-level language environment and a database system environment. According to one embodiment, a software framework infers the need for one or more integrity constraints. The software framework programmatically receives (a) information regarding definitions of a multiple data structures associated with multiple objects participating in a software application, and (b) information regarding relationships among the data structures, where each object represents an instance of a data structure of the multiple data structures. Then, the software framework infers the need for one or more integrity constraints based upon the information regarding definitions of the data structures and the information regarding relationships among the data structures. Finally, the software framework instructs a storage system to apply the one or more integrity constraint.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A computer-implemented method comprising:
 automatically and programmatically receiving from a software application by an intelligent framework coupled between a high-level language environment and a storage system (a) information regarding definitions of a plurality of data structures associated with a plurality of objects participating in the software application, and (b) information regarding relationships among the plurality of data structures by interrogating the plurality of objects; 
 programmatically and dynamically generating a data definition expression (DDE) to define a structure of a data store inferred by the relationships; 
 causing the storage system to create the structure of the data store by directing the storage system based upon the data definition expression; 
 analyzing, by the intelligent framework, a plurality of compiled classes of a database application, the plurality of compiled classes associated with objects that are persisted in a data store of a storage system; 
 determining, by the intelligent framework, use of one or more database integrity constraints based upon said analyzed compiled classes; 
 configuring the storage system, by the intelligent framework, instructing the storage system to apply the one or more database integrity constraints; 
 wherein the intelligent framework is implemented in one or more processors and one or more non-transitory computer-readable storage media of one or more computer systems, the one or more non-transitory computer-readable storage media having instructions tangibly embodied therein representing the intelligent framework that are executable by the one or more processors. 
 
     
     
       2. The computer-implemented method of  claim 1 , wherein the plurality of compiled classes includes information regarding relationships among the plurality of complied classes. 
     
     
       3. The computer-implemented method of  claim 1 , wherein the DDE includes one or more statements comprising language statements associated with the storage system. 
     
     
       4. The computer-implemented method of  claim 2 , wherein the information regarding relationships is implemented as one or more properties of those of the plurality of compiled classes that embody the relationships. 
     
     
       5. The computer-implemented method of  claim 2 , wherein complex relationships among the plurality of compiled classes are supported, and include one or more of child, parent, peer, children, recursive peer, recursive parent, foreign parent, foreign child, and constant. 
     
     
       6. The computer-implemented method of  claim 1 , wherein the storage system comprises a relational database management system. 
     
     
       7. The computer-implemented method of  claim 3 , wherein the language statements comprise Structured Query Language (SQL) statements. 
     
     
       8. A program storage device readable by a computer system, tangibly embodying a program of instructions executable by one or more processors of the computer system to perform a method comprising:
 automatically and programmatically receiving from a software application by an intelligent framework coupled between a high-level language environment and a storage system (a) information regarding definitions of a plurality of data structures associated with a plurality of objects participating in the software application, and (b) information regarding relationships among the plurality of data structures by interrogating the plurality of objects; 
 programmatically and dynamically generating a data definition expression (DDE) to define a structure of a data store inferred by the relationships; 
 causing the storage system to create the structure of the data store by directing the storage system based upon the data definition expression; 
 analyzing a plurality of compiled classes of a database application, the plurality of compiled classes associated with objects that are persisted in a data store of the storage system; 
 determining whether to apply one or more database integrity constraints based upon said analyzed compiled classes; and 
 instructing the storage system to evaluate the one or more database integrity constraints during operations involving the objects. 
 
     
     
       9. The program storage device of  claim 8 , wherein the plurality of compiled classes includes information regarding relationships among the plurality of complied classes. 
     
     
       10. The program storage device of  claim 8 , wherein the DDE includes one or more statements comprising language statements associated with the storage system. 
     
     
       11. The program storage device of  claim 9 , wherein the information regarding relationships is implemented as one or more properties of those of the plurality of compiled classes that embody the relationships. 
     
     
       12. The program storage device of  claim 9 , wherein complex relationships among the plurality of compiled classes are supported, and include one or more of child, parent, peer, children, recursive peer, recursive parent, foreign parent, foreign child, and constant. 
     
     
       13. The program storage device of  claim 8 , wherein the storage system comprises a relational database management system. 
     
     
       14. The program storage device of  claim 10 , wherein the language statements comprise Structured Query Language (SQL) statements.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.