This paper presents a data-driven debugging framework to improve the trustworthiness of US tax preparation software. As the US tax law evolves to adapt to ever-changing politico-economic realities, tax preparation software plays a significant role in helping taxpayers navigate these complexities. Given the legal implications of bugs in such software on its users, ensuring the compliance and trustworthiness of tax preparation software is of paramount importance. The key obstacles in developing debugging aids for tax preparation systems, however, are the unavailability of explicit specifications and the difficulty of obtaining oracles. We posit that, since the US tax law adheres to the legal doctrine of precedent, the specifications about the outcome of tax preparation software for an individual taxpayer must be viewed in comparison with individuals that are deemed similar. Consequently, these specifications are naturally available as properties on the software requiring similar inputs provide similar outputs. Inspired by metamorphic testing framework from software engineering, we dub these relations metamorphic relations. We explicated metamorphic relations for a set of properties by carefully studying the US Form 1040 as implemented in an open-source tax preparation software. We developed a randomized search strategy to explore the space of metamorphic relations and explain the behaviors of software with a classification tree algorithm. Our tool revealed $4$ types of failures in the software and provided intuitive explanations to understand the failures.
翻译:本文提出了一个数据驱动调试框架,以提高美国税收准备软件的可信度。随着美国税法的演变,适应不断变化的政治-经济现实,税收准备软件在帮助纳税人应对这些复杂情况方面起着重要作用。鉴于这类软件中的错误对用户的法律影响,确保税收准备软件的合规性和可信度至关重要。然而,在为税收准备系统开发调试辅助工具方面的主要障碍是缺乏明确的规格和难以获得商品。我们假设,由于美国税法遵循了先例的法律学说,必须把个人纳税人税收准备软件结果的规格与被认为相似的个人进行比较。因此,这些规格自然是作为软件的属性,需要类似的投入提供类似的产出。受软件工程的变形测试框架的驱使,我们将这些关系变形化关系归为:我们通过仔细研究在公开源税准备软件中实施的美国表格1040,为一套特性而复制了变形关系。我们制定了一个随机化的搜索战略,以探索我们变式软件分类中的系统失灵程度,并解释了我们变形软件的变形分析工具。