1
\$\begingroup\$

Our embedded controller is Advanced Drive Assist Systems(ADAS). It basically has Two software layers. Application software and low-level software.

Our controller has many low-level functions such as different communications protocols, different types of memory, Digital outputs, PWM Outputs, and so much more.

What might be the benefit of performing Failure Mode and Effect Analysis(FMEA) on these low-level functions? Is the purpose of this exercise to catch low-level software design problems? Also, would this analysis help in debugging?

How to perform thorough FMEA on low-level software for a typical Automotive ADAS Controller? For example, one Failure mode may be Loss of I2C communication or intermittent I2C communication. How to come up with all possible potential effects of this failure? How to come up with all possible Potential Causes of Failure?

How to identify all possible Failure Modes?

\$\endgroup\$
3
  • 1
    \$\begingroup\$ it's not possible to identify all possible failure modes, but that certainly doesn't mean it's not worth the exercise of identifying those you can and understanding the downstream impacts... the whole point is to think about your system with that mindset and see what shakes out. \$\endgroup\$
    – vicatcu
    Commented Oct 19, 2020 at 2:28
  • 1
    \$\begingroup\$ It seems like you're basically asking for a course on how to perform an FMEA, which is not really an answerable question. You'll need to do exercises like brainstorming potential failure modes and using tools like fishbone diagrams (or whatever works for your team) to consider & classify potential effects of those failure modes. \$\endgroup\$
    – brhans
    Commented Oct 19, 2020 at 4:00
  • \$\begingroup\$ If you're having to ask here, you shouldn't be working on ADAS. \$\endgroup\$
    – user16324
    Commented Oct 19, 2020 at 13:26

1 Answer 1

0
\$\begingroup\$

"What might be the benefit of performing Failure Mode and Effect Analysis(FMEA) on these low-level functions?"

FMEA is not done on a layer but on the system as a whole. The low-level functions might contribute failures, but (in most cases) the higher level functions determine what the (possible) effects are.

A typical FMEA might have two steps:

  • the persons responsible for each module make a list of failure modes for that module
  • in a brainstorm session the team determines what effect those FM's can have on the other moduls and what the external effects can be (iteration might be required)
\$\endgroup\$

Not the answer you're looking for? Browse other questions tagged or ask your own question.