Introduction

F. P. Brooks, Jr., "No Silver Bullet--Essence and Accidents of Software Engineering," Computer 20 (4), April 1987.  Reprinted from Proceedings of the IFIP Congress, Dublin, Ireland, 1986. [pdf]

Reviews and Inspection

H. D. Mills, M. Dyer and R. C. Linger, "Cleanroom Software Engineering," IEEE Software, 4 (5), September 1987, pp. 19-25. [pdf]

M. E. Fagan,  "Design and code inspections to reduce error in program development," IBM Systems Journal, 38 (2&3), 1999, pp. 258-298.   Reprinted from the IBM Systems Journal, 15 (3), 1976. [pdf]

A. Porter, H. Siy, C. A. Toman, and L. G. Votta, "An Experiment to Assess the Cost-Benefits of Code Inspections in Large Scale Software Development," IEEE Transactions on Software Engineering, 23 (6), June 1997, pp. 329-346. [pdf]

Introduction to dynamic analysis

H. Zhu, P. A. V. Hall, and J. H. R. May, "Software Unit Test Coverage and Adequacy," ACM Computing Surveys, 29 (4), December 1997, pp. 366-427. [pdf]

Assertions

D. S. Rosenblum, "A Practical Approach to Programming with Assertions," IEEE Transactions on Software Engineering, 29 (4), January 1995, pp. 19-31. [pdf]

G. T. Leavens and Yoonsik Cheon, "Design by Contract with JML", January 2005 [pdf]

Error seeding


A. J. Offutt, "A Practical System for Mutation Testing: Help for the Common Programmer," 12th International Conference onTesting Computer Software, Washington, D.C., June 1995, pp. 99-109. [pdf]

Coverage criteria

S. Rapps and E. J. Weyuker, "Data Flow Analysis Techniques for Test Data Selection," Sixth International Conference of Software Engineering, Tokyo, Japan, September 1982, pp. 272-277. [pdf]

L. A. Clarke, A. Podgurski, D. J. Richardson and Steven J. Zeil, "A Formal Evaluation of Data Flow Path Selection Criteria," IEEE Transactions on Software Engineering, 15 (11), November 1989, pp. 1318-1332. [pdf]

Dependency analysis

 M. Weiser, "Program Slicing," Fifth International Conference on Software Engineering, San Diego, Ca 1981, pp. 439-449. [pdf] , “Program Slicing,” Proceedings of the 5thInternational Conference on   

 A. Podgurski and L. A. Clarke, "A Formal Model of Program Dependencies and IIts Implications for Software Testing, Debugging, and Maintenance", IEEE Transactions on Software Engineering, 16 (9), September 1990, pp. 965-979. [pdf]

D. W. Binkley and K. B. Gallagher, "Program Slicing," Advances in Computers, Vol. 43, M. Zelkowitz, editor, Academic Press, 1996 pp. 1-50. [pdf]

Fault based testing

M. C. Thompson, D. J. Richardson and L. A. Clarke, "An Information Flow Model of Fault Detection," International Symposium on Software Testing and Analysis, Boston, MA, June 1993, pp.182-192. [pdf]

Regression testing

Y. F. Chen, D. S. Rosenblum and K. P. Vo, "TestTube: A System for Selective Regression Testing," Sixteenth International Conference on Software Engineering, Sorrento, Italy, May 1994, pp. 211-220. [pdf]

G. Rothermel and M. J. Harrold, "Analyzing Regression Test Selection Techniques," IEEE Transactions on Software Engineering, 22 (8), August 1996, pp. 529-551. [pdf]

T. L. Graves, M. J. Harrold, J. M. Kim, A. Porter and G. Rothermel, "An Empirical Study of Regression Test Selection Techniques," ACM Transactions on Software Engineering and Methodology, 10 (2), April 2001, pp. 184-208. [pdf]

T. J. Ostrand, E. J. Weyuker,  R. M. Bell, "Where the Bugs Are," In the Proceedings of the 2004 International Symposium on Software Testing and Analysis, Boston, MA, July 2004. [pdf]

Object oriented testing

R. K. Doong and P. G. Frankl, "The ASTOOT Approach to Testing Object-Oriented Programs," ACM Transactions on Software Engineering and Methodology, 3 (2), April 1994, pp. 101-130. [pdf]

M. J. Harrold, J. D. McGregor and K. J. Fitzpatrick, "Incremental Testing of Object-Oriented Class Structures," 14th International Conference on Software Engineering, Melbourne, Australia, May 1992, pp. 68-80. [pdf]

M. J. Harrold and G. Rothermel, "Performing Data Flow Testing on Classes," Second ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE'94), New Orleans, LA, December 1994, pp. 154-163. [pdf]

A. L. Souter and L. L. Pollock, "OMEN: A Strategy for Testing Object-oriented Software," International Symposium on Software Testing and Analysis 2000 (ISSTA 2000), August 2000. [pdf]

Symbolic evaluation

L. A. Clarke and D. J. Richardson, "Applications of Symbolic Evaluation," Journal of  Systems and Software, 5 (1), January 1985, pp.15-35. [pdf]

Software verification

R.W. Floyd, "Assigning Meaning to Programs, "Symposium on Applied Mathematics, 1967, pp. 19-32 (Appeared as volume 19 of Mathematical Aspects of Computer Science). [pdf]

R. A. DeMillo, R. J. Lipton and A. J. Perlis, "Social Processes and Proofs of Theorems and Programs," Communications of the ACM, 22 (5), May 1979, pp. 271-280. [pdf]

S. King, J. Hammond, R. Chapman and A. Pryor, "Is Proof More Cost-Effective Than Testing?" IEEE Transactions on Software Engineering, 26 (8), August 2000, pp. 675-686. [pdf]

Data flow analysis

L. D. Fosdick and L. J. Osterweil, "Data Flow Analysis in Software Reliability," ACM Computing Surveys, 8 (3), September 1976, pp. 306-330. [pdf]

K. M. Olender and L. J. Osterweil, "Interprocedural Static Analysis of Sequencing Constraints," ACM Transactions on Software Engineering and Methodology, 1 (1), January 1992, pp. 21-52. [pdf]

Debugging

Holger Cleve and Andreas Zeller, "Locating Causes of Program Failures", Proceedings of the International Conference on Software Engineering, May 2005 [pdf]