180 likes | 192 Vues
This article discusses the basics of requirement engineering, including the definition of requirements, the importance of requirements, dos and don'ts of requirements, shared phenomena, optative and indicative descriptions, and the use of formalism in requirement engineering.
E N D
The meaning of requirements Vahid Jalali October 2007 Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
A couple of basic questions • What is requirement? • A condition over phenomena of the environment • What is specification? • Restricted form of requirement • Providing enough information for the implementer Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Importance of requirements • Reliance of human beings on computer-based systems • Criticalness and cruciality of these computer-based systems Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Requirements Dos and Does nots • Do not directly concern machine • Concern the environment of the machine Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Shared Phenomena • Common phenomena between machine and environment • Controlled by machine • Controlled by environment • Used as a bridge between machine and private phenomena Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Affecting private phenomena Shared Phenomena Direct Machine Direct Indirect Private Phenomena Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Optative and Indicative • Describing a requirement • Desired condition over the phenomena of the environment • Given properties of the environment regarding shared phenomena Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Optative and Indicative (Cont.) • Optative : A customer requirement R expresses a condition over the phenomena of the environment that we wish to make true by installing the machine • Indicative : An environment assertion E expresses a condition over the phenomena of the environment that we know to be true irrespective of the properties and behavior of the machine Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Optative and Indicative (Cont.) • Distinction between optative and indicative • Is time independent • The environment properties that guaranteed by the environment itself are indicative • The environment properties that are to be guaranteed by the machine are optative • Is also applicable to description of an agent Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Requirement engineering • Which kind of description to regard, optative or indicative? • Actually both of them • Reasons for regarding indicative descriptions in addition to optative ones • Understanding the environment • Assuring satisfiablity of requirements Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Assuring satisfiablity • A couple of conditions should hold • a machine whose behavior satisfies S is installed in the environment • Environment has the properties described in E Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Formalism • Elevate the accuracy of descriptions • Computer can be treated as a formal system • Environment on contrast can not • Formalism impels no extra constraints on environment • Formalism can be met through using ground terms in a description Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Ground terms • Have clear and unambiguous meaning • Fix relationship between description and what it describes • Are captured by a tool named designation Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Designation • A designation associates a formal ground term, such as a predicate, with the denoted phenomena, such as an event or entity class or a relationship over events or entities • Appropriately chosen and carefully written designations provide a strong and narrow bridge between the environment and its description in requirements Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Designation (Cont.) • define the scope of a requirement • clarify the meaning of the descriptions • allow these descriptions to be subjected to the test of falsifiability • allow us to reason more reliably about the environment • Convince satisfaction of our specification will guarantee satisfaction of the requirements Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Designation Vs definition • Both underpin an essential discipline in description • Every term used in every description must be either designated or defined • Definition defines new terms on the basis of terms previously designated or previously formally defined Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Designation Vs definition (Cont.) • Definition provides more convenient terminology for saying what we could have said less conveniently Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007
Reference • [1]. M.Jackson, “The meaning of requirements,” Annals of Software Engineering Special Issue on Software Requirements Engineering Amirkabir university of technology, Department of computer engineering and information technology, Intelligent systems laboratory, http://ceit.aut.ac.ir/islab, Requirement engineering course, Fall 2007