190 likes | 326 Views
درس مهندسي نيازمندي استاد دكتر عبداله زاده دانشجو خيرالنسا مرچانت Meaning of Requirement. Introduction. Requirements are used to denote what are often called functional requirements. Requirements are located in the environment, which is distinguished from the machine to be built.
E N D
درس مهندسي نيازمندياستاد دكتر عبداله زادهدانشجو خيرالنسا مرچانتMeaning of Requirement
Introduction • Requirements are used to denote what are often called functional requirements. • Requirements are located in the environment, which is distinguished from the machine to be built. • A requirement is a condition over phenomena of environment. • A specification is a restricted form of requirement, providing enough information for the implementer to build the machine without further environment knowledge.
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
Importance of requirements • Reliance of human beings on computer-based systems • Criticalness and cruciality of these computer-based systems
Requirements Dos and Does nots • Do not directly concern machine • Concern the environment of the machine
Shared Phenomena • Common phenomena between machine and environment • Controlled by machine • Controlled by environment • Used as a bridge between machine and private phenomena
Affecting private phenomena Shared Phenomena Direct Machine Direct Indirect Private Phenomena
Optative and Indicative • Describing a requirement • Desired condition over the phenomena of the environment • Given properties of the environment regarding shared phenomena
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
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
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
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
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
Ground terms • Have clear and unambiguous meaning • Fix relationship between description and what it describes • Are captured by a tool named designation
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
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
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
Designation Vs definition (Cont.) • Definition provides more convenient terminology for saying what we could have said less conveniently
Reference • [1]. M.Jackson, “The meaning of requirements,” Annals of Software Engineering Special Issue on Software Requirements Engineering,1996.