ORPLocator: Identifying read points of configuration options via static analysis
Publication Type
Conference Proceeding Article
Publication Date
10-2016
Abstract
Configuration options are widely used for customizing the behavior and initial settings of software applications, server processes, and operating systems. Their distinctive property is that each option is processed, defined, and described in different parts of a software project - namely in code, in configuration file, and in documentation. This creates a challenge for maintaining project consistency as it evolves. It also promotes inconsistencies leading to misconfiguration issues in production scenarios. We propose an approach for detection of inconsistencies between source code and documentation based on static analysis. Our approach automatically identifies source code locations where options are read, and for each such location retrieves the name of the option. Inconsistencies are then detected by comparing the results against the option names listed in documentation. We evaluated our approach on multiple components of Apache Hadoop, a complex framework with more than 800 options. Our tool ORPLocator was able to successfully locate at least one read point for 93% to 96% of documented options within four Hadoop components. A comparison with a previous state-of-the-art technique shows that our tool produces more accurate results. Moreover, our evaluation has uncovered 4 previously unknown, real-world inconsistencies between documented options and source code
Keywords
Configuration options, Empirical study, Inconsistency detection, Static analysis
Discipline
Computer Sciences | Software Engineering
Research Areas
Software and Cyber-Physical Systems
Publication
ISSRE 2016: Proceedings of the 27th IEEE International Symposium on Software Reliability Engineering: Ottawa, October 23-27, 2016
First Page
185
Last Page
195
ISBN
9781467390019
Identifier
10.1109/ISSRE.2016.37
Publisher
IEEE
City or Country
Piscataway, NJ
Citation
DONG, Zhen; ANDRZEJAK, Artur; David LO; and COSTA, Diego.
ORPLocator: Identifying read points of configuration options via static analysis. (2016). ISSRE 2016: Proceedings of the 27th IEEE International Symposium on Software Reliability Engineering: Ottawa, October 23-27, 2016. 185-195.
Available at: https://ink.library.smu.edu.sg/sis_research/3613
Additional URL
http://doi.org/10.1109/ISSRE.2016.37