Font Size: a A A

Robust requirements traceability for handling evolutionary and speculative change

Posted on:2003-03-05Degree:Ph.DType:Thesis
University:University of Illinois at ChicagoCandidate:Huang, JaneFull Text:PDF
GTID:2468390011979450Subject:Computer Science
Abstract/Summary:
Requirements traceability is crucial to the successful development and management of all non-trivial software systems. This is illustrated by the fact that the U.S. Department of Defense invests about four percent of its total information technology budget on traceability issues. Unfortunately, despite its importance, practitioners frequently fail to implement and maintain adequate traceability schemes. In their 1999 report, the Standish group revealed that in the previous year overruns and failed projects cost U.S. companies a staggering ninety-seven billion dollars! Several researchers have demonstrated that inadequate traceability is a major contributing factor in such project over-runs, and that its failure limits their ability to manage change effectively.; Many factors contribute to this failure; however, one of the major causes is the complexity and sheer number of relationships that must be considered, and the subsequent failure of time-pressured developers to consistently update links and artifacts as requirements are changed. This failure results in the gradual erosion of the traceability infrastructure until it can no longer adequately support change management. This thesis addresses the problem by proposing a new method of traceability based upon event-notification. Traceable objects are no longer tightly coupled, but are linked through an event service, which creates an environment in which change is handled more efficiently. By using event logs, accurate traceability links can be reconstructed throughout the life of the system as needed.; The proposed method not only handles long-term evolutionary change, but also supports temporary speculative change that enables “what-if” types of query. Posing these questions about a software system is an important yet often unsupported activity. Current impact analysis techniques tend to focus upon the functionality of the system, whilst the effects of change upon performance requirements are often ignored until after implementation. This tendency can lead to costly and time-consuming mistakes. By establishing dynamic links, capable of propagating data values and commands between requirements and performance models, it becomes possible to automate a wide range of speculative queries and to enhance the overall ability to predict the impact of change upon the performance of the system.
Keywords/Search Tags:Traceability, Change, Requirements, Speculative, System
Related items