Test et cycle logiciel
|
|
- Camille Trudeau
- il y a 8 ans
- Total affichages :
Transcription
1 Test et cycle logiciel Fabrice Bouquet JDEV septembre 2013 INRIA / CNRS Université de Franche-Comté Fabrice Bouquet Test 1 / 59
2 Plan 1 Test 2 Test Structurel 3 Test fonctionnel 4 Calcul de données de tests 5 Synthèse Fabrice Bouquet Test 2 / 59
3 Plan Test Test Structurel Test fonctionnel Données Synthèse... Introduction 1 Test Introduction Dans les faits Dans le cycle de vie Bilan 2 Test Structurel Principe Couverture Bilan 3 Test fonctionnel Exemple Comment? 4 Calcul de données de tests Principe Analyse partitionnelle et test aux limites Approche combinatoire Test aléatoire/statistique 5 Synthèse Fabrice Bouquet Test 3 / 59
4 ... Introduction Validation & Vérification Qui/Pourquoi? Validation : Est-ce que le logiciel réalise les fonctions attendues? Vérification : Est-ce que le logiciel fonctionne correctement? Exemple de méthodes de V & V Test statique : Revue de code, de spécifications, de documents de design Test dynamique : Exécuter le code pour s assurer d un fonctionnement correct Vérification symbolique : Run-time checking, Exécution symbolique Vérification formelle : Preuve ou model-checking d un modèle formel, raffinement et génération de code Fabrice Bouquet Test 4 / 59
5 ... Introduction Pourquoi tester Motivation Ariane 5, Carte à puce en Allemagne, Réseau Orange... Complexité des comportements Erreur dans les spécifications, la conception, ou le programme Défaut (faute) dans le logiciel Défaillance (anomalie de fonctionnement) du programme Quelques chiffres Coût des bogues informatiques : 60 Milliards e/ an 22 Milliards économisés si processus tests Fabrice Bouquet Test 5 / 59
6 Test? Test Test Structurel Test fonctionnel Données Synthèse... Introduction IEEE (Standard Glossary of Software Engineering Terminology) "Le test est l exécution ou l évaluation d un système ou d un composant par des moyens automatiques ou manuels, pour vérifier qu il répond à ses spécifications ou identifier les différences entre les résultats attendus et les résultats obtenus". G. Myers (The Art of Software testing) "Tester, c est exécuter le programme dans l intention d y trouver des anomalies ou des défauts". Edsgar W. Dijkstra. Notes on structured programming. Academic Press, 1972 "Tester peut révéler la présence d une anomalie mais jamais son absence". Fabrice Bouquet Test 6 / 59
7 Plan Test Test Structurel Test fonctionnel Données Synthèse... Dans les faits 1 Test Introduction Dans les faits Dans le cycle de vie Bilan 2 Test Structurel Principe Couverture Bilan 3 Test fonctionnel Exemple Comment? 4 Calcul de données de tests Principe Analyse partitionnelle et test aux limites Approche combinatoire Test aléatoire/statistique 5 Synthèse Fabrice Bouquet Test 7 / 59
8 ... Dans les faits Réalité du test Le test est une activité de validation du logiciel Est-ce que le logiciel a été développé correctement en fonction des différentes exigences? Test est une activité pas très populaire Difficultés d ordre psychologique ou culturel : Le développement est constructif car on cherche à établir des résultats corrects Le test est destructif car un bon test est un test qui trouve une anomalie Cependant, le test est une activité centrale : C est un élément principal d amélioration de la qualité logiciel Il peut représenter jusqu à 60% du coût complet du logiciel : 1/3 durant le développement du logiciel 2/3 durant la maintenance du logiciel Fabrice Bouquet Test 8 / 59
9 ... Dans les faits Test dans les technologies de l information Maturité fonction QA/Test : passer d?une approche ad hoc vers une approche réfléchie et cohérente 1 : Top 4 des points d amélioration Europe de l ouest Choisir une méthodologie s intégrant dans un développement agile/composant. Fournir une couverture automatisée de test automatique pour permettre l agilité dans le test Plus se concentrer sur les aspects non-fonctionnels comme la performance, la disponibilité, la sécurité, etc Avoir une stratégie de test qui optimise l usage de services de tests (traditionnel ou cloud). 1. Source IDC European Services, Enterprise Application Testing Survey, March 2011 Fabrice Bouquet Test 9 / 59
10 Plan Test Test Structurel Test fonctionnel Données Synthèse... Dans le cycle de vie 1 Test Introduction Dans les faits Dans le cycle de vie Bilan 2 Test Structurel Principe Couverture Bilan 3 Test fonctionnel Exemple Comment? 4 Calcul de données de tests Principe Analyse partitionnelle et test aux limites Approche combinatoire Test aléatoire/statistique 5 Synthèse Fabrice Bouquet Test 10 / 59
11 ... Dans le cycle de vie Développement logiciel et Niveau de test Besoin%client% Test%d accepta)on% Exigences% Test%Système% Concep)on% Test%d intégra)on% Code% Test%unitaire% Fabrice Bouquet Test 11 / 59
12 ... Dans le cycle de vie Cycle de développement en V Fabrice Bouquet Test 12 / 59
13 ... Dans le cycle de vie Méthode Scrum Fabrice Bouquet Test 13 / 59
14 Coût Test Test Structurel Test fonctionnel Données Synthèse... Dans le cycle de vie Mise(en( produc'on( Mise(en( Prod.(1( Mise(en( Prod.(2( Mise(en( Prod.(3( Mise(en( Prod.(n( Coût( Concep'on( Développement( Test( Maintenance( Coût( Concep'on( Développement( Test( Etape(du(projet( Etape(du(projet( Fabrice Bouquet Test 14 / 59
15 ... Dans le cycle de vie Développement Guidé par les Tests (TDD) Développement Dirigé par les Tests Méthode de développement dans les méthodes agiles Préconise l écriture des tests avant le développement du code Début& Ajout&(test)& Refactoring& Exécu/on& Exécu/on& Codage& Fabrice Bouquet Test 15 / 59
16 Plan Test Test Structurel Test fonctionnel Données Synthèse... Bilan 1 Test Introduction Dans les faits Dans le cycle de vie Bilan 2 Test Structurel Principe Couverture Bilan 3 Test fonctionnel Exemple Comment? 4 Calcul de données de tests Principe Analyse partitionnelle et test aux limites Approche combinatoire Test aléatoire/statistique 5 Synthèse Fabrice Bouquet Test 16 / 59
17 ... Bilan Acteurs du test Deux situations : 1. Je teste un programme que j ai écrit 2. Je teste un programme que quelqu un d autre a écrit Trois questions : 1. Comment choisir la technique de test? boite blanche ou boite noire? 2. Comment obtenir le résultat attendu? problème de l oracle du test 3. Comment savoir quand arrêter la phase de test? problème de l arrêt Fabrice Bouquet Test 17 / 59
18 ... Bilan Test dynamique Cas(de( tests( Données( de(tests( Résultats( de(tests( Rapport( de(tests( Concep'on( des(tests( Prépara'on( des(données( de(tests( Exécu'on(du( programme( avec(tests( Comparaison( résultats( Fabrice Bouquet Test 18 / 59
19 ... Bilan Type de tests [J. Tretmans] Niveau de détail (situation dans le cycle de vie) système intégration unitaire fonctionnel robustesse performance ergonomie sûreté sécurité Bout en bout module Boite blanche Boite noire Caractéristiques (ce que l on veut tester) Niveau d accessibilité Fabrice Bouquet Test 19 / 59
20 Plan Test Test Structurel Test fonctionnel Données Synthèse... Principe 1 Test Introduction Dans les faits Dans le cycle de vie Bilan 2 Test Structurel Principe Couverture Bilan 3 Test fonctionnel Exemple Comment? 4 Calcul de données de tests Principe Analyse partitionnelle et test aux limites Approche combinatoire Test aléatoire/statistique 5 Synthèse Fabrice Bouquet Test 20 / 59
21 ... Couverture Test structurel - Exemple Algorithme 1: short prog3(i) A j = 1 Input : short i 1 short j, r ; B j = 1; while ( i> 0 ) do j = j * i; i = i - 1; if ( j > 1 ) then r = j; else if ( i < 0 ) then r = 0; else r = 1; return r; i > 0 C j = i*j i = i -1 i E R = j j > 1 D i < 0 G r = 0 j F i H r = 1 I return r Fabrice Bouquet Test 21 / 59
22 ... Couverture Test structurel - Tous-les-nœuds A j = 1 B i > 0 i C j = i*j i = i -1 j > 1 D j Données de tests : E R = j F i < 0 i G r = 0 H r = 1 I return r Fabrice Bouquet Test 22 / 59
23 ... Couverture Test structurel - Tous-les-nœuds A j = 1 B i > 0 i C j = i*j i = i -1 j > 1 D j Données de tests : DT1 : [i=1] A B C B D F H I E R = j F i < 0 i G r = 0 H r = 1 I return r Fabrice Bouquet Test 22 / 59
24 ... Couverture Test structurel - Tous-les-nœuds A j = 1 B i > 0 i C j = i*j i = i -1 j > 1 D j Données de tests : DT1 : [i=1] A B C B D F H I E R = j F DT2 : [i=-1] A B D F G I i < 0 i G r = 0 H r = 1 I return r Fabrice Bouquet Test 22 / 59
25 ... Couverture Test structurel - Tous-les-nœuds A j = 1 B i > 0 i C j = i*j i = i -1 j > 1 D j Données de tests : DT1 : [i=1] A B C B D F H I DT2 : [i=-1] A B D F G I E R = j F DT3 : [i=2] A B C B C B D E I i < 0 i G r = 0 H r = 1 I return r Fabrice Bouquet Test 22 / 59
26 ... Couverture Test structurel - Tous-les-arcs A j = 1 B i > 0 i C j = i*j i = i -1 j > 1 D j Données de tests : DT1 : [i=1] A B C B D F H I DT2 : [i=-1] A B D F G I E R = j F DT3 : [i=2] A B C B C B D E I i < 0 i G r = 0 H r = 1 I return r Fabrice Bouquet Test 23 / 59
27 ... Couverture Test structurel - Ts-chemins-indépendants A j = 1 B i > 0 C j = i*j i = i -1 i E R = j j > 1 D j F Nombre de McCabe ν(g) : nbre d arcs - nbre de nœuds + 2 ν(g) = = 4 DT1 : [i=1] A B C B D F H I DT2 : [i=-1] A B D F G I DT3 : [i=2] A B C B C B D E I i < 0 i DT4 : [i=0] A B D F H I G r = 0 H r = 1 I return r Fabrice Bouquet Test 24 / 59
28 ... Couverture Test structurel hiérarchie Tous les chemins Tous les DU-chemins Tous les i-chemins Tous les chemins indépendants Toutes les utilisations Toutes les définitions Toutes les P-Utilisations Tous les arcs (TER2) Tous les nœuds (TER1) Fabrice Bouquet Test 25 / 59
29 Plan Test Test Structurel Test fonctionnel Données Synthèse... Bilan 1 Test Introduction Dans les faits Dans le cycle de vie Bilan 2 Test Structurel Principe Couverture Bilan 3 Test fonctionnel Exemple Comment? 4 Calcul de données de tests Principe Analyse partitionnelle et test aux limites Approche combinatoire Test aléatoire/statistique 5 Synthèse Fabrice Bouquet Test 26 / 59
30 Bilan Test Test Structurel Test fonctionnel Données Synthèse... Bilan Bonne Pratique Une classe de code / Une classe de tests Test et classe dans le même "package" Les cas nominaux Les cas tordus / catastrophes Mauvaise Pratique Répertoire(s) mélangeant les sources et les tests Tests triviaux Effets de bord (ordre des tests, états dégradés) Fabrice Bouquet Test 27 / 59
31 Bilan Test Test Structurel Test fonctionnel Données Synthèse... Bilan En résumé, écrire des tests permet : Analyse fine ; Réduction des bogues ; Non-régression du code (refactoring) ; Documentation de votre code ; Développement plus serein ; Efficacité. = Si les tests sont écrits au fur et à mesure Fabrice Bouquet Test 28 / 59
32 ... Bilan Jenkins / Cobertura Fabrice Bouquet Test 29 / 59
33 Plan Test Test Structurel Test fonctionnel Données Synthèse... Exemple 1 Test Introduction Dans les faits Dans le cycle de vie Bilan 2 Test Structurel Principe Couverture Bilan 3 Test fonctionnel Exemple Comment? 4 Calcul de données de tests Principe Analyse partitionnelle et test aux limites Approche combinatoire Test aléatoire/statistique 5 Synthèse Fabrice Bouquet Test 30 / 59
34 ... Exemple Test fonctionnel - Exemple Spécification : "Formulaire d enregistrement pour un site web." Fabrice Bouquet Test 31 / 59
35 ... Exemple Test fonctionnel - Exemple Spécification : "Formulaire d enregistrement pour un site web." Login:'!ouquet' Password:' ******' Verifica7on:' ******' Register' Cancel' 5 Cases : 10 tests Login (non) vide (2) Login (n ) existe (pas) (2) Password (non) vide (2) Password et Verification (password réécrit) (ne) sont (pas) les mêmes (2) Protocole http(s) (2) Fabrice Bouquet Test 31 / 59
36 ... Exemple Test fonctionnel - Exemple Spécification : "Formulaire d enregistrement pour un site web." Login:'!ouquet' Password:' ******' Quality( Verifica7on:' ******' Register' Cancel' 6 Cases : 13 tests Login (non) vide (2) Login (n ) existe (pas) (2) Password (non) vide (2) Password et Verification (password réécrit) (ne) sont (pas) les mêmes (2) Protocole http(s) (2) Vérifier qualité / Résistance du password (1 par niveau) : poor, average, good Fabrice Bouquet Test 31 / 59
37 ... Exemple Test fonctionnel - Exemple Spécification : "Formulaire d enregistrement pour un site web." Login:'!ouquet' Password:' ******' Quality( Type'the'word:' Verifica7on:' ******' Register' Cancel' 7 Cases : 15 tests Login (non) vide (2) Login (n ) existe (pas) (2) Password (non) vide (2) Password et Verification (password réécrit) (ne) sont (pas) les mêmes (2) Protocole http(s) (2) Vérifier qualité / Résistance du password (3) Vérifier si enregistrement (non) humain (2) Fabrice Bouquet Test 31 / 59
38 ... Comment? Test fonctionnel Définition Le test fonctionnel vise à examiner le comportement fonctionnel d un logiciel et sa conformité avec la spécification ou les exigences du logiciel. Trois questions sous-jacentes Comment sélectionner des données de test (DT)? Comment construire des cas de tests (CT)? Comment savoir si le test réussit ou échoue? (problème de l oracle) Fabrice Bouquet Test 32 / 59
39 ... Comment? Test fonctionnel Définition Le test fonctionnel vise à examiner le comportement fonctionnel d un logiciel et sa conformité avec la spécification ou les exigences du logiciel. Techniques de calcul des données de test Analyse partitionnelle des domaines des données d entrée et test aux limites Test combinatoire Génération aléatoire Fabrice Bouquet Test 32 / 59
40 ... Comment? Test fonctionnel Définition Le test fonctionnel vise à examiner le comportement fonctionnel d un logiciel et sa conformité avec la spécification ou les exigences du logiciel. Techniques de génération de cas de test Test à partir de modèles : Formels : Automate, B, Z, UML/OCL, SysML.. Contrats : Acsl, Eiffel, JML, Praspel, Spec#... Schéma / scénario : Logique, Exp. régulière, Diag. de Seq... Couverture (exigence) Test combinatoire Génération aléatoire Fabrice Bouquet Test 32 / 59
41 Plan Test Test Structurel Test fonctionnel Données Synthèse... Principe 1 Test Introduction Dans les faits Dans le cycle de vie Bilan 2 Test Structurel Principe Couverture Bilan 3 Test fonctionnel Exemple Comment? 4 Calcul de données de tests Principe Analyse partitionnelle et test aux limites Approche combinatoire Test aléatoire/statistique 5 Synthèse Fabrice Bouquet Test 33 / 59
42 ... Principe Produire des données pour le test Données de test = entrées du programme La production de données de test est essentielle, car elle permet de fournir les entrées utilisées pour tester le programme. La couverture exhaustive des entrées d un programme ou d un système à tester est trop complexe pour permettre une couverture exhaustive. Techniques possibles Diverses techniques vont permettre de sélectionner des données de test pertinentes (susceptibles de détecter des erreurs) : données (semi-)réelles (benerator, jailer) analyse partitionnelle approche combinatoire sélection aléatoire Fabrice Bouquet Test 34 / 59
43 Plan Test Test Structurel Test fonctionnel Données Synthèse... Partition / Limite 1 Test Introduction Dans les faits Dans le cycle de vie Bilan 2 Test Structurel Principe Couverture Bilan 3 Test fonctionnel Exemple Comment? 4 Calcul de données de tests Principe Analyse partitionnelle et test aux limites Approche combinatoire Test aléatoire/statistique 5 Synthèse Fabrice Bouquet Test 35 / 59
44 ... Partition / Limite Analyse partitionnelle Principe de l analyse partitionnelle L analyse partitionnelle est une technique mathématique issue de l algèbre linéaire qui vise à limiter le nombre de cas de tests. Pour l analyse partitionnelle, on ne considère plus l ensemble des valeurs possibles, mais l ensemble des classes de valeurs possibles (classes d équivalence). Postulats de l analyse partitionnelle le domaine des données d entrée d une fonction se distinguent en classes d équivalence : classes de valeurs valides, et classes de valeurs invalides les classes d équivalence sont mutuellement exclusives C i, C j.c i C j C i C j = l union des classes de valeurs recouvre l ensemble du domaine des valeurs ( C i = E) Fabrice Bouquet Test 36 / 59
45 ... Partition / Limite Les classes d équivalence Illustration des classes d équivalence Test d un ascenceur On souhaite tester un ascenceur. Les fonctionnalités sont les suivantes : Il est borné par un étage minimum : le rez-de-chaussée, il ne descend donc pas plus bas Il est borné par un étage maximum : N, il ne monte donc pas plus haut Fabrice Bouquet Test 37 / 59
46 ... Partition / Limite Les classes d équivalence Illustration des classes d équivalence Test d un ascenceur On souhaite tester un ascenceur. Les fonctionnalités sont les suivantes : Il est borné par un étage minimum : le rez-de-chaussée, il ne descend donc pas plus bas Il est borné par un étage maximum : N, il ne monte donc pas plus haut Partitionnement On considérera les comportements : où l étage est 0 (rez-de-chaussée) où l étage est N (le dernier étage) où l étage est entre les 2 (intervalle de valeurs 1..(N 1)) Fabrice Bouquet Test 37 / 59
47 ... Partition / Limite Les classes d équivalence Définition d une classe d équivalence Une classe d équivalence correspond à un ensemble de données de tests supposés tester le même comportement, c est-à-dire activer le même défaut. Pour effectuer l analyse partitionnelle, on utilise trois phases : 1 Pour chaque donnée d entrée, calcul de classes d équivalence sur les domaines de valeurs, 2 Choix d un représentant de chaque classe d équivalence, 3 Composition par produit cartésien sur l ensemble des données d entrée pour établir les DT. Fabrice Bouquet Test 38 / 59
48 ... Partition / Limite Le test aux limites Principes Le test aux limites est une technique permettant de choisir une valeur précise parmi une classe d équivalence donnée. Principe On s intéresse aux bornes des intervalles partitionnant les domaines des variables d entrées : pour chaque intervalle, on garde les 2 valeurs correspondant aux 2 limites, et les 4 valeurs correspondant aux valeurs des limites ± le plus petit delta possible n v 1 = 3, v 2 = 15, v 3 = 2, v 4 = 4, v 5 = 14, v 6 = 16 si la variable appartient à un ensemble ordonnés de valeurs, on choisit le premier, le second, l avant dernier et le dernier n { 7, 2, 3, 157, 200} v 1 = 7, v 2 = 2, v 3 = 157, v 4 = 200 Fabrice Bouquet Test 39 / 59
49 ... Partition / Limite Le test aux limites Principes Le test aux limites est une technique permettant de choisir une valeur précise parmi une classe d équivalence donnée. Principe On s intéresse aux bornes des intervalles partitionnant les domaines des variables d entrées : si une condition d entrée spécifie un nombre de valeurs, définir les cas de test à partir du nombre minimum et maximum de valeurs, et des tests pour des nombres de valeurs hors limites invalides. Un fichier d entrée contient records, produire un cas de test pour 0, 1, 255 et 256 Fabrice Bouquet Test 39 / 59
50 ... Partition / Limite Types de données aux limites Les données d entrée ne sont pas seulement des valeurs numériques : caractères, booléens, images, son,... des objets. Ces catégories peuvent, en général, se prêter à une analyse partitionnelle et à l examen des conditions aux limites : True / False Fichier plein / Fichier vide Trame pleine / Trame vide Nuances de couleurs Plus grand / plus petit null, this, type hérité... En général, on essaie dans la mesure du possible de jouer sur une caractéristique numérique des données (taille de fichiers, dimensions d une image, etc.) ou de viser des valeurs spécifiques (caractères non affichables, etc.). Fabrice Bouquet Test 40 / 59
51 ... Partition / Limite Valeur limite sur l exemple Login:'!ouquet' Password:' ******' Quality( Type'the'word:' Verifica7on:' ******' Register' Cancel' Variables du formulaire Login : vide, très longue chaine (+256c), login existant, invalide login Password : vide, très longue chaine, même login, poor, average, good Password verification : différent du Password, identique Captcha : la bonne chaine, pas la bonne Fabrice Bouquet Test 41 / 59
52 ... Partition / Limite Synthèse sur l analyse partitionnelle L analyse partitionnelle est une méthode qui vise à diminuer le nombre de cas de tests par calcul de classes d équivalence. Il est important dans la réalisation du choix de classes d équivalence car sinon on risque de ne pas révéler un défaut. Le choix de conditions d entrée aux limites est une heuristique solide de choix de données d entrée au sein des classes d équivalence. Mais cette heuristique n est utilisable qu en présence d une relation d ordre sur la donnée d entrée considérée. Le test aux limites produit à la fois des cas de test nominaux (dans l intervalle) et de robustesse (hors intervalle). Fabrice Bouquet Test 42 / 59
53 ... Partition / Limite Synthèse sur l analyse partitionnelle Pour une variable x i, on considère les données de test DT xi = {di 1,..., di n}. Fabrice Bouquet Test 43 / 59
54 ... Partition / Limite Synthèse sur l analyse partitionnelle Pour une variable x i, on considère les données de test DT xi = {di 1,..., di n}. Qu en est-il lorsqu il y a plusieurs variables en entrée aux systèmes? Fabrice Bouquet Test 43 / 59
55 ... Partition / Limite Synthèse sur l analyse partitionnelle Pour une variable x i, on considère les données de test DT xi = {di 1,..., di n}. Qu en est-il lorsqu il y a plusieurs variables en entrée aux systèmes? Si on veut effectuer la même approche pour n variables, on va construire le produit cartésien des données de test : DT x1 DT x2 DT xn Risque est d avoir un nombre de cas de test qui explose. Pour éviter cela, il faut travailler sur des classes d équivalence portant sur l ensemble des données d entrée. Fabrice Bouquet Test 43 / 59
56 ... Partition / Limite Évaluation du test aux limites Méthode de test très productive en particulier dans les approches fonctionnelles. Le comportement du programme aux valeurs limites n est souvent pas ou insuffisamment examiné. Couvre l ensemble des phases de test (unitaires, d intégration, de conformité et de régression). Inconvénient Caractère parfois intuitif ou subjectif de la notion de limite rend difficile la caractérisation de la couverture de test. Fabrice Bouquet Test 44 / 59
57 Plan Test Test Structurel Test fonctionnel Données Synthèse... Approche combinatoire 1 Test Introduction Dans les faits Dans le cycle de vie Bilan 2 Test Structurel Principe Couverture Bilan 3 Test fonctionnel Exemple Comment? 4 Calcul de données de tests Principe Analyse partitionnelle et test aux limites Approche combinatoire Test aléatoire/statistique 5 Synthèse Fabrice Bouquet Test 45 / 59
58 ... Approche combinatoire Approche combinatoire Comment faire lorsque l on a des combinaisons de valeurs de domaines d entrée qui donne lieu à une explosion combinatoire? Options d une boite de dialogue MS Word On a 12 cases à cocher et un menu déroulant pouvant prendre 3 valeurs. Avec 3 valeurs pour la liste déroulante, ceci fait = valeurs possibles. Fabrice Bouquet Test 46 / 59
59 ... Approche combinatoire Approche PairWise Pour réduire la combinatoire entre l ensemble des paramètres, on va chercher à tester un fragment des combinaisons de valeurs. Le choix des valeurs va être guidé pour garantir que chaque combinaison de 2 variables est testé. L idée sous-jacente est que dans la majorité des fautes, elles sont détectées par des combinaisons de 2 valeurs de variables. Fabrice Bouquet Test 47 / 59
60 ... Approche combinatoire Approche PairWise Approche PairWise Soient 4 variables représentant respectivement un système d exploitation, un type de réseau, une imprimante et un type d application bureautique. Chacune possède 3 valeurs possibles. Ceci, nous donne : OS = {XP, Linux, MAC OSX} Réseau = {ATM, Wifi, Bluetooth} Imprimante = {HP35, Canon900, CanonEX} Application = {Word, Excel, Pwpoint} Fabrice Bouquet Test 48 / 59
61 ... Approche combinatoire Approche PairWise Approche PairWise L ensemble des combinaisons donne 81 possibilités alors que seulement 9 cas suffisent pour couvrir toutes les paires. Ceci donne : # Cas OS Réseau Imprimante Application Cas 1 XP ATM Canon-EX Pwpoint Cas 2 XP Bluetooth Canon900 Word Cas 3 XP Wifi HP35 Excel Cas 4 Linux ATM HP35 Word Cas 5 Linux Bluetooth Canon-EX Excel Cas 6 Linux Wifi Canon900 Pwpoint Cas 7 Mac OS X ATM Canon900 Excel Cas 8 Mac OS X Bluetooth HP35 Pwpoint Cas 9 Mac OS X Wifi Canon-EX Word Fabrice Bouquet Test 49 / 59
62 ... Approche combinatoire Approche PairWise Bilan Avantage du PairWise : Permet la réduction du nombre de cas possibles (maîtrise de l explosion combinatoire) Problème du Pairwise : Le choix de la combinaison de valeurs n est peut-être pas celle qui détecte le bogue... Référence Fabrice Bouquet Test 50 / 59
63 Plan Test Test Structurel Test fonctionnel Données Synthèse... Test aléatoire/statistique 1 Test Introduction Dans les faits Dans le cycle de vie Bilan 2 Test Structurel Principe Couverture Bilan 3 Test fonctionnel Exemple Comment? 4 Calcul de données de tests Principe Analyse partitionnelle et test aux limites Approche combinatoire Test aléatoire/statistique 5 Synthèse Fabrice Bouquet Test 51 / 59
64 ... Test aléatoire/statistique Le test aléatoire Principe Il s agit d une approche basée sur la génération des tests d une manière probabiliste. Ainsi, on va utiliser une fonction (aléatoire) de calcul, qui va sélectionner une valeur aléatoire dans le domaine de la donnée d entrée. Uniformité ou pas? Il faut ainsi faire et vérifier des hypothèses d uniformité sur les valeurs des domaines, sinon il faut pouvoir établir des lois statistiques sur le domaine, basées sur les fréquences d apparitions de certaines valeurs, vis-à-vis de la sémantique de la donnée. Exemple : utilisation d une loi de Gauss pour une donnée représentant la taille des individus. Fabrice Bouquet Test 52 / 59
65 ... Test aléatoire/statistique Synthèse test aléatoire Avantages : Processus peu coûteux qui permet de générer les tests. Retire l aspect subjectif du choix des DT par le valideur Inconvénient : Leur qualité dépend du niveau des tests : plus le test est poussé, plus on a de chance d avoir choisi au moins un représentant parmi toutes les classes d équivalence fonctionnelle ou structurelle du programme. Cette automatisation doit être complété par un oracle, qui n est pas toujours facile a établir et encore moins de façon automatique. Fabrice Bouquet Test 53 / 59
66 ... Test aléatoire/statistique Limites du test aléatoire Dans le cas d application de grande taille, avec un grand nombre de variables, il est quasi impossible de produire au hasard des combinaisons d entrée qui sensibilisent des comportements très spécifiques. Algorithme 2: public int methodeimprobable(int x, int y) if (x == 600 && y == 500) then thrown new Exception("Bonne chance pour me trouver"); return (x+y); Limitation du test aléatoire Il est quasiment impossible qu un générateur aléatoire soit capable de sortir les deux valeurs de x et y (type int 2 64 valeurs possibles, 1 chance sur (= 3.4e + 38)) permettant de déclencher l exception. Fabrice Bouquet Test 54 / 59
67 ... Test aléatoire/statistique Bilan du test aléatoire, en pratique Intérêts de l approche aléatoire : Permettre facilement l automatisation pour la sélection des cas de test. Rendre les DT plus objectives car non assujettis aux choix du testeur. % couverture objectif Test déterministe Test aléatoire Effort Tendance : Evolution dans la détection / à l effort (le nombre de test produit). Les études montrent que le test statistique permet d atteindre rapidement 50% de l objectif de test mais qu il a tendance à plafonner ensuite. Fabrice Bouquet Test 55 / 59
68 Plan 1 Test 2 Test Structurel 3 Test fonctionnel 4 Calcul de données de tests 5 Synthèse Fabrice Bouquet Test 56 / 59
69 Plan de test Questions pour le testeur : Comment construire des cas de tests? Comment sélectionner des données de test? Comment savoir si le test réussit ou échoue? Questions pour le développeur : Quel est la testabilité de l application (points de contrôle et d observation)? Comment maintenir la stabilité des interfaces? Livraison est-elle fonctionnelle? Fabrice Bouquet Test 57 / 59
70 Outils Tableur,)Doors,)) HP)ALM,)IBM)Rat.) Requier.)Composer) Exigences) Conformiq,)SmartesGng,) Test)opGmal,)BenderRBT),) Praspel,)JML ) Artéfacts) de)tests) HP,)IBM,)salomeFTM)) Squash)TM,)Testlink) Référen3el) de)tests) Tableur,)Sonar,)) Cobertura,)jenkins) ) ) Rapports) Anomalies) Bugzlla,)Jira,)ManGs,) )Tableur,)Redmine) Scripts) de)tests) IBM)RFT,)Selenium,) HP)QuickTestPro,)Sahi,) XxUnit) Fabrice Bouquet Test 58 / 59
71 Questions Source - Est-ce que vous préférez utiliser un système prouvé ou testé?... cf. les artéfacts utilisés. Fabrice Bouquet Test 59 / 59
Quatrième partie IV. Test. Test 15 février 2008 1 / 71
Quatrième partie IV Test Test 15 février 2008 1 / 71 Outline Introduction 1 Introduction 2 Analyse statique 3 Test dynamique Test fonctionnel et structurel Test structurel Test fonctionnel 4 Conclusion
Plus en détailTest et Validation du Logiciel
Test et Validation du Logiciel McInfo4_ASR Tests Janvier 2009 Patrick FELIX patrick.felix@labri.fr IUT Bordeaux 1 Plan Introduction : Pourquoi de la VVT? 1 Introduction au test de logiciels 2 Le test fonctionnel
Plus en détailQualité du logiciel: Méthodes de test
Qualité du logiciel: Méthodes de test Matthieu Amiguet 2004 2005 Analyse statique de code Analyse statique de code Étudier le programme source sans exécution Généralement réalisée avant les tests d exécution
Plus en détailCCI Génie Logiciel UFR - IMA. Objectifs du cours d'aujourd'hui. Génie Logiciel Validation par le test. Qu est-ce que tester un programme?
Validation par le test Objectifs du cours d'aujourd'hui Donner des réponses aux questions suivantes : Lydie du Bousquet 2 Qu est-ce que tester un programme? Exercice 1 : Inscrivez sur une feuille ce que
Plus en détailTest de logiciel dans les méthodes agiles
Test de logiciel dans les méthodes agiles Appliqué au contexte objet (Java) 1 Aspects «théoriques» 2 Aspects pratiques le développement dirigé par les tests en partie inspiré d un cours de Laurie Williams
Plus en détailAgilitéet qualité logicielle: une mutation enmarche
Agilitéet qualité logicielle: une mutation enmarche Jean-Paul SUBRA Introduction : le manifeste Agile Manifeste pour le développement Agile de logiciels Nous découvrons comment mieux développer des logiciels
Plus en détailAlignement avec les métiers par le test fonctionnel et d acceptation en projets agiles
Alignement avec les métiers par le test fonctionnel et d acceptation en projets agiles Laurent PY CEO, Smartesting Laurent.py@smartesting.com @py_laurent www.smartesting.com Guillaume Coquelle Testeur,
Plus en détailLes Bonnes PRATIQUES DU TEST LOGICIEL
Les Bonnes PRATIQUES DU TEST LOGICIEL SOMMAIRE Qu est-ce que le test logiciel? Pourquoi le test est-il un maillon crucial de l ingénierie logicielle? Quels sont les différents types de tests? Qu est-ce
Plus en détailBruno Legeard Fabrice Bouquet Laboratoire d Informatique de l Université de Franche-Comté
Cours Test de Logiciels Bruno Legeard Fabrice Bouquet Laboratoire d Informatique de l Université de Franche-Comté Plan du cours Test de logiciels 1 - Introduction au test de logiciels Définition du test
Plus en détailTesteur Agile Niveau Fondation 2014 - Bertrand Cornanguer, Vice-chair Agile tester WG
Testeur Niveau Fondation 2014 - Bertrand Cornanguer, Vice-chair tester WG Enquêtes 2013 sur l Agilité Seriez-vous interessé par la certification Testeur? Enquête ISTQB (70 pays juin octobre 2013) Ingénieurs
Plus en détailLa mémorisation des mots de passe dans les navigateurs web modernes
1 La mémorisation des mots de passe dans les navigateurs web modernes Didier Chassignol Frédéric Giquel 6 décembre 2005 - Congrès JRES 2 La problématique Multiplication des applications web nécessitant
Plus en détailVérification et Validation
Vérification et Validation Génie Logiciel Master 1 II Mihaela Sighireanu Objectifs I. Introduire la vérification et la validation (V&V) du logiciel et comprendre leurs différences. II.Définir le plan de
Plus en détailBULK SMS Envoi en masse d un message texte moyennant un téléphone mobile (GSM)
Ministère de l Enseignement Supérieur et de la Recherche Scientifique Ecole Supérieure Privée d Ingénierie et de Technologie BULK SMS Envoi en masse d un message texte moyennant un téléphone mobile (GSM)
Plus en détailGrandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test
Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite
Plus en détailVérifier la qualité de vos applications logicielle de manière continue
IBM Software Group Vérifier la qualité de vos applications logicielle de manière continue Arnaud Bouzy Kamel Moulaoui 2004 IBM Corporation Agenda Analyse de code Test Fonctionnel Test de Performance Questions
Plus en détailINF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février 2014 17:30 à 20:30
Examen intra 20 février 2014 17:30 à 20:30 Nom, prénom : Code permanent : Répondez directement sur le questionnaire. Question #1 5% Quelle influence peut avoir le typage dynamique sur la maintenabilité
Plus en détailPlan. 1 Cycles de développement. 2 Méthodes agiles, principes généraux. 3 Comment se passe un Sprint?
Plan nitiation au Génie Logiciel Cours 5 ntroduction au π développement agile T. Genet (genet@irisa.fr) (STC/RSA) GEN-5 1/ 28 T. Genet (genet@irisa.fr) (STC/RSA) GEN-5 2/ 28 Bibliographie Plan L informatique
Plus en détailApproche de modélisation des tests de logiciels complexes par un système multi-agents
Ministère de l Enseignement Supérieur et de la Recherche Scientifique Institut National de Formation en Informatique (INI) Oued Smar MEMOIRE Pour l'obtention du diplôme de MAGISTER EN INFORMATIQUE (Option
Plus en détailProcessus d Informatisation
Processus d Informatisation Cheminement de la naissance d un projet jusqu à son terme, deux grandes étapes : Recherche ou étude de faisabilité (en amont) L utilisateur a une idée (plus ou moins) floue
Plus en détailIntervenants. Thomas d'erceville Project Manager. Christian NGUYEN Practice Manager IT Quality
Intervenants Thomas d'erceville Project Manager Christian NGUYEN Practice Manager IT Quality 2 14/04/2015 De l'assurance qualité à l'ingénierie des tests logiciels 1. Contexte général des tests mobiles
Plus en détailIntroduction au génie logiciel
Introduction au génie logiciel Guillaume Laurent ENSMM 2007 G. Laurent (ENSMM) Introduction au génie logiciel 2007 1 / 36 Plan du cours 1 Problématique du génie logiciel 2 Méthodes de développement logiciel
Plus en détail3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes
PLAN CYCLE DE VIE D'UN LOGICIEL EXPRESSION DES BESOINS SPÉCIFICATIONS DU LOGICIEL CONCEPTION DU LOGICIEL LA PROGRAMMATION TESTS ET MISE AU POINT DOCUMENTATION CONCLUSION C.Crochepeyre Génie Logiciel Diapason
Plus en détailTravaux soutenus par l ANR. Jean-François CAPURON (DGA) Bruno LEGEARD (Smartesting)
Travaux soutenus par l ANR Jean-François CAPURON (DGA) Bruno LEGEARD (Smartesting) 03 Avril 2012 1. Test de sécurité et génération de tests à partir de modèle 2. Le projet SecurTest à DGA Maîtrise de l
Plus en détailExtrait des Exploitations Pédagogiques
Pédagogiques Module : Compétitivité et créativité CI Première : Compétitivité et créativité CI institutionnel : Développement durable et compétitivité des produits Support : Robot - O : Caractériser les
Plus en détailOPTIMISER SON PROCESSUS DE TEST AVEC UNE APPROCHE BOITE GRISE
OPTIMISER SON PROCESSUS DE TEST AVEC UNE APPROCHE BOITE GRISE Retour d expérience Benjamin Boutin QA Manager S2E www.s2e-services-epargne-entreprise.com Marc Rambert Director Dynamic Testing Solution Coverity/Synopsys
Plus en détaildonnées en connaissance et en actions?
1 Partie 2 : Présentation de la plateforme SPSS Modeler : Comment transformer vos données en connaissance et en actions? SPSS Modeler : l atelier de data mining Large gamme de techniques d analyse (algorithmes)
Plus en détailPlan. Tests. 1. Introduction. 1. Introduction
Plan Tests Lionel Seinturier Université des Sciences et Technologies de Lille Lionel.Seinturier@lifl.fr 28/11/06 Tests 1 Lionel Seinturier Tests 2 Lionel Seinturier Objectifs du test de programmes Détecter
Plus en détailCONSULTANT AMOA/RECETTE à la recherche d un poste dans la région de Montpellier 7 ans d expérience
Kévin FISCHER 78, cour Jacques Thibaud 34000 MONTPELLIER Téléphone portable : 06 71 82 46 70 Adresse E-mail : kevinfischer@live.fr 31 ans CONSULTANT AMOA/RECETTE à la recherche d un poste dans la région
Plus en détailAgile @ Germe Grenoble 4 22/06/2012. Intervenant: Bruno Sbille
Agile @ Germe Grenoble 4 22/06/2012 Intervenant: Bruno Sbille 1 Agile @ Germe 2 Bruno Sbille Blog Agile: http://brunosbille.com Coach & Formateur Blog Coaching Personnel: http://brunosbille.com/coachdevie
Plus en détailLe génie logiciel. maintenance de logiciels.
Le génie logiciel Définition de l IEEE (IEEE 1990): L application d une approche systématique, disciplinée et quantifiable pour le développement, l opération et la maintenance de logiciels. Introduction
Plus en détailTP3 Intégration de pratiques agiles. 1. User Stories (1) Scénario d intégration agile. En direct-live du château
Rappel TP3 Intégration de pratiques agiles En direct-live du château 40 41 Scénario d intégration agile 1. User Stories (1) 1. Rédiger les User Stories (exigences) 2. Planifier les Itérations (quoi / quand)
Plus en détailDéfinition des Webservices Ordre de paiement par email. Version 1.0
Définition des Webservices Ordre de paiement par email Version 1.0 Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa Nom Date/Visa Nom Date/Visa Historique du document
Plus en détailPublier dans la Base Documentaire
Site Web de l association des ingénieurs INSA de Lyon Publier dans la Base Documentaire Remarque : la suppression des contributions n est pas possible depuis le Front-Office. lbuisset Page 1 18/09/2008
Plus en détailCentre hospitalier Sainte croix
Projet Personnel encadré semestre 1 BTS SIO 1 ère année Centre hospitalier Sainte croix 2 nd mission Installation des chercheurs UNIS POUR SOIGNER La nouvelle équipe arrive dans deux mois et la nouvelle
Plus en détailSéance 1 Méthodologies du génie logiciel
Séance 1 Méthodologies du génie logiciel Objectifs : Histoire du développement du logiciel. La crise du logiciel. Explorer les différentes méthodologies de développement. Comprendre l importance d adopter
Plus en détailConception des systèmes répartis
Conception des systèmes répartis Principes et concepts Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Octobre 2012 Gérard Padiou Conception des systèmes répartis 1 / 37 plan
Plus en détailImpact des robots d indexation sur le cache de second niveau de SPIP IMBERTI Christophe - SG/SPSSI/CP2I/DO Ouest 06/06/2012 mis à jour le 05/07/2012
Impact des robots d indexation sur le cache de second niveau de SPIP IMBERTI Christophe - SG/SPSSI/CP2I/DO Ouest 06/06/2012 mis à jour le 05/07/2012 SOMMAIRE 1. LE CONSTAT... 2 2. L EXPLICATION... 2 3.
Plus en détailDEMANDE D INFORMATION RFI (Request for information)
DOD SEICAM RFI Demande d information EVDEC Réf. : RFI_EVDEC- GT5_Outil_reporting_BI_v4.doc Page 1/11 DEMANDE D INFORMATION RFI (Request for information) OUTIL INTÉGRÉ DE REPORTING ET D ANALYSE DÉCISIONNELLE
Plus en détail1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)
1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d
Plus en détailRetour d expérience implémentation Scrum / XP
Retour d expérience implémentation Scrum / XP Bruno Orsier Octobre 2008 p.1 Bruno Orsier, Agile Tour 2008 Grenoble Plan Qui sommes nous? Pourquoi Scrum/XP? Historique de la mise en œuvre Bilan Sondage
Plus en détailSauvegarde des fichiers
Sauvegarde des fichiers 1 Hiérarchie des fichiers Stockage à la racine d un disque. Stockage dans un dossier. Stockage dans un dossier utilisateur : problématique de l accès aux fichiers. Stockage sur
Plus en détailConduite de projets SI. Les méthodes «Agiles» N QUAL/1995/3660e ORESYS
Conduite de projets SI Les méthodes «Agiles» N QUAL/1995/3660e ORESYS Agilité : de quoi parle-t-on? Agilité de l entreprise Urbanisme Architectures SOA Agilité du SI ERP Plateformes applicatives agiles
Plus en détailIFT3913 Qualité du logiciel et métriques. Chapitre 2 Modèles de processus du développement du logiciel. Plan du cours
IFT3913 Qualité du logiciel et métriques Chapitre 2 Modèles de processus du développement du logiciel Plan du cours Introduction Modèles de processus du développement du logiciel Qualité du logiciel Théorie
Plus en détailTP 1. Prise en main du langage Python
TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer
Plus en détailMises en relief. Information supplémentaire relative au sujet traité. Souligne un point important à ne pas négliger.
Cet ouvrage est fondé sur les notes d un cours dispensé pendant quelques années à l Institut universitaire de technologie de Grenoble 2, au sein du Département statistique et informatique décisionnelle
Plus en détailMÉTHODOLOGIE PROJET SYSTÈME D INFORMATION DÉCISIONNEL BI - BUSINESS INTELLIGENCE. En résumé :
En résumé : Phase I : collecte des besoins I - Expression des besoins II - Étude de faisabilité III - Définition des priorités IV - Rédaction puis validation du cahier des charges Phase II : implémentation
Plus en détailBertrand Cornanguer Sogeti
JFIE 2014 Bertrand Cornanguer Sogeti Trésorier du CFTL Chair du groupe Audit de l ISTQB Vice-chair du groupe Agile Tester de l ISTQB 14/10/2014 Introduction Comme beaucoup de sujets, l ingénierie des exigences
Plus en détailCours de Master Recherche
Cours de Master Recherche Spécialité CODE : Résolution de problèmes combinatoires Christine Solnon LIRIS, UMR 5205 CNRS / Université Lyon 1 2007 Rappel du plan du cours 16 heures de cours 1 - Introduction
Plus en détailCONCOURS DE L AGRÉGATION INTERNE «ÉCONOMIE ET GESTION» SESSION 2015 SECONDE ÉPREUVE
CONCOURS DE L AGRÉGATION INTERNE «ÉCONOMIE ET GESTION» SESSION 2015 SECONDE ÉPREUVE Épreuve de cas pratique dans la spécialité correspondant à l'option choisie par le candidat Option D Durée de préparation
Plus en détailExclusion Mutuelle. Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 9 février 2011
Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr Université de Provence 9 février 2011 Arnaud Labourel (Université de Provence) Exclusion Mutuelle 9 février 2011 1 / 53 Contexte Epistémologique
Plus en détailGestion Projet. Cours 3. Le cycle de vie
Gestion Projet Cours 3 Le cycle de vie Sommaire Généralités 3 Séquentiel 7 Itératif/Incrémental 17 Extreme Programming 22 Que choisir? 29 Etats Transverse 33 Cours 3 2006-2007 2 Généralités Cours 3 2006-2007
Plus en détailSolution IT Power Management Gérer la consommation électrique de toute votre infrastructure IT
Solution IT Power Management Gérer la consommation électrique de toute votre infrastructure IT Executive Summary Contenu Introduction à JouleX Energy Manager... 3 Contexte client et enjeux... 4 Un enjeu
Plus en détailCours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé. http://www.rzo.free.fr
Cours de Java Sciences-U Lyon Java - Introduction Java - Fondamentaux Java Avancé http://www.rzo.free.fr Pierre PARREND 1 Octobre 2004 Sommaire Java Introduction Java Fondamentaux Histoire de Java Machine
Plus en détailRésolution de systèmes linéaires par des méthodes directes
Résolution de systèmes linéaires par des méthodes directes J. Erhel Janvier 2014 1 Inverse d une matrice carrée et systèmes linéaires Ce paragraphe a pour objet les matrices carrées et les systèmes linéaires.
Plus en détailTopologie du web - Valentin Bourgoin - http://www.valentinbourgoin.net. Méthodes agiles & SCRUM
Méthodes agiles & SCRUM 1/ Pourquoi les méthodes agiles? Définition d une méthode agile. Fondamentaux. Quand les utiliser? 2/ SCRUM En quoi est-ce une méthode agile? Sprints et releases. Le Product Owner.
Plus en détailMANUEL DE L UTILISATEUR
MANUEL DE L UTILISATEUR COMPAS DYNAMIQUE Page 1 / 81 Page 2 / 81 SOMMAIRE PREAMBULE... 7 CHAPITRE 1 :... 9 PRESENTATION DU COMPAS DYNAMIQUE... 9 1 INTRODUCTION... 11 1.1 QU EST-CE QUE LE COMPAS DYNAMIQUE?...
Plus en détailGestion de Projet. Génie Logiciel. Renaud Marlet. LaBRI / INRIA. http://www.labri.fr/~marlet. (d'après A.-M. Hugues) màj 19/04/2007
1 Génie Logiciel (d'après A.-M. Hugues) Gestion de Projet Renaud Marlet LaBRI / INRIA http://www.labri.fr/~marlet màj 19/0/007 Est-ce bien nécessaire? Principes de gestion = beaucoup d'évidences Pourtant
Plus en détailAnalyse et Conception objet du logiciel Analyse et conception objet du logiciel : Méthode de conception objet et notation UML.
Analyse et conception objet du logiciel : Méthode de conception objet et notation UML Rémy Courdier Email : Remy.Courdier@univ-reunion.fr Rémy Courdier V2.1 1 Plan du cours Introduction au Génie Logiciel
Plus en détailVision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007
Vision industrielle et télédétection - Détection d ellipses Guillaume Martinez 17 décembre 2007 1 Table des matières 1 Le projet 3 1.1 Objectif................................ 3 1.2 Les choix techniques.........................
Plus en détailCARPE. Documentation Informatique S E T R A. Version 2.00. Août 2013. CARPE (Documentation Informatique) 1
CARPE (Documentation Informatique) 1 CARPE Version 2.00 Août 2013 Documentation Informatique S E T R A Programme CARPE - Manuel informatique de l'utilisateur CARPE (Documentation Informatique) 2 Table
Plus en détailEPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0
Plus en détailSoyez agile. Dans l industrie du logiciel, la. De plus chaque projet informatique
Soyez agile Dans l industrie du logiciel, la gestion de projet est confrontée à de nombreux défis. Le principal est de pouvoir assurer l adéquation d un produit et de ses fonctionnalités avec les besoins
Plus en détailMéthodes Agiles et gestion de projets
Méthodes Agiles et gestion de projets Eric LELEU Consultant Solutions Collaboratives Contact ericleleu@nordnet.fr Site Personnel http://home.nordnet.fr/~ericleleu Blog http://ericleleu.spaces.live.fr La
Plus en détailConcilier mobilité et sécurité pour les postes nomades
Concilier mobilité et sécurité pour les postes nomades Gérard Péliks Responsable Marketing Solutions de Sécurité EADS TELECOM 01 34 60 88 82 gerard.peliks@eads-telecom.com Pouvoir utiliser son poste de
Plus en détailCryptologie. Algorithmes à clé publique. Jean-Marc Robert. Génie logiciel et des TI
Cryptologie Algorithmes à clé publique Jean-Marc Robert Génie logiciel et des TI Plan de la présentation Introduction Cryptographie à clé publique Les principes essentiels La signature électronique Infrastructures
Plus en détailGénie Logiciel LA QUALITE 1/5 LA QUALITE 3/5 LA QUALITE 2/5 LA QUALITE 4/5 LA QUALITE 5/5
Noël NOVELLI ; Université d Aix-Marseille; LIF et Département d Informatique Case 901 ; 163 avenue de Luminy 13 288 MARSEILLE cedex 9 Génie Logiciel LA QUALITE 1/5 La gestion de la qualité Enjeux de la
Plus en détailLimitations of the Playstation 3 for High Performance Cluster Computing
Introduction Plan Limitations of the Playstation 3 for High Performance Cluster Computing July 2007 Introduction Plan Introduction Intérêts de la PS3 : rapide et puissante bon marché L utiliser pour faire
Plus en détailArbres binaires de recherche
1 arbre des comparaisons 2 recherche dichotomique l'arbre est recalculé à chaque recherche 2 5 3 4 7 9 1 6 1 2 3 4 5 6 7 9 10 conserver la structure d'arbre au lieu de la reconstruire arbre binaire de
Plus en détailaalto Collaborative Pour le gestionnaire,
www.ged-web.com aalto Collaborative aalto est une solution collaborative full web, regroupant tous les aspects de la gestion de documents et des process dans l'entreprise, développée avec la technologie
Plus en détailLogiciel Libre Cours 3 Fondements: Génie Logiciel
Logiciel Libre Cours 3 Fondements: Génie Logiciel Stefano Zacchiroli zack@pps.univ-paris-diderot.fr Laboratoire PPS, Université Paris Diderot 2013 2014 URL http://upsilon.cc/zack/teaching/1314/freesoftware/
Plus en détailINITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Plus en détailPrénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004
Questionnaire d'examen final INF1101 Sigle du cours Nom : Signature : Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004 Professeur(s)
Plus en détailExceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;
CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe
Plus en détailGESTION DE PROJET SÉANCE 2 : LES CYCLE DE VIE D'UN PROJET
GESTION DE PROJET SÉANCE 2 : LES CYCLE DE VIE D'UN PROJET 1 Tianxiao LIU Licence Professionnelle Réseaux & Sécurité Université de Cergy-Pontoise http://depinfo.u-cergy.fr/~tliu/lpg.php PLAN Objectif et
Plus en détailÉléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if
Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike
Plus en détailProgrammation Web. Madalina Croitoru IUT Montpellier
Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance
Plus en détailVI. Tests non paramétriques sur un échantillon
VI. Tests non paramétriques sur un échantillon Le modèle n est pas un modèle paramétrique «TESTS du CHI-DEUX» : VI.1. Test d ajustement à une loi donnée VI.. Test d indépendance de deux facteurs 96 Différentes
Plus en détailIntroduction Les processus traditionnels extreme Programming Conclusion. extreme Programming. vers plus d agilité. F. Miller francois.miller@inpg.
vers plus d agilité F. Miller francois.miller@inpg.fr FC INPG Octobre 2008 - version 1.0 Introduction Contexte Le monde bouge économie des moyens (humains, financier,...) ; recherche de plus d efficacité
Plus en détailContexte et motivations Les techniques envisagées Evolution des processus Conclusion
Vérification de logiciels par analyse statique Contexte et motivations Les techniques envisagées Evolution des processus Conclusion Contexte et motivations Specification Design architecture Revues and
Plus en détailWIFI sécurisé en entreprise (sur un Active Directory 2008)
Cette œuvre est mise à disposition selon les termes de la Licence Creative Commons Paternité - Pas d'utilisation Commerciale 3.0 non transposé. Le document est librement diffusable dans le contexte de
Plus en détailNombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN
Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN Table des matières. Introduction....3 Mesures et incertitudes en sciences physiques
Plus en détailExercices sur le chapitre «Probabilités»
Arnaud de Saint Julien - MPSI Lycée La Merci 2014-2015 1 Pour démarrer Exercices sur le chapitre «Probabilités» Exercice 1 (Modélisation d un dé non cubique) On considère un parallélépipède rectangle de
Plus en détailJade. Projet Intelligence Artificielle «Devine à quoi je pense»
Jade Projet Intelligence Artificielle «Devine à quoi je pense» Réalisé par Djénéba Djikiné, Alexandre Bernard et Julien Lafont EPSI CSII2-2011 TABLE DES MATIÈRES 1. Analyse du besoin a. Cahier des charges
Plus en détailDéveloppement itératif, évolutif et agile
Document Développement itératif, évolutif et agile Auteur Nicoleta SERGI Version 1.0 Date de sortie 23/11/2007 1. Processus Unifié Développement itératif, évolutif et agile Contrairement au cycle de vie
Plus en détailDéveloppement spécifique d'un système d information
Centre national de la recherche scientifique Direction des systèmes d'information REFERENTIEL QUALITE Procédure Qualité Développement spécifique d'un système d information Référence : CNRS/DSI/conduite-proj/developpement/proc-developpement-si
Plus en détailLe test automatisé des applications web modernes
Le test automatisé des applications web modernes Résumé : Aujourd hui, les applications Web sont développées au moyen de différentes technologies AJAX et Web 2.0. Des outils nouveaux et puissants offrent
Plus en détailbasée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML
basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML http://olivier-augereau.com Sommaire Introduction I) Les bases II) Les diagrammes
Plus en détailPréparation à l installation d Active Directory
Laboratoire 03 Étape 1 : Installation d Active Directory et du service DNS Noter que vous ne pourrez pas réaliser ce laboratoire sans avoir fait le précédent laboratoire. Avant de commencer, le professeur
Plus en détailThéorie et Codage de l Information (IF01) exercices 2013-2014. Paul Honeine Université de technologie de Troyes France
Théorie et Codage de l Information (IF01) exercices 2013-2014 Paul Honeine Université de technologie de Troyes France TD-1 Rappels de calculs de probabilités Exercice 1. On dispose d un jeu de 52 cartes
Plus en détailSystème de contrôle du trafic d une ligne de métro Dossier de tests
Système de contrôle du trafic d une ligne de métro Dossier de tests Tests NI557/STL/M2/INFO/UPMC Action Date Auteur Statut Création 05/03/2012 P.Manoury En cours 1 Description et exigences fonctionnelles
Plus en détailAOLbox. Partage de disque dur Guide d utilisation. Partage de disque dur Guide d utilisation 1
AOLbox Partage de disque dur Guide d utilisation Partage de disque dur Guide d utilisation 1 Sommaire 1. L AOLbox et le partage de disque dur... 3 1.1 Le partage de disque dur sans l AOLbox... 3 1.1.1
Plus en détailPlan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
Plus en détailScrum Une méthode agile pour vos projets
Avant-propos 1. Objectif du livre 17 2. Notre démarche 17 3. Structure du livre 18 4. Remerciements 20 Scrum, une méthode agile avant tout 1. Le grand départ 21 2. La gestion de projet informatique 22
Plus en détailCours 1 : Qu est-ce que la programmation?
1/65 Introduction à la programmation Cours 1 : Qu est-ce que la programmation? Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr Université Paris Diderot Paris 7 2/65 1. Sortez un appareil qui peut se rendre
Plus en détailLes mécanismes d'assurance et de contrôle de la qualité dans un
Les mécanismes d'assurance et de contrôle de la qualité dans un projet Agile SPIN de Montréal - ETS 5 mars 2012 Qui sommes nous? mathieu boisvert Coach Agile Chargé de cours Co auteur d un livre avec Sylvie
Plus en détailCours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples
Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation
Plus en détailÉvaluation et implémentation des langages
Évaluation et implémentation des langages Les langages de programmation et le processus de programmation Critères de conception et d évaluation des langages de programmation Les fondations de l implémentation
Plus en détailAlgorithmique et programmation : les bases (VBA) Corrigé
PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 1 mai juin 2006 Corrigé Résumé Ce document décrit l écriture dans le langage VBA des éléments vus en algorithmique. Table des matières 1 Pourquoi
Plus en détail