On Systematically Building a Controlled Natural Language for Functional Requirements

05/04/2020
by   Alvaro Veizaga, et al.
0

[Context] Natural language (NL) is pervasive in software requirements specifications (SRSs). However, despite its popularity and widespread use, NL is highly prone to quality issues such as vagueness, ambiguity, and incompleteness. Controlled natural languages (CNLs) have been proposed as a way to prevent quality problems in requirements documents, while maintaining the flexibility to write and communicate requirements in an intuitive and universally understood manner. [Objective] In collaboration with an industrial partner from the financial domain, we systematically develop and evaluate a CNL, named Rimay, intended at helping analysts write functional requirements. [Method] We rely on Grounded Theory for building Rimay and follow well-known guidelines for conducting and reporting industrial case study research. [Results] Our main contributions are: (1) a qualitative methodology to systematically define a CNL for functional requirements; this methodology is general and applicable to information systems beyond the financial domain, (2) a CNL grammar to represent functional requirements; this grammar is derived from our experience in the financial domain, but should be applicable, possibly with adaptations, to other information-system domains, and (3) an empirical evaluation of our CNL (Rimay) through an industrial case study. Our contributions draw on 15 representative SRSs, collectively containing 3215 NL requirements statements from the financial domain. [Conclusion] Our evaluation shows that Rimay is expressive enough to capture, on average, 88 460) of the NL requirements statements in four previously unseen SRSs from the financial domain.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/11/2023

Automated Smell Detection and Recommendation in Natural Language Requirements

Requirement specifications are typically written in natural language (NL...
research
11/23/2020

Simulating an Object-Oriented Financial System in a Functional Language

This paper summarises a successful application of functional programming...
research
03/03/2021

Automatically detecting the conflicts between software requirements based on finer semantic analysis

Context: Conflicts between software requirements bring uncertainties to ...
research
09/05/2021

How Do Practitioners Interpret Conditionals in Requirements?

Context: Conditional statements like "If A and B then C" are core elemen...
research
04/25/2023

A Preliminary Evaluation of ChatGPT in Requirements Information Retrieval

Context: Recently, many illustrative examples have shown ChatGPT's impre...
research
11/20/2015

Polysemy in Controlled Natural Language Texts

Computational semantics and logic-based controlled natural languages (CN...
research
07/21/2021

Fine-Grained Causality Extraction From Natural Language Requirements Using Recursive Neural Tensor Networks

[Context:] Causal relations (e.g., If A, then B) are prevalent in functi...

Please sign up or login with your details

Forgot password? Click here to reset