Validating, verifying and testing timed data-flow reactive systems in Coq from controlled natural-language requirements. Carvalho, G. & Meira, I. Science of Computer Programming, 201:102537, January, 2021.
Validating, verifying and testing timed data-flow reactive systems in Coq from controlled natural-language requirements [link]Paper  doi  abstract   bibtex   
Data-flow reactive systems (DFRSs) form a class of embedded systems whose inputs and outputs are always available as signals. Input signals can be seen as data provided by sensors, whereas the output data are provided to system actuators. In previous works, verifying well-formedness properties of DFRS models was accomplished in a programmatic way, with no formal guarantees, and test cases were generated by translating these models into other notations. Here, we use Coq as a single framework to specify, validate and verify DFRS models. Moreover, the specification of DFRSs in Coq is automatically derived from controlled natural-language requirements, and well-formedness properties are formally verified with no user intervention. System validation is supported by bounded exploration of models; general and domain-specific system property verification is supported by the development of proof scripts, and test generation is achieved with the aid of the QuickChick tool. Considering examples from the literature, but also from the aerospace (Embraer) and the automotive (Mercedes) industries, our automatic testing strategy was evaluated in terms of performance and the ability to detect defects generated by mutation. Within seconds, test cases were generated automatically from the requirements, achieving an average mutation score of about 75%.
@article{carvalho_validating_2021,
	title = {Validating, verifying and testing timed data-flow reactive systems in {Coq} from controlled natural-language requirements},
	volume = {201},
	issn = {0167-6423},
	url = {http://www.sciencedirect.com/science/article/pii/S0167642320301453},
	doi = {10/ghwf9j},
	abstract = {Data-flow reactive systems (DFRSs) form a class of embedded systems whose inputs and outputs are always available as signals. Input signals can be seen as data provided by sensors, whereas the output data are provided to system actuators. In previous works, verifying well-formedness properties of DFRS models was accomplished in a programmatic way, with no formal guarantees, and test cases were generated by translating these models into other notations. Here, we use Coq as a single framework to specify, validate and verify DFRS models. Moreover, the specification of DFRSs in Coq is automatically derived from controlled natural-language requirements, and well-formedness properties are formally verified with no user intervention. System validation is supported by bounded exploration of models; general and domain-specific system property verification is supported by the development of proof scripts, and test generation is achieved with the aid of the QuickChick tool. Considering examples from the literature, but also from the aerospace (Embraer) and the automotive (Mercedes) industries, our automatic testing strategy was evaluated in terms of performance and the ability to detect defects generated by mutation. Within seconds, test cases were generated automatically from the requirements, achieving an average mutation score of about 75\%.},
	language = {English},
	urldate = {2021-01-28},
	journal = {Science of Computer Programming},
	author = {Carvalho, Gustavo and Meira, Igor},
	month = jan,
	year = {2021},
	keywords = {Controlled natural language, Interactive theorem proving, Property-based testing, Timed data-flow reactive system},
	pages = {102537},
}

Downloads: 0