We have had autocouplers for more than 30 years now. Why are there still software issues with it on new trains?
When, in any case, did software first become an issue on trains?
To give a facetious retort:
"We have had personal computers for more than 30 years now. Why are there still software issues on new PCs?"
Your modern desktop/laptop/tablet is expected to do far more different and complex things than would be expected from your ZX Spectrum or BBC Micro back in the day. As we expect new trains to do so much more (power doors with door-edge sensors, passenger information systems, electronic reservation displays, track and OHLE monitoring equipment, air conditioning, ethernet backbones for on-board wi-fi, etc) the software required to operate them all becomes more complex. Complex to write, complex to verify, complex to debug, etc.
A few years ago, when embedded systems design still operated with 8-bit processors (for quick real-time response), an experienced engineer could expect to have an in-depth understanding of every element of the system. In such a situation, there shouldn't be (m)any unexpected surprises. As these embedded systems have become more complex (32- or 64-bit embedded platforms are now becoming more commonplace), individual engineers are having to concentrate on specific areas of the whole system and work as a team, and/or use pre-written software libraries to obtain the required functionality from the many components they're using. As a result, embedded design is beginning to resemble software design, with the added complexities that interfacing with real-time hardware demands as well.