How Junior Developers Deal with Their Technical Debt?

被引:6
|
作者
Gilson, Fabian [1 ]
Morales-Trujillo, Miguel [1 ]
Mathews, Moffat [1 ]
机构
[1] Univ Canterbury, Christchurch, New Zealand
关键词
software quality metrics; static code analysis; empirical study;
D O I
10.1145/3387906.3388624
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Technical debt is a metaphor that measures the additional effort needed to continue to add more features in a software due to its inherent decrease in code quality. Most software systems suffer from technical debt at some point so that dedicated tools and metrics have been developed to monitor such debt. Alongside tools, appropriate engineering practices must be put in place by the development team to keep that debt at an acceptable level. In this empirical study, we observed and surveyed Scrum development teams composed of experienced students in order to understand their quality-related processes on a year-long academic project. We found that (1) students do use static analysis tools of many forms, but their actual usage is limited due to time pressure; (2) retrospective and non-constraining feedback on code quality has little to no effect, even when given regularly during the course of the project; and (3) junior developers value composite quality indicators (e.g., maintainability, reliability in SonarQube), even if they do not fully understand their meaning. From our findings, we propose a series of recommendations, both technical and methodological, on how to train junior developers to understand and manage technical debt.
引用
收藏
页码:51 / 61
页数:11
相关论文
共 50 条
  • [11] SCIENCE AND THE DEBT DEAL
    Morrissey, Susan
    Hess, Glenn
    Mukhopadhyay, Raj
    CHEMICAL & ENGINEERING NEWS, 2011, 89 (32) : 12 - 12
  • [12] Technical Debt Cripples Software Developer Productivity - A longitudinal study on developers' daily software development work
    Besker, Terese
    Martini, Antonio
    Bosch, Jan
    2018 IEEE/ACM INTERNATIONAL CONFERENCE ON TECHNICAL DEBT (TECHDEBT), 2018, : 105 - 114
  • [13] Technical Debt
    Wolff, Eberhard
    Johann, Sven
    IEEE SOFTWARE, 2015, 32 (04) : 94 - U11
  • [14] Startups and Technical Debt Managing Technical Debt with Visual Thinking
    Chicote, Marcos
    2017 IEEE/ACM 1ST INTERNATIONAL WORKSHOP ON SOFTWARE ENGINEERING FOR STARTUPS (SOFTSTART 2017), 2017, : 10 - 11
  • [15] Preventing Technical Debt by Technical Debt Aware Project Management
    Wiese, Marion
    Riebisch, Matthias
    Schwarze, Julian
    2021 IEEE/ACM INTERNATIONAL CONFERENCE ON TECHNICAL DEBT (TECHDEBT 2021), 2021, : 84 - 93
  • [16] FOCUS TECHNICAL DEBT Managing Technical Debt with the SQALE Method
    Letouzey, Jean-Louis
    Ilkiewicz, Michel
    IEEE SOFTWARE, 2012, 29 (06) : 44 - 51
  • [17] How do Technical Debt Payment Practices Relate to the Effects of the Presence of Debt Items in Software Projects?
    Freire, Savio
    Rios, Nicolli
    Perez, Boris
    Torres, Dario
    Mendonca, Manoel
    Izurieta, Clemente
    Seaman, Carolyn
    Spinola, Rodrigo
    2021 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION AND REENGINEERING (SANER 2021), 2021, : 605 - 609
  • [18] How Regulations of Safety-Critical Software Affect Technical Debt
    Besker, Terese
    Martini, Antonio
    Bosch, Jan
    2019 45TH EUROMICRO CONFERENCE ON SOFTWARE ENGINEERING AND ADVANCED APPLICATIONS (SEAA 2019), 2019, : 74 - 81
  • [19] How Deep is the Mud: Fathoming Architecture Technical Debt Using Designite
    Sharma, Tushar
    2019 IEEE/ACM INTERNATIONAL CONFERENCE ON TECHNICAL DEBT (TECHDEBT 2019), 2019, : 59 - 60
  • [20] NEW DEAL FOR JUNIOR HOSPITAL DOCTORS
    CORT, DF
    BARNES, AD
    LANCET, 1971, 2 (7725): : 660 - &