33
La qualité logicielle

Qu'est ce qu'un logiciel de qualité

Embed Size (px)

Citation preview

Page 1: Qu'est ce qu'un logiciel de qualité

La qualité logicielle

Page 2: Qu'est ce qu'un logiciel de qualité

Hello!Je suis Sylvain Leroy

Vous pouvez me trouver sur :[email protected] / @sleroy0 about.me/sylvain_leroy

2007

Ingénieur Recherche

Informatique

2011

Création Société Tocea

2014

Acquisition Tocea Groupe Metrixware

CTO Tocea

2015

Acquisition EchoesGroupe Metrixware

CTO Metrixware

Projet Recherche

Page 3: Qu'est ce qu'un logiciel de qualité

Ma Société

▧Assistance Qualité / Recette applications

▧Modernisation automatique d’applications

▧Offre Intégration Usine Logicielle

▧Formateurs Bonnes Pratiques /Cleancode / Qualité / Devops

▧Distributeur Outils de qualité de code (Optimyth)

▧Komea Dashboard (Pilotage développements par la qualité/productivité)

▧Offres Cobol/Mainframe

Page 4: Qu'est ce qu'un logiciel de qualité

La qualité logicielle?

Page 5: Qu'est ce qu'un logiciel de qualité

“De quoi est composé un

logiciel ?

Page 6: Qu'est ce qu'un logiciel de qualité

Les programmes,Les procédures,La documentation,Les données,Les scripts,Les tests...

Page 7: Qu'est ce qu'un logiciel de qualité

Qu’est ce que pour vous un logiciel de

qualité ?

Page 8: Qu'est ce qu'un logiciel de qualité

Logiciel qui combine un faible taux de défauts et un haut niveau de satisfaction utilisateur. Le logiciel doit remplir toutes les exigences utilisateur et adhérer aux standards internationaux.

La qualité fonctionnelle

Casper Jones

Page 9: Qu'est ce qu'un logiciel de qualité

Logiciel qui présente une robuste architecture et peut opérer comme un environnement multi-couches sans panne ou performance dégradée. Le logiciel présente un faible niveau de complexité cyclomatique.

La qualité structurelle

Casper Jones

Page 10: Qu'est ce qu'un logiciel de qualité

Logiciel qui a de l’élégance, de l’ergonomie, avec des commandes faciles à utiliser et des interfaces et des écrans interactifs et des sorties bien présentées.

La qualité esthétique

Casper Jones

Page 11: Qu'est ce qu'un logiciel de qualité

Quels sont les signes révélateurs de non-qualité ?

Page 12: Qu'est ce qu'un logiciel de qualité
Page 13: Qu'est ce qu'un logiciel de qualité

La complexité de la mesure

Page 14: Qu'est ce qu'un logiciel de qualité

La dette technique

Page 15: Qu'est ce qu'un logiciel de qualité

La dette technique

Page 16: Qu'est ce qu'un logiciel de qualité

Quand les sprints illustrent la dette technique

Page 17: Qu'est ce qu'un logiciel de qualité

“Les développements rapides et peu soucieux de la qualité produisent

généralement des années de maintenance et d’évolutions coûteuses.

La dette technique

Ward Cunningham

Autre conséquence, un logiciel prend le risque d’être abandonné plus

rapidement (vieillissement précoce)

Page 18: Qu'est ce qu'un logiciel de qualité

“C’est le coût de ne pas créer un logiciel

de qualité.Chaque fois que qu’une partie du logicielle est refaite, le coût de la

qualité augmente

Le coût de la qualité

Principles of Quality Costs

, edited by Douglas C. Wood, ASQ Quality

Press, 2012.

Page 19: Qu'est ce qu'un logiciel de qualité

Dette technique ?

Page 20: Qu'est ce qu'un logiciel de qualité
Page 21: Qu'est ce qu'un logiciel de qualité

Qualité logicielle=

Satisfaire les clients=

Traquer les défauts=

COnserver sa productivité

Page 22: Qu'est ce qu'un logiciel de qualité

Les défauts, évaluation

indirecte de la qualité d’un

produit

Page 23: Qu'est ce qu'un logiciel de qualité

Vocabulaire :

▧Défauts : ….▧Anomalie, Faute : ...▧Erreur, Bogue : ….▧Défaillance, Incident : ….

Page 24: Qu'est ce qu'un logiciel de qualité

Défauts et méthodologieMéthodologie de dev.

Taux de défauts potentiel / FP

Efficacité de suppression(%)

Taux de défauts délivrés / FP

Cowboy 5.50 83% 0.94

Cycle en V 5.00 85% 0.75

Itérative 4.75 87% 0.62

Orientée objet 4.50 90% 0.45

Agile avec Scrum 4.30 94% 0.26

Test driven development

4.20 95% 0.21

Unified Process (RUP)

4.15 96% 0.17

PSP et TSP 3.50 97% 0.10

85% Certifié Réutilisation

1.75 99% 0.002

Page 25: Qu'est ce qu'un logiciel de qualité

Quelles sont les causes

les plus courantes de bugs ?

Page 26: Qu'est ce qu'un logiciel de qualité

Les causes de bugs les plus courantes :

▧Exigences non précises▧Spécifications mal rédigés ou absentes▧Déviations volontaires des exigences▧Erreurs de design▧Erreur de codage▧Non conformité avec la documentation

ou les conventions de codage▧Tests insuffisants▧Processus insuffisamment industrialisé▧Erreurs dans la documentation

Page 27: Qu'est ce qu'un logiciel de qualité

Quelles sont les

justifications les plus

courantes?

Page 28: Qu'est ce qu'un logiciel de qualité

Ceci est une fonctionnalité

Page 29: Qu'est ce qu'un logiciel de qualité

TOP 20 Justifications les plus courantes

▧ Cela fonctionne sur ma machine▧ Ou étiez-vous quand le programme a crashé ?▧ Pourquoi voulez-vous faire ceci ainsi ?▧ Vous n’utilisez pas la bonne version du système d’exploitation▧ Même si cela ne fonctionne pas, est-ce gênant ?▧ Avez vous passé l’antivirus ?▧ Quelqu’un a du changé mon code▧ Cela fonctionne mais cela n’a pas été testé▧ Ceci ne peut être à l’origine de Cela!▧ Je ne peux pas tout tester!▧ C’est juste une coïncidence malchanceuse▧ Vous ne devez pas utiliser la dernière version du logiciel▧ Je n’ai pas touché à ce module depuis des lustres!▧ Il doit avoir quelque chose de bizarre dans vos données▧ Qu’avez vous pu taper pour faire planter le logiciel ?▧ Cela doit être un problème matériel▧ Comment est-ce possible ?▧ Cela fonctionnait hier▧ Cela fonctionne sur ma machine▧ Cela n’avait jamais cela avant▧ C’est bizarre▧ C’est normal, c’est une fonctionnalité

Page 30: Qu'est ce qu'un logiciel de qualité

Origine et conséquenc

e des erreurs

Page 31: Qu'est ce qu'un logiciel de qualité

Crime et ChâtimentExigences Plus difficiles à prévenir et à corriger

L’ajout incessant de fonctionnalités

Source très gênante de bugs

Architecture Clé pour structurer la qualité

Design Plus graves et contaminantes

Code source Les plus nombreuses, faciles à corriger

Failles de sécurité Difficiles à trouver, difficiles à corriger

Documentation Important si non corrigée

Mauvaises corrections Difficiles à trouver

Mauvais jeux de tests Nombreux mais rarement évalués

Mauvaises données Commun mais jamais mesuré

Structure Difficile à identifier

Page 32: Qu'est ce qu'un logiciel de qualité

(A suivre)L’industrialisat

ion des développemen

ts

Page 33: Qu'est ce qu'un logiciel de qualité

Merci

Vous pouvez me trouver :@sleroy0

[email protected]