Académique Documents
Professionnel Documents
Culture Documents
JANVIER 2023
MASTER 1 - MIAGE
MIA 417
(P A R D R . J U S T I N MOSKOLAI)
Q U A L I F I É CNU 27 E S E S S I O N
SOMMAIRE
SA IN T JÉ R ÔSJP
M E PO LY T E C H N IQ U E
2
RAISONS DE LA FAIBLE QUALITÉ DES LOGICIELS
q Tâche complexe
o Taille et complexité des logiciels
o Taille des équipes de conception/développement
3
IMPORTANCE DE LA QUALITÉ DES LOGICIELS
4
NORME DE QUALITÉ LOGICIELLE
q (D’autres existent !)
5
CAPACITÉ FONCTIONNELLE
q Définition
o Ensemble d'attributs portant sur l'existence de fonctions et leurs
propriétés ; les fonctions sont celles qui satisfont aux besoins exprimés
ou implicites
q Sous-caractéristiques
o Aptitude : présence et adéquation d’une série de fonctions pour les
tâches données
o Exactitude : résultats ou effets justes ou convenus
o Interopérabilité : interactions avec d’autres systèmes
o Sécurité : accès non autorisé (accidentel ou délibéré) aux programmes
et données
6
FIABILITÉ
q Définition
o Ensemble d'attributs portant sur l'aptitude du logiciel à maintenir son
niveau de service dans des conditions précises et pendant une période
déterminée
q Sous-caractéristiques
o Maturité : fréquence des défaillances dues à des défauts
o Tolérance aux fautes : aptitude à maintenir un niveau de service donné
en cas de défaut ou d’attaque
o Possibilité de récupération : capacité à rétablir son niveau de service et
de restaurer les données directement affectées en cas de défaillance ;
temps et effort nécessaire pour le faire
7
FACILITÉ D’UTILISATION
q Définition
o Ensemble d'attributs portant sur l'effort nécessaire pour l’utilisation et
l'évaluation individuelle de cette utilisation par un ensemble défini ou
implicite d’utilisateurs
q Sous-caractéristiques
o Facilité de compréhension : effort de l’utilisateur pour comprendre la
logique et la mise en œuvre
o Facilité d’apprentissage : effort de l’utilisateur pour apprendre son
utilisation
o Facilité d’exploitation : effort que doit faire l’utilisateur pour exploiter et
contrôler l’exploitation du logiciel
8
RENDEMENT
q Définition
o Ensemble d'attributs portant sur le rapport existant entre le niveau de
service d’un logiciel et la quantité de ressources utilisées, dans des
conditions déterminées
q Sous-caractéristiques
o Temps : temps de réponses et de traitement ; débits lors de l’exécution
de sa fonction
o Ressources : quantité de ressources utilisées ; durée de leur utilisation
par fonction
9
MAINTENABILITÉ
q Définition
o Ensemble d'attributs portant sur l'effort nécessaire pour faire des
modifications données
q Sous-caractéristiques
o Facilité d’analyse : effort nécessaire pour diagnostiquer les déficiences
et leurs causes ou pour identifier les parties à modifier
o Facilité de modification : effort nécessaire pour modifier, remédier aux
défauts ou adapter à l’environnement
o Stabilité : risque des effets inattendus des modifications
o Facilité de test : effort pour valider le logiciel modifié
10
PORTABILITÉ
q Définition
o Ensemble d'attributs portant sur l'aptitude du logiciel à être transféré d’un
environnement à un autre
q Sous-caractéristiques
o Facilité d’adaptation : possibilité d’adaptation à différents environnements
donnés sans que l’on ait recours à d’autres actions, ou moyens que ceux
prévus à cet effet par le logiciel
o Facilité d’installation : effort nécessaire pour installer le logiciel dans un
environnement donné
o Conformité aux règles de portabilité : conformité aux normes et aux
conventions ayant trait à la portabilité
o Interchangeabilité : possibilité et effort d’utilisation du logiciel à la place d’un
autre logiciel donné dans le même environnement
11
EN RÉSUMÉ
12
ASPECTS MESURABLES
q Les processus
o Activités reliées au développement du logiciel
q Les produits
o Objets produits, livrables ou documents qui résultent d'une activité d’un
processus
q Les ressources
o Entités exigées par une activité d’un processus
13
EXEMPLES
14
COMMENT MESURER LA QUALITÉ DU LOGICIEL?
15
COMMENT MESURER LA QUALITÉ DU LOGICIEL?
16
PROCESSUS D'ÉVALUATION (9126)
17
DIRECTIVES COMPLÉMENTAIRES (14598)
18
UN CADRE D’ÉVALUATION, SCOPE
q Objectifs
o Définir des procédures d'attribution d'un label de qualité à un
logiciel quand celui-ci satisfait un certain ensemble d'attributs de
qualité
o Développer des technologies nouvelles et efficaces d'évaluation,
à des coûts raisonnables, permettant l'attribution de ce label
o Promouvoir l'utilisation des technologies modernes de l'ingénierie
des logiciels. Celles-ci, utilisées durant le développement,
contribuent à l'attribution du label
19
UN CADRE D’ÉVALUATION, SCOPE
q Résultat :
définition d'un
cadre d'évaluation
comprenant
o Un processus
o Une méthode
o Des techniques
20
PROCESSUS SCOPE
q Documents produits
o La spécification de l'évaluation
o Le plan de l'évaluation
o Le rapport d'évaluation
21
MÉTHODE SCOPE
22
MÉTHODE SCOPE
23
TECHNIQUES SCOPE
24
PROBLÈME : LE CHOIX D’UNE MESURE
25
COMMENT MESURER LA QUALITÉ DU LOGICIEL?
26
ACCEPTABLE QUALITY LEVEL - AQL
q On définira, pour une taille de lot et selon que le fournisseur est plus ou
moins fiable, une taille d’échantillon représentatif, et des niveaux de
défaut.
q L’approche doit être d’autant plus rigoureuse que les contraintes qui
s’appliquent au produit sont sévères.
27
LEAN MANAGEMENT
28
APPORT DU LEAN MANAGEMENT À LA QUALITÉ LOGICIELLE
29
REVUE DU CODE
q Objectifs:
o Améliorer la qualité du code
o Favoriser la collaboration, le travail en équipe (appropriation du code par
l’équipe)
o Appliquer un standard
o Détecter et corriger les défauts (bugs mais aussi lisibilité) au plus tôt dans le
cycle de vie du code pour économiser les coûts
o Formation des développeurs
30
REVUE DU CODE EN PRATIQUE
o Programmation en binôme
31
LA ROUE DE DEMING
32
LA ROUE DE DEMING
33
MÉTHODE COCOMO
34
MÉTHODE COCOMO
q 3 modèles :
o modèle de base : projet < 50 kls (≈ 1000 pages de 50 lignes). Petit
projet.
o modèle intermédiaire : projet de taille moyenne
o modèle détaillé : grand projet
35
MÉTROLOGIE – POURQUOI?
q Logiciel(s) critique(s)
q Composants réutilisables
q Certification logiciel ?
q projet ...
36
MÉTROLOGIE – POURQUOI?
37