Shopping Cart

No products in the cart.

BS EN 50657:2017

$215.11

Railways Applications. Rolling stock applications. Software on Board Rolling Stock

Published By Publication Date Number of Pages
BSI 2017 144
Guaranteed Safe Checkout
Category:

If you have any questions, feel free to reach out to our online customer service team by clicking on the bottom right corner. We’re here to assist you 24/7.
Email:[email protected]

1.1

This European Standard specifies the process and technical requirements for the development of software for programmable electronic systems for use in rolling stock applications.

Outside the scope of this standard is software that:

  • is part of signalling equipment (CENELEC sub-committee SC9XA applications) installed on board trains, or

  • does not contribute to, and is segregated from Rolling Stock operational functions.

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

Entry intentionally left empty

1.4

This European Standard applies to safety-related as well as non-safety-related software, including for example:

  • application programming,

  • operating systems,

  • support tools,

  • firmware.

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 7.3.4.7 and 6.5.4.16 on pre-existing software and for tools in 6.7 are fulfilled.

1.6

Software developed according to a valid version of EN 50128 is considered as compliant to this standard. Software previously developed in accordance with any version of EN 50128 is also considered as compliant and not subject to the requirements on pre-existing software. For SIL1-SIL4 software under the scope of this standard, requirements included in this European Standard are equivalent to the SIL1-SIL4 software requirements of EN 50128:2011.

1.7

This European Standard considers that modern application design often makes use of software that is suitable as a basis for various applications. Such software is then configured by application data for producing the executable software for the application. This European Standard applies to such software. In addition, specific requirements for application data will be given.

1.8

Entry intentionally left empty.

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. However, application of this European Standard during upgrades and maintenance of existing software is recommended.

1.10

The relevant sections of this software standard are also applicable to programmable components (e.g. FPGA and CPLD), in addition to the applicable hardware standard (e.g. EN 50129, EN 50155, EN 61508-2). However, requirements of this software standard that are already covered by the applicable hardware standard do not need to be re-addressed.

When it is possible to exhaustively test the programmable logic for all possible inputs and internal logic states, this European Standard does not apply.

PDF Catalog

PDF Pages PDF Title
2 National foreword
14 1 Scope
15 2 Normative references
3 Terms, definitions and abbreviations
3.1 Terms and definitions
21 3.2 Abbreviations
22 4 Objectives, conformance and software integrity levels
23 5 Software management and organization
5.1 Organization, roles and responsibilities
5.1.1 Objective
5.1.2 Requirements
27 5.2 Personnel competence
5.2.1 Objectives
5.2.2 Requirements
5.3 Lifecycle issues and documentation
5.3.1 Objectives
5.3.2 Requirements
30 6 Software assurance
6.1 Software testing
6.1.1 Objective
6.1.2 Input documents
6.1.3 Output documents
31 6.1.4 Requirements
6.2 Software verification
6.2.1 Objective
32 6.2.2 Input documents
6.2.3 Output documents
6.2.4 Requirements
33 6.3 Software validation
6.3.1 Objective
6.3.2 Input documents
6.3.3 Output documents
34 6.3.4 Requirements
35 6.4 Software assessment
6.4.1 Objective
6.4.2 Input documents
6.4.3 Output documents
6.4.4 Requirements
37 6.5 Software quality assurance
6.5.1 Objectives
6.5.2 Input documents
6.5.3 Output documents
6.5.4 Requirements
40 6.6 Modification and change control
6.6.1 Objectives
6.6.2 Input documents
6.6.3 Output documents
6.6.4 Requirements
41 6.7 Support tools and languages
6.7.1 Objectives
6.7.2 Input documents
6.7.3 Output documents
6.7.4 Requirements
44 7 Software development
7.1 Lifecycle and documentation for software
7.1.1 Objectives
7.1.2 Requirements
7.2 Software requirements
7.2.1 Objectives
7.2.2 Input documents
45 7.2.3 Output documents
7.2.4 Requirements
47 7.3 Architecture and Design
7.3.1 Objectives
7.3.2 Input documents
7.3.3 Output documents
48 7.3.4 Requirements
54 7.4 Component design
7.4.1 Objectives
7.4.2 Input documents
7.4.3 Output documents
7.4.4 Requirements
56 7.5 Component implementation and testing
7.5.1 Objectives
7.5.2 Input documents
7.5.3 Output documents
7.5.4 Requirements
57 7.6 Integration
7.6.1 Objectives
7.6.2 Input documents
7.6.3 Output documents
58 7.6.4 Requirements
59 7.7 Overall Software Testing / Final Validation
7.7.1 Objectives
7.7.2 Input documents
7.7.3 Output documents
60 7.7.4 Requirements
61 7.8 Development of Software configured by application data
7.8.1 Objective
7.8.2 Requirements
62 8 Systems configured by application data: development of application data
8.1 Objectives
8.2 Input documents
63 8.3 Output documents
8.4 Requirements
8.4.1 Application Development Process
64 8.4.2 Application Requirements Specification
8.4.3 Architecture and Design
65 8.4.4 Application Data Production
8.4.5 Application Integration and Testing
66 8.4.6 Application Validation and Assessment
8.4.7 Application preparation procedures and tools
9 Software deployment and maintenance
9.1 Software deployment
9.1.1 Objective
9.1.2 Input documents
9.1.3 Output documents
67 9.1.4 Requirements
68 9.2 Software maintenance
9.2.1 Objective
9.2.2 Input documents
9.2.3 Output documents
69 9.2.4 Requirements
71 Annex A (normative)Criteria for the Selection of Techniques and Measures
A.1 General
72 A.2 Clauses tables
79 A.3 Detailed tables
84 Annex B (normative)Key software roles and responsibilities
97 Annex C (informative)Documents Control Summary
99 Annex D (informative)Bibliography of techniques
D.1 Artificial Intelligence Fault Correction
D.2 Analysable Programs
100 D.3 Avalanche/Stress Testing
D.4 Boundary Value Analysis
101 D.5 Backward Recovery
D.6 Cause Consequence Diagrams
D.7 Checklists
102 D.8 Control Flow Analysis
D.9 Common Cause Failure Analysis
D.10 Data Flow Analysis
103 D.11 Data Flow Diagrams
D.12 Data Recording and Analysis
104 D.13 Decision Tables and Truth Tables
D.14 Defensive Programming
105 D.15 Coding Standards and Style Guide
106 D.16 Diverse Programming
107 D.17 Dynamic Reconfiguration
D.18 Equivalence Classes and Input Partition Testing
108 D.19 Error Detecting and Correcting Codes
D.20 Error Guessing
D.21 Error Seeding
109 D.22 Event Tree Analysis
D.23 Fagan Inspections
D.24 Failure Assertion Programming
110 D.25 SEEA – Software Error Effect Analysis
D.26 Fault Detection and Diagnosis
111 D.27 Finite State Machines/State Transition Diagrams
112 D.28 Formal Methods
D.28.1 General
D.28.2 CSP – Communicating Sequential Processes
113 D.28.3 CCS – Calculus of Communicating Systems
D.28.4 HOL – Higher Order Logic
D.28.5 LOTOS
D.28.6 OBJ
114 D.28.7 Temporal logic
D.28.8 VDM – Vienna Development Method
115 D.28.9 Z method
D.28.10 B method
116 D.28.11 Model Checking
D.29 Formal Proof
D.30 Forward Recovery
117 D.31 Graceful Degradation
D.32 Impact Analysis
D.33 Information Hiding / Encapsulation
118 D.34 Interface Testing
D.35 Language Subset
D.36 Memorizing Executed Cases
119 D.37 Metrics
D.38 Modular Approach
120 D.39 Performance Modelling
D.40 Performance Requirements
121 D.41 Probabilistic Testing
D.42 Process Simulation
122 D.43 Prototyping / Animation
D.44 Recovery Block
D.45 Response Timing and Memory Constraints
D.46 Re-Try Fault Recovery Mechanisms
123 D.47 Safety Bag
D.48 Software Configuration Management
D.49 Strongly Typed Programming Languages
124 D.50 Structure Based Testing
D.51 Structure Diagrams
125 D.52 Structured Methodology
D.53 Structured Programming
126 D.54 Suitable Programming languages
127 D.55 Time Petri Nets
D.56 Walkthroughs / Design Reviews
D.57 Object Oriented Programming
128 D.58 Traceability
D.59 Metaprogramming
129 D.60 Procedural programming
D.61 Clause intentionally left empty
D.62 Clause intentionally left empty
D.63 Clause intentionally left empty
D.64 Clause intentionally left empty
D.65 Data modelling
130 D.66 Control Flow Diagram/Control Flow Graph
131 D.67 Sequence diagram
D.68 Tabular Specification Methods
132 D.69 Application specific language
D.70 UML (Unified Modelling Language)
133 D.71 Domain specific languages
D.72 Segregation
135 Annex E (informative)Changes in this European Standard compared to EN 50128:2011
141 Annex ZZ (informative)Relationship between this European Standard and the Essential Requirements of EU Directive 2008/57/EC
BS EN 50657:2017
$215.11