DocumentCode
2440595
Title
Detecting metadata bugs on the fly
Author
Song, Myoungkyu ; Tilevich, Eli
Author_Institution
Dept. of Comput. Sci., Virginia Tech, Blacksburg, VA, USA
fYear
2012
fDate
2-9 June 2012
Firstpage
1455
Lastpage
1456
Abstract
Programmers are spending a large and increasing amount of their time writing and modifying metadata, such as Java annotations and XML deployment descriptors. And yet, automatic bug finding tools cannot find metadata-related bugs introduced during program refactoring and enhancement. To address this shortcoming, we have created metadata invariants, a new programming abstraction that expresses naming and typing relationships between metadata and the main source code of a program. A paper that appears in the main technical program of ICSE 2012 describes the idea, concept, and prototype of metadata invariants [4]. The goal of this demo is to supplement that paper with a demonstration of our Eclipse plugin, Metadata Bug Finder (MBF). MBF takes as input a script written in our domain-specific language that describes a set of metadata coding conventions the programmer wishes to enforce. Then after each file save operation, MBF checks the edited codebase for the presence of any violations of the given metadata programming conventions. These violations are immediately reported to the programmer as potential metadata-related bugs. By making the programmer aware of these potential bugs, MBF prevents them from seeping into production, thereby improving the overall correctness of the edited codebase.
Keywords
meta data; program debugging; Eclipse plugin; ICSE 2012; Java annotations; MBF; XML deployment descriptors; domain-specific language; main source code; main technical program; metadata bug finder; metadata bugs detection; metadata coding conventions; metadata invariants; metadata programming conventions; program enhancement; program refactoring; programming abstraction; Computer bugs; Encoding; Java; Programming; Software; Testing; XML; bug finding; domain-specific languages; enhancement; frameworks; invariants; metadata; refactoring; software maintenance;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Engineering (ICSE), 2012 34th International Conference on
Conference_Location
Zurich
ISSN
0270-5257
Print_ISBN
978-1-4673-1066-6
Electronic_ISBN
0270-5257
Type
conf
DOI
10.1109/ICSE.2012.6227067
Filename
6227067
Link To Document