Projet Industriel Identification des contraintes DO 178C en implémentant l approche «Model Based Testing» avec l aide de l outil MaTeLo Encadrement : Mihaela BARREAU Anthony FAUCOGNEY René Christian TUYISHIME Equipe de Travail: Anas EL MZRAA Mélanie DOUGAL Mohammed TAHIRI Rafik ESSABRI
L entreprise d accueil Charte Projet Outils - Approches Etude du logiciel Etude de la norme Conclusion 2
Présentation Objectifs et domaine d expertise Clients ALL4TEC est une société française fondée en 1998. 50 consultants Implantée dans 3 pays : France (2 sites), l Allemagne et la Suède. 3
Présentation Objectifs et domaine d expertise Clients Services d Etude et Conseil en: Sécurité des systèmes programmés Disponibilité et fiabilité des systèmes programmés complexes Ingénierie Systèmes complexes Amélioration des processus d ingénierie (CMMI/Cobit/ITIL) Test de systèmes embarqués complexes Solutions pour les Tests: MaTeLo Mélopée EXAM 4
Présentation Objectifs et domaine d expertise Clients Banques Télécom Automobile Ferroviaire Aéronautique Spatial Défense 5
Contexte Livrables Planification Analyse des risques Secteur : aéronautique Domaine : développement du logiciel avionique Activités : vérification et validation Model Driven Engineering Model Based Testing MaTeLo Model Based Design Scade V&V Conception & codage 6
Contexte Livrables Planification Analyse des risques Livrables : 1. Tutoriel d utilisation de MaTeLo & Scade 2. Méthodologie d utilisation de MaTeLo dans le cadre de développement d un logiciel avionique 3. Documentation sur les limites et contraintes de MaTeLo dans cette démarche 4. Documentation sur les propositions technologiques ou méthodologiques à évaluer pour résoudre les limites. 5. Article en Anglais (4-5 pages) résumant la démarche et les résultats Les missions 7
Contexte Livrables Planification Analyse des risques Familiarisation Charte Projet Tache 1 : Norme DO178 Tache 2 : Tuto MaTeLo +Scade 1j 1j 1j 1j 12 jours 3j 1j Formation Planification Méthodologie de l utilisation de MaTeLo dans l avionique Doc Anglais 8
Contexte Livrables Planification Analyse des risques 9
Outil Approche Référentiel MaTeLo = Markov Test Logic Outil de Test Statistique d usage (Probabilité d usage, Profil d usage ) Générateur de Campagne de Tests fonctionnels (Stratégie Boite Noire) Basé sur l approche Model Based Testing (Test basé sur le modèle) Utilise des Processus Markoviens Test de Validation Tests effectués sur la totalité du système 10
Outil Approche Référentiel Model Based Testing Objectif de la démarche : Modélisation de test des exigences Génération automatique des cas de test. Couramment implémentée dans l industrie automobile et ferroviaire. Devra suivre un processus plus contraint dans le cadre de développement logiciel avionique. 11
Outil Approche Référentiel DESIGN implementation Functional Requirements TEST Scenario Design Model Code Code MaTeLo Boost your test efficiency MaTeLo Boost your test efficiency Model Based Testing Usage Model Test Cases Generation compilation EXE Test Environment Test Scripts Traduction MaTeLo, son concept et son approche MBT_ Anthony FAUCOGNEY 12
Outil Approche Référentiel DO-178 EUROCAE (Organisation européenne pour l équipement de l aviation civile) et RTCA Inc (Radio Technical Commission for Aeronautics) «Software Considerations in Airborne Systems and Equipment Certification» Fixe les conditions de sécurité applicables aux logiciels critiques de l avionique Descriptions des activités Descriptions des preuves 13
Outil Approche Référentiel DO-178 Niveau de criticité = Design Assurance Level : Niveau de criticité A - Catastrophique B Dangereuse C Majeur D - Mineur E Sans effet Description Crash de l avion Dégâts sérieux voire la mort de quelques occupants Dysfonctionnement des équipements vitaux de l appareil Perturbation de la sécurité du vol Sans effet sur la sécurité 14
Outil Approche Référentiel Complément à la DO-178B Version C Qualification des outils : DO-330 Modèles de développement : DO-331 Approches Orientées Objet : DO-332 Méthodes Formelles : DO-333 Sortie en Décembre 2011 Revue en Mai 2012 15
Intro Outils Plan Approches Tutoriel Référentiels Méthodologie Tutoriel : Ce Tutorial consiste à expliciter aux utilisateurs de MaTeLo et de Scade, comment modéliser grâce à cet outil. «Mode Opératoire» Méthodologie : Méthodologie d utilisation dans le cadre de développement d un logiciel avionique. Plus générique, pas de démarche, pas de manipulation. 16
Intro Outils Plan Approches Tutoriel Référentiels Méthodologie 1. Fonctions de MaTeLo Editor Création des transitions et des états Gestion des données Gestion de profils d usage Gestion d exigences Définition des propriétés d automatisation Création et association de fonctions de test Scade Utilisation des fonctions de transfert 2. Fonctions de MaTeLo Testor Les algorithmes La génération des cas de test 3. Scade Interfaçage 4. Etude de Cas Tutoriel Méthodologie 1. Rappels Pourquoi le test logiciel? Stratégies de tests Model Based Testing 2. Modéliser avec MaTeLo Comment modéliser? Gestion des données Gestion des exigences Profils Attributs Eléments d automatisation de Test 3. Testor Généralités Utilisation Model Checking Générations de compagnes de test 17
Intro Outils Plan Approches Tutoriel Référentiels Méthodologie 18
Intro Plan Tutoriel Méthodologie 19
Intro Plan Tutoriel Méthodologie 20
Intro Plan Tutoriel Méthodologie *Tool Command Language *Expected Result Automatic 21
Intro Plan Tutoriel Méthodologie GENERATION DES TESTS 22
Intro Plan Tutoriel Méthodologie RAPPORT DE GENERATION 23
Intro Plan Tutoriel Méthodologie 24
Intro Plan Tutoriel Méthodologie 25
Intro Plan Tutoriel Méthodologie 26
Intro Plan Tutoriel Méthodologie 27
Intro Plan Tutoriel Méthodologie 28
Intro Plan Tutoriel Méthodologie ALL4TEC 29
Intro Plan Tutoriel Méthodologie ALL4TEC 30
Intro Plan Tutoriel Méthodologie ALL4TEC 31
Intro Plan Tutoriel Méthodologie ALL4TEC 32
Intro Les limites Les propositions Les paragraphes correspondant au champ d application du logiciel MaTeLo 6.3.1 : Reviews and analyses of High-Level Requirements 6.3.2 : Reviews and analyses of Low-Level Requirements 6.4.2.1 : Normal Range Test Cases 6.4.2.2 : Robustness Test Cases 6.4.3 : Requirements based testing methods 6.4.4.1 : Requirements based test coverage analysis 6.4.4.2 : Structural coverage analysis 6.4.5 : Reviews and analyses of test cases, procedures, and results 6.5 : Software verification process traceability 11.13 : Software verification cases and procedures 11.14 : Software verification results 33
Intro Les limites Les propositions Les exigences en termes de tests de robustesse Valeurs de classes d équivalence invalides Transitions non permises par les spécifications Modes de panne des données d entrée Débordement de capacité arithmétique Boucle avec indice calculé Temps de calculs excessifs 34
Intro Les limites Les propositions Mode de panne Rappel objectif : Identifier les modes de pannes des données d entrée Ajouter une zone de texte permettant de saisir ou de choisir le type de panne. Ce mode de panne pourra également réapparaitre lors de l attribution de la donnée d entrée à une transition. 35
Intro Les limites Les propositions Temps excessif de calcul Rappel objectif : vérifier que les mécanismes de protection contre les temps de calculs excessifs répondent correctement Ajouter une zone de texte Saisie d un temps excessif à la génération du test Si dépassement de la limite, ouverture d un message d erreur «Temps de calcul dépassé!» Arrêt de la génération du test 36
Intro Les limites Les propositions Initialisation du système Rappel objectif : effectuer l'initialisation du système avec des conditions anormales Aujourd hui fait avec des profils d usage. Il serait intéressant de pouvoir choisir le type de test de robustesse : conditions initiales anormales, valeurs de classes d équivalence invalides 37
Intro Les limites Les propositions Conformité à DO-330 Nouveau document : Qualification des outils 5 niveaux de qualification pour les outils allant de TQL1 à TQL5. 38
Intro Les limites Les propositions Interface avec Scade Il faudrait réfléchir à un éventuel menu à ajouter dans File, qui serait «Import Project Scade» Lors de l importation du projet, récupération de : Entrées/sorties Types Exigences 39
Apports entreprise Travail à poursuivre Quelques points au niveau tests de robustesse à vérifier pour la conformité DO-178C Vérifier la conformité à la DO-330 Clients Documents d aide à la manipulation Compréhension générale du contexte Consultants Audit réalisé Vision d améliorations à effectuer Article : diffusion internationale de la démarche du projet 40
Bilans personnels 1 ère expérience dans le milieu du logiciel Approfondissement norme DO-178 Découverte du logiciel MaTeLo Approche MBT Amélioration anglais technique Travail de groupe Répartition des tâches Partage de connaissances 41
Merci Mohammed TAHIRI, Mélanie DOUGAL, Rafik ESSABRI, Anas EL MZRAA