Requirements-Driven Software Development System (ReDSeeDS)

Period: Nov 14, 2008 - Sep 21, 2020
Status: laufend

The software development industry, while being the key driver of the modern economy, has an unacceptably high level of failures; caused largely by the high complexity (interdependencies and variability) of requirements. The software development industry has significant problems with managing this complexity – with keeping track of changes and reusing knowledge from previous projects. The main barrier in overcoming these problems is the lack of widely accepted and easy to apply mechanisms for expressing and reusing coherent solutions to problems formulated as user requirements.

The main objective of the ReDSeeDS project is thus to create an open framework consisting of a scenario-driven development method (precise specification language and process for the “how-to”), including a repository for reuse and tool support throughout. The basic reuse approach will be case-based, where a reusable case is a complete set of closely linked (through mappings or transformations) software development technical artifacts (models and code), leading from the initial user’s needs to the resulting executable application.

A new problem description, in the form of a requirements model, can be matched with previous requirements models. The solution information (models and code) of the most similar problem can then be taken for reuse and adapted to even only partially developed requirements. Unlike other approaches, the effort associated with preparing reusable solutions with the ReDSeeDS framework is kept to a minimum.

To develop this framework, the project combines and enhances the state of the art in the areas of requirements engineering, meta- modeling, model transformation and querying and inference techniques. This combination, while innovative in itself, enables a completely new approach to software development based on this form of case-based reuse. Such an approach is an enabling factor for starting a true reuse-oriented software development community, based on openly available case query engines and solutions validated in practice.