Meta-Manager: A Tool for Collecting and Exploring Meta Information about Code
Open Access
- 11 May 2024
- conference paper
- Published by Association for Computing Machinery (ACM)
- p. 1-17
Abstract
Modern software engineering is in a state of flux. With more development utilizing AI code generation tools and the continued reliance on online programming resources, understanding code and the original intent behind it is becoming more important than it ever has been. To this end, we have developed the “Meta-Manager”, a Visual Studio Code extension, with a supplementary browser extension, that automatically collects and organizes changes made to code while keeping track of the provenance of each part of the code, including code that has been AI-generated or copy-pasted from popular programming resources online. These sources and subsequent changes are represented in the editor and may be explored using searching and filtering mechanisms to help developers answer historically hard-to-answer questions about code, its provenance, and its design rationale. In our evaluation of Meta-Manager, we found developers were successfully able to use it to answer otherwise unanswerable questions about an unfamiliar code base.Keywords
Funding Information
- Google (Gift)
- NSF (CCF-2007482)
This publication has 80 references indexed in Scilit:
- Noise in Mylyn interaction traces and its impact on developers and recommendation systemsEmpirical Software Engineering, 2017
- Attribution Required: Stack Overflow Code Snippets in GitHub Projects2017
- Asking and answering questions about unfamiliar APIs: An exploratory study2012
- How do professional developers comprehend software?2012
- Collective Code Bookmarks for Program Comprehension2011
- Codetrail: Connecting source code and web resourcesJournal of Visual Languages & Computing, 2009
- CnP: Towards an environment for the proactive management of copy-and-paste programming2009
- Information Needs in Collocated Software Development Teams2007
- Unifying artifacts and activities in a visual tool for distributed software development teams2004
- Seesoft-a tool for visualizing line oriented software statisticsIEEE Transactions on Software Engineering, 1992