Program understanding: challenge for the 1990's
IBM Systems Journal
Program understanding and the concept assignment problem
Communications of the ACM
Experimentation in software engineering: an introduction
Experimentation in software engineering: an introduction
Software maintenance and evolution: a roadmap
Proceedings of the Conference on The Future of Software Engineering
Concern graphs: finding and describing concerns using structural program dependencies
Proceedings of the 24th International Conference on Software Engineering
The evolution matrix: recovering software evolution using software visualization techniques
IWPSE '01 Proceedings of the 4th International Workshop on Principles of Software Evolution
Locating Features in Source Code
IEEE Transactions on Software Engineering
Polymetric Views-A Lightweight Visual Approach to Reverse Engineering
IEEE Transactions on Software Engineering
Tree-Maps: a space-filling approach to the visualization of hierarchical information structures
VIS '91 Proceedings of the 2nd conference on Visualization '91
Version Control With Subversion
Version Control With Subversion
CVSscan: visualization of code evolution
SoftVis '05 Proceedings of the 2005 ACM symposium on Software visualization
JRipples: A Tool for Program Comprehension during Incremental Change
IWPC '05 Proceedings of the 13th International Workshop on Program Comprehension
ConcernMapper: simple view-based separation of scattered concerns
eclipse '05 Proceedings of the 2005 OOPSLA workshop on Eclipse technology eXchange
Representing concerns in source code
ACM Transactions on Software Engineering and Methodology (TOSEM)
SoQueT: Query-Based Documentation of Crosscutting Concerns
ICSE '07 Proceedings of the 29th international conference on Software Engineering
IEEE Transactions on Software Engineering
Evolving software product lines with aspects: an empirical study on design stability
Proceedings of the 30th international conference on Software engineering
Visualizing Co-Change Information with the Evolution Radar
IEEE Transactions on Software Engineering
FLAT3: feature location and textual tracing tool
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 2
On the proactive identification of mistakes on concern mapping tasks
Proceedings of the tenth international conference on Aspect-oriented software development companion
Revealing Mistakes in Concern Mapping Tasks: An Experimental Evaluation
CSMR '11 Proceedings of the 2011 15th European Conference on Software Maintenance and Reengineering
Aspect recommendation for evolving software
Proceedings of the 33rd International Conference on Software Engineering
Software systems as cities: a controlled experiment
Proceedings of the 33rd International Conference on Software Engineering
A Controlled Experiment for Program Comprehension through Trace Visualization
IEEE Transactions on Software Engineering
Software Evolution Comprehension: Replay to the Rescue
ICPC '11 Proceedings of the 2011 IEEE 19th International Conference on Program Comprehension
Software evolution visualization: A systematic mapping study
Information and Software Technology
Hi-index | 0.00 |
Program comprehension is a key activity through maintenance and evolution of large-scale software systems. The understanding of a program often requires the evolution analysis of individual functionalities, so-called features. The comprehension of evolving features is not trivial as their implementations are often tangled and scattered through many modules. Even worse, existing techniques are limited in providing developers with direct means for visualizing the evolution of featuresâ聙聶 code. This work presents a proactive and interactive visualization strategy to enable feature evolution analysis. It proactively identifies code elements of evolving features and provides multiple views to present their structure under different perspectives. The novel visualization strategy was compared to a lightweight visualization strategy based on a tree-structure. We ran a controlled experiment with industry developers, who performed feature evolution comprehension tasks on an industrial-strength software. The results showed that the use of the proposed strategy presented significant gains in terms of correctness and execution time for feature evolution comprehension tasks.