It is critical that autonomous cars can not only drive themselves, but also recognise component failures, alert their owner to quickly take action, and keep control until the human takes over.

Speaking to IBTimes UK at the Geneva motor show, BMW's senior engineer of autonomous driving, Dirk Wisselmann, also suggested his company will not be following Tesla's lead in letting customers test beta self-driving features before their development is finished.

"Let's say there is a technical failure, like the steering support fails" Wisselmann begins. "This should not lead to a critical situation because if this happens in a curve the car will go straight into the oncoming lane; we have to avoid this."

The solution, Wisselmann says, is a redundancy system where the car not only recognises the problem, but alerts the driver and keeps control until it can hand back to the driver.

"We will create a kind of redundancy where the car will see there is a failure, then the driver will be informed and told 'please take over again, we have a problem'. But the car will still be able to drive itself for the five or ten seconds it takes the driver to take over again."

That time estimate is currently being investigated by BMW through various simulations on drivers of all ages; perhaps surprisingly, it was found that age had little impact on reactions and the driver's ability to regain full control of an autonomous vehicle when told to.

Such a redundancy system is seen by BMW as one of the "cornerstones" of autonomous driving. Wisselmann added: "We aim to be ready [with a car which can be fully autonomous some of the time] by 2020 or 2021 and want to tackle these challenges very seriously."

Referencing but not naming Tesla and how its Autopilot self-driving system is currently being used by the public despite being in the beta development stage, Wisselmann said: "We don't want to have any beta testing on the road. We will take all the time we need because it is a crucial thing to get right."