modèles de qualité - iro.umontreal.capift3902/automne%202004/... · nl’augmentation de la...
TRANSCRIPT
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
)(2)(0000047.000156.0069.0)(018.086.4
*
ComptonLLDGaffneyLD
Défault
++=+=
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
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