On generating cognitive patterns of software comprehension
CASCON '05 Proceedings of the 2005 conference of the Centre for Advanced Studies on Collaborative research
Towards evidence-supported, question-directed collaborative program comprehension
CASCON '06 Proceedings of the 2006 conference of the Center for Advanced Studies on Collaborative research
Research methods in computing: what are they, and how should we teach them?
ITiCSE-WGR '06 Working group reports on ITiCSE on Innovation and technology in computer science education
New Frontiers of Reverse Engineering
FOSE '07 2007 Future of Software Engineering
Journal of Systems and Software
ICER '08 Proceedings of the Fourth international Workshop on Computing Education Research
The effect of task order on the maintainability of object-oriented software
Information and Software Technology
Science of Computer Programming
Patterns for understanding frameworks
Proceedings of the 15th Conference on Pattern Languages of Programs
Information Sciences: an International Journal
Towards automatically generating summary comments for Java methods
Proceedings of the IEEE/ACM international conference on Automated software engineering
Package Fingerprints: A visual summary of package interface usage
Information and Software Technology
Jype - a program visualization and programming exercise tool for Python
Proceedings of the 5th international symposium on Software visualization
Program slice distribution functions
Winter Simulation Conference
Categorization of concerns: a categorical program comprehension model
Proceedings of the 3rd ACM SIGPLAN workshop on Evaluation and usability of programming languages and tools
Empirical Software Engineering
Proceedings of the ACM international symposium on New ideas, new paradigms, and reflections on programming and software
Merits and pitfalls of programming learning objects: a pilot study
Proceedings of the 10th International Conference on Advances in Mobile Computing & Multimedia
Answering software evolution questions: An empirical evaluation
Information and Software Technology
Hi-index | 0.00 |
Program comprehension research can be characterized by both the theories that provide rich explanations about how programmers comprehend software, as well as the tools that are used to assist in comprehension tasks.During this talk I will review some of the key cognitive theories of program comprehension that have emerged over the past thirty years.Using these theories as a canvas, I will then explore how tools that are popular today have evolved to support program comprehension.Specifically, I will discuss how the theories and tools are related and reflect on the research methods that were used to construct the theories and evaluate the tools.The reviewed theories and tools will be further differential according to human characteristics, program characteristics, and the context for the various comprehension tasks.Finally, I will predict how these characteristics will change in the future and speculate on how a number of important research directions could lead to improvements in program comprehension tools and methods.