direkt zum Inhalt springen

direkt zum Hauptnavigationsmenü

Sie sind hier

TU Berlin

Page Content

Requirements Engineering

As an essential component of the development of systems based on the V model, the requirements for a system are determined and documented at an early stage. This creates system and component specifications, which are used in further process steps for test specification and implementation. In addition to requirements, these specifications also contain additional information like informative descriptions of functions, explanations of other requirements, examples and references to other documents.

Classification of Requirements

The precise separation of requirements and information is essential for subsequent work steps since only test requirements have to be created for requirements and only requirements have to be coordinated with suppliers.

Modern requirements management systems allow to add additional attributes to parts of requirement documents. This is used to explicitly mark each element of a request document as a request or information. However, this marking must be carried out manually by system developers. Field studies have shown that this is not done consistently.

At DCAITI, we develop tools to assist developers with this manual work step. As a core component, techniques from the area of machine learning (classification / regression with neural networks / support vector machines / ..., text clustering) are used to classify natural language sentences in requirement / no requirement.

Knowledge Extraction from Requirements Specifications

Due to the enormous scope of the specifications, it is difficult for individual developers to keep track of the entire overview, to recognize certain relationships between individual requirements and to find existing requirements. Within specifications, requirements are usually broken down into chapters; the specifications themselves are also hierarchically ordered according to the systems and components. In addition, it is possible to use links to link individual requirements within a single specification or across different specifications.

Nevertheless it is, e.g. due to missing links or ignorance of existing contexts, not possible to extract the knowledge within the requirements and make it available for further queries or insights. In particular, since the requirements are often documented in natural language, they can be difficult to capture and process by computer-aided systems.

In this context, we develop tools at the chair to create a knowledge base from natural language requirements in a fully automated way. In addition to the existing structuring according to systems, components and individual specifications, this also contains the technical terms and their semantic contexts.

Using the knowledge base and appropriate search algorithms, developers can better understand knowledge in the requirements and find previously undocumented relationships.


Winkler, Jonas P.; Vogelsang, Andreas (2016). Automatic Classification of Requirements Based on Convolutional Neural Networks. 3rd IEEE International Workshop on Artificial Intelligence for Requirements Engineering (AIRE)

Winkler, Jonas P. (2016). Automatische Klassifikation von Anforderungen zur Unterstützung von Qualitätssicherungsprozessen. INFORMATIK 2016. Lecture Notes in Informatics (LNI)

Winkler, Jonas P.; Vogelsang, Andreas (2017). "What Does My Classifier Learn?" A Visual Approach to Understanding Natural Language Text Classifiers. Proceedings of the 22nd International Conference on Natural Language & Information Systems

Winkler, Jonas P.; Vogelsang, Andreas (2018). What Does My Classifier Learn? A Visual Approach to Understanding Natural Language Text Classifiers. Software Engineering und Software Management 2018. Gesellschaft für Informatik.

Winkler, Jonas P. Andreas Vogelsang (2018). Using Tools to Assist Identification of Non-Requirements in Requirements Specifications - A Controlled Experiment. Requirements Engineering: Foundation for Software Quality: 24th International Working Conference

Winkler, Jonas and Grönberg, Jannis and Vogelsang, Andreas (2019). Predicting How to Test Requirements: An Automated Approach. 27th IEEE International Requirements Engineering Conference (RE'19)

Link to publication

Winkler, Jonas and Grönberg, Jannis and Vogelsang, Andreas (2019). Optimizing for Recall in Automatic Requirements Classification: An Empirical Study. 27th IEEE International Requirements Engineering Conference (RE'19)

Link to publication

A. Schlutter and A. Vogelsang (2018). Knowledge Representation of Requirements Documents Using Natural Language Processing. 1st Workshop on Natural Language Processing for Requirements Engineering (NLP4RE)

Link to publication

Projects and Coorperations

Daimler AG - Classification of Requirements

Daimler AG - Knowledge Extraction from Requirements Specifications

Zusatzinformationen / Extras

Quick Access:

Schnellnavigation zur Seite über Nummerneingabe

Auxiliary Functions

This site uses Matomo for anonymized webanalysis. Visit Data Privacy for more information and opt-out options.

Jonas Winkler, M.Sc.

Tel.: +49 30 314 78417

DCAITI - TU Berlin TEL 403 Ernst-Reuter-Platz 7 10587 Berlin

Aaron Schlutter, M.Sc.

Tel.: +49 30 314 78425

DCAITI - TU Berlin TEL 403 Ernst-Reuter-Platz 7 10587 Berlin