Comprehension processes during large scale maintenance
ICSE '94 Proceedings of the 16th international conference on Software engineering
The ramp-up problem in software projects: a case study of how software immigrants naturalize
Proceedings of the 20th international conference on Software engineering
Expertise recommender: a flexible recommendation system and architecture
CSCW '00 Proceedings of the 2000 ACM conference on Computer supported cooperative work
Near-term memory in programming: a simulation-based analysis
International Journal of Human-Computer Studies
Expertise browser: a quantitative approach to identifying expertise
Proceedings of the 24th International Conference on Software Engineering
Proceedings of the 28th international conference on Software engineering
How Are Java Software Developers Using the Eclipse IDE?
IEEE Software
CSCW '06 Proceedings of the 2006 20th anniversary conference on Computer supported cooperative work
Using task context to improve programmer productivity
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
MSR '07 Proceedings of the Fourth International Workshop on Mining Software Repositories
Using Developer Activity Data to Enhance Awareness during Collaborative Software Development
Computer Supported Cooperative Work
Developers ask reachability questions
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1
A degree-of-knowledge model to capture source code familiarity
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1
Proceedings of the 2nd International Workshop on Emerging Trends in Software Metrics
Ownership, experience and defects: a fine-grained study of authorship
Proceedings of the 33rd International Conference on Software Engineering
Exploring a Bayesian and linear approach to requirements traceability
Information and Software Technology
On the difficulty of computing the truck factor
PROFES'11 Proceedings of the 12th international conference on Product-focused software process improvement
Don't touch my code!: examining the effects of ownership on software quality
Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
WhoseFault: automatic developer-to-fault assignment through fault localization
Proceedings of the 34th International Conference on Software Engineering
Egidio: a non-invasive approach for synthesizing organizational models
Proceedings of the 34th International Conference on Software Engineering
Documenting and sharing knowledge about code
Proceedings of the 34th International Conference on Software Engineering
Modeling the effects of project management strategies on long-term product knowledge
PROFES'12 Proceedings of the 13th international conference on Product-Focused Software Process Improvement
Concept location using formal concept analysis and information retrieval
ACM Transactions on Software Engineering and Methodology (TOSEM)
Bug report assignee recommendation using activity profiles
Proceedings of the 10th Working Conference on Mining Software Repositories
Using developer interaction data to compare expertise metrics
Proceedings of the 10th Working Conference on Mining Software Repositories
Degree-of-knowledge: Modeling a developer's knowledge of code
ACM Transactions on Software Engineering and Methodology (TOSEM)
Hi-index | 0.00 |
The practice of software development can likely be improved if an externalized model of each programmer's knowledge of a particular code base is available. Some tools already assume a useful form of such a model can be created from data collected during development, such as expertise recommenders that use information about who has changed each file to suggest who might answer questions about particular parts of a system. In this paper, we report on an empirical study that investigates whether a programmer's activity can be used to build a model of what a programmer knows about a code base. In this study, nineteen professional Java programmers completed a series of questionnaires about the code on which they were working. These questionnaires were generated automatically and asked about program elements a programmer had worked with frequently and recently and ones that he had not. We found that a degree of interest model based on this frequency and recency of interaction can often indicate the parts of the code base for which the programmer has knowledge. We also determined a number of factors that may be used to improve the model, such as authorship of program elements, the role of elements, and the task being performed.