DOI QR코드

DOI QR Code

Fault Injection Based Indirect Interaction Testing Approach for Embedded System

임베디드 시스템의 결함 주입 기반 간접 상호작용 테스팅 기법

  • ;
  • 이우진 (경북대학교 컴퓨터학부)
  • Received : 2017.03.17
  • Accepted : 2017.06.17
  • Published : 2017.09.30

Abstract

In an embedded system, modules exchange data by interacting among themselves. Exchanging erroneous resource data among modules may lead to execution errors. The interacting resources produce dependencies between the two modules where any change of the resources by one module affects the functionality of another module. Several investigations of the embedded systems show that interaction faults between the modules are one of the major cause of critical software failure. Therefore, interaction testing is an essential phase for reducing the interaction faults and minimizing the risk. The direct and indirect interactions between the modules generate interaction faults. The direct interaction is the explicit call relation between the modules, and the indirect interaction is the remaining relation that is made underneath the interface that possesses data dependence relationship with resources. In this paper, we investigate the errors that are based on the indirect interaction between modules and introduce a new test criterion for identifying the errors that are undetectable by existing approaches at the integration level. We propose a novel approach for generating the interaction model using the indirect interaction pattern and design test criteria that are based on different interaction errors to generate test cases. Finally, we use the fault injection technique to evaluate the feasibility and effectiveness of our approach.

임베디드 시스템에서는 모듈간의 상호작용으로 데이터를 주고 받는다. 이때 오류가 포함된 리소스 데이터를 전달하면 시스템의 실행 오류를 유발할 수 있다. 상호작용에 활용되는 리소스들은 모듈간의 의존관계를 만들며 의존관계에 있는 모듈의 변화가 다른 모듈의 기능에 영향을 미치게 된다. 몇몇 임베디드 시스템 조사 자료에 따르면 모듈간의 상호작용 오류가 심각한 소프트웨어 실패의 원인이 되기도 한다. 상호작용 테스팅 단계에서는 이러한 상호작용 오류를 검출하여 시스템 실패의 위험을 낮추고자 한다. 모듈간의 상호작용은 직접 또는 간접적으로 일어난다. 직접적인 상호작용은 모듈의 직접 호출을 통해 이루어지며, 간접 상호작용은 직접호출 이외에 리소스 데이터의 의존성을 통해 나타난다. 이 연구에서는 직접 상호작용에 의한 오류 검출 방식에서는 발견되지 않는 간접 상호작용과 연관된 오류를 검출하고자 한다. 먼저 상호작용 패턴을 분석하여 상호작용 모델을 생성하고 이를 기반으로 상호작용 오류를 검출하는 테스트 케이스 디자인 방법을 제안한다. 마지막으로 결함 주입 기법을 이용하여 제안된 방법의 효용성 및 실효성을 분석한다.

Keywords

References

  1. US Department of Commerce, N., "Updated NIST Software Uses Combination Testing to Catch Bugs Fast and Easy," 2010.
  2. N. G. Leveson, "Role of Software in Spacecraft Accidents," J. Space. Rockets, Vol.41, No.4, pp.564-575, 2004. https://doi.org/10.2514/1.11950
  3. B. Liscouski, and W. Elliot, "U.S.-Canada Power System Outage Task Force," System 40, 238, 2004.
  4. Honda Admits Software Problem, Recalls 175,000 Hybrids IEETimes [Internet], www.eetimes.com/document.asp?doc_id=1323061, 2014.
  5. M. E. Delamaro, J. C. Maldonado, and A. P. Mathur, "Interface mutation: An approach to integration testing," IEEE Transactions on Software Engineering, Vol.27, No.3, pp.228-247, Mar., 2001. https://doi.org/10.1109/32.910859
  6. N. L. Hashim, H. W. Schmidt, and S. Ramakrishnan, "Interface faults injection for component based integration testing," International Conference on Computer Informatics, 2006.
  7. R. Moraes and E. Martins, "An architecture-based strategy for interface fault injection. Workshop on Architecting Dependable Systems," IEEE/IFIP Int. Conf. on Dependable Systems and Networks, Italy, 2004.
  8. Z. Jin and A. Offutt, "Coupling-based criteria for integration testing," Software Testing Verification Reliability, pp.133-154, 1998.
  9. H. Zhu and X. He, "A Methodology of Component Integration Testing," Springer, pp.239-269, 2005.
  10. M. B. Cohen, "Designing test suites for software interaction testing," Ph.D. thesis, University of Auckland, New Zealand, 2004.
  11. Brady J. Garvin and Myra B. Cohen, "An Overview of Feature- Oriented Software Development," Journal of Object Technology, Vol.8, No.4, Jul., 2008.
  12. H. M. Iqbal and W. J. Lee, "Data Flow Based Integration Testing for Embedded System Using Interaction Model," 21st Asia-Pacific Software Engineering Conference, pp. 423-429, Jeju, 2014.
  13. Source Insight [Internet], http://www.sourceinsight.com/ (accessed 12.7.15), 2012.
  14. A. A. Samuel, N. Jayalal, B. Valsa, C. A. Ignatious, and J. P. Zachariah, "Software fault injection testing of the embedded software of a satellite launch vehicle," IEEE Potentials, Vol.32, No.5, pp.38-44, 2013. https://doi.org/10.1109/MPOT.2012.2236150
  15. H. Ziade, R. Ayoubi, and R. Velazco, "A survey on fault injection techniques," The International Arab Journal of Information Technology, Vol.1, No.2, pp.171-186, Jul., 2004.
  16. C. Kaner, J. Falk, and H. Q. Nguyen, "Testing Computer Software," 2nd Edition, Dreamtech Press, 2000.