Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

An Empirical Study of Testing and Integration Strategies Using Artificial Software Systems

Published: 01 October 1993 Publication History
  • Get Citation Alerts
  • Abstract

    There has been much discussion about the merits of various testing and integration strategies. Top-down, bottom-up, big-bang, and sandwich integration strategies are advocated by various authors. Also, some authors insist that modules be unit tested, while others believe that unit testing diverts resources from more effective verification processes. This article addresses the ability of the aforementioned integration strategies to detect defects, and produce reliable systems. It also explores the efficacy of spot unit testing, and compares phased and incremental versions of top-down and bottom-up integration strategies. Relatively large artificial software systems were constructed using a code generator with ten basic module templates. These systems were seeded with known defects and tested using the above testing and integration strategies. A number of experiments were then conducted using a simulator whose validity was established by comparing results against these artificial systems. The defect detection ability and resulting system reliability were measured for each strategy. Results indicated that top-down integration strategies are generally most effective in terms of defect correction. Top-down and big-bang strategies produced the most reliable systems. Results favored neither those strategies that incorporate spot unit testing nor those that do not; also, results favored neither phased nor incremental strategies.

    References

    [1]
    {1} V. R. Basili and R. W. Selby, "Comparing the effectiveness of software testing strategies," IEEE Trans. Software Eng., vol. SE-13, no. 12, pp. 1278-1296, Dec. 1987.
    [2]
    {2} B. Beizer, Software System Testing and Quality Assurance. New York: Van Nostrand Reinhold, 1984, pp. 4, 40, 143, 161-162.
    [3]
    {3} G. Collins and G. Blay, Structured Systems Development Techniques: Strategic Planning to System Testing. New York: Wiley, 1983, p. 206.
    [4]
    {4} M. S. Deutsch, Software Verification and Validation: Realistic Project Approaches. Englewood Cliffs, NJ: Prentice-Hall, 1982, pp. 95-101.
    [5]
    {5} J. W. Duran and S. C. Ntafos, "An evaluation of random testing," IEEE Trans. Software Eng., vol. SE-10, no. 4, pp. 438-444, July 1984.
    [6]
    {6} M. R. Girgis and M. R. Woodward, "An experimental comparison of the error exposing ability of program testing criteria," in Proc. Workshop Software Testing. Washington, DC: IEEE Computer Society Press, 1986, pp. 64-73.
    [7]
    {7} B. Hetzel, The Complete Guide to Software Testing. Wellesley, MA: QED Information Sciences, 1988, pp. 117-118.
    [8]
    {8} W. E. Howden, "Functional program testing," IEEE Trans. Software Eng., vol. SE-6, pp. 162-169, 1980.
    [9]
    {9} H. D. Mills, "Structured programming: Retrospect and prospect," IEEE Software, vol. 3, no. 6, pp. 58-66, Nov. 1986.
    [10]
    {10} H. D. Mills, M. Dyer, and R. C. Linger, "Cleanroom software engineering," IEEE Software, vol. 4, no. 5, pp. 19-25, Sept. 1987.
    [11]
    {11} G. J. Myers, The Art of Software Testing. New York: Wiley, 1979, pp. 36, 89.
    [12]
    {12} G. J. Myers, Software Reliability: Principles and Practices. New York: Wiley, 1976, pp. 187, 189.
    [13]
    {13} S. L. Pfleeger, Software Engineering. New York: Macmillan, 1991.
    [14]
    {14} R. M. Poston and M. W. Bruen, "Counting down to zero software failures," IEEE Software, vol. 4, no. 5, pp. 54-61, Sept. 1987.
    [15]
    {15} J. H. Rowland, "Artificial systems for software engineering studies," Proc. 2nd Workshop Software Testing, Verification, and Analysis. Washington, DC: IEEE Computer Society Press, 1988, pp. 80-88.
    [16]
    {16} J. H. Rowland and Y. Zuyuan, "Experimental comparison of three system test strategies: Preliminary report," Proc. ACM SIGSOFT '89 3rd Symp. Software Testing, Analysis, and Verification. New York: ACM Press, 1989, pp. 141-150.
    [17]
    {17} H. F. Smith, Data Structures: Form and Function. San Diego: Harcourt Brace Jovanovich, 1987, pp. 204-206.
    [18]
    {18} J. A. Solheim, "Testing and integration strategies of large software systems", Ph.D, dissertation, Univ. Wyoming, Laramie, 1992 (microfiche available through UMI Dissertation Services, Ann Arbor, MI).
    [19]
    {19} I. Sommerville, Software Engineering. Reading, MA: Addison-Wesley, 1992.
    [20]
    {20} P. Thévenod-Fosse and H. Waeselynck, "An investigation of statistical software testing," J. Software Testing, Verification and Reliability, vol. 1, no. 2, pp. 5-25, July-Sept. 1991.
    [21]
    {21} R. Walpole and R. Myers, Probability and Statistics for Engineers and Scientists. New York: Macmillan, 1978, pp. 382-383.
    [22]
    {22} E. Yourdon, Managing the Structured Techniques. Englewood Cliffs, NJ: Prentice-Hall, 1989, p. 79.

    Cited By

    View all

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image IEEE Transactions on Software Engineering
    IEEE Transactions on Software Engineering  Volume 19, Issue 10
    October 1993
    71 pages

    Publisher

    IEEE Press

    Publication History

    Published: 01 October 1993

    Author Tags

    1. artificial software systems
    2. big-bang strategies
    3. bottom-up integration
    4. code generator
    5. defect correction
    6. program testing
    7. reliable systems
    8. sandwich integration strategies
    9. software reliability
    10. spot unit testing
    11. system reliability
    12. top-down strategies
    13. verification processes

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 11 Aug 2024

    Other Metrics

    Citations

    Cited By

    View all

    View Options

    View options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media