Nathan
Graphs in Software Development
●
●
●
●
●
●
●
●
●
●
●
●
●
●
○
○
○
○
○
●
○
○
○
○
●
●
●
○
●
●
○
○
AFFECTS
IMPLEMENTS
COMMITTED TO
RELATING TO
STATUS
PARENT OF
ASSIGNED
TO
REPORTED
AUTHO
RED
AFFECTED
CONTAINSHAS
IS
A
ISA
...
●
○
○
○
●
○
○
●
Example Query
//Targeted QA Component Change Report
MATCH (f:File)<-[:AFFECTED]-(c:Commit) -[:
RELATING_TO]->(i:Issue)
WHE...
●
○
○
●
○
○
//Bug commits ordered by number of files
affected
MATCH
(f:File)<-[:AFFECTED]-(c:Commit)-[:RELATING_TO]-
>(i:Issue{issueTy...
●
●
●
●
Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through Change Metrics) - NoSQL matters Dublin 2015
Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through Change Metrics) - NoSQL matters Dublin 2015
Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through Change Metrics) - NoSQL matters Dublin 2015
Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through Change Metrics) - NoSQL matters Dublin 2015
Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through Change Metrics) - NoSQL matters Dublin 2015
Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through Change Metrics) - NoSQL matters Dublin 2015
Nächste SlideShare
Wird geladen in …5
×

Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through Change Metrics) - NoSQL matters Dublin 2015

1.111 Aufrufe

Veröffentlicht am

While metrics generated by static code analysis are well established as predictors of possible future defects, there is another untapped source of useful information, namely your source code revision history. This presentation will discuss converting this revision information into a graph representation, various defect prediction models and how to generate their related change metrics through graph traversal, as well as the potential applications and benefits of these graph enabled prediction models.

Veröffentlicht in: Daten & Analysen
0 Kommentare
1 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

Keine Downloads
Aufrufe
Aufrufe insgesamt
1.111
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
15
Aktionen
Geteilt
0
Downloads
4
Kommentare
0
Gefällt mir
1
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through Change Metrics) - NoSQL matters Dublin 2015

  1. 1. Nathan
  2. 2. Graphs in Software Development ● ● ● ●
  3. 3. ● ● ● ● ● ● ●
  4. 4. ● ● ● ○ ○ ○ ○ ○ ● ○ ○ ○ ○
  5. 5. ● ● ● ○ ● ● ○ ○
  6. 6. AFFECTS IMPLEMENTS COMMITTED TO RELATING TO STATUS PARENT OF ASSIGNED TO REPORTED AUTHO RED AFFECTED CONTAINSHAS IS A ISA IS A HAS HAS BRANCH COMMIT COMPONENTPROJECT ISSUE OPEN ASSIGNEE REPORTE R AUTHOR PERSON DIRECTORY METRICS FILE
  7. 7. ● ○ ○ ○ ● ○ ○ ●
  8. 8. Example Query //Targeted QA Component Change Report MATCH (f:File)<-[:AFFECTED]-(c:Commit) -[: RELATING_TO]->(i:Issue) WHERE c.date > 1422748800000 AND c.date < 1429283945438 AND NOT ((f.name =~ '.*Test.*') OR (f.name =~ '.*.xml')) RETURN i.component,i.type,i.ref, count(DISTINCT c) AS commitCount, count(f) AS fileAffectedCount ORDER BY fileAffectedCount DESC,commitCount DESC LIMIT 25
  9. 9. ● ○ ○ ● ○ ○
  10. 10. //Bug commits ordered by number of files affected MATCH (f:File)<-[:AFFECTED]-(c:Commit)-[:RELATING_TO]- >(i:Issue{issueType:'Bug'}) WITH count(f) asfileCountForCommit,c,i RETURN c,i,fileCountForCommit ORDER BY fileCountForCommit DESC
  11. 11. ● ● ● ●

×