
doi: 10.15439/2015f301
Context: Developers possess mental models containing information far beyond what is explicitly captured in the source code. Objectives: We investigate the possibility to use source code annotations to capture parts of the developers' mental models and later reuse them by other programmers during program comprehension and maintenance. Method: We performed two studies and a controlled experiment. Results: Developers' mental models overlap and thus can be shared. Possible use cases of shared annotations are hypotheses confirmation, feature location, obtaining new knowledge, finding relationships and maintenance notes. In the experiment, the presence of annotations reduced program comprehension and maintenance time by 34%. Conclusion: Annotations are a viable way to share programmers' thoughts.
Electronic computers. Computer science, Information technology, QA75.5-76.95, T58.5-58.64
Electronic computers. Computer science, Information technology, QA75.5-76.95, T58.5-58.64
| selected citations These citations are derived from selected sources. This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | 7 | |
| popularity This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network. | Average | |
| influence This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | Top 10% | |
| impulse This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network. | Top 10% |
