I recently noticed that my BMW 5 Series engine is making a strange noise. It's not a constant noise, but it seems to come and go. What could be causing this and how can I fix it?