Modèles de qualité - iro.umontreal.capift3902/Automne%202004/... · nL’augmentation de la...

33
Salah Bouktif © Salah Bouktif 2003 Département d’informatique et de recherche opérationnelle Université de Montréal Les modèles de qualité logicielle

Transcript of Modèles de qualité - iro.umontreal.capift3902/Automne%202004/... · nL’augmentation de la...

Salah Bouktif

© Salah Bouktif 2003

Département d’informatique et de recherche opérationnelle

Université de Montréal

Les modèles dequalité logicielle

2/25

Plan de la présentation

n Introductionn Définition de la qualité (points de vue)n Évaluation de la qualiténModèles de qualitén Exemples de modèlesn Typologie des modèles de qualitén Problèmes des modèles n Conclusion

3/25

Introduction

n Pourquoi évaluer la qualité est important ? n En général

– Auto-estimation ou auto-diagnostique, pour ensuite établir des plans d'amélioration

– Prise de place et concurrence– Maîtrise des coûts– Crédibilité et certification(standards)

n En génie logiciels– 75% des efforts pour faire la maintenance– Maintenance : correction, perfectionnement, adaptation, prévention,

nouvelles versions– Cause : performance, fiabilité, nouveaux besoins, etc.

4/25

Introduction

n Cycle de vie = 1 cycle de développement + k cycles de maintenance

n À un moment donné du cycle de vie on a besoin– D’évaluer ce qui s’est passé (processus) / ce qui est produit

(produit)– De prévoir ce qui va se passer ou se produire

n Faire la bonne chose la première foisn Étant donné les changements constants des besoins, un

logiciel avec un niveau de qualité élevé est plus facile à maintenir

5/25

Définition et vue de la qualité

n La définition de la qualité de logicielle a plusieurs facettes– Client, usagers– Développeurs– Gestionnaire– Chercheurs

6/25

Définition et vue de la qualité

n Clients, usagers – Aptitude à l’emploi– Concentration sur la tâche (fonctionnalités et

utilisation)– Facteurs : fiabilité et facilité d’utilisation– Problème : une vue trop fermé

7/25

Définition et vue de la qualité

n Développeurs – Conformation aux spécifications– Concentration sur le processus– Facteurs : taux de défauts– Problème : qualité du produit « contre » qualité

du processus

8/25

Définition et vue de la qualité

nGestionnaire – La qualité est jugée selon les moyens d’acheter– Concentration sur le coût– Facilite l’arbitrage entre différentes vues– Problème : relation entre valeur à l’entreprise et

qualité du logiciel

9/25

Définition et vue de la qualité

n Chercheurs – La qualité comme fonction des caractéristiques internes du produit– Concentration interne– Facteurs : maintenabilité et testabilité– Problème : qualité interne « contre » qualité

dans le contexte d’utilisation

10/25

Concepts de la qualité logicielle

Sous - caractéristiquesCARACTERSITIQUES

Attributs externes

Attributs internes

METRIQUES MODELES

11/25

Les métriques

n Définition (ISO9126)n Une échelle quantitative et une méthode, qui peuvent être

employées pour déterminer la valeur que prend une propriété pour un produit logiciel spécifique

n Pourquoi les métriques – prédire le coût ou l’effort de développement– prédire la qualité du produit

n Exemples de métriques– LOC pour prédire le coût, l’effort et la qualité (début des années 60)– Métriques OO de Chidamber (DIT)

12/25

Modèles de la qualité logicielle

nMotivationn L’augmentation de la taille du logiciel rend le

développement plus complexe et augmente le risque de l’échec

n Cette même complexité rend toute forme de prédiction ou d’estimation (coût et qualité) extrêmement difficile

n Nécessité de construire des modèles prédictifs de qualité

13/25

Modèles de la qualité logicielle

Sous-caractéristiquesCARACTERSITIQUES

Attributs externes

Attributs internes

METRIQUES MODELES

14/25

Un modèle de la qualité

Attribut A

Attribut B

Attribut C

Attribut D

Attribut E

Attribut F

Sous-attribut p

Sous-attribut q

Sous-attribut r

•••

•••

15/25

Modèles de la qualité logicielle

n Un modèle peut être défini par un ensemble de vues concernant le produit

n Chaque vue est décomposée en plusieurs facteurs n Un facteur est décomposé en plusieurs critères, les

facteurs sont en général des attributs externes (mais aussi des attributs internes : testabilité, efficacité)

n Chaque critère est défini par un ensemble de métriquesn Par exemple, dans le modèle de McCall le facteur de

fiabilité est décomposé en cohérence, précision, tolérance aux erreurs et simplicité

16/25

Le modèle de McCall : attributs

n Le fonctionnement du produit– Fiabilité – Efficacité – Intégrité – Facilité d’emploi

n Les changements– Maintenabilité– Testabilité – Flexibilité

n La transition– Portabilité – Réutilisabilité– Interopérabilité

17/25

Le modèle de McCall : maintenabilité et fiabilité

Fiabilité

Maintenabilité

Cohérence

Tolérance aux erreurs

Modularité

Exactitude

Concision

Documentation interne

Simplicité

18/25

Le modèle de MacCall : mesure de la qualitén 41 métriques pour mesurer des critères de

qualiténMesurer un facteur revient a considérer une

liste de conditions à vérifiern La liste de conditions peut s'appliquer aux

besoins (R), à la conception (D) et à l'implémentation (I)

n Une condition est vraie ou fausse

19/25

Exemple : liste des conditions pour le critère complétude1- Des références non ambiguës (entrée, sortie, fonction) [R, D, I] 2- Toutes les références de données (variables ou références directes à

des adresses au moyen de pointeurs) sont définies, calculées ou lues de l'extérieur [R, D, I]

3- Toutes les fonctions définies sont utilisées [R, D, I]4- La conception est conforme aux besoins [D]…

n Il y a 6 conditions qui s'appliquent aux besoins, 8 à la conception et 8 à l'implémentation

n La mesure de la complétude est : 1 / 3 ×(nv(R) / 6 + nv(D) / 6 + nv(I) / 8)

20/25

Exemple : modèle ISO 9126

n Standard dérivé du modèle de McCalln Évaluation de produits logiciels (six facteurs

appelés caractéristiques)n Caractéristique, sous-caractéristiques

– Fonctionnalité : convenance, exactitude, interopérabilité, sécurité

– Fiabilité : maturité, tolérance aux pannes, possibilité de récupération

– …

21/25

Modèles prédictifs de qualité

Paramètres

Mesures (attributs internes)

caractéristique de qualité(attribut externe)f

22/25

Modèles prédictifs de qualité

n Exemples

22/25

Modèles prédictifs de qualité

n Exemples

baSE

CocomoEffort

=

)(*

22/25

Modèles prédictifs de qualité

n Exemples

)(2)(0000047.000156.0069.0)(018.086.4

*

ComptonLLDGaffneyLD

Défault

++=+=

22/25

Modèles prédictifs de qualité

n Exemples

HENMCICKitchenhamComplexité

0001.0075.0042.0)(*

+−=

22/25

Modèles prédictifs de qualité

n Exemples

LCOMB

NPPMStable

stableUnstable

<=16>16

>10<=10

nArbre de classification

22/25

Modèles prédictifs de qualité

n ExemplesTaille de

programmes

Nombre d’écrans

Moy 112 heures test

<=435 Loc >435 Loc

>10<=10

Temps de développement

>900 Hr<=900 Hr

Nbr écrans

>15<=15

Moy 143 heures test

Moy 187 heures test

Moy 215 heures test

Moy 243 heures test

Arbre de régression

22/25

Modèles prédictifs de qualité

n ExemplesRègle1:

NAM Grande DIT MoyenneèDegré de Spécialisation Grand

Règle2 :DIT GrandeèDegré de Spécialisation Grand

Règle3 :NAM Grande DIT MoyenneNOP PetiteèPotentiel de Spécialisation Petit

Règle4 : DIT Grande NOP PetiteèPotentiel de Spécialisation Petit

Règle5 :Potentiel de Spécialisation PetitDegré de Spécialisation GrandèDifficulté de Modification Grande

Règle6 :Difficulté de Modification GrandeèClasse Instable

nRègles floues

22/25

Modèles prédictifs de qualité

n Exemples

nRéseau bayesien

22/25

Modèles prédictifs de qualité

n Exemples

nPreprocessing

nBase de casnTraitement de similitude de cas

nSélection des cas les plus proches

nCombinaison des cas similaires

nEstimation du nouveau cas

nNouveau cas

nRaisonnement à base de cas

23/25

Les modèles prédictifs de qualité

n Fixé d’avance, modèle spécifiquen Boîte blanche, Boîte noiren Classification, régressionn Classique, techniques d’I.A.n Données historiques, expertise (théorique)n Constat

– Certains types de modèles viennent palier aux problèmes spécifiques des autres types (acceptation, incertitude, etc.)

– La tendance est de proposer des modèles boites blanches basés sur des techniques d’I.A.

24/25

Problèmes des modèles de qualité

n Constat– Grand nombre de modèles de qualité proposé dans la littérature

mais faible utilisation– Les plus proposé sont des modèles statistiques– Faible acceptation

n Causes– Absence des outils pour construire des modèles – Rareté des données provenant de « vrais » logiciels pour construire

ou valider les modèles– Modèles existants ne tenant pas compte de l’aspect des entrées

(incertitude, manque, distribution…)– Chaque modèle reflète un contexte particulier – Difficulté de généraliser, valider, et réutiliser les modèles

25/25

Conclusion

n Pas de modèle universel

n Certains types de modèle viennent palier aux problèmes spécifiques des autres types

n La tendance est de proposer des modèles boites blanches basés sur des techniques d’I.A.

n Résoudre les problèmes généraux comme la rareté de données, l’adéquation du modèles à un contexte particulier, sont sujets de recherches