A Flexible and Non-instrusive Approach for Computing Complex Structural Coverage MetricsSoftware analysis tools and techniques often leverage structural code coverage information to reason about the dynamic behavior of software. Existing techniques instrument the code with the required structural obligations and then monitor the execution of the compiled code to report coverage. Instrumentation based approaches often incur considerable runtime overhead for complex structural coverage metrics such as Modified Condition/Decision (MC/DC). Code instrumentation, in general, has to be approached with great care to ensure it does not modify the behavior of the original code. Furthermore, instrumented code cannot be used in conjunction with other analyses that reason about the structure and semantics of the code under test. In this work, we introduce a non-intrusive preprocessing approach for computing structural coverage information. It uses a static partial evaluation of the decisions in the source code and a source-to-bytecode mapping to generate the information necessary to efficiently track structural coverage metrics during execution. Our technique is flexible; the results of the preprocessing can be used by a variety of coverage-driven software analysis tasks, including automated analyses that are not possible for instrumented code. Experimental results in the context of symbolic execution show the efficiency and flexibility of our nonintrusive approach for computing code coverage information
Document ID
20150011052
Acquisition Source
Ames Research Center
Document Type
Conference Paper
Authors
Whalen, Michael W. (Minnesota Univ. Minneapolis, MN, United States)
Person, Suzette J. (NASA Langley Research Center Hampton, VA United States)
Rungta, Neha (Stinger Ghaffarian Technologies, Inc. (SGT, Inc.) Moffett Field, CA, United States)
Staats, Matt (Google, Inc. Mountain View, CA, United States)
Grijincu, Daniela (Saint Andrew's Univ. United Kingdom)
Date Acquired
June 18, 2015
Publication Date
May 16, 2015
Subject Category
Computer Programming And Software
Report/Patent Number
ARC-E-DAA-TN21155Report Number: ARC-E-DAA-TN21155
Meeting Information
Meeting: International Conference on Software Engineering
Location: Florence
Country: United States
Start Date: May 16, 2015
End Date: May 24, 2015
Sponsors: Institute of Electrical and Electronics Engineers