La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

13/03/2001InfoBase: Techniques de Re-lecture1 Informatique de Base Techniques dInspection du logiciel.

Présentations similaires


Présentation au sujet: "13/03/2001InfoBase: Techniques de Re-lecture1 Informatique de Base Techniques dInspection du logiciel."— Transcription de la présentation:

1 13/03/2001InfoBase: Techniques de Re-lecture1 Informatique de Base Techniques dInspection du logiciel

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

3 13/03/2001 InfoBase: Techniques de Re-lecture3 Inspection n Origine: –Michael Fagan (IBM) –utilisé dans un projet informatique de 1972 à 1974 –publication en 1976 n 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 n utiliser le travail en groupe comme un moyen d'améliorer la qualité du logiciel (diminuer le nombre d'erreurs)

4 13/03/2001 InfoBase: Techniques de Re-lecture4 Objectif n 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 ». n Objectif général: améliorer la qualité du logiciel

5 13/03/2001 InfoBase: Techniques de Re-lecture5 Idées principales n 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

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

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

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

9 13/03/2001 InfoBase: Techniques de Re-lecture9 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 Requête d'Inspection

10 13/03/2001 InfoBase: Techniques de Re-lecture10 Requête d'Inspection n Base volontaire: recherche de meilleure qualité n Qui? L'auteur ou le propriétaire du document n 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!

11 13/03/2001 InfoBase: Techniques de Re-lecture11 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 Planning

12 13/03/2001 InfoBase: Techniques de Re-lecture12 Planning: Activités n Rôle du leader n 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 n Distribuer les documents n Convoquer les réunions

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

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

15 13/03/2001 InfoBase: Techniques de Re-lecture15 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 Réunion d'initialisation

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

17 13/03/2001 InfoBase: Techniques de Re-lecture17 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 Inspection Individuelle

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

19 13/03/2001 InfoBase: Techniques de Re-lecture19 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 Réunion d'Enregistrement

20 13/03/2001 InfoBase: Techniques de Re-lecture20 Réunion d'Enregistrement n En groupe n 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) n Activité importante: 20 à 30 % du temps n Leader veille au respect –du temps –de la discipline n Secrétaire prend note des questions soulevées

21 13/03/2001 InfoBase: Techniques de Re-lecture21 Réunion d'Enregistrement: Contenu de l'Enregistrement n 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) n Nature du problème (quelle règle est violée) n Sa localisation en utilisant la numérotation définie par le leader –quel document –emplacement dans le document n Son degré de gravité –critique/principale/secondaire n Quand la question a été soulevée –pendant la révision individuelle –pendant la réunion

22 13/03/2001 InfoBase: Techniques de Re-lecture22 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 Edition et Suivi

23 13/03/2001 InfoBase: Techniques de Re-lecture23 Edition et Suivi n 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 n Suivi –leader doit s'assurer que toutes les questions ont été traitées

24 13/03/2001 InfoBase: Techniques de Re-lecture24 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

25 13/03/2001 InfoBase: Techniques de Re-lecture25 Sortie n Leader vérifie que le produit rencontre des critères prédéfinis de qualité n 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 n Si critères non rencontrés, refaire un cycle

26 13/03/2001InfoBase: Techniques de Re-lecture26 Processus dinspection Application dans le TP

27 13/03/2001 InfoBase: Techniques de Re-lecture27 Exemple TP: Requête dInspection et Planning n Leader –Enseignant n Objectif –Trouver le maximum derreurs dans les spécifications n Participants et rôles –Chaque groupe révise les spécifications dun autre groupe –Tous les membres dans un groupe ont le même rôle

28 13/03/2001 InfoBase: Techniques de Re-lecture28 Exemple TP: Planning – Documents n Produit: –Spécification d'un groupe, lignes numérotées n 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 n 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 –...

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

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

31 13/03/2001 InfoBase: Techniques de Re-lecture31 Exemple TP: Révision individuelle n Utilisation dun formulaire denregistrement des questions n 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).

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

33 13/03/2001InfoBase: Techniques de Re-lecture33 Techniques dInspection Coûts et Avantages

34 13/03/2001 InfoBase: Techniques de Re-lecture34 Inspection: Avantages (1) n 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." n Meilleure productivité des programmeurs (30 à 100%)

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

36 13/03/2001 InfoBase: Techniques de Re-lecture36 Inspection: Avantages (3) n 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

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

38 13/03/2001 InfoBase: Techniques de Re-lecture38 Comparaisons (1) n 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 n Révisions/Relecture (Reviews) –encore moins formel

39 13/03/2001 InfoBase: Techniques de Re-lecture39 Comparaisons (2) n 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

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

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


Télécharger ppt "13/03/2001InfoBase: Techniques de Re-lecture1 Informatique de Base Techniques dInspection du logiciel."

Présentations similaires


Annonces Google