A CNL for requirements as the basis to automate tasks of critical system development
The elicitation and formalization of natural language requirements are still a challenge of Requirements Engineering. The characteristics of such requirements are manifold: they need to be understandable to each of the stakeholders and they should be processable by computers, for example, to analyze or to trace requirements across many steps during the system development process. For this purpose, a controlled natural language (CNL) can be used to specify textual requirements. Thus, it is possible to define the allowed syntax of requirements, but this does not consider the semantic content. With semantic annotations of a formal grammar (so-called SemanticPatterns), it is possible to capture the semantic dependencies within textual requirements and to transform them into an ontology, and this ontology is used to check the consistency of whole requirement specifications and also between the specification and other design artifacts. This paper presents an approach using a formal grammar with semantic annotations to formalize textual requirements and to make it processable by computers. The formulation and consistency check of several automotive requirements are shown based on the prototypical tool GO-Editor.