Empowering Embedded Innovators to Shape the Future

🚦 EN 50128: Software Safety in Railway Systems

🔍 What Is EN 50128?

EN 50128 is a European standard developed by CENELEC that governs the development of software used in railway control and protection systems. It ensures that software deployed in safety-critical railway applications meets rigorous safety, reliability, and quality requirements.

This standard is part of the broader CENELEC framework for railway safety, alongside EN 50126 (system lifecycle) and EN 50129 (hardware safety).

🎯 Purpose of EN 50128

The core goal of EN 50128 is to minimize risks associated with software failures in railway systems. It provides a structured approach to:

• Software lifecycle management

• Hazard analysis and risk mitigation

- Verification and validation

- Configuration and change control

- Safety integrity level (SIL) classification

By following EN 50128, developers ensure that railway software behaves predictably—even under fault conditions.

🛤️ Where Is EN 50128 Used?

EN 50128 applies to all safety-related software in railway domains, including:

| Application Area | Examples |

| Train Control Systems | Automatic Train Protection (ATP), Train Control Units |

| Signalling Systems | Interlocking, Route Setting, Signal Control |

| Communication Systems | GSM-R, Data Transmission Protocols |

| Onboard and Wayside Equipment | Speed Monitoring, Brake Control, Trackside Logic |

| Embedded Firmware & Tools | PLC logic, RTOS kernels, static analysis tools |

It covers both application software and supporting tools, including compilers, test frameworks, and configuration managers.

🧠 Key Concepts in EN 50128

1. Software Safety Integrity Levels (SSIL)

Software is classified into SSIL levels (0 to 4) based on the severity of potential failure. Higher SSIL demands stricter development and testing processes.

2. Tool Classification

Development tools are categorized as:

- T1: No impact on executable code (e.g., text editors)

- T2: Used for verification (e.g., static analyzers)

- T3: Directly affect code (e.g., compilers)

3. Lifecycle Phases

EN 50128 mandates structured phases:

- Requirements capture

- Design and architecture

- Implementation

- Verification & validation

- Maintenance and change control

Each phase includes safety checks and documentation to ensure traceability and compliance.

✅ Why It Matters

Railway systems are unforgiving environments. A single software fault can lead to catastrophic consequences. EN 50128 helps:

- Prevent systematic errors

- Detect random hardware faults

- Ensure long-term reliability

- Meet international safety regulations

It’s not just a compliance checkbox—it’s a blueprint for building trustworthy, fault-tolerant software in rail transport.