This Article 
 Bibliographic References 
 Add to: 
PIE: A Dynamic Failure-Based Technique
August 1992 (vol. 18 no. 8)
pp. 717-727

A dynamic technique called PIE (propagation, infection, and execution) is presented for statistically estimating three program characteristics that affect a program's computational behavior: (1) the probability that a particular section of a program is executed, (2) the probability that the particular section affects the data state, and (3) the probability that a data state produced by that section has an effect on program output. These three characteristics can be used to predict whether faults are likely to be uncovered by software testing.

[1] I. F. Blake,An Introduction to Applied Probability. New York: Wiley, 1979.
[2] M.R. Woodward and K. Halewood, "From weak to strong, dead or alive? An analysis of some mutation testing issues," inProc. 2nd Workshop Software Testing, Verification, and Analysis, Banff, AB, Canada, July 1988.
[3] L. J. Morell and R. G. Hamlet, "Error propagation and elimination in computer programs,"Tech. Rep. TR-1065, Dept. Computer Science, Univ. Maryland, July 1981.
[4] R. G. Hamlet, "Testing programs with finite sets of data,"Computer J., vol. 20, pp. 232-237, Aug. 1977.
[5] R. G. Hamlet, "Testing programs with the aid of a compiler,"IEEE Trans. Software Eng., vol. SE-3, pp. 279-290, July 1977.
[6] R. G. Hamlet, "Probable correctness theory,"Inform. Proc. Lett., pp. 17-25, Apr. 1987.
[7] W. E. Howden, "Weak mutation testing and completeness of test sets,"IEEE Trans. Software Eng., vol. SE-8, pp. 371-379, July 1982.
[8] A. M. Law and W. David Kelton,"Simulation Modeling and Analysis. New York: McGraw-Hill, 1982.
[9] B. Korel and J. Laski,Dynamic program slicing, " Inform. Processing Lett., vol. 29, no. 3, pp. 155-163, Oct. 1988.
[10] B. Korel, "PELAS--Program error-locating assistant system,"IEEE Trans. Software Eng., vol. SE-14, Sept. 1988.
[11] B. Korel, "Automated software test data generation,"IEEE Trans. Software Eng., SE-16, pp. 870-879, Aug. 1990.
[12] J. Voas, L. Morell and K. Miller, "Predicting where faults can hide from testing,"IEEE Software, vol. 8, Mar. 1991.
[13] S. K. Park and K. W. Miller, "Random number generators: Good ones are hard to find,"Commun. ACM, vol. 31, pp. 1192-1201, Oct. 1988.
[14] J. Voas and L. J. Morell, "Applying sensitivity analysis estimates to a minimum failure probability for software testing," inProc. 8th Pacific Northwest Software Quality Conf., pp. 362-371, Oct. 1990.
[15] L. J. Morell, "A model for code-based testing schemes," inProc. Fifth Annual Pacific Northwest Software Quality Conf., pp. 309-326, 1987.
[16] L. J. Morell, "Theoretical insights into fault-based testing," inProc. Second Workshop on Software Testing, Validation, and Analysis, pp. 45-62, July 1988.
[17] L. J. Morell, "A theory of fault-based testing,"IEEE Trans. Software Eng., vol. 16, Aug. 1990.
[18] L. J. Morell, "A theory of error-based testing."Tech. Rep. TR-1395, Department of Computer Science, Univ. Maryland, Apr. 1984.
[19] A. J. Offutt, "Automatic test data generation," Ph.D. thesis, Georgia Instit. Technol., Atlanta, 1988 (Tech. Rep. GIT-ICS 88/28) (also published as Software Eng. Res. Ctr., Purdue Univ., West Lafayette, IN, Tech. Rep. SERC-TR-25-P).
[20] A. J. Offutt, "The coupling effect: Fact or fiction?" inProc. Third Symp. Software Testing, Analysis, and Verification (TAV3), Dec. 13- 15, 1989, pp. 131-140.
[21] S. K. Park, Lecture notes on simulation, version 3.0. Department of Computer Science, College of William and Mary (VA), 1990.
[22] R. A. DeMillo, R. J. Lipton, and F. G. Sayward, "Hints on test data selection: Help for the practicing programmer,"IEEE Computer, vol. 11, pp. 34-41, Apr. 1978.
[23] T. J. Shimeall, "CONFLICT Specification,"Tech. Rep. NPSCS-91-001, Computer Science Department, Naval Postgraduate School, Monterey, CA, Oct. 1990.
[24] D. J. Richardson and M. C. Thompson, "The RELAY model of error detection and its application," inProc. Second Workshop Software Testing, Verification, and Analysis. IEEE Computer Society, Los Angeles, CA, 1988.
[25] J. Voas, "A dynamic failure model for performing propagation and infection analysis on computer programs," Ph.D. dissertation, College of William and Mary (VA), Mar. 1990.
[26] M. D. Davis and E. J. Weyuker,Computability, Complexity, and Languages: Fundamentals of Theoretical Computer Science. New York: Academic Press, 1983.
[27] S. J. Zeil, "Testing for perturbations of program statements,"IEEE Trans. Software Eng., vol. SE-9 pp. 335-346, May 1983.

Index Terms:
propagation; infection; execution; PIE; dynamic failure-based technique; statistically estimating; program characteristics; computational behavior; data state; software testing; program testing
J.M. Voas, "PIE: A Dynamic Failure-Based Technique," IEEE Transactions on Software Engineering, vol. 18, no. 8, pp. 717-727, Aug. 1992, doi:10.1109/32.153381
Usage of this product signifies your acceptance of the Terms of Use.