icpc 2009 PROGRAM

 

SCHEDULE  [PDF]


Sunday, May 17

Monday, May 18

Tuesday, May 19



HIGHLIGHTS


Keynote Speakers

  1. Václav Rajlich, “Intensions are a Key to Program Comprehension”

  2. Thomas Ball, “A Brief History of Software -- from Bell Labs to Microsoft Research”


Research Papers

  1. 20 full-length technical papers presented in 7 sessions

  2. 14 short technical papers presented in 3 sessions


Working Sessions

  1. Eye-Trackers as an Instrument for Evaluating Program Comprehension Methods

  2. TDD: Too Dumb Developers? Implications of Test-Driven Development on Maintainability and Comprehension of Software


Posters

  1. 13 poster presentations on emerging results in program comprehension


Tool Demonstrations

  1. 7 tool demonstrations of research prototypes for program comprehension


PAPER SESSIONS


Impact Analysis and Changes

  1. Variable Granularity for Improving Precision of Impact Analysis
    Maksym Petrenko and Václav Rajlich,


  1. Automatically Identifying Changes that Impact Code-to-Design Traceability
    Maen Hammad, Michael Collard, and Jonathan Maletic


  1. Automatic Classification of Large Changes by Maintenance Categories
    Abram Hindle, Daniel German, Mike Godfrey, and Ric Holt


Static Analysis


  1. A Plethora of Paths
    Eric Larson


  1. Practical Static Analysis for Inference of Safety-Related Program Properties
    Yin Liu and Ana Milanova


  1. Impact Analysis and Visualization Toolkit for Static Crosscutting in AspectJ
    Dehua Zhang, Ekwa Duala-Ekoko, and Laurie Hendren


Cognitive and Other Issues


  1. BugFix: A Learning-Based Tool to Assist Developers in Fixing Bugs
    Dennis Jeffrey, Min Feng, Neelam Gupta, and Rajiv Gupta


  1. Resumption Strategies for Interrupted Programming Tasks
    Chris Parnin and Spencer Rugaber


  1. Using Activity Traces to Characterize Programming Behavior Beyond the Lab (Short Paper)
    Gail C. Murphy, Petcharat Viriyakattiyaporn, and David Shepherd


  1. An In-Vivo Study of the Cognitive Levels Employed by Maintenance Programmers During Software Maintenance (Short Paper)
    Tara Kelly and Jim Buckley


Visualization and Sonification


  1. Trace Visualization for Program Comprehension: a Controlled Experiment
    Bas Cornelissen, Andy Zaidman, Bart Van Rompaey, and Arie van Deursen


  1. Using Spoken Text to Aid Debugging: An Empirical Study
    Andreas Stefik and Ed Gellenbeck


  1. Sonification Design Guidelines to Enhance Program Comprehension
    Khaled Hussein, Eli Tilevich, SooBeen Kim, and Ivica Bukvic


Features and Concerns


  1. Instrumenting Time-Sensitive Software for Feature Location
    Dennis Edwards, Norman Wilde, Sharon Simmons, and Eric Golden


  1. Crosscutting Patterns and Design Stability: An Exploratory Analysis
    Eduardo Figueiredo, Bruno Silva, Claudio Sant’Anna, Alessandro Garcia, Jon Whittle, and Daltro Nunes


  1. On the Role of Nouns in IR-based Traceability Link Recovery
    Andrea De Lucia, Rocco Oliveto, Giovanni Capobianco, Annibale Panichella, and Sebastiano Panichella


Source Code Reading


  1. To CamelCase or Under_score
    Dave Binkley, Marcia Davis, Dawn Lawrie, and Christopher Morrell


  1. Reading the Documentation of Invoked API Functions in Program Comprehension
    Uri Dekel and James Herbsleb


  1. The Effectiveness of Source Code Obfuscation: an Experimental Assessment
    Mariano Ceccato, Massimiliano Di Penta, Jasvir Nagra, Paolo Falcarin, Filippo Ricca, Marco Torchiano, and Paolo Tonella


Architecture and Design


  1. The Loss of Architectural Knowledge during System Evolution: An Industrial Case Study
    Martin Feilkas, Daniel Ratiu, and Elmar Jürgens


  1. Dn-based Architecture Assessment of Java Open Source Software Systems
    Alexander Serebrenik, Serguei Roubtsov, and Mark van den Brand


  1. Standing on the Shoulders of Giants -- A Data Fusion Approach to Design Pattern Detection
    Günter Kniesel and Alexander Binun


Short Papers 1


  1. An Exploratory Study on Assessing Feature Location Techniques
    Meghan Revelle and Denys Poshyvanyk


  1. Natural Language Parsing for Information Extraction from Source Code
    Jens Nilsson, Welf Lowe, Johan Hall, and Joakim Nivre


  1. An Empirical Exploration of Regularities in Open-Source Software Lexicons
    Derrin Pierret and Denys Poshyvanyk


  1. Vector Space Analysis of Software Clones
    Scott Grant and James Cordy


  1. Identifying and Refining Design Elements for Proactive Copy-and-Paste Support via a Related Work Survey, Prototyping, and Code Clone Case Studies
    Daqing Hou, Patricia Jablonski, and Ferosh Jacob


  1. Syntax Tree Fingerprinting for Source Code Similarity Detection
    Michel Chilowicz, Etienne Duris, and Gilles Roussel


Short Papers 2


  1. Methods for Selecting and Improving Software Clustering Algorithms
    Mark Shtern and Vassilios Tzerpos


  1. Supporting Task-Oriented Navigation in IDEs with Configurable HeatMaps
    David Rothlisberger, Oscar Nierstrasz, Stephane Ducasse, Damien Pollet, and Romain Robbes


  1. Concept Programs: Program Comprehension by Verification
    Reinhard Schauer and Rudolf K. Keller


  1. Profile-Based Type Reconstruction for Decompilation
    Katerina Dolgova, Alexander Chernov, and Alexander Fokin


  1. An Empirical Study on the Comprehension of Stereotyped UML Class Diagram Layouts
    Bonita Sharif and Jonathan Maletic


  1. Who Can Help Me with this Change Request?
    Huzefa Kagdi and Denys Poshyvanyk


Posters


  1. Design Pattern Directed Clustering for Understanding Open Source Code
    Zhixiong Han, Linzhang Wang, Liqian Yu, Xin Chen, Jianhua Zhao, and Xuandong Li


  1. A Bug You Like: A Framework for Automated Assignment of Bugs
    Olga Baysal, Michael Godfrey, and Robin Cohen


  1. Discovering Task-Based Concern Maps by Merging Concern Fragments
    Sukanya Ratanotayanon and Susan Sim


  1. Towards Pie Tree Visualization of Graphs and Large Software Architectures
    Mireille Samia and Michael Leuschel


  1. An Initial Study to Measure the Heartbeat of Program Comprehension Using Structure Traversal Graphs
    Susan Elliott Sim, Sukanya Ratanotayanon, and Leyna Cotran


  1. Enabling More Precise Dependency Analysis in Event-Based Systems
    Daniel Popescu, Joshua Garcia, and Nenad Medvidovic


  1. Observation of Open Source Programmers’ Information Seeking
    Khaironi Yatim Sharif and Jim Buckley


  1. Creating and Maintaing Tutorials with DEFT
    Andreas Bartho


  1. Improving Program Comprehension by Enhancing Program Constructs: An Analysis of the Umple Language
    Andrew Forward, Timothy C. Lethbridge, and Dusan Brestovansky


  1. Capturing Java Naming Conventions with First-Order Markov Models
    Erik Linstead, Lindsey Hughes, Cristina Lopes, and Pierre Bald


  1. Automatic Detection of Internal Queues and Stages in Message Processing Systems Using Dynamic Program Analysis
    Suman Karumuri and Steven Reiss


  1. Task Board: Tracking Pertinent Task Artifacts and Plans
    Chris Parnin, Carsten Gorg, and Spencer Rugaber


  1. Program Complexity Analysis with Granular Hierarchical Structures
    Benjapol Auprasert and Yachai Limpiyakorn


Tool Demonstrations


  1. OGAN: Visualizing Object Interaction Scenarios Based on Dynamic Interaction Context
    Satoshi Munakata, Takashi Ishio, and Katsuro Inoue


  1. CRISTA -- Code Reading Implemented with Stepwise Abstraction
    Daniel Porto, Manoel Mendonca, and Sandra Fabbri


  1. Kenyon-Web: Reconfigurable Web-based Feature Extractor
    Sunghun Kim, Shivkumar Shivaji, and E. James Whitehead Jr.


  1. Prototyping Synchronization Policies for Existing Programs
    Y. Huang, L. K. Dillon, and R. E. K. Stirewalt


  1. SourceMiner as an Experimental Platform to Characterize Software Comprehension Activities
    Glauco Carneiro, Rodrigo Magnavita, and Manoel Mendonca


  1. SODBeans
    Andreas Stefik, Andrew Haywood, Shahzada Mansoor, Brock Dunda, and Daniel Garcia


  1. Increasing Awareness of Function Usage Directives with eMoose
    Uri Dekel