Replication Package for "TagDebt: A Bot to Support Technical Debt Management"
Description
Description of this study:
Context: Technical debt (TD) is a widely studied metaphor that helps to explain how not-ideal decisions, which usually have short-term benefits, can harm software maintainability over time. Although incurring TD is not intrinsically bad, tracking and managing TD are crucial to avoid its negative effects. Hence, researchers and practitioners have proposed and developed diverse approaches and tools for managing TD. However, we are still lacking specialized tools for technical debt management (TDM), specifically ones that can be easily integrated into existing development workflows.
Objective: We present and evaluate TagDebt, a bot that can be integrated within Github repositories and automatically assign labels to issues (i.e., TD or non-TD). TagDebt helps in the identification and monitoring of TD, leading to more efficient TDM.
Methods: We carried a Design Science Research to design and implemented TagDebt. For its evaluation, we carried a Technology Acceptance Model (TAM) study, which checked bot’s usefulness, ease of use, and contextual factors that might impact the bot’s usage (such as team size and practitioners roles). The TAM study was carried through interviews with 16 practitioners.
Results: Overall, practitioners found that TagDebt is useful, specially for organizing issues and reduce manual work. Furthermore, they pointed that the bot is overall easy to use, and its documentation is clear. The analysis also revealed that contextual factors, such team and codebase size, impact the decision to adopt TagDebt bot. Finally, several improvements were suggested, such as including features to check and update the source code.
Conclusion: TagDebt is a step toward the development and usage of more specialized tools for TDM. It helps to make TD visible without disrupting existing workflows, which could lead to increased adoption of TDM tools and, consequently, help practitioners avoid the risks of unmanaged TD.
Structure of the replication package:
The replication package includes the datasets (for answers, codes, and indicators), the scripts for data analysis, and all the figures used in the manuscript.
├── data
| ├── interview transcripts
| | ├── r1.docx
| | ├── r2.docx
| | ├── r3.docx
| | ├── r4.docx
| | ├── r5.docx
| | ├── r6.docx
| | ├── r7.docx
| | ├── r8.docx
| | ├── r9.docx
| | ├── r10.docx
| | ├── r11.docx
| | ├── r12.docx
| | ├── r13.docx
| | ├── r14.docx
| | ├── r15.docx
| | └── r16.docx
| ├── quotations per theme
| | ├── contextual factors
| | | ├── contextual factor - code base size.xlsx
| | | ├── contextual factor - practitioners' roles.xlsx
| | | ├── contextual factor - privacy and security policies.xlsx
| | | ├── contextual factor - team size.xlsx
| | | └── contextual factor - type of software.xlsx
| | ├── ease of use
| | | ├── ease of use - commands in the comments might not be ideal.xlsx
| | | ├── ease of use - configuration file is clear.xlsx
| | | ├── ease of use - documentation has some limitations.xlsx
| | | ├── ease of use - documentation is simple and complete.xlsx
| | | ├── ease of use - ease of use - remembering how to use the bot.xlsx
| | | └── ease of use - ease of use - simple to install, configure, and operate.xlsx
| | ├── improvements
| | | ├── improvements - configuration and setup.xlsx
| | | ├── improvements - feedback for users.xlsx
| | | ├── improvements - integration and analysis.xlsx
| | | └── improvements - label management.xlsx
| | └── usefulness
| | ├── usefulness - classification precision.xlsx
| | ├── usefulness - classifying and monitoring td items.xlsx
| | ├── usefulness - descriptive labels and classification.xlsx
| | ├── usefulness - helping preventing human errors.xlsx
| | ├── usefulness - increasing awareness about td.xlsx
| | ├── usefulness - low feature overhead.xlsx
| | ├── usefulness - prioritizing td items.xlsx
| | ├── usefulness - reducing repetitive or manual work.xlsx
| | └── usefulness - standardizing issue report.xlsx
| ├── atlas-bundle.atlasti
| ├── codebook.xlsx
| ├── initial-coding.xlsx
| ├── quotations.csv
| ├── respondents.csv
| ├── respondents.csv
| └── tam-based questionnaire.pdf
├── figures
| ├── bots-application-overview.pdf
| ├── data-analysis-methods.pdf
| ├── research-method.pdf
| ├── results-summary.pdf
| ├── tagdebt-architecture.pdf
| ├── tagdebt-config-file.pdf
| ├── tagdebt-execution-flow.pdf
| ├── tagdebt-initial-comment.pdf
| └── tagdebt-ml-model.pdf
└── README.md
Description of each variable in initial-coding.xlsx
variable name | description |
---|---|
question | the question that motivated the answer |
question | a sample of answers related to the question |
codes | the codes assigned by each coder to the answer |
consolidated codes | codes that were agreed by the authors after discussion coders |
Description of each variable in each file in the quotations per theme folder
variable name | description |
---|---|
id | the identifier for a quotation, generated by Atlas.ti |
document | the identifier of a respondent in the study (e.g., r1) |
content | the text of a quoatation |
codes | a list of codes associated with the quotations (e.g., contextual factor - practitioners’ roles |
Paper
Latest version available on arXiv
If you use this dataset to support your research and publish a paper, we encourage you to cite the following paper in your publication:
@article{Biazotto2024,
title={TagDebt: A Bot to Support Technical Debt Management},
ISSN={},
url={},
DOI={},
author={Biazotto, João Paulo and Feitosa, Daniel and Avgeriou, Paris and Nakagawa, Elisa Yumi},
year={2025},
month=aug,
pages={}
}
Contact
- Please use the following email addresses if you have questions:
- :email: j.p.biazotto@rug.nl
Files
rp-tagdebt.zip
Files
(3.1 MB)
Name | Size | Download all |
---|---|---|
md5:863148eccebe95113cb1a7d2e1dac253
|
3.1 MB | Preview Download |