DocumentCode :
176268
Title :
Querying the History of Software Projects Using QWALKEKO
Author :
Stevens, R. ; De Roover, C.
Author_Institution :
Software Languages Lab., Vrije Univ. Brussel, Brussels, Belgium
fYear :
2014
fDate :
Sept. 29 2014-Oct. 3 2014
Firstpage :
585
Lastpage :
588
Abstract :
We present the QwalKeko meta-programming library for Clojure that enables querying the history of versioned software projects in a declarative manner. Unique to this library is its support for regular path expressions within history queries. Regular path expressions are akin to regular expressions, except that they match a sequence of successive snapshots of a software project along which user-specified logic conditions must hold. Such logic conditions can concern the source code within a snapshot, versioning information associated with the snapshot, as well as patterns of source code changes with respect to other snapshots. We have successfully used the resulting multi-faceted queries to detect refactorings in project histories. In this paper, we discuss how applicative logic meta-programming enabled combining the heterogenous components of QwalKeko into a uniform whole. We focus on the applicative logic interface to a new implementation of a well-known change distilling algorithm. We use the problem of detecting and categorizing changes made to Selenium-based test scripts for illustration purposes.
Keywords :
logic programming; query processing; software maintenance; source code (software); Clojure; QwalKeko metaprogramming library; SELENIUM-based test scripts; applicative logic interface; applicative logic metaprogramming; change distilling algorithm; heterogenous components; history querying; illustration purposes; multifaceted queries; project histories; refactoring detection; regular path expressions; snapshot; software projects; source code; user-specified logic conditions; versioning information; Database languages; History; Java; Libraries; Software engineering; Software maintenance; declarative programming; history querying; mining software repositories; program querying;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Maintenance and Evolution (ICSME), 2014 IEEE International Conference on
Conference_Location :
Victoria, BC
ISSN :
1063-6773
Type :
conf
DOI :
10.1109/ICSME.2014.101
Filename :
6976145
Link To Document :
بازگشت