• jay-h - Tuesday, May 8, 2018 8:17 AM

    chrisn-585491 - Tuesday, May 8, 2018 6:59 AM

    ...
    We know how to build good, secure and real time software. We have quality modern languages and best practices that the industry ignores. Instead, we would rather have fast, insecure hardware and the latest fashionable framework. We are still tool using primates.

    Along the line of your comment, I place part of the problem back long before this project, when new features and functionality was apparently jury-rigged into the system with little thought to future issues. Every system should be maintained with the knowledge that it will one day need to be replaced.

    I'd agree we know, as an industry how to build good, secure, real time software. As many individuals, we don't. In fact, knowledge is very unevenly distributed. We don't have a formal set of things to learn like some other disciplines, but even they make mistakes. Witness the bridge in Florida, recalls by Toyota, and more. The best still make mistakes in complex endeavors.

    That being said , Toyota leans a lot,  as do others, and overall quality improves over time. Today our failures are more often because we place higher priorities on items outside of quality or durability.

    Should every system be maintained? I disagree. We may change how we do things and abandon some software, even software that seems really critical. The world changes. Banks have rules to operation and those ought to be documented, and a new system should be able to replace it. I'm not sure this one didn't. What I suspect is they skimped on testing, using happy paths, or limited load to prepare. They "thought" they knew banking software, but apparently didn't know it well enough for a UK system.