L’ingénierie des tests et de la validation

L’ingénierie des tests et de la validation GIN4108

Enseignant:

Email:

Durée totale du cours: 22.5 H

Option concernée :

Semestre : 3

Nombre de crédits : 2

Modules

spécialisés

Modules de

base

Sciences et techniques de

l’ingénierie

Préparation à la carrière professionnelle
    X             

 

Nombre d’heures Activités hors classe
22.5 18
cours TD TP
22.5  

Sommaire:

L’ingénierie des tests et de la validation en génie logiciel est un domaine de l’informatique qui se concentre sur la planification, la conception, l’exécution et l’analyse de tests pour s’assurer de la qualité et de la fiabilité des logiciels développés. C’est un processus essentiel tout au long du cycle de vie du développement logiciel, visant à identifier et à corriger les erreurs, les bogues et les problèmes de performance dans le logiciel.

 

Code GIN4108 L’ingénierie des tests et de la validation

 

Volume Horaire    : 1 h30 de  Cours intégrés + 00h:00 Travaux pratiques (par semaine)

Objectifs :

Ce cours couvre les principaux aspects de l’Ingénierie des Tests et de la Validation en Génie Logiciel.

Sujets couverts :

Semaine 1-2 : Introduction à l’Ingénierie des Tests et à la Validation

  • Objectifs de l’ingénierie des tests
  • Processus de validation et de vérification
  • Types de tests logiciels
  • Le cycle de vie des tests

Semaine 3-4 : Planification des Tests

  • Élaboration d’un plan de test
  • Stratégies de test
  • Identification des besoins en ressources
  • Planification des tests dans le cycle de développement

Semaine 5-6 : Conception des Tests

  • Spécification des exigences de test
  • Conception des cas de test
  • Sélection de données de test
  • Élaboration de plans de test détaillés

Semaine 7-8 : Exécution des Tests

  • Environnements de test
  • Exécution des cas de test
  • Suivi des résultats de test
  • Gestion des anomalies

Semaine 9-10 : Automatisation des Tests

  • Raisons de l’automatisation des tests
  • Sélection des outils d’automatisation
  • Développement de scripts de test automatisés
  • Intégration de l’automatisation dans le processus de test

Semaine 11-12 : Tests de Performance et de Charge

  • Compréhension des tests de performance
  • Mesure des performances
  • Simulation de charge
  • Analyse des résultats et optimisation

Semaine 13-14 : Tests de Sécurité et de Fiabilité

  • Concepts de tests de sécurité
  • Détection des vulnérabilités
  • Tests de fiabilité et de robustesse
  • Méthodes de sécurité dans le développement logiciel

Semaine 15-16 : Documentation des Tests et Gestion de la Qualité

  • Rapports de test
  • Gestion de la qualité et des indicateurs de qualité
  • Analyse post-mortem des tests
  • Intégration de l’ingénierie des tests dans le cycle de développement

Évaluation et Projets :

  • Évaluations régulières tout au long du cours
  • Projet pratique d’ingénierie des tests sur un logiciel réel
  • Examen final sur l’ensemble du contenu du cours

Méthodes d’enseignement et d’apprentissage

  • Enseignement frontal (magistral) avec des exemples à résoudre en commun.
  • Exercices théoriques et études de cas (présentation et discussion).
  • Apprentissage mixte et classe inversée
  • MOOC & Google Classroom

Connaissances et compétences pré-requises

Références bibliographiques

  • Un support de cours de l’enseignant sera

Modalité d’évaluation

  • 40% Contrôle continu (TP noté, Test, Assiduité, Devoir surveillé, travaux non présentiel, …)
  • 60% Examen semestriel

Résultats d’apprentissage :

A l’issue de ce cours, l’apprenant aura les compétences suivantes :

Compétences techniques :

  1. Conception de Tests : Les étudiants seront capables de concevoir des plans de test complets pour évaluer la qualité des logiciels, y compris la définition des cas de test, des données de test et des scénarios de test.
  2. Automatisation des Tests : Ils apprendront à automatiser des tests logiciels en utilisant des outils et des frameworks pertinents, ce qui permettra une exécution efficace et reproductible des tests.
  3. Gestion des Bugs : Les étudiants sauront identifier, signaler et suivre les anomalies (bugs) dans un processus de développement logiciel.
  4. Stratégies de Validation : Ils comprendront les différentes stratégies de validation, y compris les tests fonctionnels, les tests de performance, les tests de sécurité, etc.
  5. Utilisation d’outils de Test : Ils seront familiers avec divers outils de test, tels que des environnements de test, des outils de suivi des problèmes, des simulateurs, etc.
  6. Analyse de la Qualité du Logiciel : Les étudiants seront capables d’analyser la qualité du logiciel en utilisant des métriques et des techniques d’évaluation appropriées.

Compétences transversales :

  1. Communication : Les étudiants développeront leurs compétences en communication pour expliquer clairement les résultats des tests et collaborer efficacement avec les membres de l’équipe de développement.
  2. Travail en équipe : Ils apprendront à travailler en équipe dans un environnement de développement logiciel, en coordonnant leurs efforts avec d’autres ingénieurs et testeurs.
  3. Gestion du Temps : La gestion efficace du temps sera essentielle pour planifier et exécuter des tests dans le cadre de projets logiciels.
  4. Résolution de Problèmes : Les étudiants acquerront des compétences en résolution de problèmes pour identifier, isoler et résoudre les problèmes de qualité logicielle.
  5. Gestion de la Qualité : Ils comprendront l’importance de la gestion de la qualité tout au long du cycle de vie du logiciel et sauront comment intégrer les tests et la validation dans ce processus.
  6. Éthique Professionnelle : Les étudiants seront sensibilisés à l’éthique professionnelle, y compris la confidentialité des données et le respect des normes de qualité.
  7. Adaptabilité : Ils seront prêts à s’adapter aux évolutions technologiques et aux changements de besoins dans l’industrie du génie logiciel

Laisser un commentaire

Défiler vers le haut
Need Help? Chat with us