loading page

Grammar-based Fuzzing of Data Integration Parsers in Computational Materials Science
  • +2
  • Jan Arne Sparka,
  • Sebastian Müller,
  • Martin Kuban,
  • Claudia Draxl,
  • Lars Grunske
Jan Arne Sparka
Humboldt Universitat zu Berlin Institut fur Informatik

Corresponding Author:[email protected]

Author Profile
Sebastian Müller
Humboldt Universitat zu Berlin Institut fur Informatik
Author Profile
Martin Kuban
Humboldt-Universitat zu Berlin Institut fur Physik
Author Profile
Claudia Draxl
Humboldt-Universitat zu Berlin Institut fur Physik
Author Profile
Lars Grunske
Humboldt Universitat zu Berlin Institut fur Informatik
Author Profile

Abstract

Context: Computational materials science (CMS) focuses on in silico experiments to compute the properties of known and novel materials, where many software packages are used in the community. The NOMAD Laboratory1 offers to store the input and output files in its FAIR data repository. Since the file formats of these software packages are non-standardized, parsers are used to provide the results in a normalized format. Objective: The main goal of this article is to report experience and findings of using grammar-based fuzzing on these parsers. Method: We have constructed an input grammar for four common software packages in the CMS domain and performed an experimental evaluation on the capabilities of grammar-based fuzzing to detect failures in the NOMAD parsers. Results: With our approach, we were able to identify three unique critical bugs concerning the service availability, as well as several additional syntactic, semantic, logical, and downstream bugs in the investigated NOMAD parsers. We reported all issues to the developer team prior to publication. Conclusion: Based on the experience gained, we can recommend grammar-based fuzzing also for other research software packages to improve the trust level in the correctness of the produced results.
17 Mar 2023Submitted to Software: Practice and Experience
17 Mar 2023Submission Checks Completed
17 Mar 2023Assigned to Editor
17 Mar 2023Review(s) Completed, Editorial Evaluation Pending
24 Mar 2023Reviewer(s) Assigned
10 Jul 2023Editorial Decision: Revise Minor
10 Aug 20231st Revision Received
11 Aug 2023Submission Checks Completed
11 Aug 2023Assigned to Editor
11 Aug 2023Review(s) Completed, Editorial Evaluation Pending
16 Aug 2023Reviewer(s) Assigned
17 Aug 2023Editorial Decision: Accept