Skip to main content
Erschienen in: Empirical Software Engineering 4/2023

01.07.2023

How do programmers fix bugs as workarounds? An empirical study on Apache projects

verfasst von: Aoyang Yan, Hao Zhong, Daohan Song, Li Jia

Erschienen in: Empirical Software Engineering | Ausgabe 4/2023

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

In software development, issue tracker systems are widely used to manage bug reports. In such a system, a bug report can be filed, diagnosed, assigned, and fixed. In the standard process, a bug can be resolved as fixed, invalid, duplicated, or won’t fix. Although the above resolutions are well-defined and easy to understand, a bug report can end with a less -known resolution, i.e., a workaround. Compared with other resolutions, the definition of workarounds is more ambiguous. Besides the problem that is reported in a bug report, the resolution of a workaround raises more questions. Some questions are important for users, especially those programmers who build their projects upon others (e.g., libraries). Although some early studies have been conducted to analyze API workarounds, many research questions on workarounds are still open. For example, which bugs are resolved as workarounds? Why is a bug report resolved as a workaround? What are the repairs and impacts of workarounds? In this paper, we conduct the first empirical study to explore the above research questions. In particular, we analyzed 200 real workarounds that were collected from 81 Apache projects. Our results lead to eight findings and answers to all the above questions. For example, if bug reports are resolved as workarounds, their problems often either arise in external projects (40%) or reside in programming environments (23.5%). Although the problems of some workarounds (38.5%) reside in the project where they are reported, it is difficult to fix them fully and perfectly. Our findings are useful to understand workarounds, and to improve software projects and issue trackers.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Literatur
Zurück zum Zitat Agrawal R, Srikant R (1995) Mining sequential patterns. In: Proc. ICDE, pp. 3–14 Agrawal R, Srikant R (1995) Mining sequential patterns. In: Proc. ICDE, pp. 3–14
Zurück zum Zitat Ammons G, Bodík R, Larus JR (2002) Mining specifications. In: Proc. POPL, pp. 4–16 Ammons G, Bodík R, Larus JR (2002) Mining specifications. In: Proc. POPL, pp. 4–16
Zurück zum Zitat Anvik J, Hiew L, Murphy GC (2006) Who should fix this bug? In: Proc. ICSE, pp. 361–370 Anvik J, Hiew L, Murphy GC (2006) Who should fix this bug? In: Proc. ICSE, pp. 361–370
Zurück zum Zitat Bettenburg N, Just S, Schröter A, Weiss C, Premraj R, Zimmermann T (2008) What makes a good bug report? In: Proc. ESEC/FSE, pp. 308–318 Bettenburg N, Just S, Schröter A, Weiss C, Premraj R, Zimmermann T (2008) What makes a good bug report? In: Proc. ESEC/FSE, pp. 308–318
Zurück zum Zitat Bettenburg N, Premraj R, Zimmermann T, Kim S (2008) Duplicate bug reports considered harmful? really? In: Proc. ICSM, pp. 337–345 Bettenburg N, Premraj R, Zimmermann T, Kim S (2008) Duplicate bug reports considered harmful? really? In: Proc. ICSM, pp. 337–345
Zurück zum Zitat Bhattacharya P, Ulanova L, Neamtiu I, Koduru SC (2013) An empirical analysis of bug reports and bug fixing in open source android apps. In: Proc. CSMR, pp. 133–143 Bhattacharya P, Ulanova L, Neamtiu I, Koduru SC (2013) An empirical analysis of bug reports and bug fixing in open source android apps. In: Proc. CSMR, pp. 133–143
Zurück zum Zitat Bogart C, Kästner C, Herbsleb J, Thung F (2016) How to break an API: cost negotiation and community values in three software ecosystems. In: Proc. ESEC/FSE, pp. 109–120 Bogart C, Kästner C, Herbsleb J, Thung F (2016) How to break an API: cost negotiation and community values in three software ecosystems. In: Proc. ESEC/FSE, pp. 109–120
Zurück zum Zitat Dallmeier V, Knopp N, Mallon C, Hack S, Zeller A (2010) Generating test cases for specification mining. In: Proc. ISSTA, pp. 85–96 Dallmeier V, Knopp N, Mallon C, Hack S, Zeller A (2010) Generating test cases for specification mining. In: Proc. ISSTA, pp. 85–96
Zurück zum Zitat Dehaghani SMH, Hajrahimi N (2013) Which factors affect software projects maintenance cost more? Acta Informatica Medica 21(1):63CrossRef Dehaghani SMH, Hajrahimi N (2013) Which factors affect software projects maintenance cost more? Acta Informatica Medica 21(1):63CrossRef
Zurück zum Zitat Endrikat S, Hanenberg S, Robbes R, Stefik A (2014) How do API documentation and static typing affect API usability? In: Proc. ICSE, pp. 632–642 Endrikat S, Hanenberg S, Robbes R, Stefik A (2014) How do API documentation and static typing affect API usability? In: Proc. ICSE, pp. 632–642
Zurück zum Zitat Engler DR, Chen DY, Chou A (2001) Bugs as inconsistent behavior: A general approach to inferring errors in systems code. In: Proc. SOSP, pp. 57–72 Engler DR, Chen DY, Chou A (2001) Bugs as inconsistent behavior: A general approach to inferring errors in systems code. In: Proc. SOSP, pp. 57–72
Zurück zum Zitat Erlikh L (2000) Leveraging legacy system dollars for e-business. IT professional 2(3):17–23CrossRef Erlikh L (2000) Leveraging legacy system dollars for e-business. IT professional 2(3):17–23CrossRef
Zurück zum Zitat Ernst MD, Perkins JH, Guo PJ, McCamant S, Pacheco C, Tschantz MS, Xiao C (2007) The daikon system for dynamic detection of likely invariants. Sci Comput Program 69(1–3):35–45MathSciNetCrossRefMATH Ernst MD, Perkins JH, Guo PJ, McCamant S, Pacheco C, Tschantz MS, Xiao C (2007) The daikon system for dynamic detection of likely invariants. Sci Comput Program 69(1–3):35–45MathSciNetCrossRefMATH
Zurück zum Zitat Francalanci C, Merlo F (2008) Empirical analysis of the bug fixing process in open source projects. In: Proc. OSS, pp. 187–196 Francalanci C, Merlo F (2008) Empirical analysis of the bug fixing process in open source projects. In: Proc. OSS, pp. 187–196
Zurück zum Zitat Gabel M, Su Z (2008) Javert: fully automatic mining of general temporal properties from dynamic traces. In: Proc. ESEC/FSE, pp. 339–349 Gabel M, Su Z (2008) Javert: fully automatic mining of general temporal properties from dynamic traces. In: Proc. ESEC/FSE, pp. 339–349
Zurück zum Zitat Guo PJ, Zimmermann T, Nagappan N, Murphy B (2010) Characterizing and predicting which bugs get fixed: an empirical study of microsoft windows. In: Proc. ICSE, pp. 495–504 Guo PJ, Zimmermann T, Nagappan N, Murphy B (2010) Characterizing and predicting which bugs get fixed: an empirical study of microsoft windows. In: Proc. ICSE, pp. 495–504
Zurück zum Zitat Guo PJ, Zimmermann T, Nagappan N, Murphy B (2011) Not my bug! and other reasons for software bug report reassignments. In: Proc. CSCW, pp. 395–404 Guo PJ, Zimmermann T, Nagappan N, Murphy B (2011) Not my bug! and other reasons for software bug report reassignments. In: Proc. CSCW, pp. 395–404
Zurück zum Zitat Han J, Kamber M, Pei J (2011) Data Mining: Concepts and Techniques. Morgan Kaufmann Publishers Han J, Kamber M, Pei J (2011) Data Mining: Concepts and Techniques. Morgan Kaufmann Publishers
Zurück zum Zitat Herzig K, Just S, Zeller A (2013) It’s not a bug, it’s a feature: how misclassification impacts bug prediction. In: Proc. ICSE, pp. 392–401 Herzig K, Just S, Zeller A (2013) It’s not a bug, it’s a feature: how misclassification impacts bug prediction. In: Proc. ICSE, pp. 392–401
Zurück zum Zitat Hora AC, Robbes R, Anquetil N, Etien A, Ducasse S, Valente MT (2015) How do developers react to API evolution? the pharo ecosystem case. In: Proc. ICSME, pp. 251–260 Hora AC, Robbes R, Anquetil N, Etien A, Ducasse S, Valente MT (2015) How do developers react to API evolution? the pharo ecosystem case. In: Proc. ICSME, pp. 251–260
Zurück zum Zitat Jeong G, Kim S, Zimmermann T (2009) Improving bug triage with bug tossing graphs. In: Proc. ESEC/FSE, p. 111–120 Jeong G, Kim S, Zimmermann T (2009) Improving bug triage with bug tossing graphs. In: Proc. ESEC/FSE, p. 111–120
Zurück zum Zitat Jia L, Zhong H, Wang X, Huang L, Lu X (2020) An empirical study on bugs inside tensorflows. In: Proc. DASFAA, p. to appear Jia L, Zhong H, Wang X, Huang L, Lu X (2020) An empirical study on bugs inside tensorflows. In: Proc. DASFAA, p. to appear
Zurück zum Zitat Kazman R, Cai Y, Mo R, Feng Q, Xiao L, Haziyev S, Fedak V, Shapochka A (2015) A case study in locating the architectural roots of technical debt. Proc. ICSE 2:179–188 Kazman R, Cai Y, Mo R, Feng Q, Xiao L, Haziyev S, Fedak V, Shapochka A (2015) A case study in locating the architectural roots of technical debt. Proc. ICSE 2:179–188
Zurück zum Zitat Krippendorff K (2011) Computing Krippendorff’s alpha-reliability Krippendorff K (2011) Computing Krippendorff’s alpha-reliability
Zurück zum Zitat Lamothe M, Guéhéneuc YG, Shang W (2021) A systematic review of api evolution literature. ACM Computing Surveys 54(8):1–36CrossRef Lamothe M, Guéhéneuc YG, Shang W (2021) A systematic review of api evolution literature. ACM Computing Surveys 54(8):1–36CrossRef
Zurück zum Zitat Lamothe M, Shang W (2020) When APIs are intentionally bypassed: An exploratory study of API workarounds. In: Proc. ICSE, p. to appear Lamothe M, Shang W (2020) When APIs are intentionally bypassed: An exploratory study of API workarounds. In: Proc. ICSE, p. to appear
Zurück zum Zitat Le Goues C, Nguyen T, Forrest S, Weimer W (2011) Genprog: A generic method for automatic software repair. IEEE transactions on software engineering 38(1):54–72CrossRef Le Goues C, Nguyen T, Forrest S, Weimer W (2011) Genprog: A generic method for automatic software repair. IEEE transactions on software engineering 38(1):54–72CrossRef
Zurück zum Zitat Li Z, Tan L, Wang X, Lu S, Zhou Y, Zhai C (2006) Have things changed now? an empirical study of bug characteristics in modern open source software. In: Proc. ASID, pp. 25–33 Li Z, Tan L, Wang X, Lu S, Zhou Y, Zhai C (2006) Have things changed now? an empirical study of bug characteristics in modern open source software. In: Proc. ASID, pp. 25–33
Zurück zum Zitat Li Z, Zhong H (2021) An empirical study on obsolete issue reports. In: Proc. ASE, p. to eappear Li Z, Zhong H (2021) An empirical study on obsolete issue reports. In: Proc. ASE, p. to eappear
Zurück zum Zitat Li Z, Zhou Y (2005) Pr-miner: automatically extracting implicit programming rules and detecting violations in large software code. In: Proc. ESEC/FSE, pp. 306–315 Li Z, Zhou Y (2005) Pr-miner: automatically extracting implicit programming rules and detecting violations in large software code. In: Proc. ESEC/FSE, pp. 306–315
Zurück zum Zitat Lin Z, Shu F, Yang Y, Hu C, Wang Q (2009) An empirical study on bug assignment automation using chinese bug data. In: Proc. ESEM, pp. 451–455 Lin Z, Shu F, Yang Y, Hu C, Wang Q (2009) An empirical study on bug assignment automation using chinese bug data. In: Proc. ESEM, pp. 451–455
Zurück zum Zitat Lorenzoli D, Mariani L, Pezzè M (2008) Automatic generation of software behavioral models. In: Proc. ICSE, pp. 501–510 Lorenzoli D, Mariani L, Pezzè M (2008) Automatic generation of software behavioral models. In: Proc. ICSE, pp. 501–510
Zurück zum Zitat Monperrus M, Eichberg M, Tekes E, Mezini M (2012) What should developers be aware of? an empirical study on the directives of API documentation. Empir Softw Eng 17(6):703–737CrossRef Monperrus M, Eichberg M, Tekes E, Mezini M (2012) What should developers be aware of? an empirical study on the directives of API documentation. Empir Softw Eng 17(6):703–737CrossRef
Zurück zum Zitat Nadi S, Krüger S, Mezini M, Bodden E (2016) Jumping through hoops: why do java developers struggle with cryptography apis? In: Proc. ICSE, pp. 935–946 Nadi S, Krüger S, Mezini M, Bodden E (2016) Jumping through hoops: why do java developers struggle with cryptography apis? In: Proc. ICSE, pp. 935–946
Zurück zum Zitat Nawaz A (2012) A comparison of card-sorting analysis methods. In: APCHI, pp. 28–31 Nawaz A (2012) A comparison of card-sorting analysis methods. In: APCHI, pp. 28–31
Zurück zum Zitat Nguyen TT, Nguyen HA, Pham NH, Al-Kofahi JM, Nguyen TN (2009) Graph-based mining of multiple object usage patterns. In: Proc. ESEC/FSE, pp. 383–392 Nguyen TT, Nguyen HA, Pham NH, Al-Kofahi JM, Nguyen TN (2009) Graph-based mining of multiple object usage patterns. In: Proc. ESEC/FSE, pp. 383–392
Zurück zum Zitat Okur S, Dig D (2012) How do developers use parallel libraries? In: Proc. ESEC/FSE, p. 54 Okur S, Dig D (2012) How do developers use parallel libraries? In: Proc. ESEC/FSE, p. 54
Zurück zum Zitat Pandita R, Xiao X, Zhong H, Xie T, Oney S, Paradkar AM (2012) Inferring method specifications from natural language API descriptions. In: Proc. ICSE, pp. 815–825 Pandita R, Xiao X, Zhong H, Xie T, Oney S, Paradkar AM (2012) Inferring method specifications from natural language API descriptions. In: Proc. ICSE, pp. 815–825
Zurück zum Zitat Potdar A, Shihab E (2014) An exploratory study on self-admitted technical debt. In: Proc. ICSME, pp. 91–100 Potdar A, Shihab E (2014) An exploratory study on self-admitted technical debt. In: Proc. ICSME, pp. 91–100
Zurück zum Zitat Qiu D, Li B, Leung H (2016) Understanding the API usage in Java. Inf Softw Technol 73:81–100 Qiu D, Li B, Leung H (2016) Understanding the API usage in Java. Inf Softw Technol 73:81–100
Zurück zum Zitat Ramasubbu N, Kemerer CF (2019) Integrating technical debt management and software quality management processes: A normative framework and field tests. IEEE Trans Softw Eng 45(3):285–300CrossRef Ramasubbu N, Kemerer CF (2019) Integrating technical debt management and software quality management processes: A normative framework and field tests. IEEE Trans Softw Eng 45(3):285–300CrossRef
Zurück zum Zitat Robbes R, Lungu M, Röthlisberger D (2012) How do developers react to API deprecation?: the case of a smalltalk ecosystem. In: Proc. ESEC/FSE, p. 56 Robbes R, Lungu M, Röthlisberger D (2012) How do developers react to API deprecation?: the case of a smalltalk ecosystem. In: Proc. ESEC/FSE, p. 56
Zurück zum Zitat Robillard MP, Bodden E, Kawrykow D, Mezini M, Ratchford T (2013) Automated API property inference techniques. IEEE Trans. Softw. Eng. 39(5):613–637CrossRef Robillard MP, Bodden E, Kawrykow D, Mezini M, Ratchford T (2013) Automated API property inference techniques. IEEE Trans. Softw. Eng. 39(5):613–637CrossRef
Zurück zum Zitat Robillard MP, DeLine R (2011) A field study of API learning obstacles. Empir Softw Eng 16(6):703–732CrossRef Robillard MP, DeLine R (2011) A field study of API learning obstacles. Empir Softw Eng 16(6):703–732CrossRef
Zurück zum Zitat Seacord RC, Plakosh D, Lewis GA (2003) Modernizing legacy systems: software technologies, engineering processes, and business practices. Addison-Wesley Professional Seacord RC, Plakosh D, Lewis GA (2003) Modernizing legacy systems: software technologies, engineering processes, and business practices. Addison-Wesley Professional
Zurück zum Zitat Shi L, Zhong H, Xie T, Li M (2011) An empirical study on evolution of API documentation. In: Proc. ETAPS/FASE, pp. 416–431 Shi L, Zhong H, Xie T, Li M (2011) An empirical study on evolution of API documentation. In: Proc. ETAPS/FASE, pp. 416–431
Zurück zum Zitat Tan L, Liu C, Li Z, Wang X, Zhou Y, Zhai C (2014) Bug characteristics in open source software. Empir Softw Eng 19(6):1665–1705CrossRef Tan L, Liu C, Li Z, Wang X, Zhou Y, Zhai C (2014) Bug characteristics in open source software. Empir Softw Eng 19(6):1665–1705CrossRef
Zurück zum Zitat Tang Y, Khatchadourian R, Bagherzadeh M, Singh R, Stewart A, Raja A (2021) An empirical study of refactorings and technical debt in machine learning systems. In: Proc. ICSE, pp. 238–250 Tang Y, Khatchadourian R, Bagherzadeh M, Singh R, Stewart A, Raja A (2021) An empirical study of refactorings and technical debt in machine learning systems. In: Proc. ICSE, pp. 238–250
Zurück zum Zitat Thung F, Wang S, Lo D, Jiang L(2012) An empirical study of bugs in machine learning systems. In: Proc. ISSRE, pp. 271–280 Thung F, Wang S, Lo D, Jiang L(2012) An empirical study of bugs in machine learning systems. In: Proc. ISSRE, pp. 271–280
Zurück zum Zitat Tom E, Aurum A, Vidgen R (2013) An exploration of technical debt. J Syst Softw 86(6):1498–1516CrossRef Tom E, Aurum A, Vidgen R (2013) An exploration of technical debt. J Syst Softw 86(6):1498–1516CrossRef
Zurück zum Zitat Vásquez ML, Bavota G, Bernal-Cárdenas C, Penta MD, Oliveto R, Poshyvanyk D (2013) API change and fault proneness: a threat to the success of android apps. In: Proc. ESEC/FSE, pp. 477–487 Vásquez ML, Bavota G, Bernal-Cárdenas C, Penta MD, Oliveto R, Poshyvanyk D (2013) API change and fault proneness: a threat to the success of android apps. In: Proc. ESEC/FSE, pp. 477–487
Zurück zum Zitat Vásquez ML, Bavota G, Penta MD, Oliveto R, Poshyvanyk D (2014) How do API changes trigger stack overflow discussions? a study on the android SDK. In: Proc. ICPC, pp. 83–94 Vásquez ML, Bavota G, Penta MD, Oliveto R, Poshyvanyk D (2014) How do API changes trigger stack overflow discussions? a study on the android SDK. In: Proc. ICPC, pp. 83–94
Zurück zum Zitat Xia X, Lo D, Wen M, Shihab E, Zhou B (2014) An empirical study of bug report field reassignment. In: Proc. CSMR-WCRE, pp. 174–183 Xia X, Lo D, Wen M, Shihab E, Zhou B (2014) An empirical study of bug report field reassignment. In: Proc. CSMR-WCRE, pp. 174–183
Zurück zum Zitat Yan A, Zhong H, Song D, Jia L (2022) The symptoms, causes, and repairs of workarounds in apache issue trackers. In: Proc. ICSE Yan A, Zhong H, Song D, Jia L (2022) The symptoms, causes, and repairs of workarounds in apache issue trackers. In: Proc. ICSE
Zurück zum Zitat Yan M, Xia X, Shihab E, Lo D, Yin J, Yang X (2018) Automating change-level self-admitted technical debt determination. IEEE Trans Softw Eng 45(12):1211–1229CrossRef Yan M, Xia X, Shihab E, Lo D, Yin J, Yang X (2018) Automating change-level self-admitted technical debt determination. IEEE Trans Softw Eng 45(12):1211–1229CrossRef
Zurück zum Zitat Zeller A (2006) Why Programs Fail: A Guide to Systematic Debugging. Elsevier Zeller A (2006) Why Programs Fail: A Guide to Systematic Debugging. Elsevier
Zurück zum Zitat Zhang F, Khomh F, Zou Y, Hassan AE (2012) An empirical study on factors impacting bug fixing time. In: Proc. WCRE, pp. 225–234 Zhang F, Khomh F, Zou Y, Hassan AE (2012) An empirical study on factors impacting bug fixing time. In: Proc. WCRE, pp. 225–234
Zurück zum Zitat Zhang H, Gong L, Versteeg S (2013) Predicting bug-fixing time: an empirical study of commercial software projects. In: Proc. ICSE, pp. 1042–1051 Zhang H, Gong L, Versteeg S (2013) Predicting bug-fixing time: an empirical study of commercial software projects. In: Proc. ICSE, pp. 1042–1051
Zurück zum Zitat Zhang Y, Chen Y, Cheung S, Xiong Y, Zhang L (2018) An empirical study on TensorFlow program bugs. In: Proc. ISSTA, pp. 129–140 Zhang Y, Chen Y, Cheung S, Xiong Y, Zhang L (2018) An empirical study on TensorFlow program bugs. In: Proc. ISSTA, pp. 129–140
Zurück zum Zitat Zhong H (2022) Enriching compiler testing with real program from bug report. In: Proc. ASE, pp. 1–12 Zhong H (2022) Enriching compiler testing with real program from bug report. In: Proc. ASE, pp. 1–12
Zurück zum Zitat Zhong (2022) H Which exception shall we throw? In: Proc. ASE, p. to appear Zhong (2022) H Which exception shall we throw? In: Proc. ASE, p. to appear
Zurück zum Zitat Zhong H, Mei H (2018) An empirical study on API usages. IEEE Trans Softw Eng 45:319–334CrossRef Zhong H, Mei H (2018) An empirical study on API usages. IEEE Trans Softw Eng 45:319–334CrossRef
Zurück zum Zitat Zhong H, Wang X (2023) An empirical study on API usages from code search engine and local library. Empirical Software Engineering p. to appear Zhong H, Wang X (2023) An empirical study on API usages from code search engine and local library. Empirical Software Engineering p. to appear
Zurück zum Zitat Zimmermann T, Premraj R, Bettenburg N, Just S, Schroter A, Weiss C (2010) What makes a good bug report? IEEE Trans Softw Eng 36(5):618–643CrossRef Zimmermann T, Premraj R, Bettenburg N, Just S, Schroter A, Weiss C (2010) What makes a good bug report? IEEE Trans Softw Eng 36(5):618–643CrossRef
Metadaten
Titel
How do programmers fix bugs as workarounds? An empirical study on Apache projects
verfasst von
Aoyang Yan
Hao Zhong
Daohan Song
Li Jia
Publikationsdatum
01.07.2023
Verlag
Springer US
Erschienen in
Empirical Software Engineering / Ausgabe 4/2023
Print ISSN: 1382-3256
Elektronische ISSN: 1573-7616
DOI
https://doi.org/10.1007/s10664-023-10318-7

Weitere Artikel der Ausgabe 4/2023

Empirical Software Engineering 4/2023 Zur Ausgabe

Premium Partner