DOI QR코드

DOI QR Code

MuGenFBD: Automated Mutant Generator for Function Block Diagram Programs

MuGenFBD: 기능 블록 다이어그램 프로그램에 대한 자동 뮤턴트 생성기

  • Received : 2020.08.24
  • Accepted : 2021.02.04
  • Published : 2021.04.30

Abstract

Since function block diagram (FBD) programs are widely used to implement safety-critical systems, effective testing for FBD programs has become important. Mutation testing, a fault-based testing, is highly effective in fault detection but computationally expensive. To support testers for FBD programs, we propose an automated mutant generator for FBD programs. We designed the MuGenFBD tool with the cost and equivalent mutant issues in consideration. We conducted experiments on real industrial examples to present the performance of MuGenFBD. The results show that MuGenFBD can generate mutants for FBD programs automatically with low probability of equivalent mutants and low cost. This tool can effectively support mutation analysis and mutation-adequate test generation for FBD programs.

기능 블록 다이어그램(Function Block Diagram, FBD) 프로그램이 안전 필수 시스템 구현에 널리 사용되면서 FBD 프로그램에 대한 효과적인 테스트가 중요해졌다. 뮤테이션 테스팅은 오류 기반 테스팅 기술로, 오류 탐지에 매우 효과적이지만 비용이 많이 든다. 본 연구에서는 FBD 프로그램 테스터를 지원하기 위한, FBD 프로그램 대상 자동 뮤턴트 생성기를 제안한다. MuGenFBD 도구는 뮤턴트 생성 비용과 동등 뮤턴트 문제를 고려하여 설계되었다. MuGenFBD 도구의 성능을 평가하기 위해 실제 산업 사례에 대한 실험을 수행한 결과, MuGenFBD를 활용하여 뮤턴트 생성 시 동등 뮤턴트를 생성할 비율이 낮으며 적은 비용으로 FBD 프로그램 대상 뮤턴트를 효과적으로 자동 생성할 수 있음을 확인하였다. 제안하는 도구는 FBD 프로그램에 대한 뮤테이션 분석 및 뮤테이션 충분성 기준을 만족시키는 테스트 생성을 효과적으로 지원할 수 있다.

Keywords

Acknowledgement

본 연구는 과학기술정보통신부 및 정보통신기획평가원의 대학ICT연구센터 지원사업(IITP-2021-2020-0-01795)과 2019년도 정부(교육부)의 재원으로 한국연구재단의 지원을 받아 수행된 기초연구사업임(No. NRF-2019R1I1A1A01062946).

References

  1. International Electrotechnical Commission (IEC), "IEC61131-3: International Standard for Programmable Controllers - Part 3: Programming Languages," 2013.
  2. Doosan Heavy Industry & Construction, "Software design specification for the bistable processor of the reactor protection system," KNICS.RPS.SDS231-01, Rev.01, 2006. (In Korean)
  3. M. R. Woodward, "Mutation testing-its origin and evolution," Information and Software Technology, Vol.35, No.3, pp.163-169, 1993. https://doi.org/10.1016/0950-5849(93)90053-6
  4. E. Jee, J. Song, and D. H. Bae, "Definition and application of mutation operator extensions for FBD programs," KIISE Transactions on Computing Practices, Vol.24, No.11, pp.589-595, 2018. (in Korean) https://doi.org/10.5626/ktcp.2018.24.11.589
  5. W. Bolton, "Programmable logic controllers," Newnes, 2015.
  6. A. T. Acree, T. A. Budd, R. A. DeMillo, R. J. Lipton, and F. G. Sayward, "Mutation Analysis," Technical Report GIT-ICS-79/08, School of Information and Computer Science, Georgia Institute of Technology, 1979.
  7. R. A. Demillo, "Test Adequacy and Program Mutation," Proceedings of the 11th International Conference on Software Engineering (ICSE), pp.355-356, 1989.
  8. R. A. Demillo, D. S. Guindi, W. M. McCracken, A. J. Offutt, and K. N. King, "An extended overview of the Mothra software testing environment," Proceedings of the Second Workshop on Software Testing, Verification, and Analysis, IEEE, pp.142-151, 1988.
  9. M. E. Delamaro, J. C. Maldonado, and A. P. Mathur, "Proteum-a tool for the assessment of test adequacy for C programs user's guide," Proceedings of Performability in Computing Systems, Vol.96, pp.79-95, 1996.
  10. D. Shin, E. Jee, and D. H. Bae, "Empirical evaluation on FBD model-based test coverage criteria using mutation analysis," International Conference on Model Driven Engineering Languages and Systems, pp.465-479, 2012.
  11. E. Jee, D. Shin, S. Cha, J. S. Lee, and D. H. Bae, "Automated test case generation for FBD programs implementing reactor protection system software," Software Testing, Verification and Reliability, Vol.24, No.8, pp.608-628, 2014. https://doi.org/10.1002/stvr.1548
  12. J. Song, E. Jee, and D. H. Bae, "FBDTester 2.0: Automated test sequence generation for FBD programs with internal memory states," Science of Computer Programming, Vol.163, pp.115-137, 2018. https://doi.org/10.1016/j.scico.2018.04.005
  13. E. P. Enoiu, D. Sundmark, A. Causevic, R. Feldt and P. Pettersson, "Mutation-based test generation for PLC embedded software using model checking," Proceedings of the 28th International Conference on Testing Software and Systems, Lecture Notes in Computer Science, Vol.9976, pp.155-171, 2016.