LADC 2005: Dependable Computing pp 9-19 | Cite as
Using Stratified Sampling for Fault Injection
Abstract
In a previous work we validated an ODBMS component injecting errors in the application’s interface. The aim was to observe the robustness of the component when the application that interacted with it failed. In this work we tackle the injection of errors directly into the interfaces among the target component’s classes. As the component under test has several classes, we use stratified sampling to reduce the amount of injections without losing the ability to detect faults. Strata are defined based on a complexity metric, Weighted Methods in a Class – WMC. Experiments show that this metric alone is not sufficient to select strata for testing purposes.
Keywords
Stratify Sampling Composite Part Fault Injection Failure Ratio Software Reliability Growth ModelPreview
Unable to display preview. Download preview PDF.
References
- Bach, J.: Heuristic risk-based testing. Software Testing and Quality Engineering Magazine (1999)Google Scholar
- Beydeda, S., Volker, G.: State of the art in testing components. In: Proc. Of the International Conference on Quality Software (2003)Google Scholar
- Carey, M.J., DeWitt, D.J., Naughton, J.F.: The OO7 Benchmark (1994), recovered (February 2005), http://www.columbia.edu/
- Chidamber, K.: Principal Components of Orthogonal Object-Oriented Metrics (1994), recovered (November 2004), http://satc.gsfc.nasa.gov
- de Millo, R.A., Li, T., Mathur, A.P.: Architecture of TAMER: A Tool for dependability analysis of distributed fault-tolerant systems. Purdue University (1994)Google Scholar
- Fabre, J.-C., Rodriguez, M., Arlat, J., Sizum, J.-M.: Building dependable COTS microkernel-based systems using MAFALDA. In: Proc. of 2000 Pacific Rim International Symposium on Dependable Computing, PRDC 2000, Los Angeles, USA (2000)Google Scholar
- Hsueh, M.C., Tsai, T., Iyer, R.: Fault Injection Techniques and Tools. IEEE Computer, 75–82 (1997)Google Scholar
- Koopman, P., Siewiorek, D., DeVale, K., DeVale, J., Fernsler, K., Guttendorf, D., Kropp, N., Pan, J., Shelton, C., Shi, Y.: Ballista Project: COTS Software Robustness Testing. Carnegie Mellon University, Pittsburgh (2003), http://www.ece.cmu.edu/~koopman/ballista/ Google Scholar
- Martins, E., Rubira, C.M.F., Leme, N.G.M.: Jaca: A reflective fault injection tool based on patterns. In: Proc. of the 2002 Intern Conference on Dependable Systems & Networks, Washington, DC, USA, vol. 23(267), pp. 483–487 (2002)Google Scholar
- Moraes, R., Martins, E.: A Strategy for Validating an ODBMS Component Using a High-Level Software Fault Injection Tool. In: de Lemos, R., Weber, T.S., Camargo Jr., J.B. (eds.) LADC 2003. LNCS, vol. 2847, pp. 56–68. Springer, Heidelberg (2003)CrossRefGoogle Scholar
- Moraes, R., Martins, E., Mendes, N.: Fault Injection Approach based on Dependence Analysis. In: Proc. of the First International Workshop on Testing and Quality Assurance for Component-Based Systems, TQACBS (2005)Google Scholar
- Ozone, Object Oriented Database Management System (2004), http://www.ozone-db.org/
- Podgurski, A., Yang, C.: Partition Testing, Stratified Sampling and Cluster Analysis. In: Proc. of the 1st ACM SIGSOFT symposium on Foundations of software engineering, Los Angeles, USA, pp. 169–181 (1993)Google Scholar
- Pressman, R.S.: Software Engineering a Practitioner Approach, 4th edn. Mc Graw Hill, New York (1997)MATHGoogle Scholar
- Rosenberg, L., Stapko, R., Gallo, A.: Risk-based Object Oriented Testing. In: Proc. 13th International Software / Internet Quality Week (QW 2000), San Francisco, California, USA (2000)Google Scholar
- Transaction Processing Performance Council “TPC-C – Benchmarks” (2005), http://www.tpc.org/tpcc/default.asp
- Triola, M.F.: Introcução a Estatística, 7th edn. LTC Editor, Rio de Janeiro (1999) (in portuguese)Google Scholar
- Voas, J., McGraw, G.: Software Fault Injection: Inoculating Programs against Errors. John Wiley & Sons, New York (1998)Google Scholar
- Voas, J.M., Charron, F., McGraw, G., Miller, K., Friedman, M.: Predicting how Badly Good Software can Behave. IEEE Software, 73–83 (1997)Google Scholar
- Voas, J.: Marrying Software Fault Injection Technology Results with Software Reliability Growth Models. In: Fast Abstract ISSRE 2003. Chillarege Press (2003)Google Scholar
- Voas, J.: An Approach to Certifying Off-the-Shelf Software Components. IEEE Computer 31(6), 53–59 (1998)Google Scholar