Creating Reliable Innovation with TrustInSoft
A Tier One IoT Device Equipment Provider wanted to ensure full accuracy of their software that measures customers’ energy consumption. The accuracy and continuous functioning of this equipment are important not only for tracking and transmitting precise consumption but also for maintaining trust with end customers. Thus, there is a need to ensure that the information transmitted is error-free and customers are billed for exactly what they consume.
To test the robustness of their software to various inputs, this IoT Device company started by replaying their existing tests with the discrete inputs of their standard test suite (typical and at the limits) in TrustInSoft Analyzer. This enabled them to detect all undefined behaviors (e.g. buffer overflows, non-initialized variables, signed overflows, etc.) which could be generated at any point of the execution paths for these specific inputs. This was also a way for the customer to measure their level of technical debt. This enabled them to quickly catch, without any false alarms, bugs that had not been detected before with their existing test process and classic code analysis tool.
Then, they decided to test all possible code values by generalizing the inputs of their existing tests, which allowed them to perform the equivalent of a large number of tests that would not have been possible to achieve using standard methods. This enabled them to exhaustively detect all undefined behaviors in their code on the scope of the analysis, and therefore boost the robustness of their code to any input value.
Finally, for the most critical part of their software, they decided to make use of the power of functional proof to mathematically prove that the code that they had implemented does exactly what it is supposed to do.
With the use of TrustInSoft Analyzer, this Tier One IoT Device supplier was able, within a few weeks, to detect more than 30 bugs that had not been caught with their existing testing methods and tools and massively increase the test coverage. They achieved a mathematical guarantee of the absence of undefined behaviors on the part of code that was exhaustively verified.
Finally, they also proved the correctness of their functional implementation of the most critical part of the software that deals with end-customer consumption calculation.
The software stacks which were exhaustively verified, do not face the risk of unpredictable outputs or program execution identified post-production which may incur high investigation, debugging, and software update costs, end customer bill disputes, and potential impact on their image.
Proving the functional implementation of their software means they can differentiate from their competitors and win new businesses where this level of software quality and safety is required.
Learn more about the tool that this Tier One IoT Device supplier used to secure their code!