Fault Localization Method by Partitioning Memory Using Memory Map and the Stack for Automotive ECU Software Testing

Recently, the usage of the automotive Electronic Control Unit (ECU) and its software in cars is increasing. Therefore, as the functional complexity of such software increases, so does the likelihood of software-related faults. Therefore, it is important to ensure the reliability of ECU software in order to ensure automobile safety. For this reason, systematic testing methods are required that can guarantee software quality. However, it is difficult to locate a fault during testing with the current ECU development system because a tester performs the black-box testing using a Hardware-in-the-Loop (HiL) simulator. Consequently, developers consume a large amount of money and time for debugging because they perform debugging without any information about the location of the fault. In this paper, we propose a method for localizing the fault utilizing memory information during black-box testing. This is likely to be of use to developers who debug automotive software. In order to observe whether symbols stored in the memory have been updated, the memory is partitioned by a memory map and the stack, thus the fault candidate region is reduced. A memory map method has the advantage of being able to finely partition the memory, and the stack method can partition the memory without a memory map. We validated these methods by applying these to HiL testing of the ECU for a body control system. The preliminary results indicate that a memory map and the stack reduce the possible fault locations to 22% and 19% of the updated memory, respectively.

[1]  Xiaohui Gu,et al.  FChain: Toward Black-Box Online Fault Localization for Cloud Systems , 2013, 2013 IEEE 33rd International Conference on Distributed Computing Systems.

[2]  Rongxin Wu,et al.  CrashLocator: locating crashing faults based on crash stacks , 2014, ISSTA 2014.

[3]  J. Strenkert,et al.  Model-based Development of a Dual-Clutch Transmission using Rapid Prototyping and SiL , 2009 .

[4]  Matthew Heinsen Egan,et al.  Program visualization and explanation for novice C programmers , 2014, ACE.

[5]  Franz Wotawa,et al.  Testing methods used in the automotive industry: results from a survey , 2014, JAMAICA 2014.

[6]  Joseph Robert Horgan,et al.  Effect of Test Set Minimization on Fault Detection Effectiveness , 1995, 1995 17th International Conference on Software Engineering.

[7]  C. Piguet,et al.  Low-power design of 8-b embedded CoolRisc microcontroller cores , 1997, IEEE J. Solid State Circuits.

[8]  Keir Fraser,et al.  A Practical Multi-word Compare-and-Swap Operation , 2002, DISC.

[9]  Bart Vermeulen Functional Debug Techniques for Embedded Systems , 2008, IEEE Design & Test of Computers.

[10]  Jooyoung Seo,et al.  HiL Test Based Fault Localization Method Using Memory Update Frequency , 2015, CSA/CUTE.

[11]  Mugur Tatar,et al.  Systematic Test and Validation of Complex Embedded Systems , 2014 .

[12]  Andreas Junghanns,et al.  Simulation-based development of automotive control software with Modelica , 2011 .

[13]  Klaus D. Müller-Glaser,et al.  An Approach to Supply Simulations of the Functional Environment of ECUs for Hardware-in-the-Loop Test Systems Based on EE-architectures Conform to AUTOSAR , 2009, 2009 IEEE/IFIP International Symposium on Rapid System Prototyping.

[14]  Hongkun Zhang,et al.  Model-based hazard analysis method on automotive programmable electronic system , 2010, 2010 3rd International Conference on Biomedical Engineering and Informatics.

[15]  Reinhard German,et al.  Model Based Requirements Analysis and Testing of Automotive Systems with Timed Usage Models , 2010, 2010 18th IEEE International Requirements Engineering Conference.

[16]  Rajiv Gupta,et al.  Execution suppression: An automated iterative technique for locating memory errors , 2010, TOPL.

[17]  Intaek Kim,et al.  Conformance Testing of SGSF-064-1 Using CANoe , 2015 .

[18]  Jeong-Woo Lee,et al.  Data Cascading Method for the Large Automotive Data Acquisition Beyond the CAN Bandwidth in HiL Testing , 2015, CSA/CUTE.

[19]  Hee Beng Kuan Tan,et al.  Techniques for Defending from Buffer Overflow Vulnerability Security Exploits , 2011 .

[20]  W. Eric Wong,et al.  Software Fault Localization , 2010, Encyclopedia of Software Engineering.

[21]  Andy Podgurski,et al.  Mitigating the confounding effects of program dependences for effective fault localization , 2011, ESEC/FSE '11.

[22]  Rui Abreu,et al.  A Survey on Software Fault Localization , 2016, IEEE Transactions on Software Engineering.

[23]  Christoph Lauer,et al.  Flexible integration testing of automotive ECUs by combining AUTOSAR and XCP , 2011, 2011 IEEE International Conference on Computer Applications and Industrial Electronics (ICCAIE).

[24]  Srinivas Nidhra,et al.  BLACK BOX AND WHITE BOX TESTING TECHNIQUES -A LITERATURE REVIEW , 2012 .