Software Requirements: A new Domain for Semantic Parsers

  title={Software Requirements: A new Domain for Semantic Parsers},
  author={Michael Roth and Themistoklis G. Diamantopoulos and Ewan Klein and Andreas L. Symeonidis},
  booktitle={Annual Meeting of the Association for Computational Linguistics},
Software requirements are commonly written in natural language, making them prone to ambiguity, incompleteness and inconsistency. By converting requirements to formal semantic representations, emerging problems can be detected at an early stage of the development process, thus reducing the number of ensuing errors and the development costs. In this paper, we treat the mapping from requirements to formal representations as a semantic parsing task. We describe a novel data set for this task that… 

Figures and Tables from this paper

Explorer Software Requirements as an Application Domain for Natural Language Processing

A mechanism that automates the mapping of requirements to formal representations using semantic role labeling is proposed, and a hierarchical framework that allows requirements concepts to be annotated is employed.

Software requirements as an application domain for natural language processing

A mechanism that automates the mapping of requirements to formal representations using semantic role labeling is proposed, the first publicly available dataset is described, a hierarchical framework that allows requirements concepts to be annotated is employed, and how semantic role labeled can be adapted for parsing software requirements are discussed.

Parsing Software Requirements with an Ontology-based Semantic Role Labeler

This work proposes to automatically map requirements in natural language text to structured semantic representations, adapting techniques from semantic role labeling to a high-level ontology that describes static software functionalities.

ARSENAL: Automatic Requirements Specification Extraction from Natural Language

ARSENAL is a framework and methodology for systematically transforming natural language NL requirements into analyzable formal models and logic specifications that can be analyzed automatically for consistency and implementability.

Bringing Textual Descriptions to Life : Semantic Parsing of Requirements Documents into Executable Scenarios

An end-to-end framework for translating natural language requirements into executable systems, which allows for post-editing the predicted output via a friendly GUI, thus enabling the rapid development of parallel text:code data for statistical natural language programming.

Experiment on automatic functional requirements analysis with the EFRF's semantic cases

It was found that the model trained on the requirements dataset of the E-commerce systems, can be used to extract semantic information from the requirements of auto-maker systems and achieves a good performance.

Typed Entity and Relation Annotation on Computer Science Papers

The scheme and the annotated dataset are described, along with the problems found in the course of annotation, and the results of automatic annotation are shown to evaluate the corpus in a practical setting in application to topic extraction.

Modeling Software Requirements

This chapter presents an approach that captures the static and dynamic view of software projects and generates traceable system specifications, and can receive input in the form of functional requirements, UML use case and activity diagrams, and storyboards.

A Natural Language Driven Approach for Automated Web API Development: Gherkin2OAS

Through the suggested methodology and tool, one may design and build RESTful services fast, while ensuring proper functionality, and gherkin2OAS, a software tool that aspires to bridge the aforementioned development approaches.

Enhancing requirements reusability through semantic modeling and data mining techniques

The ontology-based approach allows for reasoning over the stored requirements, while the mining methodologies employed detect incomplete or missing software requirements, this way reducing the effort required for requirements elicitation at an early stage of the project lifecycle.



Automatically Extracting Requirements Specifications from Natural Language

A methodology for connecting semi-formal requirements with formal descriptions through an intermediate representation is proposed, and concrete empirical evidence that it is possible to bridge the gap between stylized natural language requirements and formal specifications with ARSENAL is provided.

Requirements validation via automated natural language parsing

  • Sastry NanduriS. Rugaber
  • Computer Science
    Proceedings of the Twenty-Eighth Annual Hawaii International Conference on System Sciences
  • 1995
The paper has adapted an automated natural language parser and used it to examine several high level specifications and indicated that with a modest amount of effort, the technique can give valuable feedback to the analyst.


A case study on the extraction of the ontology from a larger document shows that the approach works for larger documents as well and the cost is reasonable.

Large-scale Semantic Parsing via Schema Matching and Lexicon Extension

A semantic parser for Freebase is developed based on a reduction to standard supervised training algorithms, schema matching, and pattern learning that is capable of parsing questions with an F1 that improves by 0.42 over a purely-supervised learning algorithm.

Software Development Process From Natural Language Specification

A process to derive incrementally a formal specification from an informal specification written in natural-language is presented. This process consists of two major activities, "design" and

NL-OOPS: from natural language to object oriented requirements using the natural language processing system LOLITA

  • Luisa Mich
  • Computer Science
    Natural Language Engineering
  • 1996
NL-OOPS, a CASE tool that supports requirements analysis by generating object oriented models from natural language requirements documents by implementing an algorithm for the extraction of the objects and their associations for use in creating object models.

CM-Builder: A Natural Language-Based CASE Tool for Object-Oriented Analysis

An NL-Based CASE tool called Class Model Builder (CM-Builder) is described which aims at supporting this aspect of the Analysis stage of software development in an Object-Oriented framework and has been quantitatively evaluated in blind trials against a collection of unseen software requirements texts.

Market research for requirements analysis using linguistic tools

The results of an online market research are presented to assess the economic advantages of developing a CASE (computer-aided software engineering) tool that integrates linguistic analysis techniques for documents written in natural language, and to verify the existence of the potential demand for such a tool.

Integrating top-down and bottom-up approaches in inductive logic programming: applications in natural language processing and relational data mining

Two new integrated ILP systems for these tasks that overcome limitations of existing methods will be presented, with experimental results on learning natural-language interfaces for two databases demonstrating that COCKTAIL learns more accurate parsers than CHILLIN, the previous best method for this task.

Requirements Engineering - From System Goals to UML Models to Software Specifications

Serving as a helpful introduction to the fundamental concepts and principles of requirements engineering, this guide offers a comprehensive review of the aim, scope, and role of requirements Engineering as well as best practices and flaws to avoid.