An important part not to overlook is safety. Try to design your project so that it's intrinsically safe such that if there is a failure, make sure it fails in a safe state.
What happens if the micro experiences a hickup? What about noise on your signal lines? What if your micro ships with a stuck SRAM cell?
Address the inputs, outputs and include the software in between when considering failure modes.
In Automotive, the use sophisticated software and hardware safety mechanisms are used.