In this interview from JavaOne 2008, Coverity chief scientist Andy Chou discusses why traditional unit tests don't often help in uncovering concurrency-related errors, and why a combination of static and dynamic analysis yields better results in testing multithreaded code:
http://www.artima.com/lejava/articles/javaone_2008_andy_chou.htmlWhat do you think about Coverity's approach to combining static and dynamic analysis for testing concurrent code?