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 opensource 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.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.