• Corpus ID: 162183677

Towards Studying the Evolution of Technical Debt in the Python Projects from the Apache Software Ecosystem

  title={Towards Studying the Evolution of Technical Debt in the Python Projects from the Apache Software Ecosystem},
  author={Jie Tan and Mircea Lungu and Paris Avgeriou},
The topic of technical debt has gained significant attention from researchers in recent years since its management has significant impact of software development. Several studies that analyze technical debt evolution from different perspectives; however since most of these studies are done for Java very little is known about the evolution of technical debt in software ecosystems consisting of projects written in other languages. In this paper we run a study across nine Python open-source… 

Figures and Tables from this paper

Empirical evaluation of an architectural technical debt index in the context of the Apache and ONAP ecosystems

This study evaluates ATDx, a data-driven approach providing an overview of the Architectural Technical Debt present in a software-intensive system, and strives for the establishment of a sound, comprehensive, and intuitive architectural view of the ATD identifiable via source code analysis.

A Clustering Approach Towards Cross-Project Technical Debt Forecasting

The proposed approach based on data clustering comprises a promising solution for accurate cross-project TD forecasting and examines whether the consideration of similarities between software projects could be the key for more accurate forecasting.

An empirical study on self-fixed technical debt

An empirical study that analyzes the self-fixed issues of five types of technical debt, captured via static analysis, in more than 17,000 commits from 20 Python projects of the Apache Software Foundation shows that more than two thirds of the issues are self- fixed and that theSelf-fixing rate is negatively correlated with the number of commits, developers and project size.

Application Domains in the Research Papers at BENEVOL: A Retrospective

There is a fundamental flaw in harvesting large amounts of data, and when generalising the conclusions: the application domain, or context, of the analysed systems must be the primary factor for the cluster sampling of FLOSS projects.

Can Clean New Code Reduce Technical Debt Density?

The results suggest that writing “clean” (or at least ‘cleaner’) new code can be an efficient strategy for reducing Technical Debt Density, and thus preventing software decay over time.



The Evolution of Technical Debt in the Apache Ecosystem

This paper studies sixty-six Java open-source software projects from the Apache ecosystem focusing on the evolution of technical debt and calculates the trends of the technical debt time series but also investigates the lower-level constituent components of this technical debt.

How do developers fix issues and pay back technical debt in the Apache ecosystem?

A case study is presented, in which the evolution of fifty-seven Java open-source software projects by the Apache Software Foundation is analyzed at the temporal granularity level of weekly snapshots and it is revealed that a small subset of all issue types is responsible for the largest percentage of TD repayment.

An Exploratory Study on Self-Admitted Technical Debt

  • A. PotdarEmad Shihab
  • Computer Science
    2014 IEEE International Conference on Software Maintenance and Evolution
  • 2014
Throughout a software development life cycle, developers knowingly commit code that is either incomplete, requires rework, produces errors, or is a temporary workaround. Such incomplete or temporary

Using Natural Language Processing to Automatically Detect Self-Admitted Technical Debt

This paper presents an approach to automatically identify design and requirement self-admitted technical debt using Natural Language Processing (NLP), and shows that the proposed approach can achieve a good accuracy even with a relatively small training dataset.

Reverse engineering software ecosystems

This thesis shows that software ecosystems are an interesting and challenging subject of study, and that reverse engineering techniques can be used beyond the level of individual systems in the process of understanding software ecosystems.

Automating Change-Level Self-Admitted Technical Debt Determination

The experimental results show that the proposed change-level SATD Determination model achieves a promising and better performance than four baselines in terms of AUC and cost-effectiveness and “Diffusion” is the most discriminative dimension among the three dimensions of features for determining TD-introducing changes.

The evolution and impact of code smells: A case study of two open source systems

The results show that different phases in the evolution of code smells during the system development and that code smell infected components exhibit a different change behavior are useful for the identification of risk areas within a software system that need refactoring to assure a future positive evolution.

Technical Debt: From Metaphor to Theory and Practice

This paper proposes an organization of the technical debt landscape, and introduces the papers on technical debt contained in the issue.

The WyCash portfolio management system

WyCASH+ is a portfolio management system which provides basic accounting, record-keeping and reporting, as well as analytical computations to assist the manager of cash portfolios, and employs object technology in order to quickly and effectively address the diversity present in the market.

Mining Version Histories for Detecting Code Smells

Historical Information for Smell deTection (HIST) is proposed, an approach exploiting change history information to detect instances of five different code smells, namely Divergent Change, Shotgun Surgery, Parallel Inheritance, Blob, and Feature Envy.