Show simple item record

Using Historical Data From Source Code Revision Histories to Detect Source Code Properties

dc.contributor.advisorHollingsworth, Jeffrey Ken_US
dc.contributor.authorWilliams, Chadd Creightonen_US
dc.description.abstractIn this dissertation, we describe several techniques for using historical data mined from the source code revision histories of software projects to determine important properties of the source code. These properties are then used to improve the results of various bug-finding techniques as well as to provide documentation to the developer. We describe a method to mine source code revision histories, in this case CVS repositories, to extract relevant information to be fed into a static source code bug finder for use in improving the results generated by the bug finding tool. We apply this technique to the CVS repositories of two widely used open source software projects, Apache httpd and Wine. We show how source code revision history can be used to reduce false positives from a static source code checker that identifies the misuse of values returned from a function call. A method of mining source code revision histories for the purpose of learning about project specific idioms is then discussed. Specifically, we show how source code revision history can be used to identify patterns of calling sequences that describe how functions in the software should be used in relation to each other. With this data, we are able to find bugs in the source code, document API usage and identify refactoring events. In short, this dissertation shows that it is possible to automatically determine meaningful properties of the source code from studying source code changes cataloged in the software revision history.en_US
dc.format.extent1086792 bytes
dc.titleUsing Historical Data From Source Code Revision Histories to Detect Source Code Propertiesen_US
dc.contributor.publisherDigital Repository at the University of Marylanden_US
dc.contributor.publisherUniversity of Maryland (College Park, Md.)en_US
dc.contributor.departmentComputer Scienceen_US
dc.subject.pqcontrolledComputer Scienceen_US
dc.subject.pqcontrolledComputer Scienceen_US
dc.subject.pquncontrolledSoftware Maintenanceen_US
dc.subject.pquncontrolledSource Code Revision Historyen_US

Files in this item


This item appears in the following Collection(s)

Show simple item record