Link Details

Link 973571 thumbnail
User 454796 avatar

By Andrey_Karpov_2009
via www4.ncsu.edu
Published: May 26 2013 / 11:54

Abstract: Using static analysis tools for automating code inspections can be beneficial for software engineers. Such tools can make finding bugs, or software defects, faster and cheaper than manual inspections. Despite the benefits of using static analysis tools to find bugs, research suggests that these tools are underused. In this paper, we investigate why developers are not widely using static analysis tools and how current tools could potentially be improved. We conducted interviews with 20 developers and found that although all of our participants felt that use is beneficial, false positives and the way in which the warnings are presented, among other things, are barriers to use. We discuss several implications of these results, such as the need for an interactive mechanism to help developers fix defects.
  • 10
  • 0
  • 1419
  • 1957

Comments

Add your comment
User 433951 avatar

Ananth Chellathurai replied ago:

0 votes Vote down Vote up Reply

Its been very hard for me to push my team members to use findbugs, pmd and have a clean formatted code. Even though these tools provide lot of help to find issues upfront. Nice work.

User 131259 avatar

DavidKarr replied ago:

0 votes Vote down Vote up Reply

Speaking as someone who has been working on nudging an organization to use better quality processes, like code reviews, unit tests, and use of static analysis tools, I find that in some organizations the primary negative motivational factor is not technical. If the management structure of an organization is focused exclusively on feature development and timelines, then you will find that strategies and processes that do nothing but enhance quality tend to be deemphasized. Developers don't use these tools simply because they don't help them get their work done. The most important people to convince are development managers, not developers. This is similar to the sometimes need for refactoring, which does nothing but enhance quality and maintainability. In Martin Fowler's "Refactoring", on the question of how you justify to management the development time spent refactoring code for quality and technical debt, his answer was "don't tell them". In these organizations, it will always be a struggle to to increase adoption of tools like these.

Add your comment


Html tags not supported. Reply is editable for 5 minutes. Use [code lang="java|ruby|sql|css|xml"][/code] to post code snippets.

Apache Hadoop
Written by: Piotr Krewski
Featured Refcardz: Top Refcardz:
  1. Play
  2. Akka
  3. Design Patterns
  4. OO JS
  5. Cont. Delivery
  1. Play
  2. Java Performance
  3. Akka
  4. REST
  5. Java