Unintended acceleration: A textbook study of how not to develop software and hardware, especially in safety-critical designs.
On Thursday, October 24, 2013, an Oklahoma court ruled against Toyota in a case of unintended acceleration that led to the death of one of the occupants. Central to the trial was the Engine Control Module's (ECM) firmware.
Embedded software used to be low-level code we'd bang together using C or assembler. These days, even a relatively straightforward, albeit critical, task like throttle control is likely to use a sophisticated real-time operating system (RTOS) and tens of thousands of lines of code.
With all this sophistication, standards, and practices for design, coding and testing become paramount -- especially when the function involved is safety-critical. Failure is not an option. It is something to be contained and benign.
Click here to read the full article on EDN.com.