Presentation is loading. Please wait.

Presentation is loading. Please wait.

The Meaning Of Requirements Michael Jackson 07/10/96 By: A. Rasoolzadegan.

Similar presentations


Presentation on theme: "The Meaning Of Requirements Michael Jackson 07/10/96 By: A. Rasoolzadegan."— Presentation transcript:

1 The Meaning Of Requirements Michael Jackson 07/10/96 By: A. Rasoolzadegan

2 2 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Abstract  In this paper we are concerned with functional requirements  Requirements are located in environment, which is distinguished from the machine to be built  Explains a distinction between requirements and specifications  A specification is a restricted form of requirement, providing enough information for the implementer to build the machine without further environment knowledge  Requirements appropriate description needs an appropriate structure for our description which consider the distinction between: The machine and the environment Indicatives description and optative descriptions

3 3 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Abstract (cont..)  Discusses techniques of formalizing and describing requirements in away that allows them to be More clearly expressed More easily understood and validated  Formalization is a fundamental problem of requirement engineering Most environments are parts of the physical world (informal) Mentioned techniques to formalize:  Designations + Definition + Assertion Purposes:  Create a narrow bridge between the environment and its description in the requirements  Obtained a sufficiently faithful approximation to the informal reality

4 4 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Introduction  The Importance of Requirements  A Concept of Requirements  The Machine and the Environment  Shared Phenomena

5 5 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh The importance of Req.  Failures reasons of systems: 1. relatively straightforward programming errors 2. mismatch between the designed behavior of the computer part of the system and the effects in the environment  The computer hardware may perform correctly, and the software may satisfy its specification; but the results are not what was intended, and maybe disastrous  second kind of failure’s reasons: Errors in system requirements engineering req. of the systems are  not correctly identified  Imprecisely expressed  based on faulty reasoning about the env.  Based on faulty approximations to the reality of the phenomena and properties of the env.

6 6 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh A concept of Requirements  Some requirements are often excluded from the corpus of functional requirements for no better reason than the technical difficulty of treating them in a sufficiently formal way (nonfunctional requirements)  An example of a requirement If passenger in the lift presses the open-doors button while the lift is stationary at a floor, the doors should begin to open within 0.5 secs.

7 7 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh The machine and Environment  The requirements do not directly concern the machine, they concern the environment into which it will be installed  The environment is the part of the world with which the machine will interact, in which the effects of the machine will be observed and evaluated  Example Machine: Lift-control system Environment: floors served, lift shaft, motor, doors and etc.  Environment: what is given  Machine: what is to be constructed

8 8 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Shared Phenomena  The machine can affect, and be affected by, the environment only because they have some shared phenomena in common (events and states)  Example in the lift system Shared event: turn-motor-on (between motor and machine) Shared state: up-sensor-2-on (between a sensor located in the lift at floor 2 and machine’s store)  In considering shared phenomena, it is essential to distinguish between those that are controlled by the machine and those that are controlled by the environment turn-motor-on event is controlled by machine up-sensor-2-on state is controlled by environment

9 9 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Reqs and Env. Properties  Requirements Are in the Environment  Optative and Indicative  Why Env. Assertions Are Necessary  Requirements and Specifications  The Nature of a specification

10 10 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Reqs Are in the Env.  Reqs are conditions over the events and states of the env.  Example: The customer for the lift control system requires that when a button is pressed the lift should come to the floor as requested  Requirements are phenomena of the environment (either are shared with the machine or not )  How can the machine ensure satisfaction of a requirement that concern private phenomena of the environment, in which it does not participate? The Environment The Machine Machine behaviour is about these shared phenomena only Requirements are typically about these private phenomena Environment properties relate all of these shared and private phenomena, and so relate the requirements to the machine bahaviour

11 11 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Reqs Are in the Env. (cont..)  Example: in the lift system Given properties of the env.  If the lift motor is switched on while its polarity is set in the upwards sense, the car will start to rise within 0.2 seconds  When the lift car is at any point between -8.25 inches and +0.25 inch of a floor position, the up-sensor at that floor is on  If the lift motor is switched off while it is raising the car, the car will halt after rising a further 8 inches By virtue of these properties, the machine can cause the car to rise to a floor by controlling and sensing shared phenomena  The machine sets the motor polarity upwards and switches the motor on, then waits until the up-sensor at the floor flips on, then switches the motor off.

12 12 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Optative and Indicative  The full description of a requirement consists of at least two parts: We must describe the requirement itself  The desired condition over the phenomena of the environment (optative) guaranteed by the machine We must also describe the given properties of the environment (indicative) guaranteed by the env. (environment assertions)  By virtue of which it will be possible for a machine, participating only in the shared phenomena, to ensure that the req. is satisfied

13 13 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Why Env. Assertions Are Necessary  A vital way of obtaining the necessary understanding of the env. In which the customer requirements are located  To show that the requirement is satisfiable by some machine It may be that the env. does not embody enough constraints and enough causal chains to connect the shared phenomena appropriately to the phenomena that are of direct interest to the customer  “If a passenger in the lift requests travel to a floor, but then leaves the lift before that floor is reached, the request should be cancelled”

14 14 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Requirements and Specifications  To show that the reqs are satisfiable by some machine we derive a specification S of the machine (optative description)  If a machine whose behaviour satisfies S is installed in the environment and the environment has the properties described in £, then the environment will exhibit the properties described in R: £, S ├ R Or £ ∧ S  R

15 15 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh The Nature of a specification  A specification forms a bridge between requirements engineering which is concerned with the environment, and software engineering, which is concerned with the machine A spec. allows reqs engineers to reason about the req. and its satisfaction in the environment, without mentioning the properties of the machine It also allows programmers to reason about the software and its adequacy for its purpose without mentioning either the env. properties or the customer’s req.

16 16 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Description and the Env.  Formalization and Informal Environments  Ground Terms  Designations  The Use of Definition  The Discipline of Designation and Definition

17 17 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Formalization and Informal Environments  The environment is usually a part of the physical world that has not been formalized  We normally speak of it in natural language, with all its attendant ambiguities and uncertainties  The informal nature of the env. presents fundamental difficulty to formalize the requirements

18 18 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Ground Terms  The first need is to establish an adequate set of ground terms for our descriptions Example: in human biological relationships we can defined all words such as: mother, father, uncle, brother, aunt, niece, grand daughter, second cousin and etc with just a sufficient set of ground term such as {male, female, parent}  In req. description use only those phenomena as ground terms that admit sufficiently reliable and unambiguous recognition

19 19 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh overview  The importance of Requirements  A concept of Requirements  How can the machine ensure satisfaction of a requirement that concern private phenomena of the environment, in which it does not participate? Given properties of the env. + Shared Phenomena  The full description of a requirement optative machine Indicative (environment assertions) env.  Specification  Formalization: Ground terms+…

20 20 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Designations  An appropriate tool for explicitly made and captured the ground terms  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 Example:  Mother(x,y) ≈ x is the genetic mother of y  We should try to write the right-hand side of designation,which is informal, good enough for the world as it is and as it will be during the operational lifetime of the system ~

21 21 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Formal Definition  The appropriate tool to extend the terminology of our descriptions beyond the narrow confines of reliable designations  We define new terms on the basis of terms previously designated or previously formally defined  The formal definition add nothing to the bridge between the reality and its description nor do they constitute fresh assertions about the reality they merely provide more convenient terminology for saying what we could have said less conveniently without them

22 22 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Difference between designation and definition  WidgetMvmt(t,e,m) ≈ In event e a stock movement of m widgets occurs at time t  How many widgets should we have in stock? ExpectedWidgetStock(t,s) = s = ( ∑ tm,e,m | WidgetMvmt(t,e,m) ∧ tm<t)  How many widgets do we actually have in stock? WidgetStock(t,s) ≈ At Time t the number of widgets in the warehouse is s ~ def ~ √ t,s WidgetStock(t,s)  ExpectedWidgetStock(t,s) An Assertion:

23 23 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh Difference between designation and definition (cont..)  Designations Plane(p) ≈ p is a plane Land(e,p,t) ≈ in event e the plane p lands at time t TakeOff(e,p,t) ≈ in event e the plane p takes off at time t  Definition (Trip(i) ∧ TripPlane(p,i) ∧ starttrip(e,i) ∧ FinishesTrip(f,i)) = (p,e,f,t1,t2 | Plane(p) ∧ TakeOff(e,p,t1) ∧ Land(f,p,t2) ∧ t1<t2 ∧ (¬э g,t3 (Land(g,p,t3) ∧ t1<t3<t2 ) ) ~ ~ ~ def

24 24 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh The Discipline of Designation and Definition  The two tools, designation and definition, underpin an essential discipline in description Every terms used in every description must be either designated or defined Meaning of this term must therefore be directly or indirectly grounded in reliable observation of the environment  Benefits of the discipline inhibits ambiguities in requirements description With it we can know what our descriptions mean (precludes any misunderstanding)

25 25 Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh


Download ppt "The Meaning Of Requirements Michael Jackson 07/10/96 By: A. Rasoolzadegan."

Similar presentations


Ads by Google