Skip to main content

Part of the book series: Advances in Intelligent and Soft Computing ((AINSC,volume 149))

  • 2348 Accesses

Abstract

Fault injection plays a critical role in the verification of fault-tolerant mechanism, software mutation testing and dependability benchmark for computer systems. Derived from the common java bug patterns from Findbugs, we propose a new scheme for emulation of software faults at the java bytecode level, and have developed a preliminary framework called JBugInjector to support fault injection application. Different from the traditional Orthogonal Defect Classification of faults, we analyze the peculiar bug patterns in java program development, and introduce these faults and bad practices into the target system to construct a scenario closer to reality. Through demonstration with simple examples, we find it possible to emulate many faults by mutation at bytecode level. With this method, fault injection without the source code of target application is enabled to assist dependability benchmark.

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 169.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 219.99
Price excludes VAT (USA)
  • Compact, lightweight 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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Chillarege, R., Bowen, N.: Understanding large systems failures - A fault injection experiment. In: Proc. of the 19th Int. Symp. on Fault-Tolerant Computing, Chicago, pp. 356–363 (1989)

    Google Scholar 

  2. Madeira, H., Kanoun, K., Arlat, J., et al.: Conceptual framework, deliverable CF2, preliminary dependability benchmark framework. DBench Project, IST 2000-25425 (2001)

    Google Scholar 

  3. Findbugs, http://findbugs.sourceforge.net/

  4. Barton, J.H., Czeck, E.W., Segall, Z.Z., et al.: Fault Injection Experiments Using FIAT. IEEE Transactions on Computers 39(4), 575–582 (1990)

    Article  Google Scholar 

  5. Kao, W.-L.: FINE: A fault injection and monitoring environment for tracing the UNIX system behavior under faults. IEEE Transactions on Software Engineering 19(11), 1105–1118 (1993)

    Article  MathSciNet  Google Scholar 

  6. Kanawati, G., Kanawati, N., Abraham, J.: FERRARI: A Tool for the Validation of System Dependability Properties. In: Proc. of the 22nd IEEE Int. Symp. on Fault Tolerant Computing, Boston, pp. 336–344 (1992)

    Google Scholar 

  7. Carreira, J., Madeira, H., Silva, J.G.: Xception: A Technique for the experimental evaluation of dependability in modern computers. IEEE Transactions on Software Engineering 24(2), 125–136 (1998)

    Article  Google Scholar 

  8. Duraes, J., Madeira, H.: Definition of software fault emulation operators: A field data study. In: Proc. of Int. Conf. on Dependable Systems and Networks, San Francisco, pp. 105–114 (2003)

    Google Scholar 

  9. Leme, N.G.M., Martins, E., Rubira, C.M.F.: A Software Fault Injection Pattern System. Technical Report of Institute of Computing, Unicamp (2002)

    Google Scholar 

  10. Martins, E., Rubira, C.M.F., Leme, N.G.M.: Jaca: A Reflective Fault Injection Tool Based on Patterns. In: Proc. of International Conference on Dependable Systems and Networks (DSN 2002), pp. 483–487 (2002)

    Google Scholar 

  11. Allen, E.: Bug patterns in Java, 2nd edn. Apress (2002)

    Google Scholar 

  12. Hovemeyer, D., Pugh, W.: Finding bugs is easy. ACM SIGPLAN Notices 39(12), 92–106 (2004)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag GmbH Berlin Heidelberg

About this chapter

Cite this chapter

Zheng, Q. (2012). Java Fault Emulation and a Preliminary Fault Injection Framework. In: Jin, D., Lin, S. (eds) Advances in Electronic Commerce, Web Application and Communication. Advances in Intelligent and Soft Computing, vol 149. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-28658-2_36

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-28658-2_36

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-28657-5

  • Online ISBN: 978-3-642-28658-2

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics