Validando Sistemas Distribuídos Desenvolvidos em Java Utilizando Injeção de Falhas de Comunicação por Software

  • Gabriela Jacques-Silva UFRGS
  • Regina Lúcia de O. Moraes UNICAMP
  • Taisy Silva Weber UFRGS
  • Eliane Martins UNICAMP

Resumo


Aplicações distribuídas em Java usadas em sistemas de alta disponibilidade exigem que mecanismos de tolerância a falhas sejam validados, para não apresentarem um comportamento inesperado no momento em que são requisitados no ambiente operacional. Jaca é uma ferramenta de injeção de falhas para validação experimental de aplicações Java. Em sua primeira versão, Jaca apresentava três classes de falhas, baseadas em falhas de interface. Este trabalho apresenta a expansão do modelo de falhas de Jaca para falhas de comunicação. Essa extensão permite o uso dessa ferramenta na condução de experimentos de validação em sistemas distribuídos.

Referências

Aidemark, J.; Vinter, J.; Folkesson, P.; Karlsson, J. GOOFI: Generic Object-Oriented Fault Injection Tool. In Proceedings of DSN’2001. Gotemburgo, Suécia. Julho 2001.

Ban, B. JavaGroups - Group Communication Patterns in Java. Department of Computer Science, Cornell University. Julho 1998.

Barcelos, P. P. A.; Leite, F. O.; Weber, T. S. Building a Fault Injector to Validate Fault Tolerant Communication Protocols. In Proceedings of International Conference on Parallel Computing Systems. Ensenada, México. Agosto 1999.

Carreira, J.; Madeira, H.; Silva, J. G. Assessing the Effects of Communication Faults on Parallel Applications. In Proceedings of IPDS’95. Erlangen, Alemanha. Abril 1995.

Carreira, J.; Silva, J. G. Why do Some (weird) People Inject Faults? ACM SIGSOFT, Software Engineering Notes, Volume 23, Número 1, pp. 42-43. Janeiro 1998.

Chiba, S. Load-time Structural Reflection in Java. In Proceedings of ECOOP 2000 - Object-Oriented Programming. LNCS 1850, Springer Verlag, pp. 313-336. 2000.

Cristian, F. Understanding Fault-Tolerant Distributed Systems. Communications of the ACM, Volume 34, Número 2, pp. 56-78. Fevereiro 1991.

Dawson, S.; Jahanian, F.; Mitton, T. ORCHESTRA: A Probing and Fault Injection Environment for Testing Protocol Implementations. In Proceedings of IPDS’96. Urbana-Champaign, Estados Unidos. Setembro 1996.

Gonçalves, L. C. R.; Rodegheri, P. R.; Manfredini, R. A.; Weber, T. S. Testing Fault Tolerance Mechanisms in DBMS Through Fault Injection. In Proceedings of IEEE Latin-American Test Workshop. Cancun, México. Fevereiro 2001.

Hsueh, M.-C.; Tsai, T.; Iyer, R. Fault Injection Techniques and Tools. IEEE Computer, Volume 30, Número 4, pp. 75-82. Abril 1997.

Iyer, R. K. Experimental Evaluation. In Proceedings of FTCS-25. Pasadena, Estados Unidos. Junho 1995.

Leme, N. G. M; Martins, E.; Rubira, C. M. F. A Software Fault Injection Pattern System. In Proceedings of PLoP 2001. Monticello, Estados Unidos. Setembro 2001.

Maes, P. Concepts and Experiments in Computational Reflection. In Proceedings of OOPSLA 1987. Orlando, Estados Unidos. Outubro 1987.

Martins, E.; Rosa, A. C. A. A Fault Injection Approach Based on Reflective Programming. In Proceedings of DSN’2000. Nova York, Estados Unidos. Junho 2000.

Martins, E.; Rubira, C. M. F.; Leme, N. G. M. Jaca: A Reflective Fault Injection Tool Based on Patterns. In Proceedings of DSN’2002. Washington, Estados Unidos. Junho 2002.

Rosenberg, H. A.; Shin, K. G. Software Fault Injection and its Application in Distributed Systems. In Proceedings of FTCS-23. Toulouse, França. Junho 1993.

Schmidt, D. C. Using Design Patterns to Develop Reusable Object-Oriented Communication Software. Communications of the ACM, v. 38(10), pp. 65-74. Outubro 1995.

Stott, D. T.; Floering, B.; Burke, D.; Kalbarczyk, Z.; Iyer, R. K. NFTAPE: A Framework for Assessing Dependability in Distributed Systems with Lightweight Fault Injectors. In Proceedings of IPDS’2000. Chicago, Estados Unidos. Março 2000.

Voas, J. Software Fault Injection: Growing ‘Safer’ Systems. In Proceedings of IEEE Aerospace Conference 1997, v. 2, pp. 551-561. Aspen, Estados Unidos. Fevereiro 1997.
Publicado
10/05/2004
JACQUES-SILVA, Gabriela; MORAES, Regina Lúcia de O.; WEBER, Taisy Silva; MARTINS, Eliane. Validando Sistemas Distribuídos Desenvolvidos em Java Utilizando Injeção de Falhas de Comunicação por Software. In: WORKSHOP DE TESTES E TOLERÂNCIA A FALHAS (WTF), 5. , 2004, Gramado/RS. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2004 . p. 49-60. ISSN 2595-2684. DOI: https://doi.org/10.5753/wtf.2004.23379.