1.1 This European Standard specifies the process and technical requirements for the development of
software for programmable electronic systems for use in railway control and protection applications. It is
aimed at use in any area where there are safety implications. These systems can be implemented using
dedicated microprocessors, programmable logic controllers, multiprocessor distributed systems, larger scale
central processor systems or other architectures.
1.2 This European Standard is applicable exclusively to software and the interaction between software and
the system of which it is part.
1.3 This European Standard is not relevant for software that has been identified as having no impact on
safety, i.e. software of which failures cannot affect any identified safety functions.
1.4 This European Standard applies to all safety related software used in railway control and protection
– application programming,
– operating systems,
– support tools,
Application programming comprises high level programming, low level programming and special purpose
programming (for example: Programmable logic controller ladder logic).
1.5 This European Standard also addresses the use of pre-existing software and tools. Such software may
be used, if the specific requirements in 18.104.22.168 and 22.214.171.124 on pre-existing software and for tools in 6.7 are
1.6 Software developed according to any version of this European Standard will be considered as compliant
and not subject to the requirements on pre-existing software.
1.7 This European Standard considers that modern application design often makes use of generic software
that is suitable as a basis for various applications. Such generic software is then configured by data,
algorithms, or both, for producing the executable software for the application. The general Clauses 1 to 6 and
9 of this European Standard apply to generic software as well as for application data or algorithms. The
specific Clause 7 applies only for generic software while Clause 8 provides the specific requirements for
application data or algorithms.
1.8 This European Standard is not intended to address commercial issues. These should be addressed as
an essential part of any contractual agreement. All the clauses of this European Standard will need careful
consideration in any commercial situation.
1.9 This European Standard is not intended to be retrospective. It therefore applies primarily to new
developments and only applies in its entirety to existing systems if these are subjected to major modifications.
For minor changes, only 9.2 applies. The assessor has to analyse the evidences provided in the software
documentation to confirm whether the determination of the nature and scope of software changes is
adequate. However, application of this European Standard during upgrades and maintenance of existing
software is highly recommended.