EN 50128 "Applications ferroviaires - Systèmes de signalisation, de télécommunication et de traitement" / IEC 62279
Remarque : la norme EN 50128 a été remplacée par la norme EN 50657.
La norme européenne EN 50128 "Applications Ferroviaires - Systèmes de signalisation, de télécommunication et de traitement" spécifie les procédures et les exigences techniques pour le développement de systèmes électroniques programmables qui sont utilisés dans des applications de protection et de contrôle ferroviaire. IEC 62279 est la version internationale de EN 50128. Les deux normes sont identiques.
Au cours de tests de logiciels un rapport doit être établi et doit contenir entre autres des informations sur la couverture de test et un test complet (point 6.1.4.5).
Selon le processus de développement de logiciels, les outils de vérification et validation (comme des outils d´analyse statique et de couverture de test) ont besoin d´être choisi.
Le logiciel doit être analysable, testable, vérifiable et maintenable (point 7.5.1.1). La taille et la complexité du code source développé doit être bien équilibré (point 7.5.4.2).
Entre autres choses, il est obligatoire d´établir un rapport de test de composants logiciels avec une évaluation de la couverture de test pour chaque composant.
Couverture de test requis pour le code
Selon le niveau de sécurité intégrée (Security Integration Level, SIL) la norme EN 50128 exige qu´on teste les niveaux de couverture suivant (R signifie "recommandé", HR est synonyme de "fortement recommandé"):SIL 0 | SIL 1 | SIL 2 | SIL 3 | SIL 4 | |
1. Couverture des instructions (Statement Coverage) | R | HR | HR | HR | HR |
2. Couverture de branche (Branch Coverage) | - | R | R | HR | HR |
3. Conditions composée (MC/DC ou MCC-Coverage) | - | R | R | HR | HR |
4. Analyse de flux de données (Data Flow) | - | R | R | HR | HR |
5. Couverture des chemins d´exécution (Path Coverage) | - | R | R | HR | HR |
Pour tout code qui n´est pas adapté pour les tests, la correction peut être fait avec une autre méthode utile comme l´analyse des valeurs limites, des listes de vérification, l´analyse du flux de contrôle ou d´analyse de flux de données.
L´analyse de logiciel statique est fortement recommandé pour les niveaux de sécurité d´intégration 1-4.
Outils
La couverture des instructions, de branche, de condition / décision modifiée (MC/DC) et la couverture des conditions multiples (MCC) peuvent être mesurés par Testwell CTC++. Cet analyseur de couverture est appropriée pour les projet avec des codes C, C++, C# et Java.Pour mesurer la complexité du code pour des projets en C, C++, Java et C#, Testwell CMT++/Testwell CMTJava peuvent être utilisés.
L´analyse des flux de données, le contrôle de la couverture et d´analyse de code statique peut être fait avec CodeSecure CodeSonar®.
Certificat / Kit de qualification
Pour Testwell CTC++ 10.x nous fournissons un certificat de TÜV Süd Rail GmbH (couvrant tout SIL et ASIL des normes concernés).Alternativement (et pour DO-178C), un kit de qualification pour Testwell CTC++ (actuellement disponible pour version 9.x et antérieur) fournit de la documentation, des cas de test et des procédures qui vous permettent de qualifier l´analyseur de couverture Testwell CTC++ pour les projets basés sur les normes de sécurité DO-178C, EN-50128, IEC 61508, IEC 60880 et ISO 26262.




