DOI QR코드

DOI QR Code

Analysis on Dynamic Software Defects for Increasing Weapon System Reliability

국방 무기체계 소프트웨어 신뢰성 향상을 위한 소프트웨어 동적 결함 분석

  • 박지현 (이화여자대학교 컴퓨터공학과) ;
  • 최병주 (이화여자대학교 컴퓨터공학과)
  • Received : 2018.02.26
  • Accepted : 2018.04.20
  • Published : 2018.07.31

Abstract

The importance of software in military weapon systems is increasing, and the software structure is becoming more complicated. We therefore must thoroughly verify its reliability. In particular, the defects from the interaction of the software components that make up the weapon system are difficult to prevent only with static testing and code coverage level dynamic testing. In this paper, we classify dynamic software defect types and analyze the issues reported in the Open Source Software (OSS) used in the US department of defense weapon systems. The dynamic defects classified in this paper usually occur after integration, and it is difficult to reproduce and identify the cause. Based on this analysis, we come to the point that the software integration test must be enhanced in order to verify the reliability of the weapon system.

국방 무기체계에서의 소프트웨어 비중이 증가하고 있으며 구조도 점차 복잡해지고 있어, 이에 따른 신뢰성 검증이 매우 중요하다. 특히 무기체계 시스템을 구성하는 소프트웨어 구성 요소 들의 상호 작용에 따라 발생하는 결함은 정적 시험 및 코드 실행률 점검 수준의 동적 시험만으로는 예방하기가 어렵다. 본 논문에서는 소프트웨어의 동적 결함 유형을 분류 개발한다. 미 국방부 무기체계에 사용하는 오픈 소스 소프트웨어(OSS)에서 보고된 이슈 분석을 통하여 본 논문에서 분류한 동적 결함이 실제로 발생하며, 이들은 대체로 통합 이후 발생하는 결함이며, 재현이 어렵고, 결함 원인 파악이 어려웠음을 보인다. 이 분석 결과를 기반으로 무기체계 신뢰성 검증을 위하여 소프트웨어 통합 시험 개선의 중요성을 도출한다.

Keywords

References

  1. Kyeongyoun Kwon, Joonseok Joo, Taesik Kim, Jinwoo Oh, and Jihyun Baek, "A Study on Quality Assurance of Embedded Software Source Codes for Weapon Systems by Improving the Reliability Test Process," Journal of KIISE, Vol.42, No.7, pp.860-867, 2015. https://doi.org/10.5626/JOK.2015.42.7.860
  2. J. Kim, S. Jeong, I. Hwang, H. Cho, D. Kim, and Y. J. Jang, "M&S Verification, Validation and Accreditation Research Direction Considering the Characteristics of Defense M&S," Journal of Korean Institute of Industrial Engineers, Vol.39, No.6, pp.486-497, 2013. https://doi.org/10.7232/JKIIE.2013.39.6.486
  3. IEEE Standard 1012-2016 IEEE Standard for System, Software, and Hardware Verification and Validation, 2016.
  4. ISO IEC IEEE 12207 System and software engineering - Software life cycle processes, 2017.
  5. ISO IEC IEEE 291199 Software and systems engineering - software testing, 2013.
  6. Weapon system software development and management manual, Defense Acquisition Program Administration Manual No.2017-8, 2017.
  7. 무기체계SW 발전방향 및 추진 전략 연구, Korea Defense Industry Association, 2016.
  8. D. A. Ormrod, "A 'wicked problem'-Predicting sos behaviour in tactical land combat with compromised C4ISR," System of Systems Engineering (SOSE), 9th International Conference on. IEEE, 2014.
  9. 전력발전업무훈령(개정2016.3.28 훈령 제1896호), 2016.
  10. Yonhap News, "국군 최초의 디지털군단 탄생[Defense Acquisition Program Administration]", http://prlink.yonhapnews.co.kr/view.aspx?contents_id=RPR20060627008800353&from=search, (2006.06.27.)
  11. P. Emanuelsson and U. Nilsson, "A comparative study of industrial static analysis tools," Electronic Notes in Theoretical Computer Science, Vol.217, pp.5-21, 2008. https://doi.org/10.1016/j.entcs.2008.06.039
  12. A. Fatima, S. Bibi, and R. Hanif, "Comparative study on static code analysis tools for C/C++," 15th International Bhurban Conf. on Applied Sciences & Technology, 2018.
  13. G. R. Luecke, J. Coyle, J. Hoekstra, M. Kraeva, Y. Li, O. Taborskaia, and Y. Wang, "A survey of systems for detecting serial run‐time errors," Concurrency and Computation: Practice and Experience, Vol.18, No.15, pp.1885-1907, 2006. https://doi.org/10.1002/cpe.1036
  14. S. Lu, S. Park, E. Seo, and Y. Zhou, "Learning from mistakes: a comprehensive study on real world concurrency bug characteristics," ACM Sigplan Notices, Vol.43, No.3, pp.329-339, 2008.
  15. F. Cristian, "Exception Handling and Tolerance of Software Faults," Johy Wiley & Sons, Hoboken, JN, USA (Chapter 4). 1995.
  16. G. Blair, G. Coulouris, J. Dollimore, and T. Kindberg, "Distributed Systems: Concepts and Design," Addison-Wesley, Boston. 2012.
  17. Padua, D. (Ed.). "Encyclopedia of parallel computing," Springer Science & Business Media. 2011
  18. G. M. Schneider, & J. Gersting, "Invitation to computer science," Cengage Learning. 2018.
  19. DoD CIO [Internet], http://dodcio.defense.gov/Open-Source-Software-FAQ/
  20. A study on software ILS applications, Defense Acquisition Program Administration, 2012.
  21. Memcheck [Internet], http://valgrind.org/docs/manual/mc-manual.html
  22. Dr. Memory [Internet], http://drmemory.org/
  23. Address Sanitizer [Internet], https://github.com/google/sanitizers/wiki/AddressSanitizer
  24. Helgrind [Internet], http://valgrind.org/docs/manual/hg-manual.html
  25. Thread Sanitizer [Internet], https://github.com/google/sanitizers/wiki/ThreadSanitizerCppManual
  26. Jooyoung Seo, Byoungju Choi, and Suengwan Yang. "A profiling method by PCB hooking and its application for memory fault detection in embedded system operational test," Information and Software Technology, Vol.53, No.1, pp.106-119, 2011. https://doi.org/10.1016/j.infsof.2010.09.003