Simulink Check
Mesurer la qualité du design, suivre les activités de vérification et vérifier le respect des normes
Simulink Check™ analyse vos modèles, exigences et tests pour évaluer la qualité du design et la conformité aux normes. L'outil propose des règles de vérification et des métriques reconnues dans l’industrie permettant d'identifier les violations des normes et des directives de modélisation lors du développement. Les normes de développement de logiciels critiques supportées sont les suivantes : ISO 26262, DO-178C, DO-254, IEC 61508, ISO 25119 et IEC 62304. L'outil tient également compte des directives de style du MathWorks Advisory Board (MAB). Simulink Check couvre aussi des normes de codage sécurisé comme CERT C, CWE et ISO/IEC TS 17961. Vous pouvez créer des règles de vérification personnalisées afin d'assurer la conformité à vos propres normes ou directives internes. Les vérifications en cours d'édition permettent d'identifier les problèmes de conformité lors de la création du modèle.
Simulink Check propose des métriques comme la taille et la complexité, que vous pouvez utiliser pour évaluer le statut et la qualité de votre design. Le tableau de bord de tests de modèles regroupe les données de vos activités de test basées sur les exigences, afin de suivre les statuts des tests. La refactorisation automatique de modèles vous permet de remplacer les clones de modélisation, de réduire la complexité du design et d'identifier les contenus réutilisables. L'outil Model Slicer isole les comportements problématiques dans les modèles et génère des modèles simplifiés pour le débogage.
Le support des normes industrielles est assuré via l'IEC Certification Kit (for ISO 26262 and IEC 61508) et le DO Qualification Kit (for DO-178 and DO-254).
En savoir plus :
Ressources gratuites
Automatiser la vérification et la validation avec Simulink
Vérifications prêtes à l'emploi pour le développement de logiciels critiques
Pour améliorer la qualité et la sécurité des modèles et du code généré, Simulink Check propose des règles préconfigurées pour le respect des normes industrielles telles que ISO 26262, DO-178C, DO-331, DO-254, IEC 61508, ISO 25119 et EN 50128, ainsi que la norme MISRA C:2012, les directives de style du MathWorks Advisory Board (MAB), la norme IEC 62304 pour le développement de logiciels critiques et les normes de codage sécurisé comme CERT C, CWE et ISO/IEC TS 17961.
Identifier et corriger les erreurs en cours d'édition
Tout comme la vérification orthographique vous permet d'éviter les fautes d'orthographe dans un document, la vérification en cours d'édition vous avertit des violations au fur et à mesure que vous créez le modèle. Vous pouvez corriger les erreurs au fur et à mesure afin d'éviter les remaniements coûteux et la mise en œuvre de nouveaux tests à un stade plus avancé du processus de développement.
Configurer, personnaliser et automatiser les vérifications du modèle
Pour assurer la conformité de votre modèle aux normes ou directives de votre organisation, vous pouvez personnaliser des règles de vérification et des configurations de modélisation avec des API de Model Advisor et Model Advisor Configuration Editor. Vous pouvez exécuter les vérifications sur plusieurs machines en parallèle pour accélérer la vérification de la conformité.
Vérifier la conformité aux normes de sécurité
Pour réduire les problèmes de conformité dans votre code généré pour CERT C, CWE et ISO/IEC TS 17961, vous pouvez vérifier votre modèle pour identifier les éléments de modélisation susceptibles de violer les normes de codage. Avec la vérification en cours d'édition, vous identifiez d'éventuels problèmes, comme l'ajout d'un bloc ne respectant pas des normes de codage sécurisé, au fur et à mesure du développement.
Collecter des métriques pour mesurer la qualité du modèle
Simulink Check collecte des métriques du modèle que vous pouvez utiliser pour évaluer l'architecture, la complexité et la lisibilité de votre modèle conformément aux normes ISO 26262, DO-178C, DO-331, DO-254, IEC 61508, IEC 62304, EN 50128 et autres.
Afficher les métriques consolidées dans un tableau de bord
Le Metrics Dashboard intègre diverses métriques portant notamment sur la taille du modèle, les lignes de code, l'état de conformité aux directives, la réutilisation et la complexité de votre modèle dans une vue unique, qui vous donne une vision globale de la qualité de votre projet. Utilisez le tableau de bord pour vérifier la qualité de votre design et le respect des normes lorsque vous passez en revue votre modèle.
Métriques de test basées sur les exigences
Le Model Testing Dashboard vous donne un aperçu de la qualité et de l'exhaustivité de vos tests basés sur les exigences, et intègre les directives de normes reconnues par l'industrie pour le développement de logiciels, notamment ISO 26262 et DO-178. Il analyse les artefacts d'un projet provenant de multiples sources et outils comme les exigences, les modèles et les résultats de tests, et propose des métriques détaillées sur leur état.
Les widgets du tableau de bord résument chaque métrique pour évaluer rapidement les résultats actuels des tests, notamment le respect des directives, l'achèvement des tests pour les exigences et le pourcentage d'exigences couvertes par les tests.
Passer en revue et gérer les artefacts des tests basés sur les exigences
Le Model Testing Dashboard analyse les artefacts et les liens de traçabilité au sein de votre projet et montre les exigences fonctionnelles, les cas de test et les résultats des tests pour chaque composant de votre projet dans le volet Artifacts. Les artefacts sans traçabilité par rapport aux modèles sont mis en évidence pour vous aider à identifier les lacunes dans l'implémentation ou la vérification.
Évaluer l'exhaustivité des tests conformément à la norme ISO 26262
Utilisez le Model Testing Dashboard pour évaluer la qualité et l'exhaustivité de vos activités de test basées sur les exigences, conformément à la norme ISO 26262-6:2018. Le tableau de bord contrôle la traçabilité entre les exigences, les tests et les résultats des tests. Il analyse les artefacts d'implémentation et de vérification dans votre projet et propose des mesures d'exhaustivité et de qualité pour les cas de test basés sur les exigences et les résultats des tests, conformément à la norme ISO 26262-6:2018. Le tableau de bord organise les exigences, les cas de test et les résultats des tests en fonction des modèles auxquels ils renvoient, ce qui vous donne un aperçu de l'exhaustivité des tests et de la couverture structurelle de chaque unité.
Mettre en évidence les dépendances
Model Slicer s'appuie sur une analyse statique des dépendances pour mettre en évidence les interdépendances entre les blocs, les signaux et les composants du modèle. Il se fonde également sur une analyse dynamique des dépendances basée sur le comportement actif lors de la simulation pour vous aider à mieux comprendre les dépendances fonctionnelles dans un modèle de grande taille ou complexe.
Débogage des erreurs de conception et les échecs de tests
En cas d'échec d'un test dans Simulink Test™ ou d'identification d'une violation de propriété dans Simulink Design Verifier™, commencez le débogage avec Model Slicer pour isoler la cause de l'erreur et résoudre le problème plus rapidement.
Créer des modèles autonomes simplifiés
Model Slicer est en mesure d'isoler une partie du modèle compte tenu d'un point de départ spécifié par l'utilisateur, de signaux enregistrés ou d'une fenêtre temporelle de simulation, puis de l'enregistrer sous la forme d'un modèle plus petit qui préserve le comportement de simulation pour faciliter le débogage et améliorer les performances.
Découpage temporel basé sur l'activité avec Stateflow
La mise en évidence d'un modèle peut être limitée aux intervalles de temps de simulation sur lesquels seuls certains états et transitions sélectionnés dans Stateflow® sont simultanément actifs lors d'une simulation; ceci afin d'isoler le comportement d'intérêt.
Identifier et refactoriser les clones de modélisation
L'outil Identify Modeling Clones permet d'analyser un modèle pour identifier des patterns de modélisation dupliqués. Ces clones peuvent ensuite être refactorisés automatiquement avec une bibliothèque réutilisable afin d'améliorer la maintenabilité et de réduire la complexité des designs.
Transformer les modèles pour améliorer la réutilisation des composants et la lisibilité des modèles
L'outil Model Transformer permet d'identifier des patterns de modélisation susceptibles d'être transformés en blocs Variant Source ou Variant Subsystem pour refactoriser le modèle en vue d'améliorer sa subdivision et sa réutilisation. Il est capable d'identifier les blocs Data Store qu'il est possible d'éliminer afin d'améliorer la lisibilité.
Model Testing Dashboard
Suivez l'état de réalisation des tests basés sur les exigences pour le contrôle de la conformité aux normes telles que ISO 26262
Workflow de débogage d'erreurs
Identifiez avec Model Slicer les composants de modèle qui ont une incidence sur la défaillance des signaux lors d'un test de référence ou qui provoquent des erreurs de design telles qu'un dépassement
Contrôles ISO 25119
Vérifiez la conformité à la norme ISO 25119
Éditeur d'exclusions de Model Advisor
Editez et gérez des exclusions avec une nouvelle version de l'éditeur qui est maintenant personnalisable
Performances du contrôle des métriques dans Model Advisor
Collectez et analysez plus rapidement des données de métriques de modèle grâce à des métriques simplifiées de la profondeur du sous-système et la complexité cyclomatique
Détection de clone
Refactorisez les modèles en remplaçant les clones exacts avec des blocs de référence de sous-système
Contrôle de systèmes critiques
Détectez les violations des directives pour les systèmes critiques avec Simulink Design Verifier
Instructions MAB/JMAAB
Sélectionnez les sous-identifiants des instructions individuelles pour un contrôle plus précis des vérifications des directives
Consultez les notes de version pour en savoir plus sur ces fonctionnalités et les fonctions correspondantes.
11 bonnes pratiques pour le développement d'applications ISO 26262 avec Simulink
Gérez la complexité de l'interface des modèles et les échanges de données. Générez du code avec séparation des fichiers et sans interférence. Soyez globalement plus efficace dans les phases de vérification, de validation et de documentation.