Arunkumar Khannur's Software Testing Knowledge Center

6.4 Data Object State and Usage

Data objects can be defined, used, and/ or killed. As part of the program action, data objects can be used as part of expression in a program to perform calculation or they can be part of decision statement in a predicate. This would result in state of data object.

6.4.1 Actions on Data Objects as Part of the Program Action

Data objects, in a program, can appear in an expression as part of calculation or can appear as part of predicate in a branch statement. Here these data objects can be created, killed, and / or used. These possible actions on data objects can be represented symbolically using lower case letters as follows:

  • d: defined, created, initialized, assigned, etc
  • k: killed, terminated, undefined, released, removed, dereferenced
  • u: used for something. This can be
    • c: used in calculation or
    • p: used in a predicate

Defined (d): A data object can be said to be explicitly defined when it appears in a data declaration. It is said to be implicitly defined when it appears on the left side of the assignment statement.

Killed (k): A data object is said to be killed, terminated, undefined, released, removed, or dereferenced when it is made unavailable. This state of an object is killed when file is closed; loop is terminated; variable is redefined; and so on.

Usage (u): A data object can be used as a part of an expression so that it is used in computation (c) or it can used directly in a branch statement.
Khannur's Book
Arunkumar Khannur, Software Testing - Techniques and Applications, Published by Pearson Publications, 2011 (ISBN:978-81-317-5836-6; Pages:341 + xxii)
Follow Khannur
Khannur's Company
ISQT Process & Consulting Services Pvt. Ltd., Bangalore, INDIA
Khannur's Software Testing Forum
 Contact Khannur
ISQT Process & Consulting Services Pvt. Ltd.
#732, 1st Floor, 12th Main,
3rd Block, Rajajinagar,
Bangalore - 560010, INDIA
Phone: +91 80 23012511
Skype: arun.isqt