Techniques d’Inspection du logiciel

Slides:



Advertisements
Présentations similaires
Les Systèmes d’Information Financière Atelier conjoint ACBF / Banque Mondiale / AFRITAC de l’Ouest Gérer l’application dans le temps, sur les plans fonctionnel,
Advertisements

Amélioration de la qualité des forfaits
Tests et Validation du logiciel
Eléments de Génie Logiciel
Processus d'expression du besoin
L'installation et la diffusion 1 LInstallation et la Diffusion.
La Recette La recette.
La Gestion de la Configuration
Les Evolutions et la Maintenance
EXAMEN ET GESTION DE PROJET INDUSTRIEL
Introduction Pour concrétiser l’enseignement assisté par ordinateur
Validation des Systèmes Informatisés Industriels
Collecte de données F. Kohler.
Exemple : Itinéraire de lecture.
Les démarches de développement
Les démarches de développement
Safae LAQRICHI, Didier Gourc, François Marmier {safae
Les Ateliers de Génie Logiciel
La revue de projet.
MIAGE MASTER 1 Cours de gestion de projet
SIMULATION WATERFALL & INSPECTION
Introduction au Génie Logiciel
Marketing Engineering
Algorithmique et Programmation
Parcours de formation SIN-7
Formation aux outils Qualité
Etapes vers la Certification - Préparation de groupe –
Le projet en STI2D Initier le projet Délimiter les champs du possible
Management des systèmes d’information Conclusion
Techniques de test Boulanger Jean-Louis.
IGL301 - Spécification et vérification des exgiences 1 Chapitre 1 Introduction (ref : Bray chapitre 1)
IGL301 - Spécification et vérification des exgiences 1 Chapitre 2 Le processus dingénierie des exigences (ref : Bray chapitre 2)
Project Scope Management
© Petko ValtchevUniversité de Montréal Janvier IFT 2251 Génie Logiciel Notions de Base Hiver 2002 Petko Valtchev.
La gestion par activités (ABM)
La résolution de problèmes grâce à la technologie de l'information
Les étapes du cycle de développement du génie logiciel
Leçon 1 : notion dobjet IUP Génie Informatique Besançon Méthode et Outils pour la Programmation Françoise Greffier Université de Franche-Comté.
Kampala, Uganda, June 2014 Documents d’Edition et de Révision Hiroshi Ota and Vijay Mauree ITU/TSB Forum de normalisation pour l'Afrique (Kampala,
Systèmes d’information d’entreprise
Gestion des sous-traitants
Mise en oeuvre et exploitation
Atelier: Les inspections logicielles Par Sylvie Trudel CUSEC Janvier 2003.
Le management de l'IVVQ Processus techniques IVVQ
Supports de formation au SQ Unifié
Institut Supérieur des Sciences Appliquées et de Technologie Sousse
GENIE LOGICIEL
Définitions Gestion Exemple
Vérification dans le cycle de vie GEF492A 2014 Référence: [HvV §14.2, 14.9] Capt Vincent Roberge Collège Militaire Royal du Canada Génie électrique et.
2003 (revisé 2008)SEG Chapitre 11 Chapitre 1 “The Systems Engineering Context” Le contexte du génie de systèmes.
1 Emeric ROLLIN 1 Génie Logiciel GENIE LOGICIEL
Plan de sécurité et de sûreté chimique
Introduction au Génie Logiciel
Formalisation de la politique qualité
Initiation à la conception des systèmes d'informations
Présentation AICHA REVEL INGENIEUR D’ÉTUDE STERIA DEPARTEMENT TRD
TECHNIQUES D’AUDIT OUTILS DU MANAGEMENT DE LA QUALITE
ISO 9001:2000 DOCUMENTATION DU SYSTEME QUALITE
Année 2006 – 2007 ENSEA © Emeric Rollin
Sommaire : Définitions des 5S Les objectifs des 5S Pourquoi les 5S
AMDEC AMDEC : Analyse des modes de défaillances, de leurs effets et leurs criticités Origine: 1950 : USA (FMECA) 1970 : Europe.
Conférence 2TUP Stéphane Barthon 03/12/
PROCESSUS D’AUDIT PLANIFICATION DES AUDITS
Document de spécification d’exigences Normes IEEE et 29148:2011
Présenter une bibliographie en lycée
Rédiger des procédures efficaces
C’est ce que l’on veut obtenir la manière dont on va l’obtenir
USE CASE Présentation. Technique importante ● Pilotage par cas d'utilisation (use case) ● Spécifications des besoins fonctionnels des acteurs ● Unité.
Planning Process « t’as un plan pour ce soir ? » Tony Carnal Altran.
Transcription de la présentation:

Techniques d’Inspection du logiciel Informatique de Base Techniques d’Inspection du logiciel 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Plan Inspection du logiciel Définition/objectif Objets Processus Coûts/avantages Comparaison Parcours structurés (structured walkthroughs) Tests 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Inspection Origine: Michael Fagan (IBM) utilisé dans un projet informatique de 1972 à 1974 publication en 1976 Définition simplifiée (IEEE Standard Glossary of Software Engineering Terminology): une technique formelle d ’évaluation par laquelle … des produits (documents) informatiques sont examinés en détail par une personne ou un groupe autre que son auteur pour y détecter des erreurs  utiliser le travail en groupe comme un moyen d'améliorer la qualité du logiciel (diminuer le nombre d'erreurs) 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Objectif IEEE Standard for Software Reviews and Audits: vérifier que des éléments de logiciels satisfont leur spécification vérifier que des éléments de logiciels satisfont certains standards identifier les dérivations par rapport aux standards ou spécifications recueillir des données sur les erreurs et l ’effort consenti n ’examine pas des alternatives ni des questions de « style ». Objectif général: améliorer la qualité du logiciel 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Idées principales Wienberg: The Psychology of Computer Programming: Les erreurs peuvent être plus facilement repérées par d'autres programmes = créations personnelles programmeur ne sais pas ou ne veut pas voir ses erreurs Si les programmes sont montrés aux autres ils deviennent moins personnel ("egoless programming") on admet plus facilement des erreurs 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Inspection: Objets Etapes et produits de l’ingénierie du logiciel Spécification de haut niveau Définition Exigences Pseudo-code Architecture Cahier des Charges Conception Code Structuration Codage et Tests Spécification de bas niveau Opération Maintenance 13/03/2001 InfoBase: Techniques de Re-lecture

Processus d'Inspection: Vue abstraite Étape Logicielle Précédente 1 entrée Document à réviser Étape Logicielle 3 requêtes de changements Étape d ’Inspection 2 corrections 4 requêtes d ’améliorations Document terminé Amélioration du processus de développement de logiciel et d ’Inspection 5 sortie Étape Logicielle Suivante 13/03/2001 InfoBase: Techniques de Re-lecture

Processus d'Inspection: Exemple TP 1 entrée Conceptualisation et Structuration Spécification des sous-systèmes Spécification 3 requêtes de changements Diagrammes Fonctionnels et Sous-Systèmes Étape d ’Inspection 2 corrections Spécification des sous-systèmes corrigée 5 sortie Spécification de bas niveau 13/03/2001 InfoBase: Techniques de Re-lecture

Processus d'Inspection: Vue Détaillée Requête d'Inspection Requête d'Inspection Planning Réunion d'initialisation Inspection Individuelle Réunion d'Enregistrement Edition et Suivi Sortie 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Requête d'Inspection Base volontaire: recherche de meilleure qualité Qui? L'auteur ou le propriétaire du document Choix d'un leader rôles: vérifier les critères d'entrée du document pour éviter les pertes de temps gérer tout le processus d'inspection pas un manager direct! 13/03/2001 InfoBase: Techniques de Re-lecture

Processus d'Inspection: Vue Détaillée Requête d'Inspection Planning Planning Réunion d'initialisation Inspection Individuelle Réunion d'Enregistrement Edition et Suivi Sortie 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Planning: Activités Rôle du leader Définir: les documents nécessaires (identifier, numéroter) les objectifs (qualité attendue du document) les participants et leur rôle spécifique les méthodes (étapes, nombre de cycles, procédures) le planning des réunions (nombre et dates)  master plan Distribuer les documents Convoquer les réunions 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Planning: Documents Produit inspecté Découpé en unités à traiter à chaque réunion Documents source À partir desquels le produit a été élaboré Utilisés pour déterminer s'ils ont bien été utilisés comme sources Règles Comment bien dériver le produit à partir de la source Permettent l'objectivité dans l'inspection Documents sont sujets à questions Objectif de l'inspection = soulever des questions Question = violation apparente d'une règle 13/03/2001 InfoBase: Techniques de Re-lecture

Planning: Autres Documents Checklist liste de questions précises aident à vérifier l'application correcte des règles permettent de trouver plus d'erreurs, plus facilement Procédures que faire et comment le faire pendant l'inspection Master Plan 13/03/2001 InfoBase: Techniques de Re-lecture

Processus d'Inspection: Vue Détaillée Requête d'Inspection Planning Réunion d'initialisation Réunion d'initialisation Inspection Individuelle Réunion d'Enregistrement Edition et Suivi Sortie 13/03/2001 InfoBase: Techniques de Re-lecture

Réunion d'initialisation Explication des objectifs ex: découvrir les défauts principaux, pas des erreurs secondaires, ... Formation des participants aux techniques d'inspection, explication des procédures Explication des rôles des participants Distribution des documents Présentation du planning 13/03/2001 InfoBase: Techniques de Re-lecture

Processus d'Inspection: Vue Détaillée Requête d'Inspection Planning Réunion d'initialisation Inspection Individuelle Inspection Individuelle Réunion d'Enregistrement Edition et Suivi Sortie 13/03/2001 InfoBase: Techniques de Re-lecture

Inspection Individuelle Phase importante (20 à 30% du temps d'inspection) Bien comparer Source/Produit/Règles, utiliser les checklists Noter systématiquement toutes les questions qui surviennent Définition de rôles différents Efficacité maximale (erreurs différentes trouvées par des personnes différentes) Charge de travail adaptée Définition de rôles équivalents Meilleure complétude des erreurs trouvées Différencier Erreurs principales (qui auront une grosse influence sur le reste du processus) Secondaires 13/03/2001 InfoBase: Techniques de Re-lecture

Processus d'Inspection: Vue Détaillée Requête d'Inspection Planning Réunion d'initialisation Inspection Individuelle Réunion d'Enregistrement Réunion d'Enregistrement Edition et Suivi Sortie 13/03/2001 InfoBase: Techniques de Re-lecture

Réunion d'Enregistrement En groupe Objectifs: enregistrer toutes les question identifiées individuellement identifier d'autres questions en groupe NE doit PAS décider si les questions sont des erreurs ou pas NE doit PAS discuter les questions ni leur solution(s) Activité importante: 20 à 30 % du temps Leader veille au respect du temps de la discipline Secrétaire prend note des questions soulevées 13/03/2001 InfoBase: Techniques de Re-lecture

Réunion d'Enregistrement: Contenu de l'Enregistrement Questions soulevées violation de règle question d'intention à l'auteur (comprend pas quelque chose) suggestions d'amélioration du processus (règles, checklists, procédures) Nature du problème (quelle règle est violée) Sa localisation en utilisant la numérotation définie par le leader quel document emplacement dans le document Son degré de gravité critique/principale/secondaire Quand la question a été soulevée pendant la révision individuelle pendant la réunion 13/03/2001 InfoBase: Techniques de Re-lecture

Processus d'Inspection: Vue Détaillée Requête d'Inspection Planning Réunion d'initialisation Inspection Individuelle Réunion d'Enregistrement Edition et Suivi Edition et Suivi Sortie 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Edition et Suivi Edition par l'auteur ou le propriétaire relecture de l'enregistrement classification des questions comme erreurs ou pas requalification du degré de gravité modification du produit ou demande de modification de la source (étape logicielle précédente) demande d'amélioration des règles, checklists ou procédure Suivi leader doit s'assurer que toutes les questions ont été traitées 13/03/2001 InfoBase: Techniques de Re-lecture

Processus d'Inspection: Vue Détaillée Requête d'Inspection Planning Réunion d'initialisation Inspection Individuelle Réunion d'Enregistrement Edition et Suivi Sortie Sortie 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Sortie Leader vérifie que le produit rencontre des critères prédéfinis de qualité Exemple de critères nombre estimé de défauts majeurs restant par page (en fonction de l'expérience antérieure, par exemple, ceux retrouvés via les tests,…) jugement subjectif du leader Si critères non rencontrés, refaire un cycle 13/03/2001 InfoBase: Techniques de Re-lecture

Processus d’inspection Application dans le TP 13/03/2001 InfoBase: Techniques de Re-lecture

Exemple TP: Requête d’Inspection et Planning Leader Enseignant Objectif Trouver le maximum d’erreurs dans les spécifications Participants et rôles Chaque groupe révise les spécifications d’un autre groupe Tous les membres dans un groupe ont le même rôle 13/03/2001 InfoBase: Techniques de Re-lecture

Exemple TP: Planning – Documents Produit: Spécification d'un groupe, lignes numérotées Source: Partie du Document de Conceptualisation et Structuration (diagrammes fonctionnels et sous-systèmes) de la série et qui a été assignée au groupe Règles: Pour chaque fonction identifiée dans le document source, une spécification doit apparaître dans le produit A toute donnée qui entre dans une fonction du document source correspond un paramètre d'entrée dans la spécification de la fonction correspondante du produit et inversément Toute fonction du produit est décrite par des paramètres en entrée, des résultats, une postcondition et événtuellement une précondition. Le type de chaque paramètre utilisé dans une spécification est décrit dans cette spécification ... 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Exemple TP: Planning Etapes: Un seul cycle Deux étapes 1. Révision individuelle 2. Réunion d’enregistrement Pas de correction de la spécification Planning des réunions 21/3 de 8h30 à 10h30: révision individuelle Avant 28/3: réunion d’enregistrement + rapport 13/03/2001 InfoBase: Techniques de Re-lecture

Exemple TP: Réunion d'initialisation Maintenant: Explication des objectifs Formation des participants Explication des rôles des participants Présentation du planning Distribution des documents Enoncé, Conceptualisation/Structuration, Règles La spécification à réviser sera disponible au TP Amener 4 copies par groupe! 13/03/2001 InfoBase: Techniques de Re-lecture

Exemple TP: Révision individuelle Utilisation d’un formulaire d’enregistrement des questions Proposition: Avant TP: lecture des règles! Au TP: 1ère lecture de la specification: première identification de questions Travail règle par règle (vérifier si elle est appliquée dans toute la spécification) ou Travail fonction par fonction (vérifier si toutes les règles sont vérifiées dans la spécification de la fonction). 13/03/2001 InfoBase: Techniques de Re-lecture

Exemple TP: Réunion d’enregistrement Réunion de mise en commun des questions soulevées Notation systématique des erreurs Par un secrétaire Utilisation du formulaire Propositions d’améliorations du processus (règles et procédures) Négociation du degré de gravité 13/03/2001 InfoBase: Techniques de Re-lecture

Techniques d’Inspection Coûts et Avantages 13/03/2001 InfoBase: Techniques de Re-lecture

Inspection: Avantages (1) Meilleure qualité du logiciel versus "Coût" important des erreurs: "Une banque anglaise a transféré accidentellement 2 billions de livres à des companies anglaises et et américaines à cause d'une erreur de conception de logiciel qui permettait de dupliquer des instructions de paiement." Le service d'ambulances d'urgences de Londres a perdu 4 appels d'urgence… Dans un cas, on a retrouvé ces informations et envoyé une ambulance mais le patient est décédé plus tard." Meilleure productivité des programmeurs (30 à 100%) 13/03/2001 InfoBase: Techniques de Re-lecture

Inspection: Avantages (2) Diminution du temps total de développement (10 à 30%) car: meilleure compréhension du problème moins d'erreurs Détection des erreurs principales TÔT  reduction de l'effort pour les corriger Diminution du coût et temps des tests (5 à 10 fois moins) car moins d'erreurs avant tests (jusqu'à 82% en moins) Diminution du coût de maintenance (10 fois moins) car: meilleure lisibilité de la documentation (specification, …) 13/03/2001 InfoBase: Techniques de Re-lecture

Inspection: Avantages (3) Avantages psychologiques: meilleur moral du programeur car: travail de meilleure qualité moins de pression partage des forces et faiblesses dans le groupe (aspect formatif) réunions efficaces 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Inspection: Coût Coût de mise en place du processus d'Inspection formation des leaders formation du management définition des procédures et documents Activités d'inspection elles-mêmes Activités d'amélioration du processus Achat d'outils de support (traitement de texte,…) MAIS: vite amorti (test et maintenance) 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Comparaisons (1) Parcours Structurés (Structured Walkthroughs) même idée mais un moins formalisé discussions plus libres, informelles événtuellement moins de personnes (seulement 2 possible) pas d'enregistrement systématique Révisions/Relecture (Reviews) encore moins formel 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Comparaisons (2) Techniques de Tests Similitudes: même objectif enregistrement des erreurs trouvées Différences: inspection est plus facile à utiliser inspection = statique, test = dynamique On peut faire de l'inspection de plans de tests 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Conclusion Technique relativement simple Si systématique, peut avoir des effets importants sur la qualité Peut s ’appliquer sur tous les documents Permet un amélioration progressive du processus (règles, checklists, procédures) 13/03/2001 InfoBase: Techniques de Re-lecture

InfoBase: Techniques de Re-lecture Références Gilb, Graham, Software Inspection, Addison Wesley, 1993. Bell, Morrey, Pugh, Software Engineering: A Programming Approach, Prentice-Hall, 1987. 13/03/2001 InfoBase: Techniques de Re-lecture