A Case Study on Recommending Software Components using Collaborative Filtering
Mel Ó Cinnéide Frank McCarey Nicholas Kushmerick University College Dublin - Ireland frank.mccarey@ucd.ie May 2004
A Case Study on Recommending Software Components using Collaborative - - PowerPoint PPT Presentation
A Case Study on Recommending Software Components using Collaborative Filtering Mel Cinnide Frank McCarey Nicholas Kushmerick University College Dublin - Ireland frank.mccarey@ucd.ie May 2004 Introduction ! Software Reuse is
Mel Ó Cinnéide Frank McCarey Nicholas Kushmerick University College Dublin - Ireland frank.mccarey@ucd.ie May 2004
May 2004 Mining Software Repositories - ICSE 2004 2
May 2004 Mining Software Repositories - ICSE 2004 3
May 2004 Mining Software Repositories - ICSE 2004 4
May 2004 Mining Software Repositories - ICSE 2004 5
May 2004 Mining Software Repositories - ICSE 2004 6
May 2004 Mining Software Repositories - ICSE 2004 7
May 2004 Mining Software Repositories - ICSE 2004 8
Class A
classA{ void method1(){ Button b; b.setText("Button"); b.setAlignmentX(10); b.setAlignmentY(10); } }
Class B
classB{ void method1(){ JMenu m = new JMenu(); m.setAlignmentX(10); m.setAlignmentY(20); m.setToolTipText("TT"); } }
Active User
Class C
classC{ void method1(){ Button b; b.setText("Button"); b.setAlignmentX(10); .... ? } }
May 2004 Mining Software Repositories - ICSE 2004 9
May 2004 Mining Software Repositories - ICSE 2004 10
May 2004 Mining Software Repositories - ICSE 2004 11
Method 1 Method 2 Method 3 Method 4 Method 5 Method 6 Method 7 Method 8
0 2 1 0 5 1 0 0
User A
May 2004 Mining Software Repositories - ICSE 2004 12
May 2004 Mining Software Repositories - ICSE 2004 13
May 2004 Mining Software Repositories - ICSE 2004 14
Class A
classA{ void method1(){ Button b; b.setText("Button"); b.setAlignmentX(10); b.setAlignmentY(10); } }
Class A
classA{ void method1(){ Button b; b.setText("Button"); b.setAlignmentX(10); Get Neighbours Recommendations } }
Class A
classA{ void method1(){ Button b; b.setText("Button"); Get Neighbours Recommendations } }
Original Class Remove & Recommend Remove & Recommend 66% components known 33% components known
May 2004 Mining Software Repositories - ICSE 2004 15
May 2004 Mining Software Repositories - ICSE 2004 16
10 20 30 40 50 60 70 80 10 20 30 40 50 60 70 80 90 100 Known Components (%) Precision (%)
Top 100 Classes All Classes
May 2004 Mining Software Repositories - ICSE 2004 17
Precision V Recall 10 20 30 40 50 60 70 80 20 40 60 80 100
Recall (%) Precision (%)
May 2004 Mining Software Repositories - ICSE 2004 18
May 2004 Mining Software Repositories - ICSE 2004 19
May 2004 Mining Software Repositories - ICSE 2004 20
Mel Ó Cinnéide Frank McCarey Nicholas Kushmerick University College Dublin - Ireland. frank.mccarey@ucd.ie May 2004