IDK. A lot of these systems are stuck not just because of complex business logic. That would be tedious to rewrite, definitely take longer than a weekend, but AI systems are actually a great use-case for helping in refactors. I think a bigger issue can be custom drivers / embedded technologies that require specific protocols / assumptions about servers. And those embedded areas may sit in hundreds of trains + train stations -- not impossible to update, but definitely more challenging to verify upgrades 100x times instead of one time. And the consequences of something bad can be train collisions = death. So it's easy to see how an organization leadership committee may decide "if it ain't broke don't fix it" because of risk with no real upside aside from a marginally lower salary cost of one maintainer -- if that.