A Static Analyzer for Finding Dynamic Programming Errors. (appears in Software - Practice and Experience Vol. 30 No. 7, 2000)

BMAT – A Binary Matching Tool. (Microsoft Research Technical Report MSR-TR-99-83)

Building Scalable Failure-proneness Models Using Complexity Metrics for Large Scale Software Systems.

Dynamic Points-To Sets: A Comparison with Static Analyses and Potential Applications in Program Understanding and Optimization. (Microsoft Research Technical Report MSR-TR-2001-38)

Effectively Prioritizing Tests in Development Environment. (Microsoft Research Technical Report MSR-TR-2002-15)

Efficient Integration Testing using Dependency Analysis. (Microsoft Research Technical Report MSR-TR-2005-94)

ESP: Path-Sensitive Program Verification in Polynomial Time. (PLDI '02: Proceedings of the ACM SIGPLAN 2002 Conference on Programming Language Design and Implementation.)

Evaluating the Efficacy of Test-Driven Development: Industrial Case Studies.

Flow-Insensitive Static Analysis for Detecting Integer Anomalies in Programs. (Microsoft Research Technical Report MSR-TR-2006-44)

Framework for Instruction-level Tracing and Analysis of Program Executions.

Modular Checking for Buffer Overflows in the Large. (Microsoft Research Technical Report MSR-TR-2005-139)

Mojo: A Dynamic Optimization System.

Optimization for Compression. (CGO '03: Proceedings of the International Symposium on Code Generation and Optimization.)

Path-Sensitive Dataflow Analysis with Iterative Refinement.

Perracotta: Mining Temporal API Rules From Imperfect Traces.

Profile-guided Proactive Garbage Collection for Locality Optimization.

PSE: Explaining Program Failures via Postmortem Static Analysis.

Righting Software.

Scalable Context-Sensitive Flow Analysis Using Instantiation Constraints.

Software Validation via Scalable Path-Sensitive Value Flow Analysis.

Speeding Up Dataflow Analysis Using Flow-Insensitive Pointer Analysis. (Microsoft Research Technical Report MSR-TR-2002-18)

Symbolic Path Simulation in Path-Sensitive Dataflow Analysis.

Unification-based Pointer Analysis with Directional Assignments.

Vulcan: Binary Transformation in a Distributed Environment. (Microsoft Research Technical Report MSR-TR-2001-50)