VOICI:
Handling Inconsistency and Change in
Evolving Requirements Specifications
EPSRC
Funded Research Project,
Distributed
Software Engineering Group
Department
of Computing
Imperial
College of Science, Technology and Medicine
Overview Aims People Related Websites
Overview
A key problem in large systems engineering projects is the management of frequently changing requirements, both during initial system development and subsequent maintenance and evolution. The ability to record, track, analyse and control requirements changes is crucial. Changes may introduce inconsistencies; and conversely, requirements changes may be necessary to handle existing inconsistencies. Therefore, the ability to detect, reason and handle inconsistent requirements is crucial to the successful development and subsequent evolution of requirements specifications.A variety of techniques for analysing and managing the impact of changes on systems and their specifications have been developed. These are mainly based on rigorous consistency checking and analysis, in an attempt to eradicate inconsistencies as soon as or soon after they are detected. However, in practice, inconsistency is inevitable in all real large-scale specifications. Living with inconsistency during evolutionary development is a fact of life.
Therefore, the proposed project aims to develop formally sound techniques and practical tools that tolerate inconsistency by allowing continued reasoning and action in the presence of inconsistency. Specifically, the project will provide techniques for analysing inconsistent specifications, for analysing the impact of different development actions on specifications whether these actions handle specific inconsistencies or initiate some evolutionary change and for providing automated guidance and support for acting in the presence of inconsistency.
The project combines both basic and applied research. It is of interest to practitioners searching for ways to manage changes in their systems specifications, and to researchers developing techniques for handling inconsistency in formal specifications.
Aims & Research Issues
This project aims to develop techniques for handling inconsistencies and supporting the management of change in evolving requirement specifications. In particular, the project objectives are:
To summarise, the research issues which will be addressed by the project include:
- To develop techniques for analysing inconsistent requirements specifications, in order to prioritise inconsistencies and assess their impact.
- To develop techniques for inconsistency handling by (a) examining the consequences of different actions on inconsistent specifications, and (b) exploiting viewpoint-structured specifications to support change propagation.
- To develop practical automated tools to support analysing inconsistencies, reasoning about actions and guiding change management.
- To test, evaluate and demonstrate the viability of the approach by validating the proposed techniques and tools using requirements specification case studies from NASA projects.
- Mechanisms for traceable reasoning in the presence of inconsistency there is a need to investigate a means to prioritise specification information, label it accordingly, and track its propagation during reasoning.
- Mechanisms for inconsistency handling there is a need to investigate a means to:
- generate alternative actions for handling inconsistencies,
- analyse the consequences of such actions, and
- select the most appropriate actions to perform.
- Tractability and usability of tool support there is a need to develop practical tools to support human-centred, formally based automated reasoning.
- Validation and evaluation there is a need to evaluate the technical and practical impact of the proposed techniques and tools for handling inconsistency and change on realistic large-scale requirements specifications.
PeopleDr. Bashar Nuseibeh is the principal investigator of this project, Prof. Jeff Kramer is a co-investigator and Dr. Alessandra Russo is employed on the project as a full time research associate.
Discussion and correspondence about the work on this project is very welcome. Please contact Alessandra Russo, Bashar Nuseibeh or Jeff Kramer.
Related Websites
- NASA Independent Validation & Verification Facility (West Virginia, USA). (Industrial support).
- Computer Engineering Section, Department of Electronic Engineering and Information Sciences (DEI), Politecnico di Milano, Italy.
- Department of Computing Science and Engineering, Université catholique de Louvain, Louvain-la-Neuve, Belgium.
- Distributed Software Engineering Seminars, Imperial College, London.
This page is maintained by Alessandra Russo. Last Change: 17/2/2000. If you have comments or suggestions, email me at ar3@doc.ic.ac.uk