A Bayesian Network for Predicting the Need for a Requirements Review

A Bayesian Network for Predicting the Need for a Requirements Review

Jose del Sagrado Martinez (University of Almeria, Spain) and Isabel Maria del Aguila Cano (University of Almeria, Spain)
DOI: 10.4018/978-1-60566-758-4.ch006
OnDemand PDF Download:
No Current Special Offers


One of the major problems when developing complex software systems is that of Requirement Engineering. The methodologies usually propose iterations in which requirements are to be reviewed and re-written until the final version is obtained. This chapter focuses on the construction of “Requisites”, a Bayesian network designed to be used as a predictor that tells us whether a requirements specification has enough quality to be considered as a baseline. Requisites have been defined using several information sources, such as standards and reports, and through interaction with experts, in order to structure and quantify the final model. This Bayesian network reflects the knowledge needed when assessing a requirements specification. The authors show how Requisites can be used through the study of some use cases. After the propagation over the network of information collected about the certainty of a subset of variables, the value predicted will determine if the requirements specification has to be revised.
Chapter Preview

From Software Requirement To Requirement Engineering

Software requirements express the needs and constraints placed on a software product that contribute to the solution of some real world problem (Kotonya & Sommerville, 2000). The process or set of tasks applied to find out, analyse, document and check these needs and constraints, have nowadays become the category of a subject called Requirement Engineering (RE).

Traditionally, obtaining requirements has been considered a fuzzy step in the software development lifecycle, in which a set of informal ideas must be translated into formal expressions. Nevertheless, tasks related to requirements are regarded as a key stage in software development, because “the primary measure of the success and quality of a software system is the degree to which it meets the purpose for which it was intended” (Nuseibeh & Easterbrook, 2000, p. 37), which is client satisfaction.

Complete Chapter List

Search this Book: