• Aucun résultat trouvé

Théorie de la mesure

N/A
N/A
Protected

Academic year: 2022

Partager "Théorie de la mesure"

Copied!
22
0
0

Texte intégral

(1)

IFT3913

Qualité du logiciel et métriques

Chapitre 4

Théorie de la mesure

Plan du cours

„

Introduction

„

Modèles de processus du développement du logiciel

„

Qualité du logiciel

„

Théorie de la mesure

„

Mesure de la qualité du logiciel

„

Études empiriques

„

Mesure du produit logiciel

„

Collection et analyse des métriques

(2)

3

C’est quoi la mesure ?

„

Définitions

– Mesure : processus qui consiste à affecter des nombres et des symboles aux attributs des objets du monde réel pour les décrire selon des règles clairement définies

– Une entité : un objet (par exemple personne, salle) ou un événement (par exemple voyage, phase de test) dans le monde réel

– Un attribut : une propriété d'une entité (par exemple la couleur de la salle, le coût du voyage, le temps de test écoulé).

C’est quoi la mesure ?

Bleu 259 1998 23 203 6.000.000

22 6

(3)

5

Mais …

„

La définition de la mesure n'est pas précise

– Le bleu est-il une mesure de la couleur d'une salle

?

– La taille est un attribut d'une personne qui peut être mesuré, mais qu’en est-il de l'intelligence ? – Qu’est ce qui détermine l’exactitude de la mesure ? – Comment détecter les erreurs dans la mesure ? – Quelle échelle utiliser, m ou cm ?

– Quels calculs sur des résultats des mesures (par exemple moyennes) sont valides ?

En résumé …

„

La mesure est une quantification directe, le calcul est indirecte

„

Mesurer permet de mieux comprendre et donc de mieux mesurer

– QI, points décathlon, scores des tests de langues, …

Ce qui n'est pas mesurable rendez le

mesurable

(Galilée 1564-1642)

(4)

7

La mesure pour le génie logiciel

„ Longtemps la mesure a été considérée comme un luxe dans les projets de développement du logiciel

„ Quelques mythes

– On sait à peu près où on va

– On va utiliser certains composants pour le développement mais on n’a pas vraiment regarder pour le coût

– On n’a pas une idée précise sur la qualité du produit final (fiabilité, portabilité), mais ça devrait être bon

– On va utiliser la technologie X car il paraît que la compagnie Y l’utilise avec succès

„ Quand il y a mesure, c’est souvent non systématiques, pas cohérente et incomplète

vous ne pouvez pas contrôler ce que vous ne pouvez pas mesurer (DeMarco, 1982)

Relations empiriques

„

Exemples

– Ce café est meilleur que celui d’hier – La classe A est plus facilement

maintenable que la classe B

– L’algorithme de tri X est plus efficace que l’algorithme Y

„

L’être humain n’est pas toujours

capable de formuler des relations

empiriques correctes (barrière de

l’intelligence, Kirz 1988)

(5)

9

Approche de mesure

Objets du monde réel

Relations empiriques Barrière de l’intelligence

Nombres et symboles

Nombres dérivés

Statistiques Mesure

Interprétation

Condition de représentation

„

Relation empirique

– La relation empirique doit elle aussi être

représentée par des nombres ou des symboles

„

Condition de représentation

– Le choix de la représentation par des nombres ou des symboles doit préserver la relation empirique du monde réel

– Exemple

• X est plus grand que Y

• Mesure de la taille par la valeur en kilogrammes de l’individu

• Ne préserve pas la relation empirique

(6)

11

Condition de représentation

„

Définition formelle

– Soient E un ensemble d’entités, R une relation empirique entre les entités de E, M une méthode de mesure et O une relation entre les mesures. Nous avons

(E, R)

(E, M, O)

– Soient x et y deux entités de E, la

condition de représentation est définie par

R(x, y)

O(M(x), M(y))

Condition de représentation

„

Exemple

– Soient Eun ensemble de personnes et YidaetYanisdeux personnes

– Soit Rla relation est_plus_grand_que.On sait que Yidaest plus grand queYanis

– Soit Mla mesure de la taille en cm – Soit Ola relation “>”

– Par la mesure, on obtient M(Yanis) = 172 et M(Yida) =181 est_plus_grand_que (Yida, Yanis) est vrai (monde réel) et

M(Yida) > M(Yanis) est vrai (relation mathématique) – Alors queest_plus_grand_que (Yanis, Yida) etM(Yanis) >

M(Yida) sont tous les deux fauts

(7)

13

Condition de représentation

„

Conséquences

– La condition de représentation est valide pour notre exemple

– Ceci veut dire que la relation formelle peut être utiliser pour raisonner sur le monde réel

– En introduisant la mesure de la taille en cm, on peut définir de nouvelles mesures qui n’ont pas d’équivalent dans le monde réel (taille moyenne d’un ensemble de personnes) – La relation “>” permet de définir plus précisément la relation

est_plus_grand_que et permet d’élargir la gamme de raisonnement qu’on peut faire à partir de cette relation

Modèle

„ Un modèle est une abstraction de réalité qui permet d'éliminer les détails et de voir une entité ou un concept à partir d'une perspective particulière

„ Une mesure est toujours associé à un modèle. Par exemple la mesure doit se faire debout, avec appui sur les talons, sans chaussures et sans chapeau

„ Le modèle détermine donc comment associer les attributs du monde réel aux éléments du système numérique

„ Le fait de donner un nom à une mesure ne veut pas dire que la mesure mesure bien ce que l’on veut mesurer (taille)

(8)

15

Modèle

„ La mesure directe d’un attribut ne dot pas impliquer d’autres attributs ou entités, elle doit être une évaluation de quelque chose qui existe

„ Par opposition, la mesure indirecte permet le calcul qui implique d’autres attributs ou entités en utilisant le modèle mathématique associé

„ La mesure permet également la prédiction. Un système de prédiction permet, en utilisant un modèle mathématique avec des procédures de prédiction, de déterminer des paramètres inconnus et d’analyser les résultats

„ Exemple

„ le coût d’un voyage en voiture de Montréal à Toronto Coût = s * c / d

s (distance), c (le prix d’un litre d’essence) et d (consommation par litre de la voiture)

Le coût est une prédiction et non une mesure

Échelles de mesure

„ Définition

– On appelle échelle de mesure l’ensemble constitué de la méthode de mesure M et les systèmes des relations empiriques et numériques

„ Questions

– Comment déterminer si un système de relations numériques est meilleur qu’un autre ?

– Peut-on toujours trouver un système de relations numériques ?

– Comment faire quand il existe différentes représentations possibles dans le même système de relations empiriques ?

(9)

17

Échelles de mesure

„

Réponse pragmatique

– Utiliser des nombres réels quand c’est possible

„

Problème de représentation

– Pour certains problèmes (systèmes de relations empiriques) une seule représentation est

possible, pour d’autres, différentes échelles de mesure peuvent être appliquées

– Plus il y a de relations empiriques à préserver, moins il y a de possibilités de représentions

– Une échelle A est dite plus riche qu’une échelle B si les caractéristiques de B sont incluses dans celles de A

Types d’échelles

„

Il existe 5 types d’échelles

1. Nominale 2. Ordinale 3. Intervalle 4. Ratio 5. Absolue

„

Classification (1 à 4) proposée par Stevens en 1946

„

Chaque type d’échelles autorise

certains types de transformations

(10)

19

Échelle nominale

„

La plus basse dans les niveaux de mesure

„

Elle consiste en une classification simple

„

Exemples

– Sexes : mâle (1) femelle (2) – Couleurs : rouge, vert, … – Religions

– Processus de développement – Langage de programmation

„

Aucun ordre entre les classes même si ce sont des nombres

Échelle nominale

„

Propriétés

– Les classes doivent être conjointement exhaustives

• Pour le langage de programmation, par

exemple, utiliser une classe «autre» pour être exhaustif

– Les classes doivent être mutuellement exclusives

• Une personne ne peut pas être en même temps catholique et protestante

(11)

21

Échelle ordinale

„

Permet de rajouter la notion d’ordre à l’échelle nominale

„

La notion d’ordre peut être établie aussi bien entre les nombres que les

symboles

„

Exemples

– Classes sociales

– Tailles (petit, moyen, grand) – Niveaux CMM

Échelle ordinale

„

Propriétés

– Transitivité

• Considérant la relation > qui définit un ordre entre les entités, si P1 > P2 et P2 > P3 alors P1 > P3

• Exemple CMM : une organisation au niveau défini est plus mature qu’une organisation au niveau initial

– Complétude

• Pour deux entités distincts P1 et P2, il faut toujours avoir soit P1 > P2, soit P2 > P1

(12)

23

Échelle intervalle

„

Permet d’ajouter la notion de distance relative entre deux classes de mesures

„

Pour deux valeurs successives quelconques vi et vj, vj-vi = d

„

Exemple

– Température en Celsius ou en Fahrenheit – Date de survenu d’un faute

Échelle ratio

„

Ajoute la notion de zéro absolu à l’échelle intervalle

„

Zéro absolu = absence de l’attribut mesuré

„

Exemples

– Température en Kelvin

– Temps entre 2 fautes

(13)

25

Échelle absolue

„

L’attribut ne peut être mesuré que d’une seule façon

„

Consiste généralement à compter

„

Exemple

– Nombre de voitures dans le stationnement – Nombre d’erreurs trouvées lors du test

d’intégration

Transformations, significations et statistiques

„

Transformations

– Soit x une entité et M(x) une mesure sur x – Chaque type d’échelle autorise un certain

type de transformations t sur M : t(M(x))

– Échelle nominale

• Uniquement les transformations un vers un

• Exemple

– Java →1, C++ →2, C# →3

(14)

27

Transformations, significations et statistiques

„

Transformations

– Échelle ordinale

• Toute transformation qui préserve l’ordre (toute fonction monotone croissante)

• Exemple : transformation de labels dans une échelle de Likert (1 →très satisfait, etc.)

– Échelle intervalle

• Toute transformation de la forme t(M(x)) = a ×M(x) + b, a>0

• Exemple : conversion Celsius Fahrenheit F = 9/5 C + 32

Transformations, significations et statistiques

„

Transformations

– Échelle ratio

• Toute transformation de la forme t(M(x)) = a ×M(x), a>0

• Exemple : Conversion de monnaie CAD = 0.6 EUR

– Échelle absolue

• Uniquement la transformation « identité » t(M(x)) = M(x)

(15)

29

Transformations, significations et statistiques

„

Transformations

Nombre de…

f(x) = x (identité) Absolue

Degré Kelvin f(x) = a x, a > 0

Ratio

Degré Celcius f(x) = a x + b, a > 0

Intervalle

Échelle de Likert Fonctions monotones

croissantes Ordinale

Sexe, religion Fonctions un à un

Nominale

Exemples Transformations

Types d’échelle

Transformations, significations et statistiques

„

Signification

– Le type d’échelle d’une mesure détermine quelles sont les opérations possibles sur les données – Par exemple, les analyses statistiques utilisent les

opérateurs arithmétiques (+, –, ÷, ×)

– Ces opérations ne sont pas permises sur des données de type échelles nominale et ordinale, les analyses statistiques qui les utilisent ne sont donc pas être significatives

(16)

31

„

Signification

– Exemple : la moyenne

• Lors des tests d’acceptabilité, à la question « êtes vous satisfait de la qualité de l’interface », 5 utilisateurs ont répondu suivant une échelle de Likert à 5 choix de réponses : 3 , 5, 3, 4, 3

• Est ce la moyenne est significative comme mesure globale de la satisfaction du groupe ?

• Si non, quelles seraient les alternatives ?

Transformations, significations et statistiques

3 + 5 + 3 + 4 + 3

5 = 3,6

Transformations, significations et statistiques

„

Signification

– Exemple : la moyenne (suite)

• La médiane (= 3) peut être utilisée dans ce cas

• La médiane ne peut pas être utilisée dans le cas d’une échelle nominale, pourquoi ?

• Le mode (= 3) peut être utilisé dans le cas d’une échelle nominale

(17)

33

Transformations, significations et statistiques

„

Signification

– Exemple : la moyenne (suite)

• Le nombre de fautes a augmenté de 10% la première année, de 15% la seconde et de 5% la troisième

• Quelle est la moyenne de l’augmentation ?

– Moyenne arithmétique ? (10% + 15% + 5%) / 3 = 10%

– Moyenne géométrique ? (10%*15%*5%)1/3 = 9,08%

Transformations, significations et statistiques

„

Signification

Tout Tout

Absolue

Déviation géométrique Moyenne géométrique

Ratio

Écart type Moyenne arithmétique

Intervalle

Percentile Médiane

Ordinale

Fréquence Mode

Nominale

Écart Moyenne

Type d’échelle

(18)

35

Transformations, significations et statistiques

„

Autres exemple de signification

– Michel est deux fois plus grand que Vlad – Significatif ?

Transformations, significations et statistiques

„

Autres exemple de signification

– Il a fait deux fois plus chaud le 22 juin

dernier à 10h à Montréal qu’à Ottawa

– Significatif ?

(19)

37

Transformations, significations et statistiques

„

Autres exemple de signification

– La différence de température entre Ottawa et Montréal a été 2 fois plus élevée le 22 juin que le 23 juin

– Significatif ?

Transformations, significations et statistiques

„

Choix d’échelles

– Quand il faut mesurer les attributs d’une entité, il faut en priorité choisir des mesures objectives – Exemple : pour mesurer le couplage d’une classe,

utiliser une mesurer quantitative du couplage plutôt qu’une échelle de Likert (subjective)

– Les mesures subjectives sont acceptables s’il est difficile de définir des mesures objectives et si l’imprécision est bien comprise

(20)

39

Transformations, significations et statistiques

„

Cas des attributs non mesurables directement

– L’attribut est décomposé en sous-attributs directement mesurables

– Cas de la qualité d’une conception : elle peut être représentée par le couple (couplage, cohésion) – Il est préférable d’avoir un faible couplage et une

forte cohésion

• Pour une classe A, j’ai deux conceptions possibles, l’une donne le couple (10, 0.3), l’autre le couple (12, 0.4), laquelle choisir ?

– Problème de prise de décision multicritères

Transformations, significations et statistiques

„ Signification des mesure indirectes

– Exemple (densité)

• d = M/V (masse sur le volume) M et V sont de type ratio

• Par transformation, M'/V' = (a ×M)/(b ×V) = (a/b) ×(M/V) = c ×d = d'

• c > 0, alors d est aussi considéré comme de type ratio

– En général, une mesure indirect ne peut pas être plus riche que les mesures directes qui la composent

• Efficacité des tests T = D/E ou D est le nombre de fautes trouvées (absolue) et E l’effort en personnes mois (ratio)

• T est donc de type ratio

• Pour changer l’échelle de T, changer la mesure de l’effort E

(21)

41

Validation des mesures

„ La validation d’une mesure du logiciel consiste à s’assurer que la mesure est une caractérisation numérique correcte de l’attribut mesuré

„ Exemple

– Une mesure de taille d’un programme ne doit pas contredire toute notion intuitive sur la taille

– Si un programme P1 est plus grand qu’un programme P2 alors M(P1) > M(P2)

– Si P1 ; P2 alors M(P1;P2) = M(P1) + M(P2)

• Si M(P1) = 9 et M(P2) = 7 alors M(P1;P2) = 16 – Nombre de classe ? Nombre de ligne de code ?

Validation des mesures

„

Une façon efficace de valider une

mesure est de montrer qu’elle fait partie

d’un système de prédiction valide

(22)

43

Validation d’un système de prédiction

„

La validation d’un système de

prédiction, dans un environnement donné, consiste à montrer que les prédictions faites par le système en utilisant des moyens empiriques sont correctes

„

En d’autres termes, comparer les

prédictions avec les données connues

Validation d’un système de prédiction

„

Méthodes

– Expérimentation – Utilisation effective

„

Outils de base

– Statistiques – Probabilités

„

Autres outils

– Arbres de décision – Réseaux de neurones – Logique floue

Références

Documents relatifs

La taille moyenne des nouveau-nés de notre étude était inférieure à la taille moyenne pour l’âge gestationnel selon les courbes de Fenton avec un Z-score de -1.57 pour la taille

Notre étude a rapporté une corrélation positive significative entre la taille moyenne de la verge et les données anthropométriques du nouveau-né à la naissance

Un entomologiste a fait des relevés sur la taille de 60 courtilières adultes. Un diagramme circulaire serait-il intéressant ? 3°) Calculer la moyenne de la série. Déterminer

ment gênante pour les mesures de vie moyenne, aussi nous avons étudié un circuit de coïncidence différentiel à trois tubes 6BN6, utilisable comme. sélecteur en

• Vocabulaire de la statistique : mesures de la tendance centrale, moyenne, mode, médiane, étendue, valeur aberrante, ensemble de données, collecte, données primaires,

Une demande floue (II) dont la représentation graphique rappelle la "courbe- fuseau" de Jean MARCHAL, sera finalement dérivée en introduisant la contrainte

Cette structure permet de plus la formalisation d’une répétition de mesures en face du même état, en prenant comme a priori d’une nouvelle mesure l’a posteriori résultant de

Il convient donc de se poser la question du réel intérêt d’une règle : comment doit-on arbitrer entre une règle d’association très bien évaluée par les mesures, mais de