I - Introduction II - Description des lots III - Intégration et tests IV - Bilan
Pièce défectueuse si strictement différente de la valeur indiquée dans le lot Arrivée des pièces chaque seconde TimeOut manque de pièces : 5 sec Pas de gestion de l'arrivée des cartons Reprise sur erreur d'impression => réparation des 2 imprimantes Imprimante 1 prioritaire sur la 2 1 imprimante en panne => anomalie, 2 imprimantes en pannes => erreur Tentative d'ajout d'un 6e carton dans la file d'attente => erreur
Les lots sont faiblement couplés : maximum 2 IPC en communs ! Lot 1 Lot 2 : Lot 1 => Lot 2 : boite aux lettres "file de cartons" Lot 2 => Lot 1 : boite aux lettres "voyant" Lot 2 Lot 3 : Lot 2 => Lot 3 : boite aux lettres "sortie réseau" Lot 3 => Lot 2 : boite aux lettres "entrée réseau"
Choix pour la simulation : Watchdog pour génération de pièces API pour génération de pièces défectueuses API pour Arret d'Urgence Capteurs représentés par des structures de données Voyants représentés par une (seule) variable énumérée (Vert, Orange, Rouge)
Tests effectués : Carton plein Arrivée de pièces défectueuses ( seuil accepté ) Envoi carton aux imprimantes alors que la file est pleine Couleurs des voyants pour anomalies et erreurs
Choix pour la simulation : Imprimantes représentées par des structures de données Tests effectués : Scénario nominaux Une imprimante tombe en panne (anomalie) Deux imprimantes tombent en panne (erreur) Reprise depuis erreur
Client
Tests effectués : Tests de connexion Tests de validité des données de configuration Tests de réception de messages du serveur Tests d'envoi de messages au serveur
Tests unitaires Tests d'intégration intra-lot Tests d'intégration inter-lots Tests d'intégration totale Peer reviews Système de tickets => NON REGRESSION / CONFORMITE
Plan de tests o tests nominaux o tests limites Chaque tâche est considérée comme une boîte noire Tests de son interface (entrées/sorties/erreurs) : o les IPC Création de tâches de simulation dédiées => CONFORMITE de la tâche
Sur plusieurs niveaux : o intra-lot entre les deux membres d'un binôme => CONFORMITE du Lot o inter-lots Lot 1 Lot 2 => CONFORMITE de l'application sans le réseau o intégration totale Lot 1/Lot 2 Lot 3 (réseau) => CONFORMITE de l'application
Plan de tests et d'intégration respectés (conçus et codés) => intégration grandement facilitée, fiabilité Conception peu révisée Choix de conception facilitant l'évolutivité de l'application
Communication non clairement définie à la conception entre le serveur et le client Perte de temps considérable sur la cible...en vain !
Possibilité d'enchainer plusieurs lots IHM plus complète (exemples : filtrage des messages, progression du conditionnement d'un lot, etc.) Utiliser tout le potentiel de la cible : réseau, timer, interruptions