Improving quality of data exchange files. An industrial case study

Authors Günter Fleck
Michael Moser
Josef Pichler
Editors X. Franch
T. Männistö
S. Martínez-Fernández
Title Improving quality of data exchange files. An industrial case study
Booktitle Product-Focused Software Process Improvement - Proc. PROFES 2019
Type in proceedings
Publisher Springer
Series Lecture Notes in Computer Science
Volume 11915
ISBN 978-3-030-35332-2
DOI 10.1007/978-3-030-35333-9_12
Month November
Year 2019
Pages 161-175
SCCH ID# 19053

In the development of electrical machines users run a batch of command line programs by providing text-based data exchange files as input. The required structure and content of these files is often only informally documented and implicitly enforced by programs. Therefore, users are forced to execute programs without prior syntactic and semantic verification. To improve the quality of data exchange files, users need editor support that allows syntactic and semantic verification using grammar-based analyzers. In order to reduce the effort for creating grammars, we use grammar recovery which analyzes software artifacts and makes the retrieved knowledge visible as a language grammar. The assessment and completion of the extracted grammar requires both knowledge in software-language engineering and in the application domain. This paper examines whether the integration of grammar recovery with domain-specific languages is suitable for creating editor support for data exchange files. In particular, we are interested in whether we can recover (1) a grammar and validation rules from documentation and a corpus of example files. Furthermore, we are interested in whether (2) a domainspecific language (DSL) allows domain experts to provide missing details and evolve grammars. To answer these questions, we conducted an industrial case study on three different types of data exchange files. Results show that about 45% of the grammar rules could be recovered automatically and that the completion of the extracted grammars by end-users is a promising means to provide correct and maintainable grammars for data exchange files.