University of Minnesota
Software Engineering Center

You are here

A Case for Requirements Validation

Date of Publication: 
April 2004
Associated Research Groups: 
Publication Files: 
In software engineering we make a distinction between the validation and the verifi- cation of a software system under development. Verification is concerned with demonstrating that the software implements the functional and non-functional requirements. Verification answers the question "is this implementation correct with respect to its requirements?" Validation, on the other hand, is concerned with determining if the functional and non-functional requirements are the right requirements. Validation answers the question "will this system, if build correctly, be safe and effective for its intended use?" There is ample evidence that most safety problems can be traced to erroneous and inadequate requirements. Therefore, to improve the safety of software intensive systems it is critical that the requirements are properly validated. Unfortunately, current certication standards, for example, DO-178B, focus almost exclusively on various verication activities; consequently, most industry practices are geared towards verification activities such as extensive testing and code inspections. Thus, one of the most critical problems with current certification standards is a lack of robust and reliable ways of assessing whether the requirements have been adequately validated.
Proceeding of National Academies Workshop on Software Certification and Dependability., Washington DC, April, 2004
@INPROCEEDINGS{Heimdahl04:RequirementsValidation, AUTHOR = "Mats P.E. Heimdahl", TITLE = "A Case for Requirements Validation", BOOKTITLE = "Proceeding of National Academies Workshop on Software Certification and Dependability", YEAR = "2004", address = "Washington DC", month = "April", }