首页> 外文会议>Proceedings of the 28th IEEE International Conference on Software Maintenance. >Finding errors from reverse-engineered equality models using a constraint solver
【24h】

Finding errors from reverse-engineered equality models using a constraint solver

机译:使用约束求解器从逆向工程的相等模型中查找错误

获取原文
获取原文并翻译 | 示例

摘要

Java objects are required to honor an equality contract in order to participate in standard collection data structures such as List, Set, and Map. In practice, the implementation of equality can be error prone, resulting in subtle bugs. We present a checker called EQ that is designed to automatically detect such equality implementation bugs. The key to EQ is the automated extraction of a logical model of equality from Java code, which is then checked, using Alloy Analyzer, for contract conformance. We have evaluated EQ on four open-source, production code bases in terms of both scalability and usefulness. We discuss in detail the detected problems, their root causes, and the reasons for false alarms.
机译:Java对象必须遵守平等协定,才能参与标准的集合数据结构,例如List,Set和Map。在实践中,相等性的实现可能容易出错,从而导致细微的错误。我们介绍了一个称为EQ的检查器,该检查器旨在自动检测此类相等实现错误。 EQ的关键是从Java代码中自动提取相等性的逻辑模型,然后使用Alloy Analyzer对合同中的一致性进行检查。我们已在可扩展性和实用性方面评估了四个开源生产代码库上的EQ。我们将详细讨论检测到的问题,其根本原因以及错误警报的原因。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号