Lecture 8 - Cause and Effect Diagram

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 35

Lecture 8 Cause and Effect Graph

MCA 5th Semester Aug-Dec 2016

Cause Effect Graphing

Cause Effect Graphing

Cause Effect Graphing


Cause Effect Graphing Technique

Consider combinations of various input conditions

Steps
1. Causes & effects in the specifications are identified.
A cause is a distinct input condition or an equivalence class of input conditions.
An effect is an output condition or a system transformation.
2. The semantic content of the specification is analysed and transformed into a
boolean graph linking the causes & effects.
3. Constraints are imposed
4. graph limited entry decision table
Each column in the table represent a test case.
5. The columns in the decision table are converted into test cases.
4

Cause Effect Graphing


The basic notation for the graph is shown as:

Basic cause effect graph symbols


5

Cause Effect Graphing


Myers explained this effectively with following example. The characters in column 1
must be an A or B. The character in column 2 must be a digit. In this situation, the
file update is made. If the character in column 1 is incorrect, message x is issued. If
the character in column 2 is not a digit, message y is issued.
The causes are
c1: character in column 1 is A
c2: character in column 1 is B
c3: character in column 2 is a digit
and the effects are
e1: update made
e2: message x is issued
e3: message y is issued
6

Cause Effect Graphing

Sample cause effect graph


7

Cause Effect Graphing


Example
A tourist of age greater than 21 years and having a clean driving record is
supplied a rental car. A premium amount is also charged if the tourist is on
business otherwise it is not charged.
If the tourist is less than 21 year old or does not have a clean driving record ,
the system will display the following message:
Car cannot be supplied
Draw the Cause effect graph and identify the test cases.

Cause Effect Graphing


The causes are
c1: Age is over 21
C2:Driving Record is clean
c3: Tourist is on business
and the effects are
e1: Supply a rental car without premium charge
e2: Supply a rental car with premium charge
e3: Car cannot be supplied

Cause Effect Graphing

Sample cause effect graph


10

Cause Effect Graphing

Decision Table
11

Cause Effect Graphing

Test Cases of the given Decision Table

12

Cause Effect Graphing

13

Cause Effect Graphing

14

Cause Effect Graphing

15

Cause Effect Graphing

16

Cause Effect Graphing

17

Cause Effect -Constraints

Constraint symbols 18

Cause Effect -Constraints


This constraint is applicable at the effect side of the cause effect
graph. This states that if effect e1 is 1, effect e2 is forced to be 0.

Symbol for masks constraint


19

Cause Effect -Constraints


The E constraint states that it must always be true that at most one of c1 or c2 can be
1 (c1 or c2 cannot be 1 simultaneously). However both c1 and c2 can be 0
Simultaneously.

20

Cause Effect -Constraints


The I constraint states that at least one of c1, c2 and c3 must always be 1 (c1, c2 and c3
cannot be 0 simultaneously).

21

Cause Effect -Constraints


The O constraint states that one, and only one, of c1 and c2 must be 1.

22

Cause Effect -Constraints


The constraint R states that, for c1 to be 1, c2 must be 1 (i.e. it is impossible for c1 to
be 1 and c2 to be 0),

23

Cause Effect -Constraints

24

Cause Effect Graphing


The characters in column 1 must be an A or B. The character in column 2 must be a
digit. In this situation, the file update is made. If the character in column 1 is
incorrect, message x is issued. If the character in column 2 is not a digit, message y
is issued.
The causes are
c1: character in column 1 is A
c2: character in column 1 is B
c3: character in column 2 is a digit
and the effects are
e1: update made
e2: message x is issued
e3: message y is issued

Add a constraint related to the Character in Column 1

Cause Effect -Constraints

Fig. : Sample cause effect graph with exclusive constraint

It is physically impossible for causes 1 and 2 to be present simultaneously,


but it is possible for neither to be present. Hence, they are linked with the
E constraint.
26

Cause Effect Constraints

Add a constraint related to Gender

27

Cause Effect O Constraint

28

Cause Effect Graphing


Problem Statement:
Keeping the record of marital status and number of children of a
citizen.
The value of marital status must be U or M.
The value of the number of children must be digit or null in case a
citizen is unmarried.
If the information entered by the user is correct then an update is
made.
If the value of marital status of the citizen is incorrect then error
message 1 is issued.
If the value of number of children is incorrect, then error message 2 is
issued.

29

Cause Effect Graphing


The causes are :
C1:Marital status is U
C2:Marital status is M
C3:Number of children is a digit
And the effects are:
e1:updation made.
e2:error message 1 is issued
e3:error message 2 is issued

30

Cause Effect E & R Constraint

31

Cause Effect -Constraints

Constraint symbols 32

Cause Effect -Constraints

Constraint symbols 33

Benefits of Cause-Effect Graphing

References
1)Software Testing Yogesh Singh (Cambridge
University Press)
2) K. K. Aggarwal & Yogesh Singh, Software
Engineering, New Age International Publishers,
New Delhi
3)The Art of Software Testing Glenford J Myers

You might also like