Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Tricorder: building a program analysis ecosystem
Sadowski C., van Gogh J., Jaspan C., Söderberg E., Winter C.  ICSE 2015 (Proceedings of the 37th International Conference on Software Engineering, Florence, Italy, May 16-24, 2015)598-608.2015.Type:Proceedings
Date Reviewed: Nov 19 2015

Static analysis tools are a great help for developers to discover bugs, anti-patterns, before they occur in production systems. Such tools are usually integrated with the integrated development environment (IDE)--for example, Eclipse or IntelliJ--and are run either in the background (for example, when the the source file is saved, or triggered by the version control system) or manually by the developer. Of course, such tools must be effective: they should not distract the developer or “force a developer to context-switch away from her primary objective”; they should not report false positives (that is, correct code fragments reported as errors); and they should suggest a possible solution.

However, the authors found that existing tools (commercial and open source, such as Coverity and FindBugs) do not entirely fulfill the above requirements when applied to a large code base, where the languages are different, the teams are different with different skills, and the understanding and feeling of the analysis results vary. In this scenario, Tricorder is applied.

The authors present the Tricorder tool, a static program analysis platform used in production at Google. Tricorder is a toolchain that cooperates with the developer interfacing a set of available tools (as plugins) in a structured workflow applied to a large code base, with different languages and different IDEs. They present in detail how static analysis is performed in Google, providing usability data and usage statistics, mostly applied to Java, C++, Python, and Go.

The paper starts with an introductory part containing motivations and background work. It continues with the Google philosophy on program analysis, and then the implementation details and deployment of Tricorder. The paper concludes with a discussion section, related work, and analysis of the usage statistics.

Reviewer:  Massimiliano Masi Review #: CR143965 (1602-0125)
Bookmark and Share
  Featured Reviewer  
 
Testing And Debugging (D.2.5 )
 
Would you recommend this review?
yes
no
Other reviews under "Testing And Debugging": Date
Software defect removal
Dunn R., McGraw-Hill, Inc., New York, NY, 1984. Type: Book (9789780070183131)
Mar 1 1985
On the optimum checkpoint selection problem
Toueg S., Babaoglu O. SIAM Journal on Computing 13(3): 630-649, 1984. Type: Article
Mar 1 1985
Software testing management
Royer T., Prentice-Hall, Inc., Upper Saddle River, NJ, 1993. Type: Book (9780135329870)
Mar 1 1994
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy