Combined Static and Dynamic Mutability Analysis
Knowing which method parameters may be mutated during a method's execution is useful for many software engineering tasks. We present an approach to discovering parameter immutability, in which several lightweight, scalable analyses are combined in stages, with each stage rening the overall resu...
Main Authors: | , , , |
---|---|
Other Authors: | |
Published: |
2007
|
Online Access: | http://hdl.handle.net/1721.1/36880 |
_version_ | 1826215449397821440 |
---|---|
author | Artzi, Shay Kiezun, Adam Glasser, David Ernst, Michael D. |
author2 | Michael Ernst |
author_facet | Michael Ernst Artzi, Shay Kiezun, Adam Glasser, David Ernst, Michael D. |
author_sort | Artzi, Shay |
collection | MIT |
description | Knowing which method parameters may be mutated during a method's execution is useful for many software engineering tasks. We present an approach to discovering parameter immutability, in which several lightweight, scalable analyses are combined in stages, with each stage rening the overall result. The resulting analysis is scalable and combines the strengths of its component analyses. As one of the component analyses, we present a novel, dynamic mutability analysis and show how its results can be improved by random input generation. Experimental results on programs of up to 185 kLOC show that, compared to previous approaches, our approach increases both scalability and overall accuracy. |
first_indexed | 2024-09-23T16:29:30Z |
id | mit-1721.1/36880 |
institution | Massachusetts Institute of Technology |
last_indexed | 2024-09-23T16:29:30Z |
publishDate | 2007 |
record_format | dspace |
spelling | mit-1721.1/368802019-04-12T08:35:48Z Combined Static and Dynamic Mutability Analysis Artzi, Shay Kiezun, Adam Glasser, David Ernst, Michael D. Michael Ernst Program Analysis Knowing which method parameters may be mutated during a method's execution is useful for many software engineering tasks. We present an approach to discovering parameter immutability, in which several lightweight, scalable analyses are combined in stages, with each stage rening the overall result. The resulting analysis is scalable and combines the strengths of its component analyses. As one of the component analyses, we present a novel, dynamic mutability analysis and show how its results can be improved by random input generation. Experimental results on programs of up to 185 kLOC show that, compared to previous approaches, our approach increases both scalability and overall accuracy. 2007-03-26T11:21:46Z 2007-03-26T11:21:46Z 2007-03-23 MIT-CSAIL-TR-2007-020 http://hdl.handle.net/1721.1/36880 Massachusetts Institute of Technology Computer Science and Artificial Intelligence Laboratory 17 p. application/postscript application/pdf |
spellingShingle | Artzi, Shay Kiezun, Adam Glasser, David Ernst, Michael D. Combined Static and Dynamic Mutability Analysis |
title | Combined Static and Dynamic Mutability Analysis |
title_full | Combined Static and Dynamic Mutability Analysis |
title_fullStr | Combined Static and Dynamic Mutability Analysis |
title_full_unstemmed | Combined Static and Dynamic Mutability Analysis |
title_short | Combined Static and Dynamic Mutability Analysis |
title_sort | combined static and dynamic mutability analysis |
url | http://hdl.handle.net/1721.1/36880 |
work_keys_str_mv | AT artzishay combinedstaticanddynamicmutabilityanalysis AT kiezunadam combinedstaticanddynamicmutabilityanalysis AT glasserdavid combinedstaticanddynamicmutabilityanalysis AT ernstmichaeld combinedstaticanddynamicmutabilityanalysis |