DISCOVERING AND EXPLOITING RELATIONSHIPS IN SOFTWARE REPOSITORIES
First Claim
1. One or more computer-readable storage media having instructions stored thereon that, when executed, perform acts comprising:
- identifying paths in a graph, wherein one or more of the identified paths are defined by a set of regular expressions, and wherein nodes of the graph represent software development items and are separated by edges describing relationships between nodes;
computing probability scores for the identified paths; and
storing path data for the identified paths in a searchable location accessible by one or more applications, wherein the path data includes the computed probability scores.
2 Assignments
0 Petitions
Accused Products
Abstract
Software development items can be represented in a graph data structure. Relationships between the represented items can be detected and reflected in the graph data structure. Queries can be run against the data structure to determine which software development items are related to each other. Implicit query can be implemented in a software development context. A graph browser can present panes showing related items.
In some embodiments, a set of regular expressions can be used to identify paths in a graph. Probability scores for the identified paths can be computed. Path data for the identified paths, including the probability scores, can be stored in a searchable location accessible by one or more applications. A query of the path data can be processed to return query results associated with at least one of the identified paths.
164 Citations
20 Claims
-
1. One or more computer-readable storage media having instructions stored thereon that, when executed, perform acts comprising:
-
identifying paths in a graph, wherein one or more of the identified paths are defined by a set of regular expressions, and wherein nodes of the graph represent software development items and are separated by edges describing relationships between nodes; computing probability scores for the identified paths; and storing path data for the identified paths in a searchable location accessible by one or more applications, wherein the path data includes the computed probability scores. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A platform comprising:
-
a graph builder configured to represent software development items as nodes of a graph and to detect relationships between individual nodes of the graph; a graph analysis module configured to utilize a set of one or more user-defined regular expressions to compute path data for paths of the graph, wherein one or more of the paths are defined by an individual user-defined regular expression, and wherein individual paths comprise two or more of the nodes and at least one edge describing at least one of the relationships; and a query module configured to; receive a query; and responsive to receiving the query, search the path data and return query results describing at least one of the paths. - View Dependent Claims (11, 12, 13, 14)
-
-
15. One or more computer-readable storage media having instructions stored thereon that, when executed, perform acts comprising:
-
providing path data for a graph based on a set of regular expressions, wherein providing the path data comprises; identifying paths of the graph, wherein at least one of the identified paths is defined by an individual regular expression of the set, and wherein the identified paths include nodes representing software development items and edges describing relationships between individual nodes; computing probability scores for individual identified paths; identifying additional paths, wherein individual identified additional paths comprise two or more of the identified paths; and computing additional probability scores for the identified additional paths based on the computed probability scores; and processing a query of the path data to return query results that satisfy the query, wherein processing the query comprises ranking multiple nodes to be returned in the query results based at least in part on one or more of the computed probability scores or computed additional probability scores. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification