Vous êtes sur la page 1sur 4

Plan du cours

IFT3913  Introduction
Qualité du logiciel et métriques  Qualité du logiciel
 Théorie de la mesure
 Mesure de la qualité du logiciel
 Études empiriques
 Mesure du produit logiciel
Chapitre 2  Collection et analyse des métriques
Qualité du produit logiciel  Test du logiciel

Pourquoi évaluer la qualité d’un Pourquoi évaluer la qualité d’un


logiciel ? logiciel ? (suite)
 Situations  Dimensions
– Achat d’un logiciel (alternatives) – La qualité n’est pas une notion
– Évaluation de logiciel en cours unidimensionnelle (voir définitions du
d’utilisation chapitre 1)
– Contrôle de qualité durant le – Il est donc nécessaire de
développement d’un logiciel –définir les caractéristiques à évaluer
 Questions (quoi)
– Le logiciel arrive-t-il à faire ce qui lui est –déterminer les techniques à utiliser
demandé? pour évaluer chacune des
caractéristiques (comment)
– Dans quelle mesure y arrive-t-il?
3 4

Le « quoi » ou la définition des


Capacité fonctionnelle
caractéristiques de qualité
 Définition
Ensemble d'attributs portant sur l'existence d'un
 ISO/IEC 9126 propose 6 caractéristiques de ensemble de fonctions et leurs propriétés. Les
qualité du produit logiciel fonctions sont celles qui satisfont aux besoins
– Capacité fonctionnelle (Functionality) exprimés ou implicites
– Fiabilité (Reliability)  Sous-caractéristiques
– Facilité d'utilisation (Usability) – Aptitude : présence et adéquation d’une série de fonctions
pour des tâches données
– Rendement (Efficiency)
– Exactitude : fournir des résultats ou des effets justes ou
– Maintenabilité (Maintainability) convenus
– Portabilité (Portability) – Interopérabilité : capacité à interagir avec des systèmes
donnés
– Sécurité : aptitude à empêcher tout accès non autorisé
(accidentel ou délibéré) aux programmes et données
5 6

1
Fiabilité Facilité d’utilisation
 Définition  Définition
Ensemble d'attributs portant sur l'aptitude du Ensemble d'attributs portant sur l'effort nécessaire
logiciel à maintenir son niveau de service dans des pour l’utilisation et l'évaluation individuelle de cette
conditions précises et pendant une période utilisation par un ensemble défini ou implicite
déterminée
d’utilisateurs
 Sous-caractéristiques
 Sous-caractéristiques
– Maturité : fréquence des défaillances dues à des défauts du
logiciel – Facilité de compréhension : effort que doit faire l’utilisateur
– Tolérance aux fautes : aptitude à maintenir un niveau de pour reconnaître la logique et sa mise en œuvre
service donné en cas de défaut du logiciel ou de violation de – Facilité d’apprentissage : effort que doit faire l’utilisateur
son interface pour apprendre son application
– Possibilité de récupération : capacité à rétablir son niveau – Facilité d’exploitation : effort que doit faire l’utilisateur pour
de service et de restaurer les informations directement
exploiter et contrôler l’exploitation de son application
affectées en cas de défaillance; temps et effort nécessaire
pour le faire
7 8

Rendement Maintenabilité
 Définition  Définition
Ensemble d'attributs portant sur le rapport existant Ensemble d'attributs portant sur l'effort nécessaire
entre le niveau de service d’un logiciel et la quantité pour faire des modifications données
de ressources utilisées, dans des conditions  Sous-caractéristiques
déterminées – Facilité d’analyse : effort nécessaire pour diagnostiquer les
 Sous-caractéristiques déficiences et causes de défaillance ou pour identifier les
– Comportement vis-à-vis du temps : temps de réponses et parties à modifier
de traitement; débits lors de l’exécution de sa fonction – Facilité de modification : effort nécessaire pour modifier,
– Comportement vis-à-vis des ressources : quantité de remédier aux défauts ou changer d’environnement
ressources utilisées; durée de leur utilisation lorsqu'il – Stabilité : risque des effets inattendus des modifications
exécute sa fonction – Facilité de test : effort nécessaire pour valider le logiciel
modifié

9 10

Portabilité Le « comment » ou la définition


du processus d’évaluation
 Définition
Ensemble d'attributs portant sur l'aptitude du
logiciel à être transféré d’un environnement à l’autre  ISO/IEC 9126 (annexe)
 Sous-caractéristiques – ensemble de grandes lignes pour un
– Facilité d’adaptation : possibilité d’adaptation à différents processus d’évaluation de la qualité
environnements donnés sans que l’on ait recours à d’autres  ISO/IEC 14598
actions ou moyens que ceux prévus à cet effet
– Facilité d’installation : effort nécessaire pour installer le – cadre plus précis pour l’évaluation du
logiciel dans un environnement donné produit logiciel
– Interchangeabilité : possibilité et effort d’utilisation du
logiciel à la place d’un autre logiciel donné dans le même  Le projet SCOPE
environnement – cadre complet pour l’évaluation
– Conformité aux règles de portabilité : conformité aux normes
et aux conventions ayant trait à la portabilité
11 12

2
Processus d'évaluation (9126) Processus d'évaluation (9126)
 Composé de trois étapes 2. La préparation de l'évaluation (suite)
1. La définition des exigences de qualité • Sélection des métriques de qualité
– Ces dernières doivent correspondre aux
• L'objectif de cette première étape est de spécifier caractéristiques énumérées plus haut
les exigences en termes de caractéristiques de
qualité. Ces exigences peuvent varier d'un • Définition des taux de satisfaction
composant du produit à un autre – Les échelles de valeurs doivent être divisées en
portions correspondant aux niveaux de satisfaction
2. La préparation de l'évaluation. des exigences
• À ce niveau, l'objectif est d'initier l'évaluation et • Définition des critères d'appréciation
de mettre au point ses bases. Ceci est fait en – Ceci inclut la préparation de la procédure de
trois sous-étapes compilation des résultats par caractéristique. Il est
possible aussi de prendre en compte dans cette
procédure des aspects de gestion tels que le temps
ou les coûts

13 14

Directives complémentaires
Processus d'évaluation (9126)
(14598)
3. La procédure de l'évaluation.
 L'objectif de cette norme est de fournir
• À ce stade, l'évaluation est faite en termes de
– Mesure : les métriques sélectionnées sont – les directives d'identification, d'implantation
appliquées au produit, donnant ainsi des valeurs. et d'analyse des métriques nécessaires au
– Notation : pour chaque valeur mesurée, une note processus d'évaluation du produit final,
(de satisfaction) est attribuée.
– Appréciation : en utilisant les critères – les directives de définition des indicateurs
d'appréciation, un résultat global de l'évaluation du qui permettent des évaluations partielles
produit est obtenu. Ce résultat est confronté aux
aspects de gestion (temps et coûts) pour la prise de pendant le cycle de développement
décision.  Cette norme donne entre autres
– les informations générales sur les
indicateurs de qualité des logiciels;

15 16

Directives complémentaires Un exemple de cadre d’évaluation


(14598) SCOPE
– les critères de sélection de ces indicateurs;  SCOPE (Software CertificatiOn Programme
– les directions pour l'évaluation des in Europe) est un projet européen ESPRIT
données de mesurage;  Objectifs
– les directions pour l'amélioration du – Définir les procédures d'attribution d'un label de
processus de mesurage; qualité à un logiciel quand celui-ci satisfait un
certain ensemble d'attributs de qualité
– des exemples de types de graphes – Développer des technologies nouvelles et
d'indicateurs; efficaces d'évaluation, à des coûts raisonnables,
– des exemples d'indicateurs qui peuvent permettant l'attribution de ce label
être utilisés pour les caractéristiques de – Promouvoir l'utilisation des technologies
qualité de la norme ISO/IEC 9126 modernes de l'ingénierie des logiciels. Celles-ci,
étant utilisées durant le développement des
logiciels, contribuent à l'attribution de ce label
17 18

3
Un exemple de cadre d’évaluation Étape 1 Soumission du produit
logiciel pour l'homologation
L'évaluation est initiée

SCOPE Processus Étape 2


Entente sur les critères
d'évaluation
Les critères d'évaluation sont
produits
Étape 3 Entente sur une estimation

SCOPE préliminaire du coût

 Résultat : définition d'un cadre Étape 4 Analyse du produit


La spécification de
l'évaluation est produite
d'évaluation comprenant Étape 5 Production de la spécification
de l'évaluation

– un processus Étape 6
Sélection des modules
d'évaluation en fonction des

– une méthode
objectifs

Étape 7 Le plan de l'évaluation est


Production du plan de

– des techniques
produit
l'évaluation

Étape 8 Estimation des coûts de


l'évaluation

Évaluation du produit logiciel


Étape 9 L'évaluation est
(1) mesurage sur les composantes du produit
(2) planification et gestion du projet de l'évaluation effectuée
(3)production du rapport de mesurage

Étape 10 Rendre compte des résultats de l'évaluation


Le rapport de l'évaluation
(1) prise de décision
(2) informations générales et recommandations est produit
(3) capitalisation de l'expérience

19 20

Processus SCOPE Méthode SCOPE


 Documents produits Détermination du
– Les critères d'évaluation niveau d’importance
Détermination des

– La spécification de l'évaluation caractéristiques à évaluer


Choix des techniques
d’évaluation
– Le plan de l'évaluation
La méthode d'évaluation s'appuie sur trois types d'analyse
– Le rapport d'évaluation 
techniques
– L'analyse statique qui consiste à examiner le code pour évaluer les
caractéristiques de qualité.
– L'analyse dynamique qui consiste entre autres à simuler le
déroulement de l'application pour effectuer des mesures.
– L'inspection qui concerne particulièrement les interfaces
« utilisateur ».

21 22

Méthode SCOPE Techniques SCOPE


 L'évaluation peut se faire selon le niveau  Choix des techniques pour chaque niveau
d’importance Niveau D Niveau C Niveau B Niveau A

Niv. Environnement Personnes Économie Application Capacité test fonctionnel + inspection des + test des + preuve formelle
fonctionnelle (boîte noire) documents (listes de composantes
contrôle)
D petit dommage à la pas de risques pour perte économique loisirs, domestiques Fiabilité facilités des + analyse de la + modèle de + preuve formelle
propriété les personnes négligeable langages de tolérance aux fautes croissance de la
programmation fiabilité
Facilité inspection des + conformité aux + test en laboratoire + modèle mental de
C dommage à la peu de personnes perte économique alarmes de feu, d'utilisation interfaces normes sur les l'utilisateur
propriété touchées significative contrôle de processus utilisateurs interfaces
Rendement mesurage du temps + test avec bancs + complexité + analyse des
d'exécution d'essai (benchmarks) algorithmique performances
B dommage menace pour des grande perte systèmes médicaux,
environnemental vies humaines économique systèmes financiers
Maintenabilité inspection des + analyse statique + analyse du + évaluation de la
réparable
documents (listes de processus de traçabilité
contrôle) développement
A dommage des personnes désastre financier systèmes de transport, Portabilité analyse de + conformité avec + évaluation des + évaluation de la
environnemental mortes systèmes du nucléaire l'installation les règles de contraintes de conception des
irréparable programmation l'environnement programmes

23 24

Vous aimerez peut-être aussi