Clustering and Recommending Collections of Code Relevant to Tasks

Seonah Lee and Sungwon Kang September 28, 2011

Introduction

Task Relevance

Proposed Approach

Evaluation

Conclusion

 While performing software evolution tasks,  Programmers seek for pieces of code

which may related to a required change [Letovsky 1986] [Ko 2005]

 When reaching an impasse, programmers ask

other programmers [Cherubini 2007]  Asking another programmer causes

communication overheads which decrease team productivity [Brooks 1974], [McConnel 2004] ICSM ERA 2011

2

introduction

Task Relevance

Proposed Approach Evaluation Conclusion

 Q: How to automatically recommend pieces of

code relevant to tasks?  Count the frequencies

of pieces of code over a period of time  Mylyn  [Kersten 2006]

Required a programmer‘s manual indication of a task

 Determine associations

between pieces of code  ROSE  [Zimmermann 2004]

 TeamTrack  [DeLine 2005] Limited to recommending co-changed / co-visited pieces of code 3

introduction

Task Relevance

Proposed Approach Evaluation Conclusion

 Task Relevance  Whether a code element is needed by a programmer

who performs the evolution task

 Four degrees of the task relevance of a code

element  [S]  [H]  [M]  [L] ICSM ERA 2011

is needed to change is needed to understand can be useful for understanding the context exists in the same file that contains [S][H]&[M] code elements: i.e., methods, fields, classes … 4

introduction

Task Relevance

Proposed Approach Evaluation Conclusion

 Two Principles to mine collections of code

relevant to tasks  Relevance by Frequency  The code elements that programmers frequently visited are likely to be highly relevant to the tasks of the programmers  Relevance by Context  If a code element of a navigation sequence is highly relevant to a task, it is likely that the other code elements in the same navigation sequence are relevant to the same task

ICSM ERA 2011

5

introduction Task Relevance

Proposed Approach Evaluation Conclusion

 To cluster collections of code relevant to tasks  We consider visit frequency of code elements and

navigation sequences of code elements

Interaction Traces Recommendation Segmentation Micro-clustering Macro-clustering ICSM ERA 2011

Collections of code elements

6

introduction Task Relevance

Proposed Approach Evaluation Conclusion

 To recommend collections of code relevant to

tasks, we retrieve a collection that contains the greatest number of elements that a programmer has recently visited. a, b, c, a, b, d, b, d … {c, d} (a, b, c), (a, b, d), (b, d… { (a, 2), (b, 2), (c, 1) , (d, 1)} { (a, 2), (b, 2) …}  {(b, 2), (d, 2) …} ICSM ERA 2011

{ (b, 5), (a, 3), (d,3), (c, 2)} { (e, 2), (f, 4), (c, 2), (g, 1) }

7

introduction Task Relevance

Proposed Approach

Evaluation

Conclusion

 Simulate code recommendations with

Experimental Data  The interaction traces where twelve programmers

performed four different tasks [Safer 2007]  Training Set: 8 traces, Test Set: 4 traces

 Compare the state-of-art approach, TeamTracks  Four degrees of the task relevance  [S]: 23, [H]: 22, [M]: 21, [L] :20

ICSM ERA 2011

8

introduction Task Relevance

Evaluation

Proposed Approach

Conclusion

EXAMPLE: RECOMMENDATION RESULTS Rank

1st 2nd 3rd 4th 5th 6th 7th 8th 9th 10th

Ideal CG S2a H2b H2c H2d H2e H2f M2g M2h M2i M2j NavClus H2b H2d S2a H2c L2s M2o M2k M2m L2x L2y V.Team- - S2a Tracks E.Team- H2b H2c L2s Tracks

-

-

H2b

-

H2d

-

-

Cumulative Gain (CG)  Sum the degrees of

task relevance of the recommended elements by nth rank ICSM ERA 2011

9

introduction Task Relevance

Proposed Approach

Evaluation

Conclusion

 We proposed NavClus, a novel approach that

clusters collections of code that could be relevant to a programmer’s given task  We demonstrated that NavClus recommends

code elements relevant to tasks with high task relevancy

ICSM ERA 2011

10

Clustering and Recommending Collections of Code ...

Sep 28, 2011 - If a code element of a navigation sequence is highly relevant to a task, it is likely that the other code elements in the same navigation sequence are relevant to the same task. ICSM ERA 2011. 5. Task Relevance introduction. Proposed Approach Evaluation Conclusion ...

507KB Sizes 0 Downloads 202 Views

Recommend Documents

Recommending Source Code Examples via API Call ...
Popular libraries like file I/O, network, and GUI are generally used in many different ... recommendation system connects queries to code by matching them to API ...

Recommending Tours and Places-of-Interest based on ...
*Department of Computing and Information Systems, The University of Melbourne, Australia. †Victoria ... travel sequences of a user based on his/her geo-tagged.

Automatically Finding and Recommending Resources ...
With an increased number of tasks and task switches, it becomes more and ...... to a user's interest. The predictor trained with descriptions has a smaller bias,.

Stationarity and Regularity of Infinite Collections of Sets
Outline. 1. Finite Collections. Extremal Collection of Sets. Extremal Principle. Stationarity vs Regularity. 2. Infinite Collections. Stationarity vs Regularity. Intersection Rule. Alexander Kruger (University of Ballarat). Stationarity and Regularit

Online Training Resources Data bases and collections of training ...
The Internet Resources Digest (previously – Health Resources Digest) is distributed free of charge as a service of the American International Health ... credit is given to the AIHA as the source of the document. ... founding collaborators and funde

Using collections - iDigBio
17+ species new to that basin list. ... Biota list expanded;. • Herbarium collection ... including GBIF, Calflora, BISON, California Consortium of Herbaria (CCH),.

Stamp Collections for Sale
$360. 1419. UNITED NATIONS, New York and Geneva, Issues to 1975, most all mint, Never hinged. housed in Scott. 1½ inch Specialty 2-post binder. Collection ...

Online Training Resources Data bases and collections of training ...
The web-site provides Global Health Education Resources – a wide variety of resources, developed by experts in global ... provides free access to the content of the School's most popular courses on the following topics: ..... URL: http://jama.ama-a

Online Training Resources Data bases and collections of training ...
1 or 2 a day) on a regular schedule via email, the Web or RSS. They can be .... URL: http://learning.bmj.com/learning/modules.html?action=listAllFreeModules. TEACH-VIP ... available that can add to the time needed to finish a lesson.

Wiley Essentials of Credit, Collections, and Accounts Receivable.pdf ...
Retrying... Wiley Essentials of Credit, Collections, and Accounts Receivable.pdf. Wiley Essentials of Credit, Collections, and Accounts Receivable.pdf. Open.

pdf-12115\essentials-of-credit-collections-and-accounts-receivable ...
Try one of the apps below to open or edit this item. pdf-12115\essentials-of-credit-collections-and-accounts-receivable-text-only1st-first-edition.pdf.

Fast Clustering of Gaussians and the Virtue of ...
A clustering map c : G→C. • Exponential model parameters θc, c ∈ C for each of the cluster gaussians. We shall measure the goodness of the clustering in terms.

Recommending and Planning Trip Itineraries for ...
resources available for tour planning, there still exist chal- lenges such as: (i) many ..... search and Data Mining (WSDM'14), 313–322. Hu, L.; Cao, J.; Xu, G.; ...

JAVA COLLECTIONS INTERVIEW QUESTIONS AND ANSWERS.pdf
JAVA COLLECTIONS INTERVIEW QUESTIONS AND ANSWERS.pdf. JAVA COLLECTIONS INTERVIEW QUESTIONS AND ANSWERS.pdf. Open. Extract.

Recommending Method Invocation Context Changes
ist that find bugs by mining error patterns in source code. For instance, Livshits and ... leverages context change data to suggest corresponding mod- ifications when a ... Eclipse and provides visual feedback in the source code. By integrating ...

Recommending Method Invocation Context Changes - Amazon AWS
Keywords: Software evolution, source code change types, change patterns, context changes, change ... That means, they find project-specific er-. Permission to make digital or hard copies of all or part of this ..... mander on a set of open-source sof

Using collections - iDigBio
Master's thesis (Krimmel, 2014). •. Collections Activity Report, 2014 (Krimmel, 2014). ... MEANINGFUL. UNIVERSITY MISSION: • RESEARCH. • EDUCATION.

Collections II
Hash Maps give us direct access to a given object based on a unique key value. HashMap Class. Collections. Page 5. HashMap Class example. Collections. 251032 235645 202978 354687. Unique key value. studentList HashMap. Page 6. HashMap instantiation.

Kernel-Based Visualization of Large Collections of ...
dress the problem of learning a matrix kernel for involving domain knowledge, they are not focused ..... proposed strategy is based on a supervised machine learning technique called ... Master's thesis, National University of Colombia, 2008. 2.