Stacksplorer: call graph navigation helps increasing code maintenance efficiency
Abstract
We present Stacksplorer, a new tool to support source code navigation and comprehension. Stacksplorer computes the call graph of a given piece of code, visualizes relevant parts of it, and allows developers to interactively traverse it. This augments the traditional code editor by offering an additional layer of navigation. Stacksplorer is particularly useful to understand and edit unknown source code because branches of the call graph can be explored and backtracked easily. Visualizing the callers of a method reduces the risk of introducing unintended side effects. In a quantitative study, programmers using Stacksplorer performed three of four software maintenance tasks significantly faster and with higher success rates, and Stacksplorer received a System Usability Scale rating of 85.4 from participants.
Integrity signals
Registry
Cites
Statistics
Claims the paper makes
Claims other papers make about this one
Each is checked against this paper’s own text: does it say what the citing paper says it does?
Software engineering researchers have produced tools that help reduce developers' navigation costs.
“These and other findings about developers' foraging and navigations (e.g., [26,31,37,44]) have led software engineering researchers to produce tools that help to reduce developers' navigation costs as they look for the information they need [8,17,18,19,22,30,33,43].”
From Foraging and navigations, fundamentally: developers' predictions of value and cost (2016) · cites this paper as [18]
Cites
SUS: A 'Quick and Dirty' Usability Scale
(1996) · Usability Evaluation In Industry · doi:10.1201/9781498710411-35 · Cited by 8,989 · see citing works
Software engineering: A practitioner's approach
(1983) · Advances in Engineering Software (1978) · doi:10.1016/0141-1195(83)90118-3 · Cited by 8,227 · see citing works
An Empirical Evaluation of the System Usability Scale
Bangor, A., Kortum, P. T., & Miller, J. T. (2008) · International Journal of Human–Computer Interaction · doi:10.1080/10447310802205776 · Cited by 5,181 · see citing works
Furnas, G. W. (1986) · ACM SIGCHI Bulletin · doi:10.1145/22339.22342 · Cited by 1,640 · see citing works
Graph visualization and navigation in information visualization: A survey
Herman, I., Mélançon, G., & Marshall, M. S. (2000) · IEEE Transactions on Visualization and Computer Graphics · doi:10.1109/2945.841119 · Cited by 1,559 · see citing works
Elements of the Theory of Computation
Lewis, H. R., & Papadimitriou, C. H. (1998) · ACM SIGACT News · doi:10.1145/300307.1040360 · Cited by 1,040 · see citing works
Furnas, G. W. (1986) · ACM SIGCHI Conference on Human Factors in Computing Systems (CHI) · doi:10.1145/22627.22342 · Cited by 892 · see citing works
Ko, A. J., Myers, B. A., Coblenz, M. J., & Aung, H. H. (2006) · IEEE Transactions on Software Engineering · doi:10.1109/tse.2006.116 · Cited by 685 · see citing works
Maintaining mental models: a study of developer work habits
LaToza, T. D., Venolia, G., & DeLine, R. (2006) · Proceedings of the 28th international conference on Software engineering · doi:10.1145/1134285.1134355 · Cited by 628 · see citing works
How are Java software developers using the Eclipse IDE?
Murphy, G. C., Kersten, M., & Findlater, L. (2006) · IEEE Software · doi:10.1109/ms.2006.105 · Cited by 413 · see citing works
Asking and Answering Questions during a Programming Change Task
Sillito, J., Murphy, G. C., & Volder, K. D. (2008) · IEEE Transactions on Software Engineering · doi:10.1109/tse.2008.26 · Cited by 320 · see citing works
Hipikat: recommending pertinent software development artifacts
Čubranić, D., & Murphy, G. C. (2003) · doi:10.5555/776816.776866 · Cited by 317 · see citing works
Constructing the Call Graph of a Program
Ryder, B. G. (1979) · IEEE Transactions on Software Engineering · doi:10.1109/tse.1979.234183 · Cited by 305 · see citing works
Kersten, M. A., & Murphy, G. C. (2005) · International Conference on Aspect-Oriented Software Development (AOSD) · doi:10.1145/1052898.1052912 · Cited by 299 · see citing works
Debugging reinvented: asking and answering why and why not questions about program behavior
Ko, A. J., & Myers, B. A. (2008) · Proceedings of the 30th international conference on Software engineering · doi:10.1145/1368088.1368130 · Cited by 296 · see citing works
How effective developers investigate source code: an exploratory study
Robillard, M. P., Coelho, W., & Murphy, G. C. (2004) · IEEE Transactions on Software Engineering · doi:10.1109/tse.2004.101 · Cited by 263 · see citing works
Code bubbles: a working set-based interface for code understanding and maintenance
Bragdon, A., Zeleznik, R., Reiss, S. P., Karumuri, S., Cheung, W., Kaplan, J., Coleman, C., Adeputra, F., & LaViola, J. J. (2010) · Proceedings of the SIGCHI Conference on Human Factors in Computing Systems · doi:10.1145/1753326.1753706 · Cited by 174 · see citing works
Developers ask reachability questions
LaToza, T. D., & Myers, B. A. (2010) · Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1 · doi:10.1145/1806799.1806829 · Cited by 145 · see citing works
Easing Program Comprehension by Sharing Navigation Data
DeLine, R. A., Czerwinski, M. P., & Robertson, G. G. (2005) · IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC) · doi:10.1109/vlhcc.2005.32 · Cited by 125 · see citing works
NavTracks: supporting navigation in software maintenance
Singer, J., Elves, R., & Storey, M.-A. (2005) · IEEE International Conference on Software Maintenance (ICSM) · doi:10.1109/icsm.2005.66 · Cited by 119 · see citing works
On-line Animated Visualization of Huge Graphs using a Modified Spring Algorithm
Huang, M. L., Eades, P., & Wang, J. (1998) · Journal of Visual Languages & Computing · doi:10.1006/jvlc.1998.0094 · Cited by 95 · see citing works
Using information scent to model the dynamic foraging behavior of programmers in maintenance tasks
Lawrance, J., Bellamy, R., Burnett, M., & Rector, K. (2008) · Proceedings of the SIGCHI Conference on Human Factors in Computing Systems · doi:10.1145/1357054.1357261 · Cited by 76 · see citing works
Code Thumbnails: Using Spatial Memory to Navigate Source Code
DeLine, R. A., Czerwinski, M. P., Meyers, B. R., Venolia, G. D., Drucker, S. M., & Robertson, G. G. (2006) · IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC) · doi:10.1109/vlhcc.2006.14 · Cited by 61 · see citing works
A Comparative Study of Three Program Exploration Tools
de Alwis, B., Murphy, G. C., & Robillard, M. P. (2007) · IEEE International Conference on Program Comprehension (ICPC) · doi:10.1109/icpc.2007.6 · Cited by 32 · see citing works
LaToza, T. D., & Myers, B. A. (2010) · doi:10.1145/1809175.1809183 · Cited by 2 · see citing works
Flagged first, then by citations
Cited by
Sorted by citations
Automatic documentation generation via source code summarization of method context
McBurney, P. W., & McMillan, C. (2014) · International Conference on Program Comprehension · doi:10.1145/2597008.2597149 · Cited by 217 · see citing works
Automatic Source Code Summarization of Context for Java Methods
McBurney, P. W., & McMillan, C. (2015) · IEEE Transactions on Software Engineering · doi:10.1109/tse.2015.2465386 · Cited by 179 · see citing works
Abouzied, A., Hellerstein, J. M., & Silberschatz, A. (2012) · ACM Symposium on User Interface Software and Technology (UIST) · doi:10.1145/2380116.2380144 · Cited by 53 · see citing works
In situ understanding of performance bottlenecks through visually augmented code
Beck, F., Moseler, O., Diehl, S., & Rey, G. D. (2013) · International Conference on Program Comprehension · doi:10.1109/icpc.2013.6613834 · Cited by 50 · see citing works
To fix or to learn? How production bias affects developers' information foraging during debugging
Piorkowski, D., Fleming, S. D., Scaffidi, C. P., Burnett, M., Kwan, I., Henley, A. Z., Macbeth, J., Hill, C., & Horvath, A. (2015) · IEEE International Conference on Software Maintenance (ICSM) · doi:10.1109/icsm.2015.7332447 · Cited by 37 · see citing works
Foraging and navigations, fundamentally: developers' predictions of value and cost
Piorkowski, D., Henley, A. Z., Nabi, T., Fleming, S. D., Scaffidi, C., & Burnett, M. (2016) · Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering · doi:10.1145/2950290.2950302 · Cited by 38 · see citing works
Programmer eXperience: A Systematic Literature Review
Morales, J., Rusu, C., Botella, F., & Quiñones, D. (2019) · IEEE Access · doi:10.1109/access.2019.2920124 · Cited by 38 · see citing works
CcNav: Understanding Compiler Optimizations in Binary Code
Devkota, S., Aschwanden, P. D., Kunen, A., Legendre, M., & Isaacs, K. E. (2020) · IEEE Transactions on Visualization and Computer Graphics · doi:10.1109/tvcg.2020.3030357 · Cited by 34 · see citing works
Enhancing Cross-Device Interaction Scripting with Interactive Illustrations
Chi, P.-Y., Li, Y., & Hartmann, B. (2016) · CHI Conference on Human Factors in Computing Systems · doi:10.1145/2858036.2858382 · Cited by 28 · see citing works
Self-citationHow tools in IDEs shape developers' navigation behavior
Krämer, J.-P., Karrer, T., Kurz, J., Wittenhagen, M., & Borchers, J. (2013) · CHI Conference on Human Factors in Computing Systems · doi:10.1145/2470654.2466419 · Cited by 15 · see citing works
Self-citationFlower: Navigating program flow in the IDE
Smith, J., Brown, C., & Murphy-Hill, E. R. (2017) · IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC) · doi:10.1109/vlhcc.2017.8103445 · Cited by 12 · see citing works
Toward Principles for the Design of Navigation Affordances in Code Editors
Henley, A. Z., Fleming, S. D., & Luong, M. V. (2017) · CHI Conference on Human Factors in Computing Systems · doi:10.1145/3025453.3025645 · Cited by 11 · see citing works
Krämer, J.-P., Kurz, J., Karrer, T., & Borchers, J. (2012) · CHI Conference Extended Abstracts on Human Factors in Computing Systems (CHI EA) · doi:10.1145/2212776.2223775 · Cited by 10 · see citing works
Self-citationChi, P.-Y., Hu, S.-P., & Li, Y. (2018) · CHI Conference on Human Factors in Computing Systems · doi:10.1145/3173574.3174029 · Cited by 10 · see citing works
ChangeViz: Enhancing the GitHub Pull Request Interface with Method Call Information
Gasparini, L., Fregnan, E., Braz, L., Baum, T., & Bacchelli, A. (2021) · IEEE Working Conference on Software Visualization (VISSOFT) · doi:10.1109/vissoft52517.2021.00022 · Cited by 10 · see citing works
Context-aware code summary generation
Su, C., Bansal, A., Huang, Y., Li, T. J.-J., & McMillan, C. (2025) · Journal of Systems and Software · doi:10.1016/j.jss.2025.112580 · Cited by 17 · see citing works
A Field Study on Fostering Structural Navigation with Prodet
Augustine, V., Francis, P., Qu, X., Shepherd, D. C., Snipes, W., Bräunlich, C., & Fritz, T. (2015) · ACM/IEEE International Conference on Software Engineering: Companion Proceedings (ICSE-Companion) · doi:10.1109/icse.2015.151 · Cited by 9 · see citing works
The VIVIDE programming environment
Taeumel, M., Steinert, B., & Hirschfeld, R. (2012) · ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (Onward!) · doi:10.1145/2384592.2384604 · Cited by 8 · see citing works
Labeling Source Code with Metadata: A Survey and Taxonomy
Sulír, M., & Porubän, J. (2017) · Annals of Computer Science and Information Systems · doi:10.15439/2017f229 · Cited by 8 · see citing works
An Interactive System for Data Structure Development
Ou, J., Vechev, M., & Hilliges, O. (2015) · CHI Conference on Human Factors in Computing Systems · doi:10.1145/2702123.2702319 · Cited by 7 · see citing works
Mining Software Information Sites to Recommend Cross-Language Analogical Libraries
Nafi, K. W., Asaduzzaman, M., Roy, B., Roy, C. K., & Schneider, K. A. (2022) · IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER) · doi:10.1109/saner53432.2022.00109 · Cited by 6 · see citing works
Spike – A code editor plugin highlighting fine-grained changes
Escobar, R., Alcocer, J. P. S., Tarner, H., Beck, F., & Bergel, A. (2022) · IEEE Working Conference on Software Visualization (VISSOFT) · doi:10.1109/vissoft55257.2022.00026 · Cited by 6 · see citing works
An Empirical Evaluation of Models of Programmer Navigation
Singh, A., Henley, A. Z., Fleming, S. D., & Luong, M. V. (2016) · IEEE International Conference on Software Maintenance (ICSM) · doi:10.1109/icsme.2016.84 · Cited by 5 · see citing works
Inclusive Multimodal Voice Interaction for Code Navigation
Paudyal, B., Creed, C., Williams, I., & Frutos-Pascual, M. (2022) · INTERNATIONAL CONFERENCE ON MULTIMODAL INTERACTION · doi:10.1145/3536221.3556600 · Cited by 5 · see citing works
How Does This New Developer Test Fit In? A Visualization to Understand Amplified Test Cases
Brandt, C., & Zaidman, A. (2022) · IEEE Working Conference on Software Visualization (VISSOFT) · doi:10.1109/vissoft55257.2022.00011 · Cited by 5 · see citing works
Patcher: An Online Service for Detecting, Viewing and Patching Web Application Vulnerabilities
Yu, F., & Tung, Y.-Y. (2014) · Hawaii International Conference on System Sciences (HICSS) · doi:10.1109/hicss.2014.598 · Cited by 4 · see citing works
The IDE as a scriptable information system
Asenov, D., Müller, P., & Vogel, L. (2016) · IEEE/ACM International Conference on Automated Software Engineering (ASE) · doi:10.1145/2970276.2970329 · Cited by 4 · see citing works
Context-Based Search, Recommendation and Browsing in Software Development
Antunes, B., Furtado, B., & Gomes, P. (2014) · Springer eBooks · doi:10.1007/978-1-4939-1887-4_4 · Cited by 4 · see citing works
Visuocode: A software development environment that supports spatial navigation and composition
Bradley, D. R., & Hayes, I. J. (2013) · IEEE Working Conference on Software Visualization (VISSOFT) · doi:10.1109/vissoft.2013.6650533 · Cited by 3 · see citing works
Lightweight Function Pointer Analysis
Zhang, W., & Zhang, Y. (2015) · Lecture notes in computer science · doi:10.1007/978-3-319-17533-1_30 · Cited by 3 · see citing works
TEXAS2: A System for Extracting Domain Topic Using Link Analysis and Searching for Relevant Features
Hwang, S., Lee, Y., & Nam, Y.-K. (2016) · Lecture notes in electrical engineering · doi:10.1007/978-981-10-3023-9_113 · Cited by 2 · see citing works
Programmer Experience: A Systematic Mapping
Morales, J., Rusu, C., & Quiñones, D. (2020) · IEEE Latin America Transactions · doi:10.1109/tla.2020.9099749 · Cited by 2 · see citing works
Find Unique Usages: Helping Developers Understand Common Usages
Aghayi, E., Massey, A., & LaToza, T. D. (2020) · IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC) · doi:10.1109/vl/hcc50065.2020.9127285 · Cited by 2 · see citing works
CodeVoyager: Integrating Interactive Visual Aids with LLMs for Code Comprehension
Kim, Y., Jang, K., Song, H., Shin, M., & Suh, B. (2026) · ACM International Conference on Intelligent User Interfaces (IUI) · doi:10.1145/3742413.3789057 · Cited by 1 · see citing works
IDE-independent program comprehension tools via source file overwriting
Sulir, M., Porubän, J., & Zoricak, O. (2017) · IEEE International Scientific Conference on Informatics (Informatics) · doi:10.1109/informatics.2017.8327277 · Cited by 1 · see citing works
System for extracting domain topic using link analysis and searching for relevant features
Hwang, S. W., Lee, Y., & Nam, Y. K. (2018) · Journal of Ambient Intelligence and Humanized Computing · doi:10.1007/s12652-018-1046-2 · Cited by 1 · see citing works
How “Friendly” Integrated Development Environments Are?
Morales, J., Botella, F., Rusu, C., & Quiñones, D. (2019) · Lecture notes in computer science · doi:10.1007/978-3-030-21902-4_7 · Cited by 1 · see citing works
Effective visualisation of callgraphs for optimisation of parallel programs: a design study
Mabakane, M. S. (2019) · Open University of Cape Town (University of Cape Town) · Cited by 1 · see citing works
Understanding asynchronous code
Lieber, T. (2013) · DSpace@MIT (Massachusetts Institute of Technology)
A Case Study of Calculation of Source Code Module Importance
Takaaki, G., Yamada, S., Nishino, T., & Tsuchida, K. (2013) · 研究報告数理モデル化と問題解決(MPS)
Performance Increase by Software Decomposition with Characteristics of Combinational Logic
Potthoff, N., Gremzow, C., Brandau, C., & Tutsch, D. (2015) · International Conference on P2P, Parallel, Grid, Cloud and Internet Computing (3PGCIC) · doi:10.1109/3pgcic.2015.92
Designing affordances for navigating information spaces in code editors
Henley, A. Z. (2016) · IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC) · doi:10.1109/vlhcc.2016.7739703
Programmer Experience: – An HCI Prespective
Khan, U. F., & Rana, T. A. (2021) · International Conference on Communication Technologies (ComTech) · doi:10.1109/comtech52583.2021.9616689
Visual Augmentation of Source Code Editors: A Systematic Mapping Study
Sulír, M., Bačíková, M., Chodarev, S., & Porubän, J. (2021) · doi:10.26226/morressier.613b545d842293c031b5b99f
Krämer, J.-P., Kurz, J., Karrer, T., & Borchers, J. (2012) · ACM/IEEE International Conference on Software Engineering: Companion Proceedings (ICSE-Companion) · doi:10.1109/icse.2012.6227066
Self-citationCodeVoyager: An Interactive Tool for Rapid Code Comprehension through LLM-Assisted Graph Navigation
Kim, Y., Jang, K., Song, H., Shin, M., & Suh, B. (2025) · ACM Symposium on User Interface Software and Technology (UIST) · doi:10.1145/3746058.3758378
Augmenting software engineers with modeling assistants
Savary‐Leblanc, M. (2021) · doi:10.70675/dfc895bez7656z4fbbzb428zb7fe5569d910
Hau, K., Cheng, J., Guo, J. Q., Lyons, K. E., & Zhou, S. (2026) · International Journal of Human-Computer Interaction · doi:10.1080/10447318.2026.2744517
- Authors
- Karrer, T., Krämer, J.-P., Diehl, J., Hartmann, B., & Borchers, J.
- Affiliations
- RWTH Aachen University (DE)
- University of California, Berkeley (US)
- Venue
- Proceedings of the 24th annual ACM symposium on User interface software and technology
- Publisher
- ACM
- Published
- 2011-10-16
- Pages
- 217-224
- OpenAlex
- W1967932767
- Cited by
- 48
- References
- 25
- Citations by year
- 2026: 2 · 2025: 2 · 2022: 4 · 2021: 4 · 2020: 3 · 2019: 3 · 2018: 2 · 2017: 4 · 2016: 6 · 2015: 6 · 2014: 3 · 2013: 5 · 2012: 4
- FWCI
- 2.88
- Type
- conference paper
- Language
- en
- Open access
- closed
- Locations
- ACM Symposium on User Interface Software and Technology (UIST) (publishedVersion)
- Funders
- RWTH Aachen University
- Topics
- Physical Sciences › Computer Science › Information Systems › Software Engineering Research
- Physical Sciences › Computer Science › Computer Vision and Pattern Recognition › Data Visualization and Analytics
- Physical Sciences › Computer Science › Information Systems › Software Engineering Techniques and Practices
- Keywords
- call graph, source code navigation, program comprehension, interactive visualization, software maintenance, usability
About these checks
Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.
Statistics and arithmetic are recomputed, not judged.
Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.
What counts as a claim ›How we measure confidence ›How we check this ›
Are you an author, or do you see a problem with this page? Request a review