Scheduled System Maintenance
IEEE Xplore is currently undergoing scheduled maintenance.
During this time, there may be intermittent impact on performance. We apologize for any inconvenience.

2010 10th IEEE Working Conference on Source Code Analysis and Manipulation

12-13 Sept. 2010

Filter Results

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

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

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

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

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

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

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

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

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

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

    Publication Year: 2010, Page(s): xii
    Request permission for commercial reuse | PDF file iconPDF (58 KB)
    Freely Available from IEEE
  • Learning from 6,000 Projects: Mining Models in the Large

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

    Models - abstract and simple descriptions of some artifact - are the backbone of all software engineering activities. While writing models is hard, existing code can serve as a source for abstract descriptions of how software behaves. To infer correct usage, code analysis needs usage examples, though, the more, the better. We have built a lightweight parser that efficiently extracts API usage mode... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Why Source Code Analysis and Manipulation Will Always be Important

    Publication Year: 2010, Page(s):7 - 19
    Cited by:  Papers (17)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (807 KB) | HTML iconHTML

    This paper makes a case for Source Code Analysis and Manipulation. The paper argues that it will not only remain important, but that its importance will continue to grow. This argument is partly based on the 'law' of tendency to executability, which the paper introduces. The paper also makes a case for Source Code Analysis purely for the sake of analysis. Analysis for its own sake may not be merel... View full abstract»

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

    Publication Year: 2010, Page(s):23 - 32
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (6927 KB) | HTML iconHTML

    During execution, an objected-oriented program typically creates a large number of objects. This research considers the distribution of those objects that share a common superclass. If this distribution is uniform then all subclasses are equally likely to be instantiated. However, if not, then the lack of uniformity can be exploited by giving preferential treatment to the dominant class (or classe... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • New Conceptual Coupling and Cohesion Metrics for Object-Oriented Systems

    Publication Year: 2010, Page(s):33 - 42
    Cited by:  Papers (18)  |  Patents (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (422 KB) | HTML iconHTML

    The paper presents two novel conceptual metrics for measuring coupling and cohesion in software systems. Our first metric, Conceptual Coupling between Object classes (CCBO), is based on the well-known CBO coupling metric, while the other metric, Conceptual Lack of Cohesion on Methods (CLCOM5), is based on the LCOM5 cohesion metric. One advantage of the proposed conceptual metrics is that they can ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Deriving Coupling Metrics from Call Graphs

    Publication Year: 2010, Page(s):43 - 52
    Cited by:  Papers (5)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (610 KB) | HTML iconHTML

    Coupling metrics play an important role in empirical software engineering research as well as in industrial measurement programs. The existing coupling metrics have usually been defined in a way that they can be computed from a static analysis of the source code. However, modern programs extensively use dynamic language features such as polymorphism and dynamic class loading that are difficult to ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Validating the Use of Topic Models for Software Evolution

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

    Topics are collections of words that co-occur frequently in a text corpus. Topics have been found to be effective tools for describing the major themes spanning a corpus. Using such topics to describe the evolution of a software system's source code promises to be extremely useful for development tasks such as maintenance and re-engineering. However, no one has yet examined whether these automatic... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Estimating the Optimal Number of Latent Concepts in Source Code Analysis

    Publication Year: 2010, Page(s):65 - 74
    Cited by:  Papers (20)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (431 KB) | HTML iconHTML

    The optimal number of latent topics required to model the most accurate latent substructure for a source code corpus is an open question in source code analysis. Most estimates about the number of latent topics that exist in a software corpus are based on the assumption that the data is similar to natural language, but there is little empirical evidence to support this. In order to help determine ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Language-Independent Clone Detection Applied to Plagiarism Detection

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

    Clone detection is usually applied in the context of detecting small-to medium scale fragments of duplicated code in large software systems. In this paper, we address the problem of clone detection applied to plagiarism detection in the context of source code assignments done by computer science students. Plagiarism detection comes with a distinct set of constraints to usual clone detection approa... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Evaluating Code Clone Genealogies at Release Level: An Empirical Study

    Publication Year: 2010, Page(s):87 - 96
    Cited by:  Papers (21)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (757 KB) | HTML iconHTML

    Code clone genealogies show how clone groups evolve with the evolution of the associated software system, and thus could provide important insights on the maintenance implications of clones. In this paper, we provide an in-depth empirical study for evaluating clone genealogies in evolving open source systems at the release level. We develop a clone genealogy extractor, examine 17 open source C, Ja... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • The Fika Parser Generator

    Publication Year: 2010, Page(s):99 - 100
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (166 KB) | HTML iconHTML

    Parser generators automate conversion of a context-free grammar into an executable parser and therefore increase developers' productivity. However, as soon as the entire process of parser development is concerned, their overall usefulness slightly diminishes because the development of the grammar itself is not addressed at all: every grammar is implicitly expected to be written from scratch and th... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • AMBIDEXTER: Practical Ambiguity Detection

    Publication Year: 2010, Page(s):101 - 102
    Cited by:  Papers (2)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (153 KB) | HTML iconHTML

    Ambiguity detection tools try to statically track down ambiguities in context-free grammars. Current ambiguity detection tools, however, either are too slow for large realistic cases, or produce incomprehensible ambiguity reports. AmbiDexter is the ambiguity tool to have your cake and eat it too. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Speeding Up Context-, Object- and Field-Sensitive SDG Generation

    Publication Year: 2010, Page(s):105 - 114
    Cited by:  Papers (5)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (1369 KB) | HTML iconHTML

    System dependence graphs (SDGs) are an established tool for precise interprocedural program analysis. We present new techniques for the efficient generation of SDGs for full Java, which are context-, field- and object-sensitive. We show that previous approaches to the generation of interprocedural dependencies for Java do not scale, as they interfere with the points-to analysis. Our new algorithm ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • How Good is Static Analysis at Finding Concurrency Bugs?

    Publication Year: 2010, Page(s):115 - 124
    Cited by:  Papers (8)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (459 KB) | HTML iconHTML

    Detecting bugs in concurrent software is challenging due to the many different thread interleavings. Dynamic analysis and testing solutions to bug detection are often costly as they need to provide coverage of the interleaving space in addition to traditional black box or white box coverage. An alternative to dynamic analysis detection of concurrency bugs is the use of static analysis. This paper ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Parallel Reachability and Escape Analyses

    Publication Year: 2010, Page(s):125 - 134
    Cited by:  Papers (1)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (300 KB) | HTML iconHTML

    Static program analysis usually consists of a number of steps, each producing partial results. For example, the points-to analysis step, calculating object references in a program, usually just provides the input for larger client analyses like reach ability and escape analyses. All these analyses are computationally intense and it is therefore vital to create parallel approaches that make use of ... View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Effective Static Analysis to Find Concurrency Bugs in Java

    Publication Year: 2010, Page(s):135 - 144
    Cited by:  Papers (3)
    Request permission for commercial reuse | Click to expandAbstract | PDF file iconPDF (604 KB) | HTML iconHTML

    Multithreading and concurrency are core features of the Java language. However, writing a correct concurrent program is notoriously difficult and error prone. Therefore, developing effective techniques to find concurrency bugs is very important. Existing static analysis techniques for finding concurrency bugs either sacrifice precision for performance, leading to many false positives, or require s... View full abstract»

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