A cluster analysis and prototyping approach for the risk management of software requirements
Frank J. Armour · 1993
Drawbacks to current requirements prototyping efforts include both cost and time, especially when prototyping large sets of requirements. When dealing with a large set of requirements it may neither be desirable nor necessary to engage in a prototyping effort which attempts to reflect every identified need. Those requirements which represent the greatest risk should be identified for inclusion in the prototyping effort. In the current prototyping approach, before a requirements prototype is developed, original requirements are transformed to a formal language used as specification for prototyping. The prototype developed based on this transformed interpretation of the original requirements. Thus, users may be evaluating the prototype against a set of requirements specifications that are incomplete, incorrect, and in a form difficult to comprehend adversely affecting evaluation outcome. The goal of this research is reduction of risk that a final software requirements specification will contain the type of faults shown to cause significant system errors. In order to achieve this goal and address the problems described above, the focus of this research is on the development of a prototyping method that will enable designers, during the prototyping step defined by the requirement engineering methodology to identify actual requirements that need to be prototyped, and support the evaluation of the prototypes by providing access to original requirements information. First, the research defines a set of criteria or taxonomies that identify certain features of natural language statements that make them good candidates for requirements prototyping. Second, a technique was developed to identify and group all requirements into appropriate taxonometric categories. Third, a model for interactive traceability to original requirements information during prototyping was created. Fourth, a requirements prototyping process model was developed, providing a framework to systematically apply the above techniques. Finally, a computer based system was develop to support the techniques described above. The concept was demonstrated with two sets of software requirements.