Notable Academic Projects

Listed below are some notable projects that are making use of the CodeSurfer® Academic program. If you would like to apply for the program, you can do so here.


Carnegie Mellon University
  Studying how developers think about design during reverse engineering tasks.
  Project Web Site link

Case Western Reserve University
  Generating System Dependence Graphs for programs. Rules mined from those SDGs are used to discover rule violations, which are potential software defects.
  Relevant Publications
  • Ray-Yaung Chang, Andy Podgurski, Jiong Yang, Discovering Neglected Conditions in Software by Mining Dependence Graphs, in IEEE Transactions on Software Engineering preprint, published online 2008-04-14. [IEEE Digital Library]
  • Ray-Yaung Chang, Andy Podgurski, Jiong Yang, Finding what's not there: a new approach to revealing neglected conditions in software, in Proceedings of the 2007 International Symposium on Software Testing and Analysis, winner of ACM SIGSOFT Distinguished Paper Award. [ACM portal]

George Mason University
  Studying the vulnerability of existing VoIP security systems.
  Project Web Site link

Georgia Institute of Technology
  Using CDGs to identify similar code.

IIT Indian Institute of Technology Delhi
IBM India Research Lab
  Course CSV882: Special module in software systems
  Course Web Site link

Keio University
  Using CodeSurfer as a tool for students to understand the state of the art in code analysis.

Loyola University
  Studying, identifying, and breaking statement-level dependence clusters.
  Relevant Publications
  • Timothy M. Meyers, David Binkley, Slice-Based Cohesion Metrics and Software Intervention, in Proceedings of the 11th Working Conference on Reverse Engineering (WCRE'04) - Volume 00. [ACM portal]
  • N. E. Gold, M. Harman, D. Binkley, R. M. Hierons, Unifying program slicing and concept assignment for higher-level executable source code extraction: Research Articles, in Software—Practice & Experience 35(10), August 2005. [ACM portal]
  • David Binkley, Mark Harman, Jens Krinke, Characterising, Explaining, and Exploiting the Approximate Nature of Static Analysis through Animation, in Proceedings of the Sixth IEEE International Workshop on Source Code Analysis and Manipulation, 2006. [ACM portal]

Nanyang Technological University
  Studying statistical learning techniques for software engineering, including statistical debugging.
  Automatic verification and testing of functional features.
  Project Web Site link

National University of Singapore
  Generating inter-procedure control flow information for a feasibility study of research topics.

North Carolina State University NCSU
  Investigating an empirical impact analysis technique that utilizes software development artifacts with singular value decomposition.

Purdue University
  Exploring program analysis for computer forensics.
  Relevant Publications
  • Murali Krishna Ramanathan, Ananth Grama, Suresh Jagannathan, Path-Sensitive Inference of Function Precedence Protocols, in Proceedings of the 29th International Conference on Software Engineering, 2007. [ACM portal]
  • Murali Krishna Ramanathan, Ananth Grama, Suresh Jagannathan, Static specification inference using predicate mining, in Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation, 2007. [ACM portal]

University of Applied Science Konstanz
  Teaching students to debug embedded software.

University of California, Davis
  Investigating a novel use of slicing.
  Using backward slicing to find instructions that influence specific output values, then performing optimizations on these instructions that depend on how much the output value can be relaxed.

University of Dublin, Trinity College
  Applying the ideas behind AETHER (an authorization management framework) in the field of programming languages.
  Project Web Site link

University of Hertfordshire
  Using machine learning to identify patterns in software code: information gathered using CodeSurfer will be a part of the data.

University of Illinois, Urbana-Champaign
  Creating an automatic framework to analyze applications and extract their reliability and security properties.
  Project Web Site link

Universität Passau
Fern Universität in Hagen
  Planning to use CodeSurfer to replace part of their own slicing research infrastructure.
  Project Web Site link
  Relevant Publications
  • Andreas Zeller, Jens Krinke (Eds.), Essential Open Source Toolset: Programming with Eclipse, JUnit, CVS, Bugzilla, Ant, Tcl/Tk and More, John Wiley & Sons, 2005. [web site]
  • Jens Krinke, Advanced Slicing of Sequential and Concurrent Programs, Doctoral Thesis, Universität Passau, 2004. [web site]

University of Szeged
  Comparing program slicing and hidden dependency.
  Relevant Publications
  • Árpád Beszédes, Tamás Gergely, Judit Jász, Gabriella Tóth, Tibor Gyimóthy, Václav Rajlich, Safe and Efficient Computation of Hidden Dependencies with Applications to Software Maintenance, in ICSM 2007.

University of Texas, Arlington
  Automatically testing software bugs.

University of Texas, Austin
  Constructing networks based upon classes and their methods in a large piece of software, then analyzing the network's statistical properties.
  Project Web Site link

University of Twente
  Searching for ways to create correct call flow graphs without unreachable paths.
  Finding the dependencies in open source projects.
  Project Web Site link

University of Victoria
  Identifying the structure of garbage collection and threading implemenation in JVMs.

University of Virginia
  Investigating how program slicing can be applied to better understand the interaction between untrusted input and program state.

University of Wisconsin-Madison
  Implementing conditioned slicing for C programs and evaluating the technique in the context of program debugging.
  Project Web Site link
  Relevant Publications
  • Alice X. Zheng, Michael I. Jordan, Ben Liblit, Mayur Naik, Alex Aiken, Statistical Debugging: Simultaneous Identification of Multiple Bugs, in Proceedings of the 23rd International Conference on Machine Learning, June 2006. [abstract, PDF]
  • Piramanayagam Arumuga Nainar, Ting Chen, Jake Rosin, Ben Liblit, Statistical Debugging Using Compound Boolean Predicates, in International Symposium on Software Testing and Analysis, July 2007. [abstract, PDF]
  Performing static program slicing as part of various analyses relating to debugging and bug hunting.

University of Wollongong
  Course CSCI426: Software Testing and Analysis
  Course Web Site link


Free Trial | Products | Customers | Support | News | Jobs | About Us © 2007-2010, GrammaTech, Inc. All rights reserved.
The Synthesizer Generator, Ada-ASSURED, Ada-Utilities, and SmashProof are trademarks of GrammaTech, Inc. CodeSurfer and CodeSonar are registered trademarks of GrammaTech, Inc.