US 7,614,040 B2
System and method for efficiently analyzing and building interdependent resources in a software project
Timothy Allen Wagner, Seattle, Wash. (US); and Jess Garms, Seattle, Wash. (US)
Assigned to BEA Systems, Inc., San Jose, Calif. (US)
Filed on Nov. 08, 2004, as Appl. No. 10/983,766.
Claims priority of provisional application 60/573087, filed on May 22, 2004.
Prior Publication US 2005/0262482 A1, Nov. 24, 2005
Int. Cl. G06F 9/44 (2006.01); G06F 9/45 (2006.01); G06F 9/46 (2006.01)
U.S. Cl. 717—120  [717/121; 717/122; 717/144; 717/145; 717/168; 718/106] 21 Claims
OG exemplary drawing
 
1. A computer readable storage memory for storing data for access by an application program being executed on a data processing system, comprising:
a data structure stored in said memory, said data structure including information that embodies resource dependency relationships of a plurality of resources used by said application program and including:
a plurality of nodes stored in said memory, each of said nodes representing information pertaining to one of: a resource of the plurality of resources and an entity that logically contains a resource of the plurality of resources;
one or more referent attributes for each of said nodes, wherein each referent attribute of the one or more referent attributes unidirectionally associates a first node of the plurality of nodes with a second node of the plurality of nodes, and wherein the resource or entity of the first node is dependent on the resource or entity of the second node; and
wherein a node in the plurality of nodes representing an entity that logically contains a resource is resolved to the resource when the definition of the resource is discovered;
a type differencing component capable of determining, for a first software resource that is modified, whether the modification is visible externally so that the modification is referenced by a second software resource; and
an ordered task set capable of scheduling tasks associated with the plurality of resources such that there are no duplicate tasks, wherein said ordered task set contains a list of tasks to be executed based on a modification of the resource dependency relationships of the plurality of resources, and wherein a task of the list of tasks can perform one of:
analysis of a resource associated with the task; and
building of a resource associated with the task.