NASA Logo

NTRS

NTRS - NASA Technical Reports Server

Press Enter or click the Search button to begin your search.

Back to Results
A Change Impact Analysis to Characterize Evolving Program BehaviorsChange impact analysis techniques estimate the potential effects of changes made to software. Directed Incremental Symbolic Execution (DiSE) is an intraprocedural technique for characterizing the impact of software changes on program behaviors. DiSE first estimates the impact of the changes on the source code using program slicing techniques, and then uses the impact sets to guide symbolic execution to generate path conditions that characterize impacted program behaviors. DiSE, however, cannot reason about the flow of impact between methods and will fail to generate path conditions for certain impacted program behaviors. In this work, we present iDiSE, an extension to DiSE that performs an interprocedural analysis. iDiSE combines static and dynamic calling context information to efficiently generate impacted program behaviors across calling contexts. Information about impacted program behaviors is useful for testing, verification, and debugging of evolving programs. We present a case-study of our implementation of the iDiSE algorithm to demonstrate its efficiency at computing impacted program behaviors. Traditional notions of coverage are insufficient for characterizing the testing efforts used to validate evolving program behaviors because they do not take into account the impact of changes to the code. In this work we present novel definitions of impacted coverage metrics that are useful for evaluating the testing effort required to test evolving programs. We then describe how the notions of impacted coverage can be used to configure techniques such as DiSE and iDiSE in order to support regression testing related tasks. We also discuss how DiSE and iDiSE can be configured for debugging finding the root cause of errors introduced by changes made to the code. In our empirical evaluation we demonstrate that the configurations of DiSE and iDiSE can be used to support various software maintenance tasks
Document ID
20120016456
Acquisition Source
Ames Research Center
Document Type
Conference Paper
Authors
Rungta, Neha Shyam
(Stinger Ghaffarian Technologies, Inc. (SGT, Inc.) Moffett Field, CA, United States)
Person, Suzette
(NASA Langley Research Center Hampton, VA, United States)
Branchaud, Joshua
(Nebraska Univ. Lincoln, NE, United States)
Date Acquired
August 26, 2013
Publication Date
September 29, 2012
Subject Category
Computer Programming And Software
Report/Patent Number
ARC-E-DAA-TN5972
Report Number: ARC-E-DAA-TN5972
Meeting Information
Meeting: 28th IEEE International Conference on Software
Location: Trento
Country: Italy
Start Date: September 23, 2012
End Date: September 30, 2012
Funding Number(s)
CONTRACT_GRANT: NNA08CG83C
Distribution Limits
Public
Copyright
Public Use Permitted.
No Preview Available