Skip to main content

Survey on Software Faults Injection in Java Applications

  • Chapter
  • First Online:
Innovative Technologies for Dependable OTS-Based Critical Systems

Abstract

Software faults are currently on of the major cause for computer-based system failures. Nowadays, no software development methodology has provided fault-free software, and fault injection is recognized as a technique to understand the effects of faults in a given software product. However, the injection of software faults is not trivial and is still an open research problem. This chapter provides an overview on the injection of software faults and focus on the injection of faults for Java-based software, highlighting the new challenges specific of this language.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    www.lockheedmartin.com

  2. 2.

    http://asm.ow2.org/

References

  1. Aidemark, J., Vinter, J., Folkesson, P., Karlsson, J.: GOOFI-a generic fault injection tool. In: Proceeding of DSN’01, Gothenburg, Sweden (2001)

    Google Scholar 

  2. Arlat, J., Aguera, M., Amat, L., Crouzet, Y., Fabre, J.C., Laprie, J.C., Martins, E., Powell, D.: Fault injection for dependability validation: a methodology and some applications. IEEE Trans. Softw. Eng. 16 (1990)

    Google Scholar 

  3. Avresky, D., Arlat, J., Laprie, J.C., Crouzet, Y.: Fault injection for formal testing of fault tolerance. IEEE Trans. Reliab. 45(3), 443–455 (1996)

    Google Scholar 

  4. Basso, T., Moraes, R., Sanches, B.P., Jino. M.: An investigation of java faults operators derived from a field data study on java software faults. In: Workshop de Testes e Tolerância a Falhas—WTF 2009, João Pessoa, Brasil (2009)

    Google Scholar 

  5. Carreira, J., Madeira, H., Silva, J.G.: Xception: Software fault injection and monitorintg in processor functional units. IEEE Trans. Softw. Eng. 24, 125–136 (1998)

    Google Scholar 

  6. Carrozza, G., Di Crescenzo, D., Napolitano, A., Strano, A.: Data distribution technologies in wide area systems: lessons learned from the SWIM-SUIT project experience. Netw. Protoc. Algorithms 2(3), (2010)

    Google Scholar 

  7. Chen, Y., Dios, R., Mili, A., Wu, L, Wang, K.: An empirical study of programming language trends. IEEE Softw. 22(3),73–78 (2005)

    Google Scholar 

  8. Chillarege, R.: Orthogonal defect classification. In: M. Lyu, (ed.) Handbook of Software Reliability Engineering. IEEE Computer Society Press, McGraw (1995)

    Google Scholar 

  9. Christmansson, J., Hiller, M., Rimén, M.: An experimental comparison of fault and error injection. In: Proceedings of the 9th International Symposium on Software Reliability Engineering, ISSRE’98 (1998)

    Google Scholar 

  10. Cusick, J., Koga, R., Kolasinski, W.A., King, C.: SEU vulnerability of the Zilog Z-80 and NSC-800 microprocessors. IEEE Trans. Nucl. Sci. NS-32, 4206–4211 (1986)

    Google Scholar 

  11. Durães, J., Madeira, H.: Characterization of operating systems behavior in the presence of faulty device drivers through software fault emulation. In: Proceedings of the Pacific Rim International Symposium on Dependable Computing, PRDC-02 (2002)

    Google Scholar 

  12. Duraes, J., Madeira, H.: Emulation of software faults: a field data study and a practical approach. IEEE Trans. Softw. Eng. 32(11), 1105–1118 (2006)

    Google Scholar 

  13. Durães, J., Vieira, M., Madeira, H.: Web server dependability benchmarking. In: Proceedings of the 23th International Conference on Computer Safety, Reliability and Security—SAFECOMP’04 (2004)

    Google Scholar 

  14. Gage, D., McCormick, J.: Why Software Quality Matters, Baseline Magazine, Kent (2004)

    Google Scholar 

  15. Gosling, J., Joy, B., Steele, G., Bracha, G.: Java (TM) Language Specification, The (Java (Addison-Wesley)), Addison-Wesley Professional, New York (2005)

    Google Scholar 

  16. Gray, J.: A Census of tandem systems availability between 1985 and 1990. IEEE Trans. Reliab. 39, 409–418 (1990)

    Google Scholar 

  17. Gunneflo, U., Karlsson, J., Torin, J.: Evaluation of error detection schemes using fault injection by heavy radiation. In: Proceedings of the Fault Tolerant Computing Symposium—FTCS-19 (1989)

    Google Scholar 

  18. Hsueh, M.C., Tsai, T.K., Iyer, R.K.: Fault injection techniques and tools. IEEE Comput. 30, 14–15 (1997)

    Google Scholar 

  19. Iyer, R.K.: Experimental evaluation. In: Proceedings of the 25th IEEE International Symposium on Fault Tolerant Computing, FCTS-25, Special Issue FTCS-25 Silver Jubilee (1995)

    Google Scholar 

  20. Kalakech, A., Jarboui, T., Arlat, J., Crouzet, Y., Kanoun, K.: Benchmarking operating system dependability: Windows 2000 as a case study. In: Proceedings of the IEEE Pacific Rim International Conference on Dependable Computing—PRDC’04 (2004)

    Google Scholar 

  21. Kanawati, G.A., Kanawati, N.A., Abraham, J.A.: FERRARI: A tool for the validation of system dependability properties. In: Proceedings of the 22th IEEE International Fault Tolerant Computing Symposium, FTCS-22 (1992)

    Google Scholar 

  22. Kanawati, G.A., Kanawati, N.A., Abraham, J.A.: FERRARI: a flexible software-based fault and error injection system. IEEE Trans. Comput. 44, 286–291 (1995)

    Google Scholar 

  23. Kanoun, K., Arlat, J., Costa, D., Cin, M.D., Gil, P., Laprie, J. C., Madeira, H., Suri, N.: DBench: dependability benchmarking. In: Proceedings of the Supplement of the IEEE/IFIP International Conference on Dependable Systems and Networks—DSN’01 (2001)

    Google Scholar 

  24. Kao, W.I., Iyer, R.K., Tang, D.: FINE: A fault injection and monitoring environment for tracing the UNIX system behavior under faults. IEEE Trans. Softw. Eng. 19, 1105–1118 (1993)

    Google Scholar 

  25. Karlsson, J., Gunneflo, U., Lidén, P., Torin, J.: Two fault injection techniques for test of fault handling mechanisms. In: Proceedings of the IEEE International Test Conference (1991)

    Google Scholar 

  26. Knuth, D.E.: The Errors of TeX, Softw. Pract. Experience 19, 607–685 (1889)

    Google Scholar 

  27. Lee, I., Iyer, R.K.: Software dependability in the tandem GUARDIAN system. IEEE Trans. Softw. Eng. 21(5), 455–467 (1995)

    Google Scholar 

  28. Madeira, H., Rela, M., Moreira, F., Silva, J.G.: RIFLE: a general purpose pin-level fault injector. In: Klaus, E., Dieter, H., David, P. (eds.) Proceedings of the European Dependable Computing Conference—EDCC-1, Lecture Notes in Computer Science vol. 852, Spinger (1994)

    Google Scholar 

  29. Martins, E., Rubira, C., Leme. N.: Jaca: A reflective fault injection tool based on patterns. In: Proceedings of the 2002 International Conference on Dependable Systems & Networks, Washington, (2002)

    Google Scholar 

  30. Moraes, R., Barbosa, R., Durães, J., Mendes, N., Martins, E., Madeira, H.: Injection of faults at component interfaces and inside the component code: are they equivalent? In: Proceeding of Sixth European Dependable Computing Conference—EDCC’06 (2006)

    Google Scholar 

  31. Natella, R., Cotroneo, D., Duraes, J., Madeira, H.: On fault representativeness of software fault injection. IEEE Trans. Softw. Eng. (99), (2012)

    Google Scholar 

  32. Newman, P.: The Risks Digest, Forum on Risks to the Public in Computers and Related Systems. ACM Comittee on Computers and Public Policy 1 (1986) to 21 (2001)

    Google Scholar 

  33. Ng, W.T., Chen, P.M.: Systematic improvement of fault tolerance in the RIO file cache, In: Proceedings of the 29th IEEE International Fault Tolerant Computing Symposium, FTCS-29, Madison, (1999)

    Google Scholar 

  34. Nilsen, K.: Quantitative analysis of developer productivity in C vs. real-time java. Defense advanced research projects agency Workshop on Real-Time Java (2004)

    Google Scholar 

  35. Ruiz, J.C., Yuste, P., Gil, P., Lemus, L.: On benchmarking the dependability of automotive Engine control applications. In: Proceedings of the IEEE International Conference on Dependable Systems and Networks—DSN’04 (2004)

    Google Scholar 

  36. Sanches, B.P., Basso, T., Moraes, R.: J-SWFIT: A java software fault injection tool. In: 5th Latin-American Symposium on Dependable Computing (2011)

    Google Scholar 

  37. Segall, Z., Vrsalovic, D., Siewiorek, D., Kownacki, J., Barton, J., Dancey, R., Robinson, A., Lin, T.: FIAT—Fault injection based automated testing environment. In: Proceedings of the 18th IEEE International Symposium on Fault Tolerant Computing—FTCS’88 (1988)

    Google Scholar 

  38. Sullivan, M., Chillarege, R.: Software Defects and their Impact on Systems Availability—A Study of field failures on Operating Systems. In: Proceedings of the 21st IEEE Fault Tolerant Computing Symposium, FTCS-21 (1991)

    Google Scholar 

  39. Tsai, T.K., Iyer, R.K.: Measuring fault tolerance with the FTAPE fault injection tool. In: Proceedings of the 8th International Conference on Modeling Techniques and Tools for Computer Performance Evaluation (1995)

    Google Scholar 

  40. Vieira, M., Madeira, H.: A dependability benchmark for OLTP application environments. In: Proceedings of the 29th International Conference on Very Large Database Systems, VLDB’03 (2003)

    Google Scholar 

  41. Wood, D.: Java emerges as solution for military software modernization. VITA Technologies (VME and Critical Systems) (2007)

    Google Scholar 

  42. http://www.javelocity.com/collateral/calix.pdf

  43. http://www.sesarju.eu/programme/workpackages/wp-14-swim-technical-architecture–201

  44. http://www.prismtech.com/opensplice

  45. http://www.rti.com/products/dds/

  46. http://openjms.sourceforge.net/

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Aniello Napolitano .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Italia

About this chapter

Cite this chapter

Napolitano, A., Carrozza, G., Antunes, N., Duraes, J. (2013). Survey on Software Faults Injection in Java Applications. In: Cotroneo, D. (eds) Innovative Technologies for Dependable OTS-Based Critical Systems. Springer, Milano. https://doi.org/10.1007/978-88-470-2772-5_8

Download citation

  • DOI: https://doi.org/10.1007/978-88-470-2772-5_8

  • Published:

  • Publisher Name: Springer, Milano

  • Print ISBN: 978-88-470-2771-8

  • Online ISBN: 978-88-470-2772-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics