Please use this identifier to cite or link to this item:
http://hdl.handle.net/1843/51321
Type: | Tese |
Title: | Documenting and managing self-admitted technical debt using issues |
Authors: | José Laerte Pires Xavier Júnior |
First Advisor: | Marco Túlio de Oliveira Valente |
First Referee: | Alfredo Goldman vel Lejbman |
Second Referee: | Rodrigo Oliveira Spínola |
Third Referee: | André Cavalcante Hora |
metadata.dc.contributor.referee4: | Eduardo Magno Lages Figueiredo |
Abstract: | The Technical Debt (TD) metaphor refers to the unavoidable maintenance and evolution costs of the not-quite-right decisions commonly taken by software developers. The term was quickly adopted in industry and became the subject of various studies in the literature, mostly regarding techniques for TD identification, management and payment. In recent years, several studies emerged around the observation that developers explicitly document their debts, which the literature refers as Self-Admitted Technical Debt (SATD). Particularly, most previous studies investigated this practice by analyzing source code comments as indications of TD admission. In this thesis, we denote this form of SATD as SATD-C. However, there is a lack of knowledge about the adoption of different artifacts to admit TD. Particularly, few studies deeply investigated SATD in issue tracker systems, despite the increasing adoption of issues in software development. In order to contribute to this problem, we describe in this thesis an in depth study on the adoption of issues to document and manage Self-Admitted Technical Debt (which we refer as SATD-I). We organize the research in four major working units. We start by exploring the characteristics of SATD-I adoption, in terms of the types of TD commonly documented in issues, and the motivations of its insertion and payment. Next, we strengthen our initial results by investigating the interplay between SATD-C and SATD-I in a large-scale dataset. Based on the evidences that they have distinct natures, we assess the circumstances when each form is more suitable. Finally, we wrap-up the knowledge produced in our empirical studies by proposing and evaluating a light-weight framework to support developers to manage TD through the creation of issues. We call this framework as LTD: Less Technical Debt Framework. Overall, our results confirm that developers also use issues to admit TD in their projects. We also show that issues are more suitable to document high-level and high-priority debts, mostly regarding concerns that need visibility and discussions between developers. Finally, we achieved promising results after adopting LTD in two development teams in a large public company. For example, the teams could reduce TD and create a backlog of issues to manage TD during the execution of sprints. |
Abstract: | A metáfora da Dívida Técnica (TD, do inglês Technical Debt) refere-se aos custos inequívocos de manutenção e evolução gerados por decisões sub-ótimas comumente tomadas por desenvolvedores de software. Desde a sua concepção, o termo foi rapidamente adotado na indústria e tornou-se objeto de diversos estudos, investigando técnicas de identificação, gerenciamento e pagamento de TD. Nos últimos anos, vários estudos surgiram em torno do fato de que desenvolvedores documentam explicitamente suas dívidas, o que a literatura conhece como Dívida Técnica Auto-Admitida (SATD, do inglês Self-Admitted Technical Debt). Particularmente, a maioria dos estudos anteriores investigou essa prática analisando comentários de código fonte para identificar indícios de admissão de TD. Nesta tese, denotamos essa forma de SATD como SATD-C. No entanto, ainda não está claro como diferentes artefatos de software são utilizados para admitir TD. Especificamente, poucos estudos investigaram profundamente SATD em sistemas de rastreamento de issues, apesar da sua crescente adoção no desenvolvimento de software. Para contribuir na resolução desse problema, descreve-se nesta tese um estudo aprofundado sobre a adoção de issues para documentar e gerir a Dívida Técnica Auto-Admitida (denotado como SATD-I). Esta pesquisa está organizada em quatro unidades de trabalho. Inicialmente, são exploradas as características da adoção do SATD-I, em termos dos tipos de TD comumente documentados em issues, e as motivações para a criação e o pagamento delas. Em seguida, estende-se os resultados iniciais investigando a interação entre SATD-C e SATD-I em um dataset de larga escala. Com base nas evidências de que elas possuem naturezas distintas, avaliam-se as circunstâncias em que cada forma de SATD é mais adequada. Finalmente, reune-se o conhecimento produzido nos estudos empíricos anteriores para propor e avaliar um framework leve para apoiar o gerenciamento de TD através da criação de issues. Esse framework é denominado LTD: Less Technical Debt Framework. No geral, os resultados obtidos confirmam que os desenvolvedores também utilizam issues para admitir TD em seus projetos. Mostra-se também que issues são mais adequadas para documentar dívidas de alto nível e alta prioridade. Por fim, foram obtidos resultados promissores após a adoção do LTD em duas equipes de desenvolvimento em uma grande empresa pública. Por exemplo, as equipes conseguiram reduzir o TD e criar uma lista de issues para gerenciar o TD durante a execução dos sprints. |
Subject: | Computação – Teses Dívida técnica – Teses Mineração de repositórios de software – Teses Framework (Programa de computador) – Teses Software - Documentação – Teses |
language: | eng |
metadata.dc.publisher.country: | Brasil |
Publisher: | Universidade Federal de Minas Gerais |
Publisher Initials: | UFMG |
metadata.dc.publisher.department: | ICX - DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO |
metadata.dc.publisher.program: | Programa de Pós-Graduação em Ciência da Computação |
Rights: | Acesso Aberto |
URI: | http://hdl.handle.net/1843/51321 |
Issue Date: | 15-Dec-2022 |
Appears in Collections: | Teses de Doutorado |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
CTD-SBC-ThesisFull.pdf | PhD Thesis | 7.18 MB | Adobe PDF | View/Open |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.