05/05/2014 1 Qualité du Logiciel BELASLA El Mehdi 2 Question? Vous ? (nom, pré
05/05/2014 1 Qualité du Logiciel BELASLA El Mehdi 2 Question? Vous ? (nom, prénom, diplômes..) Développeur informaticien? Logiciel ? Qualité logicielle? Normes ? :CMMI ? ISO ? ITIL? PMBOK? COBIT? Outils : développement? GBD? GP?... 3 Plan général du cours Introduction à la qualité du logiciel Assurance qualité Normes et démarches qualité Référentiels de qualité : CMMI ITIL COBIT Métriques de la qualité du logiciel ( Qualimetrie ) 4 Quelques ouvrages Précis de Génie Logiciel, M.-C. Gaudel at al., Masson, 1996 Génie Logiciel : principes, méthodes et techniques, A. Strohmeier et al., Presses Polytechniques et Universitaires Romandes, 1996 ISO 9001 and Software Quality Assurance, D. Ince, McGrawHill, 1994 IS0 9000-3 A Tool for Software Product and Process Improvement, R. Kehoe and A. Jarvis, Springer, 1995 05/05/2014 5 Partie 1: introduction à la qualité du logiciel 6 Objectifs Qu'est-ce la qualité du logiciel? Pourquoi la qualité du logiciel? Facteurs de qualité du logiciel Défauts du logiciels par rapport au processus de développement Définition de l'ingénierie de la qualité du logiciel Total Quality Management 7 Qu‘est ce qu‘un logiciel Selon l'IEEE Un logiciel est: Des programmes, procédures, ainsi que possiblement de la documentation et des données liées à l'opération d'un système informatique. 8 il est visible mais intangible il vieillit mais ne s'use pas il ne se détériore pas sous l'effet des tests il est encore et toujours fabriqué artisanalement il est (trop ?) facilement reproductible il est (trop ?) facile à modifier il est d'une grande complexité : coût très (trop ?) élevé ... Le logiciel : propriétés 9 La crise du Logiciel Coût du Développement Logiciel / Coût du matériel 50% 100% 60 70 80 90 Coût du logiciel vs coût du matériel 10 Répartition des coûts de développement spécification : 6% conception : 5% codage : 7% tests et validation : 15% maintenance : 67% Coûts de correction des erreurs provenant exigences et spécification : 56% conception : 24% codage : 10% autres : 10% Quelques chiffres 11 Qualité du logiciel Qualité en général: perception de la valeur d'un produit par client basé sur: prix, performance, fiabilité, satisfaction Pour l'ingénierie de la Qualité, nous avons besoins: définition plus précise/opérationnelle mesure du degré de qualité monitoring de la qualité amélioration du développement pour mieux atteindre objectifs de qualité 12 Qualité du logiciel Conformité aux exigences Bug/défaut conséquence d'une erreur humaine Résulte en non-conformité aux exigences Sens le plus étroit de qualité du logiciel absence de bugs bas ratio de défauts (# de défauts/unité de taille) haute fiabilité (nombre de pannes par n heures d'opération) Temps Moyen entre Pannes (Mean Time To Failure - MTTF) probabilité d'opération sans panne dans un temps spécifié 13 Qualité du logiciel Deux niveaux de qualité Small q: qualité intrinsèque du produit Limitée au ratio de défauts et à la fiabilité Big Q: niveau plus élargi qualité du produit qualité du processus satisfaction des clients Besoins et demandes du client Assurance de la satisfaction des clients Exigences et spécifications Produits conçus, développés et fabriqués conformément aux prescriptions en continu axé sur l'amélioration des processus Excellente qualité des produits, bonne distribution, service processus Boucle de la qualité 14 Qualité du logiciel pourquoi ? 15 Importance Qualité du Logiciel Logiciel est une composante majeure des systèmes informatiques (environ 80% du coût) – utilisés pour Communication (ex. syst. téléphone, syst. email) Santé (monitoring), Transport (ex. automobile, aéronautique), Échanges économiques (ex. e-commerce), Entertainment, etc. Les défauts du logiciel sont extrêmement coûteux en terme de Argent Réputation Perte de vie 16 Importance de la qualité du logiciel Plusieurs désastres historiques attribués au logiciel 1988 abattage d'un Airbus 320 par l'USS Vincennes – affichage cryptique et confusant du logiciel de détection 1991 échec de missile patriot - calcul imprécis de temps dû à des erreurs arithmétiques London Ambulance Service Computer Aided Despatch System – plusieurs décès Le 3 Juin 1980, North American Aerospace Defense Command (NORAD) rapporta que les U.S. étaient sous attaque de missiles 17 Importance de la qualité du logiciel Ariane 5 crash 4 Juin 1996 Vol inaugural du lanceur européen Ariane 5 crash environ 40 secondes après décollage Perte d'environ ½ milliards de dollars L'explosion était le résultat d'une erreur logiciel Exception non capturée due à une erreur de floating-point: conversion d'entier 64-bit à entier 16-bit signed integer appliqué à un nombre plus large que supposé Le module était ré-utilisé sans avoir été testé convenablement d'Ariane 4 Erreur n'était pas supposé survenir avec Ariane 4 Pas de gestionnaire d'exception 18 Importance de la qualité du logiciel Virus et vers Internet Ver Blaster ($US 525 millions) Sobig.F ($US 500 millions – 1milliard) Exploitent des vulnérabilité bien connues du logiciel Les développeurs de logiciel ne consacrent pas assez d'effort à appliquer des leçons apprises sur les causes des vulnérabilités. Les mêmes types de vulnérabilités continuent à être vus dans les nouvelles versions des produits qui étaient dans des versions précédentes. Problèmes d'utilisabilité 19 Importance de la qualité du logiciel Impact monétaire de logiciel de mauvaise qualité (Standish group 1995) 175,000 projets logiciels/an – coût moyen par projet Grosses compagnies - US 2,322,000 Compagnies Moyennes - US 1,331,000 Petites compagnies - US 434,000 31.1% des projets annulés avant leur complétion coût $81 milliards 52.7% des projets dépassent leur budget coûtent 189\% de l'original coût $59 milliards 16.2% des projets complétés à temps selon le budget (9% pour grosses compagnies) Grosses compagnies – systèmes délivrés ont approximativement seulement 42% des fonctions originellement proposées 78.4% des projets de petites compagnies sont déployés avec au moins 74.2% des fonctions originelles. 20 Il est indispensable de fixer a priori la qualité d'un système dans lequel un logiciel critique intervient Pour cela, il faut : être sûr de ses spécifications complétude ? valider/vérifier toute étape clé dans un développement a-t-on les moyens de la V&V ? Réutiliser mais pas n'importe COMMENT quelles méthodes, quels outils ? Leçons 21 Sources d‘erreurs 10 raisons principales pour le succès de projets (Standish group) 1. Participation des Clients 2. Appui de la Gestion Exécutive 3. Description claire des Exigences 4. Planification Appropriée 5. Espérances Réalistes 6. Milestones de projets plus petits 7. Personnel Compétent 8. Propriété 9. Vision & objectifs clairs 10. Personnel Assidu Et Focalisé 22 Sources d‘erreurs 10 raisons principales pour projets challengés 1. Manque d'Input du client 2. Exigences & Spécifications Incomplets 3. Exigences & Spécifications changeantes 4. Manque de support de l'exécutif 5. Incompétence technologique 6. Manque de Ressources 7. Attentes irréalistes 8. Objectifs non-claires 9. Temps de développement irréaliste 10. Nouvelle technologie 23 Sources d‘erreurs 10 raisons principales pour projets annulés Exigences Incomplètes Manque de participation des clients Manque de Ressources Attentes irréalistes Manque de support de l'exécutif Exigences & Spécifications changeantes Manque de Planification Plus besoin du logiciel Manque de gestion IT Analphabétisme Technologique 24 Et le client ? Produit de bonne qualité est un qui le/la satisfait Conforme aux spécifications Fonctionne bien sur plate-forme(s)/configurations Satisfait complètement aux exigences opérationnelles (même si non-spécifiée!) Compatible avec tout l'équipement des usagers terminaux Backward transparent aux usagers finaux N'a pas d'impact négatif sur les usagers finaux au temps d'introduction 25 Problématique de la qualité logicielle Le caractère unique du produit logiciel Grande complexité Invisibilité du produit Opportunités limités de détection de (―bugs‖) seulement durant le développement Les environnements de développement du logiciel Sous contrat Sujet à une relation client/fournisseur Exige un travail d'équipe Exige la coopération et coordination avec d'autres équipes de développement Exige des interfaces avec d'autres systèmes Exige la poursuite du projet alors que l'équipe change Exige la maintenance pendant plusieurs années 26 Qualité Utilisateurs Décideurs client Décideurs fournisseur Développeurs Logiciel Offre Bénéfices Produits intermédiaires Problématique de la qualité 27 Facteurs de qualité logicielle Modèle de qualité logicielle de McCall's 28 Facteurs de qualité de logiciel Correctude exactitude, complétude de la sortie requise disponibilité, caractère à jour de l'information Effort requis pour localiser et corriger une erreur (lisibilité, traçabilité, accessibilité, etc.) Y contribue : Qualité de la documentation Règle de présentation et de nommage Modularité Traitement des erreurs 29 Facteurs de qualité de logiciel Fiabilité taux de panne maximum Aptitude avec laquelle il fonctionne sans défaillance pour une durée donnée (robuste, constant, etc.). Y contribue : Disponibilité Robustesse Sécurité 30 Facteurs de qualité de logiciel Efficacité ressources nécessaires à la fonction du logiciel Aptitude avec laquelle il fonctionne avec un optimum de ressources et de temps Y contribue : La bonne utilisation des ressources machines (CPU, mémoire, ...) 31 Facteurs de la qualité de logiciel Intégrité (sécurité) sécurité du système logiciel, droits d'accès Aptitude avec laquelle il est protégé contre les altérations ou les accès non autorisés (protégé, confidentiel, etc.). Y contribue : La disponibilité Confidentialité 32 Facteur de la qualité du logiciel Utilisabilité habilité d'apprentissage, habilité d'usage pour la tâche requise Effort requis pour l'apprentissage et le dialogue homme/machine et la documentation (compréhensible, maniable, documenté, etc.). Y contribue : Ergonomie Facilité d'utilisation Facilité d'apprentissage 33 Facteurs de qualité du logiciel Maintenabilité effort pour identifier et corriger les pannes (documentation, lisibilité, traçabilité, accessibilité, etc.) Y contribue : Qualité de la documentation Règle de présentation uploads/Industriel/ cours-belasla-ql-v1.pdf
Documents similaires
-
20
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Dec 18, 2021
- Catégorie Industry / Industr...
- Langue French
- Taille du fichier 3.6155MB