How to choose and use source code analysis tools