Actas de congresos
Injection Of Faults At Component Interfaces And Inside The Component Code: Are They Equivalent?
Registro en:
0769526489; 9780769526485
Proceedings - Sixth European Dependable Computing Conference, Edcc 2006. , v. , n. , p. 53 - 62, 2006.
10.1109/EDCC.2006.16
2-s2.0-34547492895
Autor
Moraes R.
Barbosa R.
Duraes J.
Mendes N.
Martins E.
Madeira H.
Institución
Resumen
The injection of interface faults through API parameter corruption is a technique commonly used in experimental dependability evaluation. Although the interface faults injected by this approach can be considered as a possible consequence of actual software faults in real applications, the question of whether the typical exceptional inputs and invalid parameters used in these techniques do represent the consequences of software bugs is largely an open issue. This question may not be an issue in the context of robustness testing aimed at the identification of weaknesses in software components. However, the use of interface faults by API parameter corruption as a general approach for dependability evaluation in component-based systems requires an in depth study of interface faults and a close observation of the way internal component faults propagate to the component interfaces. In this work we present the results of experimental evaluation of realistic component-based applications developed in Java and C using the injection of interface faults by API parameter corruption and the injection of software faults inside the components by modification of the target code. The faults injected inside software components emulate typical programming errors and are based on an extensive field data study previously published. The results show the consequences of internal component faults in several operational scenarios and provide empirical evidences that interface faults and software component faults cause different impact in the system. © 2006 IEEE.
53 62 Arlat, J., Crouzet, Y., Faultload Representativeness for Dependability Benchmarking (2002) Workshop on Dependability Benchmarking, DSN02 Bieman, J., Dreilinger, D., Lin, L., Using Fault Injection to Increase Test Coverage (1996) Proc of The 7th IEEE International Symposyum on Software Reliability Engineering, ISSRE, , 96, New York, NY, USA Blough, D., Torii, T., Fault-Injection-Based Testing of Fault-Tolerant Algorithms in Message Passing Parallel Computers (1997) Proc. of The 27th IEEE Int.Fault Tolerant Computer Symposium, FCTS-27, pp. 258-267. , Seattle, USA Carey, M.J., DeWitt, D.J., Naughton, J.F., (1994) The OO7 Benchmark, , http://www.columbia.edu, accessed Feb Carreira, J., Madeira, H., Silva, J., Xception: Software Fault Injection and Monitorintg in Processor Functional Units (1998) IEEE Trans. on Software Engineering, 24 Chiba, S., Javassist - A Reflection-based ProgrammingWizard for Java (1998) proceedings of the ACM OOPSLA'98 Workshop onReflective Programming in C++ and Java, , Oct Chillarege, R., Orthogonal Defect Classification (1995) Handbook of Software Reliability, , Engineering, M. Lyu, Ed, IEEE Computer Society Press, McGraw-Hill, Ch. 9 Christmansson, J., Chillarege, R., Generation of an Error Set that Emulates Software Faults (1996) Proc. of The 26th IEEE Fault Tolerant Computing Symp. - FCTS-26, , Sendai, Japan Christmansson, J., Killer, M., Rimén, M., An Experimental Comparison of Fault and Error Injection (1998) Proc. of The 9th Int. Symposium on Software Reliability Engineering - ISSRE, 98, pp. 369-378 Dingman, C., Marshall, J., Siewiorek, D., Measuring Robustness of a Fault Tolerant Aerospace System (1995) Proc. of The 25th IEEE International Symp. on Fault Tolerant Computing - FTCS, pp. 522-527. , 95, Passadena, pp, CA, USA Durães, J., Madeira, H., Emulation of Software Faults by Educated Mutations at Machine-Code Level (2002) Proc. of The Thirteenth International Symposium on Software Reliability Engineering - ISSRE'02, , Annapolis, USA Durães, J., Madeira, H., Definition of Software Fault Emulation Operators: A Field Data Study (2003) Proc. of The International Conference on Dependable Systems and Networks, DSN2003, pp. 105-114. , San Francisco, USA Fabre, J.-C., Salles, F., Moreno, M., Arial, J., Assessment of COTS Microkernels by Fault Injection (1999) Proc.of The 7th IFIP Working Conference on Dependable Computing for Critical Applications- DCCA, pp. 25-44. , 99, pp, San Jose, CA, USA Fabre, J.C., Rodríguez, M., Arial, J., Salles, F., Sizun, J., Bulding Dependable COTS Microkernel-based Systems using MAFALDA (2000) Proc. of the 2000 Pacific Rim International Symposium on Dependable Computing PRDC'00, pp. 85-92 Ghosh, A., Schmid, M., Shah, V., Testing the Robustness of Windows NT Software (1998) Proc. of the 9th IEEE International Symposium on Software Reliability Engineering - ISSRE, pp. 231-236. , 98, pp Ghosh, A., Shah, V., Schmid, M., An Approach for Analyzing the Robustness of Windows NT Software (1999) Proc.of The 10th IEEE International Symposium on Software Reliability Engineering - ISSRE, , 99 Hiller, M., Jhumka, A., Suri, N., An Approach for Analysing the Propagation of Data Errors in Software (2001) Int. Conf. on Dependable Systems and Networks, DSN, , Gothenburg, Sweden Koopman, P., Sung, J., Dingman, C., Siewiorek, D., Marz, T., Comparing Operating Systems Using Robustness Benchmarks (1997) Proc.of The 16th International Symposium on Reliable Distributed Systems - SRDS, pp. 72-79. , 97, Durham, NC, USA, pp Koopman, P., DeVale, J., The Exception Handling Effectiveness of POSK Operating Systems (2000) IEEE Transactions on Software Engineering, 26, pp. 837-848 Koopman, P. What's Wrong With Fault Injection As A Benchmarking Tool?, in Proc. of The Internat. Conf. on Dependable Systems and Networks - DSN2002, Washington D.C, USA, 2002Kropp, N., Koopman, P., Siewiorek, D., Automated Robustness Testing of Off-the-Shelf Software Components (1998) 28th Fault Tolerant Computing Symposium, pp. 230-239 Madeira, H., Vieira, M., Costa, D., On the Emulation of Software Faults by Software Fault Injection (2000) Proc. of The Int. Conf. on Dependable System and Networks, pp. DSN00. , NY, USA Martins, E. Rubira, C. M. F. Lerne N.G.M. Jaca: A reflective fault injection tool based on patterns Proc of the 2002 Intern Conference on Dependable Systems & Networks, pp. 483-487, Washington D.C. USA, 23-267, 2002Moraes, R., Martins, E., A Strategy for Validating an ODBMSComponent Using a High-Level Software Fault Injection Tool (2003) proc.of the First Latin-American Symp, pp. 56-68. , SP, Brazil Moraes, R., Martins, E., An Architecture-based Strategy for Interface Fault Injection (2004) Workshop on Architecting Dependable Systems, IEEE/IFIP International Conf. on Dependable Systems and Networks, , Florence, Italy, June 28-July 1 Mukherjee, A., Siewiorek, D., Measuring Software Dependability by Robustness Benchmarking (1997) IEEE Transactions on Software Engineering, 23, pp. 366-378 Ng, W., Aycock, C., Chen, P., Comparing Disk and Memory's Resistance to Operating System Crashes (1996) Proc. of The 7th IEEE International Symposium on Software Reliability Engineering, ISSRE, , 96, New York, NY, USA Ng, W., Chen, P., Systematic improvement of fault tolerance in the RIO file cache (1999) Proc. of The 30th IEEE Fault Tolerant Computing Symp., FTCS-29, , Madison, WI, USA Tsai, T., Singh, N., Reliability Testing of Applications on Windows NT (2000) Proceedings of the IEEE International Symposium on Dependable Systems and Networks - DSN00, pp. 427-436. , New York, NY, USA, pp Voas, J., Charron, F., McGraw, G., Miller, K., Friedman, M., Predicting How Badly 'Good' Software can Behave (1997) IEEE Software Voas, J., (1997) A Defensive Approach to Certifying COTS Software, , Reliable Software Technologies Weyuker, E.J., Testing Component-Based Software: A Cautionary Tale (1998) IEEE Software, pp. 54-59