13/04/23 1
Assurance qualité logicielle
Proposé par N. HADDOUCHE
13/04/23 2
Qualité
13/04/23 3
Qualité
Aptitude d'un produit ou d'un service à satisfaire les besoins des utilisateurs en termes de fonctionnalités, délais, coûts
13/04/23 4
Vocabulaire
• «entreprise» : toute entreprise, organisation ou association du secteur public ou privé.
• «Client» doit être pris au sens large de «bénéficiaire»
• «Produit» : en tant que fourniture d'un livrable matériel ou immatériel (service).
13/04/23 5
Définition
• La norme ISO 8402-94– Ensemble des caractéristiques d'une entité qui lui
confèrent l'aptitude à satisfaire des besoins exprimés et implicites.
• La norme ISO 9000 2000 – Aptitude d'un ensemble de caractéristiques
intrinsèques à satisfaire des exigences.
13/04/23 6
Qualité
• Dans la pratique la qualité se décline sous deux formes :
• La qualité externe• La qualité interne
13/04/23 7
La qualité externe
• satisfaction des clients :– Il s'agit de fournir un produit ou des services
conformes aux attentes des clients afin de les fidéliser et ainsi améliorer sa part de marché.
– Les bénéficiaires de la qualité externe sont les clients d'une entreprise et ses partenaires extérieurs.
– Ceci passe par une nécessaire écoute des clients mais doit permettre également de prendre en compte des besoins implicites, non exprimés par les bénéficiaires.
13/04/23 8
La qualité interne
• Amélioration du fonctionnement interne de l'entreprise:– Mettre en œuvre des moyens permettant de
décrire au mieux l'organisation, de repérer et de limiter les dysfonctionnements.
– Les bénéficiaires sont la direction et les personnels de l'entreprise.
– Elle passe par une étape d'identification et de formalisation des processus internes réalisés grâce à une démarche participative.
13/04/23 9
La sur-qualité
13/04/23 10
La sur-qualité
• Plus on souhaite approcher la perfection plus les coûts grimpent
13/04/23 11
La sur-qualité (suite)
• Pour les entreprises du secteur privé:– il ne s'agit pas de répondre de manière exhaustive
aux attentes des Clients– Il s'agit répondre mieux que les concurrents.
• Dans le secteur public – rendre compte d'un usage maîtrisé des fonds
publics pour fournir un service adapté aux attentes des citoyens.
13/04/23 12
La non-qualité
13/04/23 13
Prix de revient actuel du produit
Prix de revient actuel du produit
Prix de revient s ’il n’y avait
aucune erreur et aucun
défaut durant sa réalisation.
Prix de revient s ’il n’y avait
aucune erreur et aucun
défaut durant sa réalisation.
Le coût de la non- qualité c ’est la différence entre les deux prix
de revient
13/04/23 14
• ‘We never have the time to do a correct job the first time, but we always manage to find time to redo the job one or two times’
• ‘I’d rather have it wrong than have it late. We can always fix it later’
13/04/23 15
Conséquences de la non qualité
1. Canceled software projects2. Unsuccessful software products3. Unnecessary features and functions4. Hard to use software5. Defective software6. Difficult to maintain software7. Poorly designed for growth and change8. Non readiness9. Difficult to integrate components10. Less than excellent software process(es)
13/04/23 16
Coût lié a la non-qualité1. Effort to recreate the problem
– What the user did, what was the user’s configuration– May require setting up hardware, database, etc
2. Effort to trace failure to the cause• May require utilization of tools ( e.g. debuggers)
3. Effort to implement a fix• May involve design change and changes to many components
4. Effort to develop and run tests– May require setting up hardware, database
5. Effort to update and run regression test suite– May require setting up hardware, database, etc
6. Effort to document the change, modify process or procedure and manage configuration changes (CCB)
7. Effort to package the fix and ship it to customers8. Effort to inform or train users of the changes
13/04/23 17
Coûts de la non-qualité
Le coût des anomalies internes
Le coût des anomalies externes
+
Pouvez-vous énumérer des coûts des anomalies internes et externes ?
13/04/23 18
Anomalies internes
Anomalies externes
- Retouches,
Reconditionnements, Réparations, - Rebuts,
- Déclassement sur produits finis ou en cours,
- Pertes dues aux achats inemployables, - Pollution,
- Accident de travail, - Absentéisme, retards,
- Remises ou ristournes, - Réclamation clients, - Pénalité de retard,
- Primes d’assurances, - Remboursement des
dommages causés à autrui...
13/04/23 19
Coûts de la non-qualitéLe coût des anomalies internes pendant le
développement1. Détection des défauts2. Réparation des défauts3. Modifications4. Rebuts5. Produits déclassés6. Achats inemployables7. Produits à refaire d’une version à l’autre
13/04/23 20
1. Pertes de clients2. Pénalités3. Réparations des défauts pendant l’exploitation4. Remises pour défauts5. Assistance technique6. Modifications ou adaptations prohibitives7. ‘Retrofits’ sur le produit8. Entretien des matériels de maintenance corrective
et des compétences
Coûts de la non-qualitéLe coût des anomalies externes
13/04/23 21
La non qualité
il s'avère généralement plus coûteux de corriger les défauts ou les erreurs que de «faire bien» dès le départ
13/04/23 22
La non qualité
• Il faut trouver le juste équilibre:– éliminer au maximum la
non-qualité, afin d'obtenir un bon degré de satisfaction de la clientèle, de les fidéliser et de faire des bénéfices,
– y consacrer un budget raisonnable.
13/04/23 23
Coût de la qualité (COQ)
13/04/23 24
Coût de la qualitéCoût du projet
Coût de réalisation
• Élaboration des plans• Développement du logiciel
Coût de Qualité
Coût de conformité Coût de nonConformité
• Refaire les revues• Corriger
• Défauts• Mise-à-jour
• Code et documentation
Coût des évaluations
• Revues• Inspections• Tests• Vérification & validation•Audits
Coût de prévention
• Formation• Méthodologies• Outils• Collecte des mesures
Coût du projet = réalisation + reprise + évaluation + prévention
COQ
Reprise
13/04/23 25
Détection
Prévention
- Salaires et charges lies
aux vérifications- Métrologie- Frais de contrôle,- Fournitures diverses et
produits détruits pouressais utilisés pourl’évaluation duproduit. . .
- Formation à la qualité- Etablissement des documents
relatifs à la gestion de laqualité (manuel qualité, plansqualité et plans de contrôle.) ,
- Evaluations des fournisseurs,- Sensibilisation, motivation et
formation à la qualité et à lagestion de la qualité,
- Réalisation d ‘audits qualité, - Groupe d’amélioration de laqualité.. .
13/04/23 26
Les enjeux• Commerciaux
– Relations avec le client– Réputation
• Économiques– Rencontre du coût prévu– Rencontre de l’échéancier prévu
• Techniques– Rencontre des objectifs
• De productivité, • De maintenance• De performance• De sécurité, etc.
13/04/23 27
Qualité logicielle
13/04/23 28
Quelques exemple de fautesdans des projets et produits logiciels…
1. Le problème du Therac-25 en 1985-1987 (un appareil d'irradiation thérapeutique) : 2 morts, 4 irradiés (surdose).
– Faute découverte officiellement presque deux ans après le premier problème
2. Le bug du Pentium, en 1994. • Coût : 500 millions $ pour remplacer les processeurs
défectueux.3. L'explosion du premier vol d'Ariane 5, le 4 juin 1996.
• Coût : 500 millions $ de pertes4. La perte de la sonde Mars Explorer en 2000.5. Le logiciel redondant du SSRMS (le CanadArm2) en 2001
• Aucun dommage, mais un impact important sur l’échéancier6. Le vaisseau Soyuz qui ‘plonge’ à 2 fois l’accélération prévue de 4-5 g
et touche le sol à 450 Km de son point d’arrivée prévu (mai 2003).
13/04/23 29
Les excuses, les bugs et la qualité des
logiciels
13/04/23 3030
1. ‘Je n’ai pas à me préoccuper de la qualité, mon client ne s’intéresse qu’au coût et à l’échéancier. La qualité n’a rien à voir avec ces choses là.’
2. ‘Mon projet n’a pas spécifié d’objectifs de qualité’
3. ‘On ne peut pas mesurer la qualité. On ne sait jamais la quantité de bugs que l’on n’a pas trouvé’
4. ‘Relaxe, ce n’est pas un logiciel qui contrôle une centrale nucléaire, ou une fusée’
13/04/23 3131
5. ‘Un client peut exiger soit une grande productivité, soit de la qualité. Mais pas les deux à la fois’
6. ‘Pour nous la qualité c’est important, on fait des audits de processus constamment’
7. ‘On fait des logiciels de qualité puisqu’on utilise des normes internationales ISO’
8. ‘Çà, c’est pas une erreur, c’est une bug’
13/04/23 3232
9. ‘On doit livrer un logiciel de très grande qualité, alors on met beaucoup de temps à le tester’
10. ‘Ce projet là est de grande qualité parce que les gars de AQ regarde nos documents’
11. ‘Ce logiciel est de grande qualité puisque l’on fait 90% de réutilisation’
12. ‘C’est quoi la qualité...comment on mesure la qualité ?’
13/04/23 3333
13. ‘La complexité du code n’a rien à voir avec la qualité’
14. ‘La qualité c’est le nombre de bugs dans le logiciel livré au client’
15. ‘On ne doit pas en faire plus que ce qui est demandé dans le contrat. Le contrat ne dit rien au sujet de la qualité’
16. ‘Si ça marche pas maintenant, on le réparera plus tard chez le client’
13/04/23 3434
17. ‘Le client n’est pas intéressé par la qualité, il est intéressé juste au prix’
18. ‘La qualité de ce logiciel est très élevée, on a trouvé 1,000 bugs pendant les tests’.
19. ‘On n’a plus le temps de tester, il faut livrer’
20. ‘On va laisser le client trouver les bugs’
21. ‘On a un échéancier très serré, on n’a pas le temps de faire des inspections’
13/04/23 3535
22. ‘On va avoir un logiciel de grande qualité puisque l’on a fait beaucoup d’inspections du code et c’est dans le code que l’on trouve les bugs’
23. ‘Ce n’est pas un bug, c’est une erreur dans le manuel’
24. ‘Si le client ne nous appele pas, c’est parce qu’il doit être bien content du logiciel’
25. ‘On n’a pas le temps de documenter ce que l’on fait, il faut livrer’
13/04/23 3636
26. ‘C’est pas un bug, c’est un problème de hardware’
27. ‘Personne va s’en apercevoir’
28. ‘On n’a pas besoin de retester, on a juste changé trois lignes de code’
29. ‘On développe du logiciel de qualité parce qu’on a du personnel avec beaucoup d’années de métier’
13/04/23 3737
Concept Qualité logicielle• Un logiciel de qualité est un logiciel qui satisfait aux besoins
réels du client tout en respectant des contraintes de coût et de délais prédéfinies.
• Satisfaire les besoins réels – Les besoins du commanditaire d’un logiciel (ou plus
généralement d’un système quelconque) sont définis sur une échelle à quatre niveaux :1. besoins réels2. besoins exprimés3. besoins spécifiés4. besoins réalisés
– L’aptitude du produit logiciel à satisfaire (ou ne pas satisfaire) les besoins du commanditaire s’annonce alors en terme de différentiel entre ces quatre niveaux.
13/04/23 3838
Les besoins du commanditaire
13/04/23 39
13/04/23 40
13/04/23 41
13/04/23 42
13/04/23 43
13/04/23 44
13/04/23 45
Qualité logicielle
• Selon l'IEEE La qualité logicielle est:(1) Le degré avec lequel un système, un composant
ou un processus satisfait à ses exigences spécifiées.
(2) Le degré avec lequel un système, un composant ou un processus satisfait aux besoins ou attentes de ses clients/usagers.
13/04/23 46
Qualité logicielle (suite)
Conformité aux exigences fonctionnelles et de performance explicites, aux normes de développement explicitement documentées, et aux caractéristiques implicites qui sont attendues de tout le logiciel professionnellement développé.
13/04/23 47
Qualité logicielle (suite)
• La notion de qualité recouvre deux aspects: – conformité avec la définition, cette notion est
contrôlable en cours de fabrication, – réponse à l'attente de l'utilisateur , cette notion
est contrôlable à la livraison du produit.
13/04/23 48
Problématique de la Qualité Logicielle
• Le caractère unique du produit logiciel– Grande complexité ;– Invisibilité du produit ;– Opportunités limités de détection de (“bugs”) ;
13/04/23 49
Problématique de la Qualité Logicielle (suite)
• Les environnements de développement du logiciel – Sujet à une relation client-fournisseur ;– Exige un travail d'équipe ;– Exige la coopération et coordination avec d'autres
équipes de développement ;– Exige des interfaces avec d'autres systèmes ;– Exige la poursuite du projet alors que l'équipe
change ;– Exige la maintenance pendant plusieurs années ;
13/04/23 50
You can’t achieve quality… unless you specify it !
13/04/23 5104/13/23 51
Spécification de la qualitéLa qualité est décomposée en grandeurs de plus en plus fines
et précises jusqu’à ce qu’on aboutisse à des attributs directement mesurables sur les constituants du logiciel, documents et code.
13/04/23 52
APPROCHE DE MAC CALL
• Mac Call définit une approche de la qualité, à partir de la définition de caractéristiques :– externes (facteurs de qualité) : : expression des
exigences (point de vue externe, client) – internes (critères de qualité) : caractéristiques du
produit (point de vue interne, technique) – mesurables (métriques) : ce qui permet de
mesurer un critère
13/04/23 53
APPROCHE DE MAC CALL (suite)
Pour mesurer la qualité du logiciel, des métriques sont associés aux critères eux même rattachés aux facteurs
13/04/23 5404/13/23 54
Spécification de la qualité
13/04/23 5504/13/23 55
– Le niveau des facteurs qualité. • Il représente les attributs qualité du logiciel
perceptibles par le commanditaire ou les utilisateurs finaux.
• Ce niveau constitue la vision externe de la qualité du logiciel.
• Il intéresse, au premier chef, la spécification des exigences qualité ainsi que la validation de ces exigences.
Spécification de la qualité
13/04/23 5604/13/23 56
– Le niveau des critères qualité. • Il représente les attributs qualité sur lesquels
l’organisation de développement peut (et doit !) agir pour satisfaire les exigences qualité définies par les facteurs retenus.
• Ce niveau constitue la vision interne de la qualité du logiciel.
• Les critères retenus permettent, entre autre, de définir l’ensemble des dispositions préalables qu’il convient d’adopter pour répondre aux exigences qualité spécifiées.
Spécification de la qualité
13/04/23 5704/13/23 57
– Le niveau des métriques qualité • Il représente les attributs qualité pour lesquels il
existe des processus de mesure directs et objectifs, portant sur des constituants élémentaires du logiciel.
Spécification de la qualité
13/04/23 58
Facteurs qualité du logiciel1) Fiabilité
Aptitude d’un programme à accomplir sans défaillance l’ensemble des fonctions spécifiées dans un document de référence, dans un environnement opérationnel de référence, pour une durée d’utilisation donnée.
2) SécuritéAttribut de qualité du logiciel se caractérisant, durant son fonctionnement, par l’absence d’événements mettant en cause l’intégrité des biens et la vie des personnes concernés par l’application.
3) IntégritéDegré de protection du système et des données qu’il manipule contre les accès non autorisés, voire malveillants.
13/04/23 59
Facteurs qualité du logiciel
4) ErgonomieAptitude du système à pouvoir être utilisé avec un minimum d’efforts.
5) EfficacitéAptitude du logiciel à utiliser d’une façon optimale les ressources physiques (espace mémoire, temps d’unité centrale) mises à disposition.
6) TestabilitéAptitude d’un logiciel à se prêter à une vérification d’adéquation aux spécifications, le système étant en phase d’exploitation.
13/04/23 60
Facteurs qualité du logiciel
7) MaintenabilitéAptitude d’un logiciel à faciliter les opérations requises pour localiser et corriger une erreur alors que le système est en phase d’exploitation.
8) FlexibilitéAptitude d’un logiciel à être adapté à une modification de ses spécifications.
9) RéusabilitéAptitude d’un composant logiciel à être réutilisé dans des applications différentes.
13/04/23 61
Facteurs qualité du logiciel
10) PortabilitéAptitude d’un logiciel à être adapté à un environnement différent de celui des applications précédentes.
11) CompatibilitéQualité de plusieurs logiciels (ou composants) à être liés pour une fonction donnée, suivant certains critères • e.g. standardisation des structures de données,
communications internes.
13/04/23 62
13/04/23 63
Facteurs de qualité
• Les facteurs de qualité peuvent avoir une influence les uns sur les autres. – Par exemple les facteurs suivants diminuent
l’efficacité: intégrité, facilité d’emploi, portabilité– Les facteurs suivants diminuent l’intégrité:
souplesse, réutilisabilité, interopérabilité.
13/04/23 64
Relation entre les facteurs
Sécurité
Fiabilité
Flexibilité
Réutilisabilité
Portabilité
Compatibilité
Testabilité
Maintenabilité
Ergonomie
Intégrité
Efficacité
Sécu
rité
Compa
tibili
té
Réutil
isabi
lité
Porta
bilit
é
Flex
ibili
té
Testa
bilit
é
Mai
nten
abili
té
Ergon
omie
Inté
grité
Effica
cité
Fiab
ilité
O
X
OO
O
O
O
O
O
O
O
OOO
OO
O
X
X
X
X
X
X
X
X
X
X
X
X
O : complémentaireX : antagoniste
13/04/23 65
Les classes de logiciel
• Vies humaines en danger • Grande durée de vie • Système expérimental • Application temps réel• Application embarquée • Données sensibles • Systèmes imbriqués • Appartenance à une gamme (de produits)
13/04/23 66
Correspondance entre classes de logiciel et facteurs de qualité
Vies humaines en danger
INT
EG
RIT
E
Grande durée de vie
Système expérimental
Application temps réel
Application embarquée
Données sensibles
Systèmes imbriqués
Appartenance à une gamme
X
X
TE
STA
BIL
ITE
SEC
UR
ITE
X
X
X
X
MA
INT
EN
AB
ILIT
E
X
X
FLE
XIB
ILIT
E
X
X
X
RE
UT
ILIS
AB
ILIT
E
EFF
ICA
CIT
E
X
POR
TA
BIL
ITE
X
CO
MPA
TIB
ILIT
E
X
X
FIA
BIL
ITE
X
X
X
ER
GO
NO
MIE
X
(vision externe)
Facteurs de qualité
Classe desystème
13/04/23 67
Critères de qualité
• Mac Call définit 24 critères perceptibles par l’informaticien et permettant d’évaluer dans quelle mesure les facteurs de qualité sont atteints.
• Chaque facteur est mesuré en fonction d’un certain nombre de critères.
• Chaque critère est évalué par une métrique.
13/04/23 68
• Traçabilité• Complétude• Précision• Cohérence• Robustesse• Modularité• Généralité• Extensibilité• Instrumentation• Auto description• Efficacité de stockage• Efficacité d’exécution• Audits des accès
• Contrôle des accès• Souplesse des interfaces• Facilité d’exploitation• Facilité d’apprentissage• Indépendance machines• Indépendance système• Normilisation des
communications• Standardisation des
tructures de données• Concision• Conformité
Critères de qualité selon McCall
13/04/23 69
1. Traçabilité– Possibilité, à partir d’une identification enregistrée de
retrouver l’historique, l’utilisation ou la localisation d’un logiciel ou de produits semblables.
2. Complétude– Propriété d’un logiciel (ou d’un élément du logiciel) qui
possède tous ses constituants lesquels, sont entièrement développés et validés.
3. Précision– Propriété d’un logiciel qui fournit des résultats ne
s’écartant pas des résultats théoriques attendus d’une marge donnée.
Critères de qualité selon McCall
13/04/23 70
4. Cohérence– Propriété d’un logiciel qui présente une
compatibilité des éléments entre eux au sein d’une configuration.
5. Robustesse – Propriété d’un logiciel qui retrouve la continuité des
opérations après conditions anormales et permet de supprimer les effets d’une perturbation.
6. Simplicité– Propriété d’un logiciel qui fournit un développement
des fonctions de la manière la plus compréhensive.
Critères de qualité selon McCall
13/04/23 71
7. Modularité– Propriété d’un logiciel composé d’éléments distincts tels
que la modification de l’un d’eux n’entraîne pas de modifications sur les autres.
8. Généralité– Propriété d’un logiciel qui élargit les cas d’emplois des
fonctions assurées.
9. Extensibilité– Propriété d’un logiciel qui permet d’accroître le domaine
des données manipulées
Critères de qualité selon McCall
13/04/23 72
10. Instrumentation– Propriété d’un logiciel qui offre la possibilité de mesures
relatives au suivi et au contrôle de l’exécution.
11. Auto description– Propriété d’un logiciel fournissant l’explication du
développement d’une fonction.
12. Efficacité de stockage– Propriété d’un logiciel qui minimise la place mémoire
nécessaire à une opération.
Critères de qualité selon McCall
13/04/23 73
13. Efficacité d’exécution– Propriété d’un logiciel qui utilise un minimum de
temps machine pour l’accomplissement de ses fonctionnalités.
14.Audit des accès– Propriété d’un logiciel qui comporte des dispositions,
permettant de garder l’historique des accès au code et aux données.
15.Contrôle des accès– Propriété d’un logiciel qui comporte des mécanismes
permettant le contrôle des accès
Critères de qualité selon McCall
13/04/23 74
16. Souplesse des interfaces– Propriété du logiciel qui possède des interfaces faciles à
modifier et à adapter.
17. Facilité d’exploitation– Propriété qu’a un logiciel de faciliter la mise en oeuvre de ses
propres procédures d’exploitation, le chargement, l’initialisation et l’exécution.
18. Facilité d’utilisation et d'apprentissage– Propriété d’un logiciel qui offre des facilités d’assimilations par
un utilisateurs ses différents modes opérationnels.
Critères de qualité selon McCall
13/04/23 75
19.Indépendance machine– Propriété d’un logiciel qui limite ses dépendances vis–à–
vis de l’environnement matériel.
20.Indépendance système– Propriété d’un logiciel qui limite ses dépendances vis–à–
vis de l’environnement système.
21.Normalisation des communications– Propriété d’un logiciel utilisant des normes ou des
standards au niveau protocole et interface.
Critères de qualité selon McCall
13/04/23 76
22. Standardisation des structures de données– Propriété d’un logiciel qui met à disposition des moyens de
représentations standards des données.
23. Concision– Propriété d’un logiciel qui utilise un volume de code minimum
pour le développement d’une fonction.
24. Conformité– Aptitude du logiciel à répondre aux besoins de l’utilisateur.
Critères de qualité selon McCall
13/04/23 77
Relations entre critères et facteurs
O : complémentaireX : antagoniste
X
OTraçabilité
Sécu
rité
Compa
tibili
té
Porta
bilit
é
Flex
ibili
té
Réutil
isabi
lité
Testa
bilit
é
Main
tenab
ilité
Ergon
omie
Intég
rité
Effica
cité
Fiab
ilité
Complétude
SimplicitéRobustessePrécision
Cohérence
ModularitéGénéralité
ExtensibilitéInstrumentationAutodescription
Efficacité d'exécutionEfficacité de stockage
Audit des accèsContrôle des accès
Souplesse des interfacesFacilité d'exploitation
Facilité d'apprentissageIndépendance systèmeIndépendance machine
NormalisationStandardisation des
structures de donnéesConcision
Conformité
Critères
Facteurs
O OOOO
OO O
O O O O
OOOO
O O O O OO O O O O O
OOO
OO
OO
OO O O O
OO
OO
OO O
OOO
OOO
OO
OOO
OO
O OO
O
XX
XXXXX
XXX
XXX
X
X
XXX
XX
13/04/23 7804/13/23 78
Bilan qualité du logiciel
13/04/23 7979
Remarque• Chaque critère de qualité identifié comme
important doit être intégrés ‘Built in’, puisqu'ils peuvent difficilement l'être à la fin de la phase de développement ‘Bolted on’ .
13/04/23 80
Métriques
• les métriques peuvent caractériser les qualités – du produit, – du processus de développement, – du service rendu
• Ils peuvent se faire par :– des mesures objectives (comptages) – des enquêtes d’opinion.
13/04/23 81
Métriques (suite)
• Mesure directe et objective : – comptage de nombre de ligne de code source :
produit – comptage de nombre d’homme-jours : processus – comptage du nombre d’abort système : service
13/04/23 82
Métriques (suite)
• Métriques obtenues par réponse oui/non (liste de contrôle) – cohérence de la présentation des écrans : produit – respect de la procédure de signalisation des
incidents : processus – capacité de raccordement satisfaisante : service
13/04/23 83
Métriques (suite)
• Métriques obtenues par enquête (note de 0 à 5) – clarté de la présentation des résultats : produit – apport de l'assurance qualité : processus – disponibilité du système aux heures de pointe :
service
13/04/23 84
Métriques techniques
• Métriques du code– lignes de code, nombres d'opérandes,
d'opérateurs– taux de commentaires
• Métriques de la spécification– cohésion et couplage des modules
• – taille et fréquence de communication de données
13/04/23 8585
Exemple‘Le temps réponse du logiciel est rapide’Type s’utilisateur
Type de Utilisateur/Logiciel Interaction
Type de réponse Temps
(secondes)
Commis Login Login OK
Message d’erreur
< 2
<1
Entrée Entrée accepté
Message (processus)
Erreurs
<3
< ½
<2
Ingénieur Opération des matrices
Message (processus)
Opération complété
< ½
½ to 10
Analyse des circuits
Description erreur
Message (processus)
Opération complétée
<2
<½
1 to 20
8604/13/23 86
Facilité d'utilisation (usability)• Définition (ISO 9241)
– La capacité pour un utilisateur d'utiliser un produit pour réaliser ses buts avec efficacité, efficience et satisfaction dans un contexte d'utilisation spécifique.
Métriques1. Apprentissage2. Efficacité3. Facilité pour l'utilisateur de se souvenir du
fonctionnement du logiciel (‘user retention over time’)4. Faible taux d'erreur (du point de vue utilisateur)5. Satisfaction
13/04/23 8787
Facilité d'utilisation – Métriques 1. Apprentissage
• Facilité d'apprentissage des principales fonctionnalités du logiciel et acquérir les habilités pour compléter le travail
• Mesurer les efforts d'un utilisateur avant qu'il puisse réaliser certaines tâches et les efforts d'un expert pour réaliser la même tâche.
2. Efficacité• Le nombre de tâche par unité de temps que l'utilisateur
peur réaliser en utilisant le logiciel. • Nous cherchons le nombre maximum de
tâches par unité de temps.
13/04/23 8888
Facilité d'utilisation - Métriques 3. Facilité pour l'utilisateur de se souvenir du fonctionnement du logiciel
• Cet attribut indique jusqu'à quel point un utilisateur se souvient de la façon dont le logiciel fonctionne après une période de non-usage.
4. Taux d'erreurs
• Cet attribut adresse le nombre d'erreurs que l'utilisateur peut faire lorsqu'il réalise la tâche. Contribue négativement à la facilité d'utilisation. • Ne réfère pas au nombre d'erreurs dans le
logiciel. 5. Satisfaction
• Cet attribut indique l'impression (subjective) qu‘a l'utilisateur à propos du logiciel.
8989
Exemple – Facilité d’utilisation
Attribut Échelle Test Pire Plan Bon Main-tenant
Entrer dossier patient
Temps(m.) Donner à l’utilisateur le manuel et lui demander de réaliser la tâche
10 5 2 60
Créer un rapport mensuel
Temps(m.) Donner à l’utilisateur le manuel et lui demander de réaliser la tâche
30 15 10 120
Réaliser un backup
Temps(m.) Donner à l’utilisateur le manuel et lui demander de réaliser la tâche
20 10 5 90
Temps requis à un utilisateur pour apprendre des opérations logiciels en utilisant le manuel
Démarche qualité
13/04/23 90
13/04/23 91
Démarche qualité
• L'approche organisationnelle permettant un progrès permanent dans la résolution des non-qualités.
• Il s'agit d'une démarche participative, c'est-à-dire à laquelle doit nécessairement participer l'ensemble de l'entreprise et par conséquent nécessairement portée au plus haut niveau hiérarchique.
13/04/23 92
Démarche qualité
• Les apports d’une telle démarche est d’étendre la notion de qualité à toute l’entreprise.
• Elle doit être capable de construire puis de gérer son système qualité.
• Elle doit maitriser chacune de ses activités et doit donc posséder des documents et des preuves.
13/04/23 93Mohammedi
DIAGNOSTIC QUALITE
PLAN DE MANAGEMENT DE LA QUALITE
FORMATION AUX NORMES ISO 9000 - 2000
DOCUMENTATION DU SYST. QUALITE
APPLICATION DES DOCUMENTS
AUDIT INTERNE
PRE-AUDIT CERTI
CERTIFICATION
SEMINAIRES DE MOTIVATION A LA QUALITE
13/04/23 94
La certification
C'est l'obtention d'un certificat C'est l'obtention d'un certificat
délivré par un organisme tiers délivré par un organisme tiers
attestant de la conformité du attestant de la conformité du
SMQ aux exigences du référentiel SMQ aux exigences du référentiel
choisichoisi
Organisation qualité
13/04/23 95
13/04/23 96
Organisation qualité
• La mise en place d'une démarche qualité est un projet d'entreprise global mobilisant l'ensemble du personnel.
• Il est ainsi nécessaire de définir une «organisation qualité» s'intégrant dans l'existant et s'articulant avec l'organisation existante.
13/04/23 97
Organisation qualité
• un responsable qualité / conseiller qualité / directeur qualité :piloter les actions qualité
• la cellule qualité / service qualité• Un comité qualité• Chaque service ou bureau est responsable de
la mise en œuvre des orientations qualité à son niveau. – Correspondant qualité
13/04/23 98
Chef de ladirection
Équipe AQ
Comité d'orientation qualité
Ingénierie OpérationsSystèmes
Servicesprofessionnels/Développement
des affairesOttawa
Maîtrise duprocessus
d'achat
AméliorationContinue
Maîtrise duproduit
Maîtrise de laconception
Soutien desprojets
CoordonateurSEI/CMM
Légende:
Les cases ombragéesindiquent un rôle actif dansla définition et le maintien dusystème qualité.
Systèmesd'armes et de
détection
Organisation qualité
Monitoringaudit
Amélioration continue
13/04/23 99
13/04/23 100
Notion d'amélioration permanente
• L'un des principes de base de la qualité est la prévention et l'amélioration permanente.
• La qualité est un projet sans fin dont le but est de prendre en compte les dysfonctionnements le plus en amont possible
13/04/23 101
Roue de Deming
13/04/23 102
«Plan» (Planifier)
il s'agit de définir les objectifs et les processus nécessaires pour fournir des résultats correspondant aux exigences des clients et aux politiques des organismes
13/04/23 103
«Do» (Mettre en place)
il s'agit de la mise en œuvre des actions et processus
13/04/23 104
«Check» (Contrôler)
Cette phase consiste à vérifier l'atteinte des objectifs fixés : il s’agit de surveiller et mesurer les processus et le produit par rapport aux politiques, objectifs et exigences du produit et rendre compte des résultats
13/04/23 105
«Act» (Agir)
• En fonction des résultats de la phase précédente, il convient de prendre des mesures préventives : – il s’agit d’entreprendre les actions pour améliorer
en permanence les performances des processus
Assurance Qualité Logicielle
13/04/23 106
13/04/23 107
Assurance de qualité Logiciel
Selon l'IEEE L'assurance qualité logicielle est: •Un modèle planifié et systématique de toutes les actions nécessaires pour fournir une confiance adéquate qu'un article ou un produit est conforme à ses exigences techniques établies. •Un ensemble d'activités conçu pour évaluer le processus par lequel les produits sont développés ou fabriqués.
13/04/23 108
Autres définitions
Un ensemble systématique et prévu d'actions nécessaires à l'obtention d'une confiance adéquate que le procédé de développement de logiciel ou le processus de maintenance d'un produit de système logiciel est conforme aux exigences techniques fonctionnels établies aussi bien qu'aux exigences concernant le calendrier et budget.
13/04/23 109
Autres définitions
Mise en œuvre d'un ensemble approprié de dispositions préétablies et systématiques destinées à donner confiance en l'obtention d'une qualité requise.
13/04/23 110
L’origine du besoin d’être rassuré sur la qualité
besoin commun et partagé de façon universelle par tout client, acheteur ou consommateur, celui de pouvoir se fier à des informations ou des données lui permettant d’acquérir la conviction que le produit ou service répondra bien à ses attentes
13/04/23 111
Objectif de l’AQL
• Objectifs de l'AQL dans le développement• Objectifs de l'AQL dans la maintenance
13/04/23 112
Objectifs de l'AQL dans le développement
• Assurer un niveau de confiance acceptable que le logiciel sera conforme aux exigences fonctionnelles techniques.
• Assurer un niveau de confiance acceptable que le logiciel sera conforme aux exigences de gestion concernant l'échéancier et le budget.
• Initiation et activités de gestion pour l'amélioration et la plus grande efficience des activités de développement et d'assurance de qualité logicielle.
13/04/23 113
Objectifs de l'AQL dans la maintenance
• Assurer un niveau de confiance acceptable que les activités de maintenance logiciel seront conformes aux exigences fonctionnelles techniques.
• Assurer un niveau de confiance acceptable que les activités de maintenance logiciel seront conformes aux exigences de gestion concernant l'échéancier et le budget.
• Initier et gérer des activités visant à l'amélioration et à l'augmentation de l'efficience des activités de maintenance et d'assurance de qualité logicielle.