The software-defined vehicle is easy to envisage but, as car companies are finding out, very difficult to execute.