[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.5555/1437898guideproceedingsBook PagePublication PagesConference Proceedingsacm-pubtype
ICPC '08: Proceedings of the 2008 The 16th IEEE International Conference on Program Comprehension
2008 Proceeding
Publisher:
  • IEEE Computer Society
  • 1730 Massachusetts Ave., NW Washington, DC
  • United States
Conference:
June 10 - 13, 2008
ISBN:
978-0-7695-3176-2
Published:
10 June 2008

Reflects downloads up to 16 Dec 2024Bibliometrics
Abstract

No abstract available.

Article
Cover Art
Article
Article
Article
Article
Article
Scalable Program Comprehension for Analyzing Complex Defects

We describe the Query-Model-Refine (QMR) approach for retrieving and modeling information for program comprehension. The QMR approach allows the flexibility to design and execute application-specific problem-solving strategies to suit particular program ...

Article
The Reuse of Grammars with Embedded Semantic Actions

Reusing syntax specifications without embedded arbitrary semantic actions is straightforward because the semantic analysis phases of new applications can feed off trees or other intermediate structures constructed by the pre-existing parser. The ...

Article
Partial Domain Comprehension in Software Evolution and Maintenance

Partial comprehension is a necessity in the evolution and maintenance of very large software systems. The programmers form not only partial comprehension of the code, but also partial comprehension of the application domain. To describe the ...

Article
Refining Existing Theories of Program Comprehension During Maintenance for Concurrent Software

While the sources of complexity in the initial design and verification of multi-threaded software systems are well-documented, less is known of the issues specific to the maintenance of these systems. The literature contains a number of observational ...

Article
Identifying Architectural Change Patterns in Object-Oriented Systems

As an object-oriented system evolves, its architecture tends to drift away from the original design. Knowledge of how the system has changed at coarse-grained levels is key to understanding the de facto architecture, as it helps to identify potential ...

Article
A Toolkit for Visualizing the Runtime Behavior of TinyOS Applications

TinyOS has proven to be an effective platform for developing reactive embedded network applications. However, the platform's lean programming model and power-efficient operation come at a price: TinyOS applications are notoriously difficult to construct ...

Article
CERBERUS: Tracing Requirements to Source Code Using Information Retrieval, Dynamic Analysis, and Program Analysis

The concern location problem is to identify the source code within a program related to the features, requirements, or other concerns of the program. This problem is central to program development and maintenance. We present a new technique called prune ...

Article
Exploiting Runtime Information in the IDE

Developers rely on the mechanisms provided by their IDE to browse and navigate a large software system. These mechanisms are usually based purely on a system's static source code. The static perspective, however, is not enough to understand an object-...

Article
Do Dynamic Object Process Graphs Support Program Understanding? - A Controlled Experiment.

Using automatic program analysis techniques for extracting architectural information and its visualization is widely considered useful for program understanding. However, it has to be empirically validated if a given technique is beneficial in practice. ...

Article
Impact of Limited Memory Resources

Since early variable mnemonics were limited to as few as six to eight characters, many early programmers abbreviated concepts in their variable names. The past thirty years has seen a steady increase in permitted name length and, slowly, an increase in ...

Article
Data Model Comprehension: An Empirical Comparison of ER and UML Class Diagrams

We present the results of two controlled experiments to compare ER and UML class diagrams, in order to find out which of the models provides better support during the comprehension of data models. The experiment involved Master and Bachelor students ...

Article
A Traceability Technique for Specifications

Traceability in software involves discovering links between different artifacts, and is useful for a myriad of tasks in the software life cycle. We compare several different Information Retrieval techniques for this task, across two data sets involving ...

Article
On the Use of Domain Terms in Source Code

Information about the problem domain of the software and the solution it implements is often embedded by developers in comments and identifiers. When using software developed by others or when are new to a project, programmers know little about how ...

Article
Identifying Word Relations in Software: A Comparative Study of Semantic Similarity Tools

Modern software systems are typically large and complex, making comprehension of these systems extremely difficult. Experienced programmers comprehend code by seamlessly processing synonyms and other word relations. Thus, we believe that automated ...

Article
Reading Beside the Lines: Indentation as a Proxy for Complexity Metric

Maintainers face the daunting task of wading through a collection of both new and old revisions, trying to ferret out revisions which warrant personal inspection. One can rank revisions by size/lines of code (LOC), but often, due to the distribution of ...

Article
Mendel: A Model, Metrics, and Rules to Understand Class Hierarchies

Inheritance is an important mechanism when developing object-oriented programs with class-based programming languages: it enables subtyping, polymorphism, and code reuse. Inheritance is also known as a difficult feature to grasp and to use correctly ...

Article
Scenario-Based Comparison of Clone Detection Techniques

Over the last decade many techniques for software clone detection have been proposed. In this paper, we provide a comprehensive survey of the capabilities of currently available clone detection techniques. We begin with an overall survey based on ...

Article
Combining Preprocessor Slicing with C/C++ Language Slicing

Slicing C programs has been one of the most popular ways for the implementation of slicing algorithms; out of the very few practical implementations that exist many deal with this programming language. Yet, preprocessor related issues have been ...

Article
NICAD: Accurate Detection of Near-Miss Intentional Clones Using Flexible Pretty-Printing and Code Normalization

This paper examines the effectiveness of a new language-specific parser-based but lightweight clone detection approach. Exploiting a novel application of a source transformation system, the method accurately finds near-miss clones using an efficient ...

Article
What's a Typical Commit? A Characterization of Open Source Software Repositories

The research examines the version histories of nine open source software systems to uncover trends and characteristics of how developers commit source code to version control systems (e.g., subversion). The goal is to characterize what a typical or ...

Article
Assessing Software Archives with Evolutionary Clusters

The way in which a system's software archive is partitioned influences the evolvability of that system. The partition of a software archive, e.g. subsystem decomposition, is mostly assessed by looking at the static (include, call) relations between the ...

Article
Reusing Program Investigation Knowledge for Code Understanding

Software maintenance tasks typically involve an important amount of program investigation effort on the part of software developers. To what extent can we benefit from prior program investigation activities to decrease this effort? To investigate this ...

Article
Automated Identification of Tasks in Development Sessions

Task switching occurs frequently during the work of software developers. While there are already several approaches aiming at assisting developers in recovering their contexts of previous tasks, they generally rely on the developer to identify the ...

Article
Re-Engineering a Reverse Engineering Portal to a Distributed SOA

REportal is an existing web-based reverse engineering portal web site that provides access to a suite of reverse engineering and program comprehension tools via a web browser. This abstraction was intended to allow ease of system maintenance by adding ...

Please enable JavaScript to view thecomments powered by Disqus.

Recommendations