ZEN-REQCONFIG


WHAT IS ZEN-REQCONFIG?

Enabling Automated Requirements Reuse and Configuration Framework (Zen-ReqConfig) is a methodolgoy with tool support to systematically and automatically develop structured and configuration-ready PL requirements repositories and facilitate the development of product-specific requirements repository, the product configuration at the requirements level and the smooth transition to downstream product configuration phases (e.g., at the architecture design phase).

Zen-ReqConfig has three main functionalities: 1) Automatically structuring the PL requirements repository by automatically devising a hierarchical structure for the repository from the hierarchy information contained in a domain model and automatically allocating textual requirements to the generated structure based on Natural Language Processing (NLP) technologies and similarity measures; 2) Automatically identifying variabilities (specified in the domain model of the system) based on NLP technologies in textual requirements; and 3) Facilitating the configuration of products at the requirements level, the derivation of product-specific requirements repositories, and the transition to downstream product development and configuration phases.

ZEN-REQCONFIG TOOL ARCHITECTURE

Zen-ReqConfig is built by following principles of modularity, extensibility, and modifiability. The architecture of Zen-ReqConfig is shown in the following figure. Zen-ReqConfig have five modules: 1) the module of structuring is for structuring PL requirements repositories, containing two sub-modules: generating structure and allocating textual requirements; 2) the module of identifying and specifying variabilities is to automatically identify and specify variabilities in textual requirements; 3) the module of deriving product-specific requirements is realized to help requirements engineers derive product-specific requirements via systematic product configuration at the RE level; 4) the module of deriving product-specific domain model is to derive the domain model for a specific product based on the configuration obtained during the process of deriving product-specific requirements, and 5) the module of adapter for domain models is to make Zen-ReqConfig extensible for new domain modeling notations.


Zen-ReqConfig Architecture


Zen-ReqConfig is implemented as an Eclipse plug-in, built on the Eclipse Modeling Framework (EMF). Now it can cope with two different domain modeling notations: SimPL and CBFM. Zen-ReqConfig is extensible for different model notations by adding an adapter for a new modeling notation.

Zen-ReqConfig relies on the Stanford Parser as a NLP tool to analyze textual requirements, which generates phrase structure trees and the grammatical structure of sentences (known grammatical relations). Zen-ReqConfig has very loose coupling with the Stanford Parser.

Structured requirements repositories are presented as ReqIF files. Zen-ReqConfig is built on the Requirements Modeling Framework (RMF) , which is a framework for working with textual requirements (structured as ReqIF models), the industry standard for exchanging requirements.

WHAT IS ZEN-REQCONFIG USED FOR?

  • Structuring PL Requirements
  • Product Line Requirement-Level Configuration and Deriving Specific-product Requirements
  • Generating and Transitting PL Requirement-level Configuration Data/File to Downdstream Phases


WANT TO TRY ZEN-REQCONFIG OUT?

Download Zen-ReqConfig Plugin here!
Zen-ReqConfig Eclipse plug-in is only available for education purpose.

INSTALLATION INSTRUCTION

Zen-ReqConfig is implemented as an Eclipse plug-in. If you have downloaded the zip file, you can install following steps:
  1. Run Eclipse and select "Help->Install New Software..." from the main menu.
  2. On the dialog that appears, select "Add..." and select "Archive..." in the next dialog.
  3. You should select the location where the downloaded jar file and select the jar file.
  4. Wait a few seconds until the content of the selected jar is displayed under the combo-box.
  5. Select the features that you would like to install.
  6. Following the next steps to install the selected features using the standard plug-in installation procedure. Reboot Eclipse after installation is complete.

LOOKING FOR MORE INFORMATION?

Related Publications
Yan Li, Tao Yue, Shaukat Ali, and Li Zhang. Enabling Automated Requirements Reuse and Configuration, submitted to Software and System Modeling (Soysm).