Sadly no, there's very often tricks to correctly designing routine things in life that not everybody responsible has thought about and this can have dire consequences. Every "push" door with prominent "pull" handles is a miniature example.
Modern railway trains use electronically controlled doors. Rather than needing a team of people to run along checking every door on the train is closed and locked, or just hoping nobody falls out of a moving train, the doors are powered and when instructed will close and lock. The doors can't close instantly of course and so the procedure will be that the guard or driver presses a button, there's a brief warning period and then doors try to close and lock, once all doors are successfully closed and locked you're clear to drive the train away.
In the UK it turns out that there were two ways to implement this functionality, some train manufacturers used one, some the other. One way goes like this, when the button is pressed:
1. "Door Open" buttons for passengers are disabled
2. All open doors sound an alarm (typically fast bleeping)
3. Wait a few seconds
4. All doors that are still open try to close
The other way goes like this:
1. All open doors sound an alarm
2. Wait a few seconds
3. "Door Open" disabled
4. Try to close any open doors
This second order feels pretty similar, it's likely only a few geeks even noticed it was different and nobody made a big fuss about it. Until there was an accident and then the accident investigators discovered it.
A passenger realised very late that they were at their destination, unknown to them when they pressed "Door Open" in fact the train's crew had just told the system to close all doors for departure and it was in that waiting period. On their train, the "Open" buttons were not disabled during that period. Now the passenger's door was open, but it had missed that "alarm" phase, so there was no warning anything was amiss. The passenger tried to step through the door, but at that moment the timer expired and the door closed on them, trapping IIRC an article of clothing and resulting in a dragging accident when the train departed.
All affected trains needed revised firmware to enforce the correct order of events now that it was apparent to everybody that there even _was_ a correct order of events.
This is why I recommend all software engineers to read The Design of Everyday things. These basic design principles are helpful in designing UIs, APIs and architecture.
The thing with doors for me is that I feel “trapped” when I have a door with no place for my hands besides a panel that lies flat (does not extend outward) from the door. The first time I saw one I was very confused: it seemed to me that I was against a wall that was painted as a door, but had no handles. It was surprising to me that specific example it was brought up as an example of good user interface design in my university UI class.
Your account of the train incident is heart-breaking, but further solidifies my desire to have mandatory best practices that are evidence-based and have sufficient consensus for user interfaces that have harmful failure modes. On top of these best practices, there also needs to be a ramp plan from the any status quo interface that is nonconformant to the final version through as many intermediate designs as necessary to deal with ingrained user behaviour and ingrained user expectations.
Modern railway trains use electronically controlled doors. Rather than needing a team of people to run along checking every door on the train is closed and locked, or just hoping nobody falls out of a moving train, the doors are powered and when instructed will close and lock. The doors can't close instantly of course and so the procedure will be that the guard or driver presses a button, there's a brief warning period and then doors try to close and lock, once all doors are successfully closed and locked you're clear to drive the train away.
In the UK it turns out that there were two ways to implement this functionality, some train manufacturers used one, some the other. One way goes like this, when the button is pressed:
1. "Door Open" buttons for passengers are disabled 2. All open doors sound an alarm (typically fast bleeping) 3. Wait a few seconds 4. All doors that are still open try to close
The other way goes like this:
1. All open doors sound an alarm 2. Wait a few seconds 3. "Door Open" disabled 4. Try to close any open doors
This second order feels pretty similar, it's likely only a few geeks even noticed it was different and nobody made a big fuss about it. Until there was an accident and then the accident investigators discovered it.
A passenger realised very late that they were at their destination, unknown to them when they pressed "Door Open" in fact the train's crew had just told the system to close all doors for departure and it was in that waiting period. On their train, the "Open" buttons were not disabled during that period. Now the passenger's door was open, but it had missed that "alarm" phase, so there was no warning anything was amiss. The passenger tried to step through the door, but at that moment the timer expired and the door closed on them, trapping IIRC an article of clothing and resulting in a dragging accident when the train departed.
All affected trains needed revised firmware to enforce the correct order of events now that it was apparent to everybody that there even _was_ a correct order of events.