Research
I manage the Software Reliability Research group. My research interests are in how combinations of static/dynamic program analysis, model checking and theorem proving techniques can help improve the correctness and reliability of programs. See my papers for more details.
News
- POPL 2011: registration is open; advance program available! Read preparing for POPL 2011.
- Chapter 23 "Evidence-Based Failure Prediction" in new book Making Software (What Really Works, and Why We Believe It), with Nachi Nagappan
- Units 1-4 of Practical Parallel and Concurrent Programming courseware available
- Static Driver Verifier Research Platform released
- Source code of CHESS (and Alpaca test framework) released on codeplex
- Source code of Randoop for .NET released
Papers
-
SLAM2: Static Driver Verification with Under 4% False Alarms, T. Ball, E. Bounimova, R. Kumar and V. Levin, FMCAD 2010
- Efficient Reachability Analysis of Büchi Pushdown Systems for Hardware/Software Co-verification, J. Li, F. Xie, T. Ball, V. Levin, CAV 2010
- Towards scalable modular checking of user-defined properties, T. Ball, B. Hackett, S. K. Lahiri, S. Qadeer, J. Vanegue, VSTTE 2010
- Preemption Sealing for Efficient Concurrency Testing, T. Ball, S. Burckhardt, K. Coons, M. Musuvathi, S. Qadeer, TACAS 2010
Talks
- June 2010: Concurrency Testing with CHESS (Learning From eXperience 2010)
- Mar 2010: Preemption Sealing for Efficient Concurrency Testing [pdf] at Portland State University
- Oct 2009: The SMT "Big Bang": Applications of Z3 in Microsoft
- May 2009: Program Analysis 2.0 [pdf] at UIUC's UPCRC Research Seminar
- May 2009: A Brief History of Software [pdf], at Mining Software Repositories Working Conference
Awards
- IEEE Software article "Righting Software" was selected by Software's editorial and advisory boards as one of the 25th-Anniversary Top Picks for full-length, peer-reviewed articles.
- Exploiting Hardware Performance Counters with Flow and Context Sensitive Profiling won the Most Influential PLDI Paper Award, PLDI 2007.
Service
- General Chair, POPL 2011
- 2008 Marktoberdorf Summer School on "Engineering Methods and Tools for Software Safety and Security" (August '08)
- LASER Summer School on Software Engineering (2007)
- On the Design and Implementation of Static Analysis Tools at the University of Washington (2007)
- FLoC 2006 conference co-chair
- Program chair of PLDI 2006, program co-chair of CAV 2006
- Editorial Board, IEEE Transactions on Software Engineering
- Associate Editor, ACM Transactions on Internet Technology (2002-2006)
- Secretary/treasurer, ACM SIGPLAN (2001-2002)
- Dagstuhl Seminar on Multi-version Program Analysis
- UW/MSR 2004 Summer Institute on Trends in Testing: Theory, Techniques and Tools
- SPIN'03
- UW/MSR 2001 Summer Institute on Specifying and Checking Properties of Software
- PLDI'01 Birds-of-feather session: Specifying and Checking Properties of Software
Program Committees
- 2008: India Software Engineering Conference
- 2006: VMCAI'06
- 2005: PDPAR'05, SAS'05, AADEBUG'05, CAV'05, ICSE '05 Experience Reports
- 2004: SAS'04, Metrics '04, TAV-WEB '04, POPL'04
- 2003: SPIN'03
- 2002: CAV'02, PLDI'02, TACAS'02, PASTE'02 (with FSE'02)
- 2001: Workshop on Software Model Checking, SPIN'01 , ICSE'01, SAINT'01
- 2000: FSE'00, ISSTA'00, TACAS'00
- 1999: DSL'99
History
I grew up in Summit, NJ, where my claim to fame was writing a game for the Apple II called Falcons in 1980 with high school pal Eric Varsanyi (see The Giant List of Classic Game Programmers). I attended Cornell University (B.A. 1987), and the University of Wisconsin-Madison (Ph.D. 1993). From 1993-1999, I was at Bell Labs in Naperville, IL in the (now defunct) Software Production Research Department. After 12 years as a Midwesterner, I had had enough. Now I live in Mercer Island, WA. I have sung in various Unitarian Universalist choirs, play e-bass (mainly jazz, blues, some rock 'n roll) and piano. I now play in a band called the "The Middle Third".
The "Thomas Ball" Collection
- Tomball, TX
- Tom Ball at Sun Microsystems
-
E-mail \com\microsoft\tball
-
Office: (425) 703-8591
-
Fax: (425) 936-7329
-
Mail: One Microsoft Way, Redmond, WA 98052



