I occasionally see warnings like “we do not recommend our products for applications where failure could result in injury or significant property damage” in the posts from Pololu employees. Liability issues aside, what kinds of additional engineering go into circuits or devices that would be suitable for these kinds of applications? Alternatively, what can I Google to read more about it? I assume testing is a huge part of it, but I’m wondering if there are other clever things engineers do.
When I was just starting out in tech I worked on a test suite for a medical labelling device and it was interesting how it had to cover all the known edge cases as well as include a substantial portion of random testing in case our assumptions about the system’s vulnerabilities were wrong. Another thing we did was to build preprocessing software that would generate our software’s data declarations from the medical data we were given so as to avoid transcription errors. In hindsight, I’m not sure that second thing was so great–I wonder if we were just substituting transcription error risk with buggy preprocessor code risk.