首页> 外文会议>IEEE International Conference on Software Analysis, Evolution and Reengineering >Automatically Customizing Static Analysis Tools to Coding Rules Really Followed by Developers
【24h】

Automatically Customizing Static Analysis Tools to Coding Rules Really Followed by Developers

机译:自动自定义对编码规则的静态分析工具,真正接下来是开发人员

获取原文

摘要

Automatic Static Analysis Tools (ASATs) detect coding rule violations, including mistakes and bad practices that frequently occur during programming. While ASATs are widely used in both OSS and industry, the developers do not resolve more than 80% of the detected violations. As one of the reasons, most ASATs users do not customize their ASATs to their projects after installation; the ASATs with the default configuration report many rule violations that confuse developers. To reduce the ratio of such uninteresting warning messages, we propose a method to customize ASATs according to the product source code automatically. Our fundamental hypothesis is: A software project has interesting ASAT rules that are consistent over time. Our method takes source code as input and generates an ASAT configuration. In particular, the method enables optional (i.e., disabled by default) rules that detected no violations on the version because developers are likely to follow the rules in future development. Our method also disables violated rules because developers were unlikely to follow them. To evaluate the method, we applied our method to 643 versions of four JavaScript projects. The generated configurations for all four projects increased the ASAT precision. They also increased recall for two projects. The result shows that our method helps developers to focus on their attractive rule violations. Our implementation of the proposed method is available at https://github.com/devreplay/linter-maintainer
机译:自动静态分析工具(ASATS)检测编码规则违规,包括在编程期间经常发生的错误和糟糕的实践。虽然ASAT广泛用于OSS和行业,但开发人员无法解析超过80%的检测到违规行为。作为其中的原因之一,大多数ASAS用户在安装后没有将其ASAT定制到他们的项目;默认配置的ASAT报告许多违反开发人员的规则违规。为了降低此类无趣警告消息的比率,我们提出了一种方法自动根据产品源代码自定义ASAT。我们的基本假设是:软件项目具有符合时间的态度的有趣规则。我们的方法将源代码占用为输入并生成ASAT配置。特别是,该方法使得可选(即,默认情况下)可选(即禁用)规则,该规则检测到该版本上没有违规,因为开发人员可能遵循未来的发展中的规则。我们的方法还禁用违规的规则,因为开发人员不太可能遵循它们。要评估方法,我们将我们的方法应用于643版的四个JavaScript项目。所有四个项目的生成配置增加了ASAT精度。他们还增加了两个项目的召回。结果表明,我们的方法有助于开发人员专注于他们有吸引力的违规行为。我们在HTTPS://github.com/devreplay/linter-maintainer中提供了我们提出的方法的实现

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号