DocumentCode
2349131
Title
Bug-Inducing Language Constructs
Author
Ferzund, Javed ; Ahsan, Syed Nadeem ; Wotawa, Franz
Author_Institution
Inst. for Software Technol., Tech. Univ. Graz, Graz, Austria
fYear
2009
fDate
13-16 Oct. 2009
Firstpage
155
Lastpage
159
Abstract
Reducing bugs in software is a key issue in software development. Many techniques and tools have been developed to automatically identify bugs. These techniques vary in their complexity, accuracy and cost. In this paper we empirically investigate the language constructs which frequently contribute to bugs. Revision histories of eight open source projects developed in multiple languages are processed to extract bug-inducing language constructs. Twenty six different language constructs and syntax elements are identified. We find that most frequent bug-inducing language constructs are function calls, assignments, conditions, pointers, use of NULL, variable declaration, function declaration and return statement. These language constructs account for more than 70 percent of bug-inducing hunks. Different projects are statistically correlated in terms of frequencies of bug-inducing language constructs. Developers within a project and between different projects also have similar frequencies of bug-inducing language constructs. Quality assurance developers can focus code reviews on these frequent bug-inducing language constructs before committing changes.
Keywords
program debugging; programming languages; public domain software; software engineering; NULL; assignments; bug-inducing language constructs; function calls; function declaration; open source projects; pointers; return statement; software debugging; software development; variable declaration; Computer bugs; Computer languages; Costs; Frequency; History; Java; Open source software; Programming; Quality assurance; Reverse engineering; code changes; empirical software engineering; language constructs; software bugs; syntax elements;
fLanguage
English
Publisher
ieee
Conference_Titel
Reverse Engineering, 2009. WCRE '09. 16th Working Conference on
Conference_Location
Lille
ISSN
1095-1350
Print_ISBN
978-0-7695-3867-9
Type
conf
DOI
10.1109/WCRE.2009.40
Filename
5328809
Link To Document