Collaborative, Code-Proximal Dynamic Software Visualization within Code
Editors
- URL: http://arxiv.org/abs/2308.15785v1
- Date: Wed, 30 Aug 2023 06:35:40 GMT
- Title: Collaborative, Code-Proximal Dynamic Software Visualization within Code
Editors
- Authors: Alexander Krause-Glau and Wilhelm Hasselbring
- Abstract summary: This paper introduces the design and proof-of-concept implementation for a software visualization approach that can be embedded into code editors.
Our contribution differs from related work in that we use dynamic analysis of a software system's runtime behavior.
Our visualization approach enhances common remote pair programming tools and is collaboratively usable by employing shared code cities.
- Score: 55.57032418885258
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Software visualizations are usually realized as standalone and isolated tools
that use embedded code viewers within the visualization. In the context of
program comprehension, only few approaches integrate visualizations into code
editors, such as integrated development environments. This is surprising since
professional developers consider reading source code as one of the most
important ways to understand software, therefore spend a lot of time with code
editors. In this paper, we introduce the design and proof-of-concept
implementation for a software visualization approach that can be embedded into
code editors. Our contribution differs from related work in that we use dynamic
analysis of a software system's runtime behavior. Additionally, we incorporate
distributed tracing. This enables developers to understand how, for example,
the currently handled source code behaves as a fully deployed, distributed
software system. Our visualization approach enhances common remote pair
programming tools and is collaboratively usable by employing shared code
cities. As a result, user interactions are synchronized between code editor and
visualization, as well as broadcasted to collaborators. To the best of our
knowledge, this is the first approach that combines code editors with
collaboratively usable code cities. Therefore, we conducted a user study to
collect first-time feedback regarding the perceived usefulness and perceived
usability of our approach. We additionally collected logging information to
provide more data regarding time spent in code cities that are embedded in code
editors. Seven teams with two students each participated in that study. The
results show that the majority of participants find our approach useful and
would employ it for their own use. We provide each participant's video
recording, raw results, and all steps to reproduce our experiment as
supplementary package.
Related papers
- AgileCoder: Dynamic Collaborative Agents for Software Development based on Agile Methodology [5.164094478488741]
AgileCoder is a multi agent system that integrates Agile Methodology (AM) into the framework.
This system assigns specific AM roles - such as Product Manager, Developer, and Tester to different agents, who then collaboratively develop software based on user inputs.
arXiv Detail & Related papers (2024-06-16T17:57:48Z) - A Study on Developer Behaviors for Validating and Repairing LLM-Generated Code Using Eye Tracking and IDE Actions [13.58143103712]
GitHub Copilot is a large language model (LLM)-powered code generation tool.
This paper investigates how developers validate and repair code generated by Copilot.
Being aware of the code's provenance led to improved performance, increased search efforts, more frequent Copilot usage, and higher cognitive workload.
arXiv Detail & Related papers (2024-05-25T06:20:01Z) - Code Compass: A Study on the Challenges of Navigating Unfamiliar Codebases [2.808331566391181]
We propose a novel tool, Code, to address these issues.
Our study highlights a significant gap in current tools and methodologies.
Our formative study demonstrates how effectively the tool reduces the time developers spend navigating documentation.
arXiv Detail & Related papers (2024-05-10T06:58:31Z) - MouSi: Poly-Visual-Expert Vision-Language Models [132.58949014605477]
This paper proposes the use of ensemble experts technique to synergize the capabilities of individual visual encoders.
This technique introduces a fusion network to unify the processing of outputs from different visual experts.
In our implementation, this technique significantly reduces the positional occupancy in models like SAM, from a substantial 4096 to a more efficient and manageable 64 or even down to 1.
arXiv Detail & Related papers (2024-01-30T18:09:11Z) - EasyView: Bringing Performance Profiles into Integrated Development
Environments [3.9895667172326257]
We develop EasyView, a solution to integrate the interpretation and visualization of various profiling results in the coding environments.
First, we develop a generic data format, which enables EasyView to support mainstream profilers for different languages.
Second, we develop a set of customizable schemes to analyze and visualize the profiles in intuitive ways.
arXiv Detail & Related papers (2023-12-27T14:49:28Z) - InterCode: Standardizing and Benchmarking Interactive Coding with
Execution Feedback [50.725076393314964]
We introduce InterCode, a lightweight, flexible, and easy-to-use framework of interactive coding as a standard reinforcement learning environment.
Our framework is language and platform agnostic, uses self-contained Docker environments to provide safe and reproducible execution.
We demonstrate InterCode's viability as a testbed by evaluating multiple state-of-the-art LLMs configured with different prompting strategies.
arXiv Detail & Related papers (2023-06-26T17:59:50Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
We propose a retrieval-augmented code completion framework, leveraging both lexical copying and referring to code with similar semantics by retrieval.
We evaluate our approach in the code completion task in Python and Java programming languages, achieving a state-of-the-art performance on CodeXGLUE benchmark.
arXiv Detail & Related papers (2022-03-15T08:25:08Z) - Improving Compositionality of Neural Networks by Decoding
Representations to Inputs [83.97012077202882]
We bridge the benefits of traditional and deep learning programs by jointly training a generative model to constrain neural network activations to "decode" back to inputs.
We demonstrate applications of decodable representations to out-of-distribution detection, adversarial examples, calibration, and fairness.
arXiv Detail & Related papers (2021-06-01T20:07:16Z) - Learning to Extend Program Graphs to Work-in-Progress Code [31.235862838381966]
We extend the notion of program graphs to work-in-progress code by learning to predict edge relations between tokens.
We consider the tasks of code completion and localizing and repairing variable misuse in a work-in-process scenario.
We demonstrate that training relation-aware models with fine-tuned edges consistently leads to improved performance on both tasks.
arXiv Detail & Related papers (2021-05-28T18:12:22Z) - A Transformer-based Approach for Source Code Summarization [86.08359401867577]
We learn code representation for summarization by modeling the pairwise relationship between code tokens.
We show that despite the approach is simple, it outperforms the state-of-the-art techniques by a significant margin.
arXiv Detail & Related papers (2020-05-01T23:29:36Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.