...
In software development, unless a bug has always existed in a particular piece of functionality, there will always be a single attributable root cause. Identifying this route the root cause is not always easy and unless you have spent enough time analyzing a particular bug it is hard difficult to know if the fix you are about to propose is in fact fixing the root cause of the bug or just one of many potential symptoms. So in reality, whenever a developer is investigating a known bug for a potential fix they are in essence performing a Root Cause Analysis but using the resulting information gleaned from the process only for their bug fix efforts.
...