Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content

Advertisement

A multi-model framework for semantically enhancing detection of quality-related bug report descriptions

  • Published:
Empirical Software Engineering Aims and scope Submit manuscript

Abstract

Maintaining and delivering a high-quality software system is a delicate process. One way to ensure that a software system achieves the desired quality is to systematically monitor and timely address quality-related concerns. Quality concerns, such as reliability, usability, performance, and maintainability, among others, can have a broad impact in ensuring that a system remains consistently reliant and available at all times. In contrast, when such concerns are overlooked, become difficult to navigate, or maintain, system-wide failures could emerge. Typically, these failures can chiefly hinder the core functionality of the system and produce a large amount of quality bug reports. For the developers, manually examining these high-impacted quality-related bug reports in open-source issue tracking systems can become a prohibitively expensive and impractical task to deliver. Partly, because such bugs often require expert knowledge to address them. The more perplexing concern is the fact that these bugs are deemed difficult to detect due to their intertwined relationship with functional bugs. Even worse, there are instances when several types of quality concerns are intertwined among each other. Seemingly, these scenarios make quality concerns non-discernible. To ease this problem, we built a multi-model framework (BugReportSoftQualDetector) to automatically detect quality-related content in bug report descriptions. Specifically, we leveraged a weighted combination of semantics, lexical, and shallow features in conjunction with the Random Forest model to detect six most emerging quality concerns present in bug report descriptions. Our results indicate that our approach outperformed both state-of-the-art approaches, one that leveraged lexical features and the other that leveraged shallow features. To assess our approach, we examined six diverse open-source domains hosted from two issue-tracking systems such as Jira and Bugzilla. Through a grounded theory approach, we created a catalog of rules and employed ISO 25010 taxonomy and the FURPS taxonomy to categorize bug reports into six quality types of: performance, maintainability, reliability, portability, usability, and security. We then employed content analysis to manually label 5400 bug reports. Finally, we included a case study for tracing and visually mapping quality concerns into the codebase.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

Explore related subjects

Discover the latest articles, news and stories from top researchers in related subjects.

Data Availability

To enable the reliability of our findings, a replication package has been made available https://zenodo.org/record/4414868.

Notes

  1. https://doi.org/10.5281/zenodo.4414868

References

  • Abad ZSH, Karras O, Ghazi P, Glinz M, Ruhe G, Schneider K (2017) What works better? a study of classifying requirements. In: Proceeding of the 25th IEEE international requirements engineering conference (RE), IEEE, pp 496–501

  • Aggarwal CC, Zhai C (2012) Mining text data. Springer Science & Business Media

  • Aggarwal K, Timbers F, Rutgers T, Hindle A, Stroulia E, Greiner R (2017) Detecting duplicate bug reports with software engineering domain knowledge. J Softw Evol Process 29(3):e1821

    Google Scholar 

  • Ahmed MM, Hedar ARM, Ibrahim HM (2014) Predicting bug category based on analysis of software repositories. In: 2Nd international conference on research in science, engineering and technology, pp 44–53

  • Alqahtani SS, Rilling J (2017) An ontology-based approach to automate tagging of software artifacts. In: Proceeding of the ACM/IEEE international conference and symposium on empirical software engineering and measurement, IEEE, pp 169–174

  • Amasaki S, Leelaprute P (2018) The effects of vectorization methods on non-functional requirements classification. In: 2018 44Th euromicro conference on software engineering and advanced applications (SEAA), IEEE, pp 175–182

  • Anvik J, Hiew L, Murphy GC (2005) Coping with an open bug repository. In: Proceedings of the 2005 OOPSLA workshop on Eclipse technology eXchange, pp 35–39

  • Arokiam J, Bradbury JS (2020) Automatically predicting bug severity early in the development process. In: Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering: New Ideas and Emerging Results, pp 17–20

  • Aung TWW, Wan Y, Huo H, Sui Y (2022) Multi-triage: a multi-task learning framework for bug triage. J Syst Softw 184:111133

    Google Scholar 

  • Bachmann A, Bird C, Rahman F, Devanbu P, Bernstein A (2010) The missing links: bugs and bug-fix commits. In: Proceedings of the Eighteenth ACM SIGSOFT International Conference and Symposium on Foundations of Software Engineering (FSE), pp 97–106

  • Behl D, Handa S, Arora A (2014) A bug mining tool to identify and analyze security bugs using naive bayes and tf-idf. In: Optimization, reliabilty, and information technology (ICROIT), 2014 international conference on, IEEE, pp 294–299

  • Bettenburg N, Just S, Schrȯter A, Weiß C, Premraj R, Zimmermann T (2007) Quality of bug reports in eclipse. In: Proceedings of the 2007 OOPSLA workshop on Eclipse Technology eXchange, ETX 2007, Montreal, Quebec, Canada, October 21, 2007, pages 21–25

  • Binkhonain M, Zhao L (2019) A review of machine learning algorithms for identification and classification of non-functional requirements. Exp Syst Appl X 1:100001

    Google Scholar 

  • Breiman L (2001) Random forests. Mach Learn 45(1):5–32

    MATH  Google Scholar 

  • Carletta J (1996) Assessing agreement on classification tasks: The kappa statistic. Comput Linguist 22(2):249–254

    Google Scholar 

  • Catolino G, Palomba F, Zaidman A, Ferrucci F (2019) Not all bugs are the same Understanding, characterizing, and classifying bug types. J Syst Softw 152:165–181

    Google Scholar 

  • Chaparro O, Florez JM, Marcus A (2019) Using bug descriptions to reformulate queries during text-retrieval-based bug localization. Empir Softw Eng 24 (5):2947–3007

    Google Scholar 

  • Chaturvedi KK, Singh V (2012) Determining bug severity using machine learning techniques. In: 2012 CSI Sixth international conference on software engineering (CONSEG), IEEE, pp 1–6

  • Chawla NV, Bowyer KW, Hall LO, Kegelmeyer WP (2002) SMOTE: synthetic minority over-sampling technique. J Artif Intell Res 16:321–357

    MATH  Google Scholar 

  • Chen C, Lin S, Shoga M, Wang Q, Boehm B (2018) How do defects hurt qualities? an empirical study on characterizing a software maintainability ontology in open source software. In: 2018 IEEE International conference on software quality, reliability and security (QRS), IEEE, pp 226–237

  • Corbin J (2014) A strauss. Techniques and procedures for developing grounded theory. Sage publications, Basics of qualitative research

    Google Scholar 

  • Cysneiros LM, do Prado Leite JCS, Neto JdMS (2001) A framework for integrating non-functional requirements into conceptual models. Requir Eng 6(2):97–115

    MATH  Google Scholar 

  • Dallmeier V, Zimmermann T (2007) Extraction of bug localization benchmarks from history. In: Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering, pp 433–436

  • Davidson JL, Mohan N, Jensen C (2011) Coping with duplicate bug reports in free/open source software projects. In: 2011 IEEE Symposium on visual languages and human-centric computing (VL/HCC), IEEE, pp 101–108

  • de Normalización OI (2011) ISO-IEC 25010: Systems and software Engineering-Systems and software quality requirements and evaluation -System and software quality models ISO

  • Devlin J, Chang M-W, Lee K, Toutanova BK (2018) Pre-training of deep bidirectional transformers for language understanding. ArXiv:1810.04805

  • Dromey RG (1995) A model for software product quality. IEEE Trans Softw Eng 21(2):146–162

    Google Scholar 

  • Eaddy M, Zimmermann T, Sherwood KD, Garg V, Murphy GC, Nagappan N, Aho AV (2008) Do crosscutting concerns cause defects? IEEE Trans Softw Eng 34(4):497–515

    Google Scholar 

  • Ebert C (1997) Dealing with nonfunctional requirements in large software systems. Ann Softw Eng 3(1):367–395

    Google Scholar 

  • Ezzini S, Abualhaija S, Arora C, Sabetzadeh M, Briand LC (2021) Using domain-specific corpora for improved handling of ambiguity in requirements. In: 2021 IEEE/ACM 43Rd international conference on software engineering (ICSE), IEEE, pp 1485–1497

  • Fadaee M, Bisazza A, Monz C (2017)

  • Firesmith D (2003) Using quality models to engineer quality requirements. J Object Technol 2(5):67–75

    Google Scholar 

  • Fu W, Menzies T, Shen X (2016) Tuning for software analytics Is it really necessary? Inf Softw Technol 76:135–146

    Google Scholar 

  • Garousi V, Ergezer EG, Herkiloġlu K. (2016) Usage, usefulness and quality of defect reports: an industrial case study. In: Proceedings of the 20th international conference on evaluation and assessment in software engineering, pp 1–6

  • Goldberg Y, Elhadad M (2009) On the role of lexical features in sequence labeling. In: Proceedings of the 2009 Conference on Empirical Methods in Natural Language Processing, pages 1142–1151

  • Goseva-Popstojanova K, Tyo J (2018) Identification of security related bug reports via text mining using supervised and unsupervised classification. In: IEEE International conference on software quality, reliability and security, IEEE, pp 344–355

  • Grady RB (1992) Practical software metrics for project management and process improvement. Prentice-Hall Inc.

  • Guzman E, Maalej W (2014) How do users like this feature? a fine grained sentiment analysis of app reviews. In: 2014 IEEE 22Nd international requirements engineering conference (RE), IEEE, pp 153–162

  • Han P, Shen S, Wang D, Liu Y (2012) The influence of word normalization in english document clustering. In: 2012 IEEE International conference on computer science and automation engineering (csae), vol 2. IEEE, pp 116–120

  • Harty J (2011) Finding usability bugs with automated tests. Commun ACM 54(2):44–49

    Google Scholar 

  • Hayes JH, Dekhtyar A, Osborne J (2003) Improving requirements tracing via information retrieval. In: Proceedings. 11th IEEE international requirements engineering conference, 2003., IEEE, pp 138–147

  • Herzig K, Just S, Zeller A (2013) It’s not a bug, it’s a feature: how misclassification impacts bug prediction. In: Proceedings of the 2013 international conference on software engineering, IEEE Press, pp 392–401

  • Herzig K, Just S, Zeller A (2015) It’s not a bug, It’s a feature How misclassification impacts bug prediction. In: Software engineering & management 2015, multikonferenz der GI-fachbereiche softwaretechnik (SWT) und wirtschaftsinformatik (WI), FA WI-MAW, 17. Mȧrz - 20. Mȧrz 2015, Dresden, Germany, pages 103–104

  • Hindle A, Alipour A, Stroulia E (2016) A contextual approach towards more accurate duplicate bug report detection and ranking. Empir Softw Eng 21 (2):368–410

    Google Scholar 

  • Hindle A, Barr ET, Gabel M, Su Z, Devanbu P (2016) On the naturalness of software. Commun ACM 59(5):122–131

    Google Scholar 

  • Hoover DL (2008) Quantitative analysis and literary studies. A Companion to Digital Literary Studies :517–533

  • Hussain I, Kosseim L, Ormandjieva O (2008) Using linguistic knowledge to classify non-functional requirements in srs documents. In: International conference on application of natural language to information systems, Springer, pp 287–298

  • Jabbar A, Iqbal S, Tamimy MI, Hussain S, Akhunzada A (2020) Empirical evaluation and study of text stemming algorithms. Artif Intell Rev 53(8):5559–5588

    Google Scholar 

  • Japkowicz N, Stephen S (2002) The class imbalance problem: a systematic study. Intell Data Anal 6(5):429–449

    MATH  Google Scholar 

  • Jeong G, Kim S, Zimmermann T (2009) Improving bug triage with bug tossing graphs. In: Proceedings of the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering, pp 111–120

  • Jin G, Song L, Shi X, Scherpelz J, Lu S (2012) Understanding and detecting real-world performance bugs. In: ACM SIGPLAN Conference on programming language design and implementation, PLDI ’12, beijing, China - june 11 - 16, 2012, pp 77–88

  • Jongejan B, Dalianis H (2009) Automatic training of lemmatization rules that handle morphological changes in pre-, in-and suffixes alike. In: Proceedings of the Joint Conference of the 47th Meeting of the ACL and the 4th Conference on Natural Language Processing of the AFNLP, pp 145–153

  • Jureta IJ, Faulkner S, Schobbens P-Y (2006) A more expressive softgoal conceptualization for quality requirements analysis. In: International conference on conceptual modeling, Springer, pp 281–295

  • Karim MR, Ihara A, Yang X, Iida H, Matsumoto K (2017) Understanding key features of high-impact bug reports. In: 2017 8Th international workshop on empirical software engineering in practice (IWESEP), IEEE, pp 53–58

  • Khan JA, Xie Y, Liu L, Wen L (2019) Analysis of requirements-related arguments in user forums. In: 2019 IEEE 27Th international requirements engineering conference, IEEE, pp 63–74

  • Kim S, Pan K, Whitehead JrEJ (2006) Memories of bug fixes. In: Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering, pp 35–45

  • Kobayashi S (2018)

  • Koch S (2007) Software evolution in open source projects—a large-scale investigation. J Soft Maint Evol-R 19(6):361–382

    Google Scholar 

  • Kohlschu̇tter C, Fankhauser P, Nejdl W (2010) Boilerplate detection using shallow text features. In: Proceedings of the Third International Conference on Web Search and Web Data Mining, WSDM 2010, New York, NY, USA, February 4-6, 2010, pp 441–450

  • Krasniqi R (2021) Extractive summarization of related bug-fixing comments in support of bug repair. In: 2021 IEEE/ACM International workshop on automated program repair, IEEE, pp 31–32

  • Krasniqi R (2021) Recommending bug-fixing comments from issue tracking discussions in support of bug repair. In: 2021 IEEE 45Th annual computers, software, and applications conference (COMPSAC), pp 812–823

  • Krasniqi R (2021) Recommending bug-fixing comments from issue tracking discussions in support of bug repair. In: 2021 IEEE 45Th annual computers, software, and applications conference (COMPSAC), IEEE, pp 812–823

  • Krasniqi R, Agrawal A (2021) Analyzing and detecting emerging quality-related concerns across oss defect report summaries. In: 2021 IEEE International conference on software analysis, evolution and reengineering (SANER), IEEE, pp 12–23

  • Krasniqi R, Cleland-Huang J (2020) Enhancing source code refactoring detection with explanations from commit messages. In: Proceeding of the 27th IEEE international conference on software analysis, evolution and reengineering (SANER), IEEE, pp 512–516

  • Krasniqi R, Do H (2022) Automatically capturing quality-related concerns in bug report descriptions for efficient bug triaging. In: Proceedings of the International Conference on Evaluation and Assessment in Software Engineering 2022, EASE ’22, page 10–19, New York, NY. Association for Computing Machinery, USA

  • Krasniqi R, McMillan C (2018) Tracelab components for generating speech act types in developer question/answer conversations. In: 2018 IEEE International conference on software maintenance and evolution (ICSME), IEEE, pp 713–713

  • Kucuk B, Tuzun BE (2021) Characterizing duplicate an empirical analysis. In: 2021 IEEE International conference on software analysis, evolution and reengineering (SANER), IEEE, pp 661–668

  • Kumar VR, Mansotra V (2016) Applications of stemming algorithms in information retrieval-a review International Journal of Advanced Research in Computer Science and Software Engineering

  • Kurtanovic Z, Maalej W (2017) Automatically classifying functional and non-functional requirements using supervised machine learning. In: 25Th IEEE international requirements engineering conference, RE 2017, lisbon, portugal, september 4-8, 2017, pp 490–495

  • Kurtanović Z., Maalej W (2017) Mining user rationale from software reviews. In: 2017 IEEE 25Th international requirements engineering conference (RE), IEEE, pp 61–70

  • Kurtanović Z., Maalej W (2018) On user rationale in software engineering. Requir Eng 23(3):357–379

    Google Scholar 

  • Lamkanfi A, Demeyer S, Soetens QD, Verdonck T (2011) Comparing mining algorithms for predicting the severity of a reported bug. In: Software maintenance, IEEE, pp 249–258

  • Landis JR, Koch GG (1977) The measurement of observer agreement for categorical data. biometrics pp 159–174

  • Lau JH, Baldwin T (2016) An empirical evaluation of doc2vec with practical insights into document embedding generation. arXiv:1607.05368

  • Le XBD, Lo D, Le Goues C (2016) History driven program repair. In: Proceeding of the 23rd international conference on software analysis, evolution, and reengineering (SANER), volume 1, IEEE, pp 213–224

  • Lidwell W, Holden K, Butler J (2010) Universal principles of design, revised and updated: 125 ways to enhance usability, influence perception, increase appeal, make better design decisions, and teach through design Rockport Pub

  • Liu X-Y, Wu J, Zhou ZH (2009) Exploratory undersampling for class-imbalance learning. IEEE Trans Syst Man, Cybernet 39(2):539–550

    Google Scholar 

  • Loosen W, Häring M, Kurtanović Z, Merten L, Reimer J, van Roessel L, Maalej W (2018) Making sense of user comments Identifying journalists’ requirements for a comment analysis framework. Stud Commun Med 6 (4):333–364

    Google Scholar 

  • Loper E, Bird S (2002) Nltk: the natural language toolkit arXiv preprint cs/0205028

  • Maalej W, Nabil H (2015) Bug report, feature request, or simply praise? on automatically classifying app reviews. In: 23Rd IEEE international requirements engineering conference, RE 2015, ottawa, ON, Canada, August 24-28, 2015, pp 116–125

  • Maalej W, Robillard MP (2013) Patterns of knowledge in api reference documentation. IEEE Trans Softw Eng 39(9):1264–1282

    Google Scholar 

  • Machova K, Marhefka L (2014) Opinion classification in conversational content using n-grams. In: Recent developments in computational collective intelligence, Springer, pp 177–186

  • Mahmoud A (2015) An information theoretic approach for extracting and tracing non-functional requirements. In: 2015 IEEE 23Rd international requirements engineering conference (RE), IEEE, pp 36–45

  • Mahmoud A, Niu N, Xu S (2012) A semantic relatedness approach for traceability link recovery. In: 20Th IEEE international conference on program comprehension, IEEE, pp 183–192

  • Marcus MP, Santorini B, Marcinkiewicz MA (1993) Building a large annotated corpus of english The penn treebank. Comput Linguist 19(2):313–330

    Google Scholar 

  • Marks L, Zou Y, Hassan AE (2011) Studying the fix-time for bugs in large open source projects. In: Proceedings of the 7th International Conference on Predictive Models in Software Engineering, pp 1–8

  • Márquez G., Astudillo H (2018) Actual use of architectural patterns in microservices-based open source projects. In: 25Th international asia-pacific software engineering conference, IEEE, pp 31–40

  • Márquez G., Astudillo H (2019) Identifying availability tactics to support security architectural design of microservice-based systems. In: Proceedings of the 13th European Conference on Software Architecture-Volume 2, pp 123–129

  • Menzies T, Marcus A (2008) Automated severity assessment of software defect reports. In: 2008 IEEE International conference on software maintenance, IEEE, pp 346–355

  • Mi Q, Keung J, Huo Y, Mensah S (2018) Not all bug reopens are negative: a case study on eclipse bug reports. IST 99:93–97

    Google Scholar 

  • Mirakhorli M, Carvalho J, Cleland-Huang J, Mäder P (2013) A domain-centric approach for recommending architectural tactics to satisfy quality concerns. In: 3Rd international workshop on the twin peaks of requirements and architecture, IEEE, pp 1–8

  • Mirakhorli M, Cleland-Huang J (2012) Tracing non-functional requirements. In: Software and systems traceability, Springer, pp 299–320

  • Mirakhorli M, Cleland-Huang J (2015) Detecting, tracing, and monitoring architectural tactics in code. IEEE Trans Softw Eng 42(3):205–220

    Google Scholar 

  • Moreira A, Araújo J, Brito I (2002) Crosscutting quality attributes for requirements engineering. In: Proceedings of the 14th international conference on Software engineering and knowledge engineering, pp 167–174

  • Moscibroda T, attacks O. Mutlu. (2007) Memory performance Denial of memory service in multi-core systems. In: Proceedings of the 16th Security Symposium, Boston, MA, USA, August 6-10, 2007

  • Napierala MA (2012) What is the bonferroni correction? Aaos Now :40–41

  • Nuseibeh B (2001) Weaving together requirements and architectures. Computer 34(3):115–119

    Google Scholar 

  • Ortu M, Destefanis G, Adams B, Murgia A, Marchesi M, Tonelli R (2015) The jira repository dataset: Understanding social aspects of software development. In: Proceedings of the 11th international conference on predictive models and data analytics in software engineering, pp 1–4

  • Pelayo L, Dick S (2007) Applying novel resampling strategies to software defect prediction. In: Annual meeting of the north american fuzzy information processing society, IEEE, pp 69–72

  • Porter MF (2006) An algorithm for suffix stripping. Program 40 (3):211–218

    Google Scholar 

  • Rath M, Lo D, Mäder P (2018) Analyzing requirements and traceability information to improve bug localization. In: Proceedings of the 15th International Conference on Mining Software Repositories, pp 442–453

  • Rath M, Tomova MT, Mäder P (2019) Selecting open source projects for traceability case studies. In: International working conference on requirements engineering: Foundation for software quality, Springer, pp 229–242

  • Riaz M, Sulayman M, Naqvi H (2009) Architectural decay during continuous software evolution and impact of ’design for change’on software architecture. In: International conference on advanced software engineering and its applications, Springer, pp 119–126

  • Rifkin RM, Klautau A (2004) In defense of one-vs-all classification. J Mach Learn Res 5:101–141

    MathSciNet  MATH  Google Scholar 

  • Robertson S, Robertson J (2012) Mastering the requirements process: Getting requirements right. Addison-wesley

  • Rodriguez D, Herraiz I, Harrison R (2012) On software engineering repositories and their open problems. In: International workshop on realizing AI synergies in software engineering, IEEE, pp 52–56

  • Rosenhainer L (2004) Identifying crosscutting concerns in requirements specifications. In: Proceedings of OOPSLA Aspects. Citeseer

  • Runeson P, Host M, Rainer A, Regnell B (2012) Case study research in software engineering. Guidelines and examples. John Wiley

  • Rusu D, Dali L, Fortuna B, Grobelnik M, Mladenic D (2007) Triplet extraction from sentences. In: Proceedings of the 10th International Multiconference” Information Society-IS, pp 8–12

  • Sabor KK, Nayrolles M, Trabelsi A, Hamou-Lhadj A (2018) An approach for predicting bug report fields using a neural network learning model. In: 2018 IEEE International symposium on software reliability engineering workshops (ISSREW), IEEE, pp 232–236

  • Sahoo SK, Criswell J, Adve V (2010) An empirical study of reported bugs in server software with implications for automated bug diagnosis. In: 2010 ACM/IEEE 32Nd international conference on software engineering, volume 1, IEEE, pp 485–494

  • Scacchi W (2009) Understanding requirements for open source software. In: Design requirements engineering: a ten-year perspective, Springer, pp 467–494

  • Schneider J, Samp K, Passant A, Decker S (2013) Arguments about deletion: How experience improves the acceptability of arguments in ad-hoc online task groups. In: Conference on computer supported cooperative work, pp 1069–1080

  • Shihab E, Ihara A, Kamei Y, Ibrahim WM, Ohira M, Adams B, Hassan AE, Matsumoto K-i (2013) Studying re-opened bugs in open source software. EMSE 18(5):1005–1042

    Google Scholar 

  • Somasundaram K, Murphy GC (2012) Automatic categorization of bug reports using latent dirichlet allocation. In: 5Th annual software engineering conference, india, 2012, pp 125–130

  • Sommerville I (2011) Software engineering 9th edition. ISBN-10 137035152:18

  • Souza G, Castro J (2004) Improving the separation of non-functional concerns in requirements artifacts. In: Requirements engineering. Citeseer

  • Sowe SK, Stamelos I, Angelis L (2008) Understanding knowledge sharing activities in free/open source software projects An empirical study. J Syst Softw 81(3):431–446

    Google Scholar 

  • Stemler S (2000) An overview of content analysis. Pract Assess Res Evaluation 7(1):17

    Google Scholar 

  • Strauss A, Corbin JM (1997) Grounded theory in practice Sage

  • Tantithamthavorn C, McIntosh S, Hassan AE, Matsumoto K (2016) An empirical comparison of model validation techniques for defect prediction models. IEEE Trans Softw Eng (TSE) 43(1):1–18

    Google Scholar 

  • Tantithamthavorn C, Teekavanich R, Ihara A, Matsumoto K-i (2013) Mining a change history to quickly identify bug locations: a case study of the eclipse project. In: International symposium on software reliability engineering, IEEE, pp 108–113

  • Teufel S, Moens M (2002) Summarizing scientific articles: experiments with relevance and rhetorical status. Comput Linguist 28(4):409–445

    Google Scholar 

  • Tian Y, Wijedasa D, Lo D, Le Goues C (2016) Learning to rank for bug report assignee recommendation. In: Proceeding of 24th IEEE international conference on program comprehension (ICPC), IEEE, pp 1–10

  • Twidale MB, Nichols DM (2005) Exploring usability discussions in open source development. In: 38Th hawaii international conference on system sciences (HICSS-38 2005), CD-ROM / abstracts proceedings, 3-6 january. Big Island, HI, USA, p 2005

  • Valdivia Garcia H, Shihab E (2014) Characterizing and predicting blocking bugs in open source projects. In: Proceedings of the 11th International Conference on Mining Software Repositories (MSR), pp 72–81

  • Van Der Maaten L, Postma E, et al. (2009) Dimensionality reduction: a comparative. JML 10(66-71):13

    Google Scholar 

  • van der Ven JS, Jansen AG, Nijhuis JA, decisions J. Bosch. (2006) Design the bridge between rationale and architecture. In: Rationale management in software engineering, Springer, pp 329–348

  • Van Hulse J, Khoshgoftaar TM, Napolitano A (2007) Experimental perspectives on learning from imbalanced data. In: 24Th international conference on machine learning, pp 935–942

  • Von Mayrhauser A, Vans AM, Howe AE (1997) Program understanding behaviour during enhancement of large-scale software. J Softw Maint Res Pract 9(5):299–327

    Google Scholar 

  • Walker MA, Anand P, Abbott R, Tree JEF, Martell C, King J (2012) That is your evidence?: Classifying stance in online political debate. Decis Support Syst 53(4):719–729

    Google Scholar 

  • Wettel R, Lanza M (2008) Codecity: 3d visualization of large-scale software. In: Proceeding of international conference on software engineering (ICSE), pp 921–922

  • Wettel R, Lanza M, Robbes R (2010) Empirical validation of codecity: A controlled experiment. Università della Svizzera italiana, Technical report

    Google Scholar 

  • Wijayasekara D, Manic M, McQueen M (2014) Vulnerability identification and classification via text mining bug databases. In: 40Th annual conference of the industrial electronics society, dallas, TX, USA, Oct 29 - Nov 1, 2014, pp 3612–3618

  • Winkler J, Vogelsang A (2016) Automatic classification of requirements based on convolutional neural networks. In: RE, IEEE, pp 39–45

  • Wu X, Zheng W, Chen X, Zhao Y, Yu T, Mu D (2021) Improving high-impact bug report prediction with combination of interactive machine learning and active learning. Softw Tech 133:106530

    Google Scholar 

  • Xia X, Lo D, Shihab E, Wang X (2015) Automated bug report field reassignment and refinement prediction. Trans Reliab 65(3):1094–1113

    Google Scholar 

  • Xia X, Lo D, Wen M, Shihab E, Zhou B (2014) An empirical study of bug report field reassignment. In: 2014 Software evolution week-IEEE conference on software maintenance, reengineering, and reverse engineering, IEEE, pp 174–183

  • Yang X-L, Lo D, Xia X, Huang Q, Sun J-L (2017) High-impact bug report identification with imbalanced learning strategies. Journal 32(1):181–198

    Google Scholar 

  • Yin Z, Yuan D, Zhou Y, Pasupathy S, Bairavasundaram L (2011) How do fixes become bugs?. In: 13Th conference on foundations of software engineering, pp 26–36

  • Zaman S, Adams B, Hassan AE (2012) A qualitative study on performance bugs. In: 9Th conference of mining software repositories, MSR june 2-3, 2012, Zurich, Switzerland, pp 199–208

  • Zhang F, Khomh F, Zou Y, Hassan AE (2012) An empirical study on factors impacting bug fixing time. In: 2012 19Th working conference on reverse engineering (WCRE), IEEE, pp 225–234

  • Zhang T, Oles FJ (2001) Text categorization based on regularized linear classification methods. Inform Retr 4(1):5–31

    MATH  Google Scholar 

  • Zhang X, Zhao J, LeCun Y (2015) Character-level convolutional networks for text classification. Adv Neural Inform Syst 28:649–657

    Google Scholar 

  • Ziftci C, Krueger I (2011) Tracing requirements to tests with high precision and recall. In: 2011 26Th IEEE/ACM international conference on automated software engineering, IEEE, pp 472–475

Download references

Acknowledgements

The authors would like to thank Ankit Agrawal for his contribution in helping with annotation process and the labeling of the dataset used in the study.

Funding

Our work is not supported by any fund resources.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Rrezarta Krasniqi.

Ethics declarations

Conflict of Interests

We have disclosed the conflicts in the EMSE portal.

Additional information

Communicated by: Rick Kazman, Marouane Kessentini, Yuanfang Cai

Publisher’s note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

This article belongs to the Topical Collection: Software Analysis, Evolution and Reengineering (SANER)

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Krasniqi, R., Do, H. A multi-model framework for semantically enhancing detection of quality-related bug report descriptions. Empir Software Eng 28, 42 (2023). https://doi.org/10.1007/s10664-022-10280-w

Download citation

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s10664-022-10280-w

Keywords