Generation of Oracles using Natural Language Processing

Iat Tou Leong,Raul Barbosa
DOI: https://doi.org/10.1109/apsecw53869.2021.00016
2021-12-01
Abstract:The prospect of performing software verification directly using natural language requirements could pave the way to improved correctness and dependability. The key is to use natural language processing to derive a checkable specification and apply verification techniques to identify any software defects that may exist. However, imprecise or incomplete natural language requirements, as well as limitations of language processing, can lead to difficulties in achieving this goal. This paper proposes a framework that uses principles of design by contract to formalise requirements, by generating contracts from natural language requirements. We provide a case study on a sample Java source code to illustrate the opportunity of static checking and runtime assertion checking using natural language.
What problem does this paper attempt to address?