Scheduled System Maintenance
On Tuesday, September 26, IEEE Xplore will undergo scheduled maintenance from 1:00-4:00 PM ET.
During this time, there may be intermittent impact on performance. We apologize for any inconvenience.

2009 Ninth IEEE International Working Conference on Source Code Analysis and Manipulation

20-21 Sept. 2009

Filter Results

Displaying Results 1 - 25 of 33
  • [Front cover]

    Publication Year: 2009, Page(s): C1
    Request permission for commercial reuse | PDF file iconPDF (1254 KB)
    Freely Available from IEEE
  • [Title page i]

    Publication Year: 2009, Page(s): i
    Request permission for commercial reuse | PDF file iconPDF (9 KB)
    Freely Available from IEEE
  • [Title page iii]

    Publication Year: 2009, Page(s): iii
    Request permission for commercial reuse | PDF file iconPDF (76 KB)
    Freely Available from IEEE
  • [Copyright notice]

    Publication Year: 2009, Page(s): iv
    Request permission for commercial reuse | PDF file iconPDF (119 KB)
    Freely Available from IEEE
  • Table of contents

    Publication Year: 2009, Page(s):v - vi
    Request permission for commercial reuse | PDF file iconPDF (176 KB)
    Freely Available from IEEE
  • Message from the Conference Chairs

    Publication Year: 2009, Page(s): vii
    Request permission for commercial reuse | PDF file iconPDF (78 KB) | HTML iconHTML
    Freely Available from IEEE
  • Organizing Committee

    Publication Year: 2009, Page(s): viii
    Request permission for commercial reuse | PDF file iconPDF (78 KB)
    Freely Available from IEEE
  • Program Committee

    Publication Year: 2009, Page(s):ix - x
    Request permission for commercial reuse | PDF file iconPDF (91 KB)
    Freely Available from IEEE
  • Steering Committee

    Publication Year: 2009, Page(s): xi
    Request permission for commercial reuse | PDF file iconPDF (84 KB)
    Freely Available from IEEE
  • Additional reviewers

    Publication Year: 2009, Page(s): xii
    Request permission for commercial reuse | PDF file iconPDF (50 KB)
    Freely Available from IEEE
  • Keynote

    Publication Year: 2009, Page(s): xiii
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (64 KB)

    Provides an abstract of the keynote presentation and a brief professional biography of the presenter. The complete presentation was not made available for publication as part of the conference proceedings. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • thr2csp: Toward Transforming Threads into Communicating Sequential Processes

    Publication Year: 2009, Page(s):3 - 12
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (453 KB) | HTML iconHTML

    As multicore and heterogeneous multiprocessor platforms replace uniprocessor systems, software programs must be designed with a greater emphasis on concurrency. Threading has become the dominant paradigm of concurrent computation in the most popular programming languages. Large threaded programs are known to be difficult to implement correctly, comprehend, and maintain, while concurrent programs w... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Chopping Concurrent Programs

    Publication Year: 2009, Page(s):13 - 22
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (350 KB) | HTML iconHTML

    A chop for a source statement s and a target statement t reveals the program parts involved in conveying effects from s to t. While precise chopping algorithms for sequential programs are known, no chopping algorithm for concurrent programs has been reported at all. This work introduces five chopping algorithms for concurrent programs, which offer different degrees of precision, ranging from impre... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Properties of Slicing Definitions

    Publication Year: 2009, Page(s):23 - 32
    Cited by:  Papers (2)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (262 KB) | HTML iconHTML

    Weiser's original papers on slicing defined the concept in an informal way. Since then there have been several attempts to formalise slicing using various formal methods and semantics of programs. In this paper we start by defining some properties that a definition of slicing might reasonably be expected to satisfy and then compare different definitions of slicing to see which properties are satis... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Improving Side-Effect Analysis with Lazy Access Path Resolving

    Publication Year: 2009, Page(s):35 - 44
    Cited by:  Papers (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (645 KB) | HTML iconHTML

    For scalability, many side-effect analysis methods choose inclusion-based context-insensitive (IBCI) pointer analysis as their basis. However, such a pointer analysis is known to be imprecise, which often results in over-conservative side-effect sets. In this paper, we present a lightweight approach that exploits lazy access path resolving to improve the precision of side-effect analysis under IBC... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Towards Comparing and Combining Points-to Analyses

    Publication Year: 2009, Page(s):45 - 54
    Cited by:  Papers (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (344 KB) | HTML iconHTML

    Points-to information is the basis for many analyses and transformations, e.g., for program understanding and optimization. To justify new analysis techniques, they need to be compared to the state of the art regarding their accuracy and efficiency. Usually, benchmark suites are used to experimentally compare the different techniques. In this paper, we show that the accuracy of two analyses can on... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Static Estimation of Test Coverage

    Publication Year: 2009, Page(s):55 - 64
    Cited by:  Papers (3)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (600 KB) | HTML iconHTML

    Test coverage is an important indicator for unit test quality. Tools such as Clover compute coverage by first instrumenting the code with logging functionality, and then logging which parts are executed during unit test runs. Since computation of test coverage is a dynamic analysis, it presupposes a working installation of the software. In the context of software quality assessment by an independe... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • An Assessment of Type-3 Clones as Detected by State-of-the-Art Tools

    Publication Year: 2009, Page(s):67 - 76
    Cited by:  Papers (14)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (350 KB) | HTML iconHTML

    Code reuse through copying and pasting leads to so-called software clones. These clones can be roughly categorized into identical fragments (type-1 clones), fragments with parameter substitution (type-2 clones), and similar fragments that differ through modified,deleted, or added statements (type-3 clones). Although there has been extensive research on detecting clones, detection of type-3 clones ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Evolution of Type-1 Clones

    Publication Year: 2009, Page(s):77 - 86
    Cited by:  Papers (24)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (328 KB) | HTML iconHTML

    It is useful to study the evolution of code clones to better understand the nature, effects, and reasons of cloning. There are different approaches that investigate multiple versions of a program and detect patterns in the evolution of clones. The shortcomings of these methods are that they require significant computational effort, are limited to detecting predefined patterns and are mostly based ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Identifying 'Linchpin Vertices' That Cause Large Dependence Clusters

    Publication Year: 2009, Page(s):89 - 98
    Cited by:  Papers (6)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (352 KB) | HTML iconHTML

    A dependence cluster is a maximal set of program components that all depend upon one another. Previous work has highlighted the prevalence of large dependence clusters in source code, presenting potential problems for comprehension, testing, and maintenance. This paper is concerned with source code analysis techniques for identifying the causes of large dependence clusters. The paper presents resu... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Lightweight Techniques for Tracking Unique Program Statements

    Publication Year: 2009, Page(s):99 - 108
    Cited by:  Papers (2)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (306 KB) | HTML iconHTML

    Previous work on tracking source locations has focused on tracking lines through multiple revisions of software. In this paper, we explore a new technique for tracking statements, rather than lines, across multiple revisions of Java source code. We show that our statement-tracking technique achieves comparable accuracy for source code than the most accurate line-tracking techniques, while also saf... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Maintaining Fine-Grained Code Metadata Regardless of Moving, Copying and Merging

    Publication Year: 2009, Page(s):109 - 118
    Cited by:  Papers (1)  |  Patents (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (697 KB) | HTML iconHTML

    Source code metadata on a file-level granularity is too coarse for certain applications. But fine-grained metadata (e.g. line-by-line authorship) easily gets lost due to changes like merging, moving or copying code. Enabling metadata to survive code evolution provides valuable insights into program source code. This helps developers to understand the sources and opens up opportunities for advanced... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Backporting Java 5 Code

    Publication Year: 2009, Page(s):121 - 122
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (221 KB) | HTML iconHTML

    Java 5 has introduced a number of new syntactical language features that make development faster, easier, and safer. However, at the same time, it has also introduced downward incompatibilities: code written for Java 5 cannot be used on pre-Java 5 platforms. This tool demonstration presents a number of source-to-source transformations that backport source code written for the Java 5 platform to le... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • A Value Analysis for C Programs

    Publication Year: 2009, Page(s):123 - 124
    Cited by:  Papers (13)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (215 KB) | HTML iconHTML

    We demonstrate the value analysis of Frama-C. Frama-C is an Open Source static analysis framework for the C language. In Frama-C, each static analysis technique, approach or idea can be implemented as a new plug-in, with the opportunity to obtain information from other plug-ins, and to leave the verification of difficult properties to yet other plug-ins. The new analysis may in turn provide access... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • The FermaT Maintenance Environment Tool Demonstration

    Publication Year: 2009, Page(s):125 - 126
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (211 KB) | HTML iconHTML

    The FermaT Maintenance Environment (FME) is a platform independent graphical user interface for the FermaT program transformation system. It is able to represent WSL code and apply FermaT transformations on single statements. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.