Authors
Jiawen Xiong, Yong Shi, Boyuan Chen, Filipe R Cogo, Zhen Ming Jiang
Publication date
2022/5/21
Book
Proceedings of the 44th International Conference on Software Engineering: Software Engineering in Practice
Pages
297-306
Description
Build verifiability refers to the property that the build of a software system can be verified by independent third parties and it is crucial for the trustworthiness of a software system. Various efforts towards build verifiability have been made to C/C++-based systems, yet the techniques for Java-based systems are not systematic and are often specific to a particular build tool (e.g., Maven). In this study, we present a systematic approach towards build verifiability on Java-based systems. Our approach consists of three parts: a unified build process, a tool that dynamically controls non-determinism during the build process, and another tool that eliminates non-equivalences by post-processing the build artifacts. We apply our approach on 46 unverified open source projects from Reproducible Central and 13 open source projects that are widely used by Huawei commercial products. As a result, 91% of the unverified …
Total citations
2023202411
Scholar articles
J Xiong, Y Shi, B Chen, FR Cogo, ZM Jiang - Proceedings of the 44th International Conference on …, 2022