Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Rapport Qualité

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 20

Ministère de l’Enseignement Supérieur et de la Recherche Scientifique

Université de la Manouba

Institut Supérieur des Arts Multimédias

Rapport du projet qualité

Qualité Logiciel

Réalisé par

Aya Lazzem
Safouene Ben Yedder
Syrine Jendoubi
Omar Kammoun

Année Universitaire 2022-2023


Sommaire
1. Introduction 2

2. Management de la qualité Logiciel 2


1) Questionnaire 2
2) Métriques/mesures de la qualité interne du produit selon 9126-3 standard 2
Résultat et mesures de qualité interne 4
3) Métriques/mesures de la qualité externe du produit selon 9126-2 standard 5
Résultat et mesures de qualité externe : 6
4) Métriques de produits selon votre développement classique ou orienté objet 7
5) Métriques dédiées aux applications web 9
Résultat et mesures de produit classique ou web 10
6) Métriques/mesures de la qualité à l’utilisation selon 9126-4 standard 14
Résultat et mesures de produit classique ou web 15
7) Questionnaire de satisfaction client 20

3. Conclusion 20

4. Bibliographie 21

5. Webographie 21

1
1. Introduction
La gestion de la qualité logicielle est un ensemble de processus et de pratiques visant à s'assurer que
les logiciels produits répondent aux exigences de qualité et de performance fixées, et à améliorer la
qualité des logiciels au fil du temps. Cela peut inclure des activités comme la planification de tests,
la rédaction de cas de test, l'exécution de tests, l'analyse des résultats de test, la gestion des bugs et
l'amélioration continue des processus de développement de logiciels. La gestion de la qualité
logicielle est importante car elle peut aider à réduire les erreurs et les défauts dans le logiciel, ce qui
peut entraîner des coûts de développement et de maintenance plus élevés à long terme.

Le management de la qualité logiciel est une discipline qui vise à s'assurer que les
logiciels développés répondent aux exigences et aux attentes des utilisateurs. Il
comprend un ensemble de pratiques, de processus et de méthodologies qui visent à
garantir la qualité et la fiabilité des logiciels.

● Les étapes de la chaîne de développement logiciel, comme la conception,


l'implémentation, le test et la maintenance.
● Les outils et les techniques utilisés pour gérer la qualité logicielle, comme les
tests unitaires, les tests d'intégration, les tests de performance et les tests de
sécurité.
● Les processus de gestion de projet et de gestion de configuration utilisés pour
suivre l'avancement du développement et gérer les changements apportés au
code.
● Les méthodologies de développement logiciel adoptées, comme le développement
Agile ou le développement en cycle en V.
● Les stratégies de gestion de la qualité logicielle, comme la gestion des exigences,
la gestion des tests et la gestion des défauts.
● Les outils de suivi de la qualité logicielle utilisés, comme les indicateurs de
performance, les indicateurs de qualité et les indicateurs de satisfaction client.
● Il est également important de discuter de la manière dont nous avons pris en
compte les aspects de qualité logicielle dans le développement de votre
application MERN stack. Par exemple, avez-vous utilisé des tests automatisés
pour vérifier la qualité du code ? Avez-vous mis en place un processus de gestion
des défauts pour gérer les problèmes rencontrés pendant le développement ?
Avez-vous sollicité les retours des utilisateurs pour améliorer la qualité de votre
application ?

2. Management de la qualité Logiciel

1) Questionnaire

Questionnaire de recueil d’informations au début du cycle de développement.

Voici quelques exemples de questions qui pourraient être incluses dans un questionnaire de recueil
d'informations au début du cycle de développement:

2
1. Quel est l'objectif principal de ce projet de développement?
2. Qui sont les utilisateurs cibles de ce logiciel? Quelles sont leurs principales préoccupations
et attentes en matière de qualité?
3. Quels sont les principaux enjeux du projet de développement (par exemple, délai, coût,
fonctionnalités clés)?
4. Quels sont les principaux défis techniques ou de gestion de projet auxquels vous vous
attendez à être confrontés pendant le développement?
5. Quels sont les principaux indicateurs de performance que vous aimeriez suivre pendant le
développement (par exemple, temps de réponse, taux de disponibilité)?

Une fois qu' on a recueilli les réponses à ces questions, on peut analyser les résultats pour
déterminer les principaux objectifs et enjeux du projet, identifier les principaux défis et
opportunités, et établir un plan de gestion de projet pour atteindre les objectifs de qualité souhaités.
Enfin, on peut tirer des conclusions sur les principaux défis et opportunités du projet et sur les
actions à entreprendre pour garantir la qualité du logiciel développé.

2) Métriques/mesures de la qualité interne du produit selon 9126-3 standard

(choix des caractéristiques/sous-caractéristiques à évaluer, spécification des métriques/mesures


associées, résultats, discussion des résultats, outils utilisés).

Selon le standard ISO/CEI 9126-3, voici quelques exemples de métriques/mesures de qualité


interne du produit qui peuvent être utilisées pour évaluer la qualité d'un logiciel:

● Taux de défauts: il s'agit du nombre de défauts trouvés par unité de mesure (par
exemple, par ligne de code ou par fonctionnalité).
● Temps de réponse: il s'agit du temps que le logiciel prend pour répondre à une
demande ou une action de l'utilisateur.
● Fiabilité: il s'agit de la probabilité qu'un logiciel fonctionne sans erreur pendant une
période donnée.
● Utilisabilité: il s'agit de la facilité d'utilisation du logiciel pour les utilisateurs.
● Performances: il s'agit de la rapidité avec laquelle le logiciel exécute des tâches ou des
actions.
● Conformité aux normes: il s'agit de la conformité du logiciel aux normes et aux
réglementations en vigueur.
● Maintenabilité: il s'agit de la facilité avec laquelle le logiciel peut être modifié ou
maintenu.
● Interopérabilité: il s'agit de la capacité du logiciel à fonctionner avec d'autres logiciels
ou systèmes.

Ces métriques/mesures peuvent être utilisées pour évaluer la qualité interne d'un produit
logiciel et aider à identifier les domaines dans lesquels le produit peut être amélioré.

3
Il existe plusieurs façons d'évaluer les caractéristiques de qualité et les métriques associées
d'une application développée avec le stack MERN (React, Node.js, Express.js et MongoDB).
Voici quelques exemples de méthodes et d'outils qui peuvent être utilisés:

1. Tests: Vous pouvez utiliser des outils de test comme Jest (pour React), Mocha (pour
Node.js) ou Postman (pour les API) pour exécuter des tests unitaires, d'intégration et
de validation de l'application. Ces tests peuvent nous aider à mesurer la couverture
de test, le taux de défauts et la performance de l'application.
2. Évaluation de l'utilisabilité: Vous pouvez utiliser des outils comme UserTesting ou
Optimal Workshop pour recueillir des données d'utilisabilité auprès d'utilisateurs
réels. Ces outils nous permettent de créer des tâches à accomplir, de demander aux
utilisateurs de remplir un questionnaire d'évaluation ou d'enregistrer leur utilisation
de l'application pour analyser la facilité d'utilisation de l'application.
3. Analyse de code: Vous pouvez utiliser des outils d'analyse de code comme ESLint
(pour JavaScript) ou SonarQube pour analyser la qualité du code de votre application.
Ces outils peuvent nous aider à identifier les problèmes de qualité tels que les erreurs
de syntaxe, les mauvaises pratiques de codage ou les codes smells.
4. Tests de charge: Vous pouvez utiliser des outils de test de charge comme JMeter ou
Loader.io pour tester la performance de l'application sous différents niveaux de
charge. Ces outils nous permettent de simuler de nombreux utilisateurs qui utilisent
simultanément l'application et de mesurer les temps de réponse et la stabilité de
l'application.

Il est important de choisir les outils et les méthodes qui conviennent le mieux à vos objectifs
d'évaluation et à votre projet. Vous devrez peut-être expérimenter avec plusieurs outils et
approches pour trouver ce qui convient le mieux à votre situation.

En résumé, le management de la qualité logiciel est une discipline clé pour garantir la qualité
et la fiabilité d'une application. Dans votre rapport, n'oubliez pas de décrire les pratiques, les
processus et les méthodologies que nous avons utilisés pour gérer la qualité logicielle de
votre application MERN stack.

● Résultat et mesures de qualité interne

On a choisi la caractéristique fonctionnelle et la sous-caractéristique . Pour cela , on a


spécifié les métriques des lignes de code (LOC = Line Of Code). Le résultat est présenté

4
ci-dessous :

On remarque ici que le nombre de lignes de code est égale à 27690. On dit que c’est un projet
organique puisque LOC<50KLOC. Ces projets sont souvent simples et menés avec de petites
équipes.

On a utilisé le cloc pour mesurer les lignes de code.


Le cloc (Count Lines of Code) est un utilitaire en ligne de commande libre et gratuit permettant de
compter les lignes de code dans un arbre source donné. Il peut compter le nombre de lignes de code
dans une variété de langages de programmation, y compris C, C++, Java, Python, et bien d'autres.
cloc peut être utilisé pour analyser la complexité d'une base de code, pour estimer l'effort nécessaire
pour développer un projet logiciel, ou simplement pour avoir une idée de la taille d'une base de
code. Il peut être exécuté sur un seul fichier, un répertoire ou un arbre source entier. cloc est écrit en
Perl et est disponible pour Windows, Linux et macOS.

3) Métriques/mesures de la qualité externe du produit selon 9126-2 standard

(choix des caractéristiques/sous-caractéristiques à évaluer, spécification des métriques/mesures


associées, résultats, discussion des résultats, outils utilisés).

Selon le standard ISO/CEI 9126-2, voici quelques exemples de métriques/mesures de qualité


externe du produit qui peuvent être utilisées pour évaluer la qualité d'un logiciel:

● Couverture de test: il s'agit du pourcentage de fonctionnalités du logiciel qui ont été


testées.
● Conformité aux exigences: il s'agit de la mesure dans laquelle le logiciel répond aux
exigences fonctionnelles et non fonctionnelles spécifiées.
● Fiabilité en service: il s'agit de la probabilité qu'un logiciel fonctionne sans erreur pendant
une période donnée lorsqu'il est utilisé en service.
● Facilité d'utilisation: il s'agit de la facilité avec laquelle les utilisateurs peuvent apprendre à
utiliser le logiciel et accomplir les tâches souhaitées.

5
● Facilité de maintenance: il s'agit de la facilité avec laquelle le logiciel peut être modifié ou
maintenu.
● Interopérabilité: il s'agit de la capacité du logiciel à fonctionner avec d'autres logiciels ou
systèmes.
● Efficacité en termes de coût: il s'agit de la mesure dans laquelle le coût total associé à
l'utilisation du logiciel est raisonnable par rapport à ses bénéfices.

Pour évaluer ces caractéristiques de qualité et les métriques associées, nous pouvons utiliser des
méthodes et des outils tels que des tests en service, des enquêtes auprès d'utilisateurs, des analyses
de données de support et de maintenance, des tests de sécurité et de compatibilité, et des analyses
de coût-bénéfice. Il est important de choisir les outils et les méthodes qui conviennent le mieux à vos
objectifs d'évaluation et à votre projet.

Voici quelques exemples d'outils et de méthodes qui peuvent être utilisés pour évaluer les
caractéristiques de qualité externe et les métriques associées d'une application développée avec le
stack MERN (React, Node.js, Express.js et MongoDB):

1. Tests en service: Vous pouvez utiliser des outils de test en service comme Splunk ou New
Relic pour surveiller l'utilisation de l'application en production et collecter des données sur
la fiabilité, la performance et d'autres métriques clés.
2. Enquêtes auprès d'utilisateurs: Vous pouvez utiliser des outils comme SurveyMonkey ou
Google Forms pour recueillir des données d'utilisabilité auprès des utilisateurs réels de
l'application. Ces enquêtes peuvent nous aider à mesurer la facilité d'utilisation de
l'application et à identifier les domaines à améliorer.
3. Analyses de données de support et de maintenance: Vous pouvez utiliser des outils de
gestion de support comme Zendesk ou Jira pour collecter des données sur les problèmes
signalés par les utilisateurs et sur les temps de réparation. Ces données peuvent nous aider
à évaluer la facilité de maintenance de l'application.
4. Tests de sécurité et de compatibilité: Vous pouvez utiliser des outils de test de sécurité
comme Burp Suite ou Nessus pour vérifier la sécurité de l'application et des outils de test de
compatibilité comme Sauce Labs ou BrowserStack pour vérifier la compatibilité de
l'application avec différents navigateurs et appareils.
5. Analyses de coût-bénéfice: Vous pouvez utiliser des outils de gestion de projet comme
Microsoft Project ou Asana pour collecter des données sur les coûts associés au
développement, à la maintenance et à l'utilisation de l'application, ainsi que sur les
bénéfices attendus. Ces données peuvent être utilisées pour évaluer l'efficacité en termes de
coût de l'application.

Il est important de choisir les outils et les méthodes qui conviennent le mieux à vos objectifs
d'évaluation et à votre projet. Vous devrez peut-être expérimenter avec plusieurs outils et
approches pour trouver ce qui convient le mieux à votre situation.

● Résultat et mesures de qualité externe :


Choix de caractéristique : Reliabilité
Choix des sous caractéristiques : Maturité
Spécification des métriques : Couverture de code
6
discussion des résultats :
On a utilisé l’outil “Jest” pour effectuer les tests. Jest est un framework de test. Il permet d’écrire des
tests avec des APIs riches en fonctionnalités qui donnent des résultats rapidement.
Donc voici un exemple des tests passés.

Figure 1 : Exemple de test passés

Il y a des tests qui échouent comme l’illustre la figure 2

Figure 2 : Exemple de test échoués

Donc en totalité on a les tests suivants :

Figure 3 : Nombre de tests global

LCOV reports :
LCOV est un outil graphique pour la couverture des tests. Il contient des pages HTML contenant
l’ensemble des couvertures de tests de l’application. Pour cela, on a utilisé Istanbul qui instrumente
le code javascript avec des compteurs de lignes, afin que nous puissions suivre dans quelle mesure
les tests unitaires exercent la base de code.
Dans la figure 4, nous présentons notre LCOV report :

Figure 4 : Nombre de tests global

Dans le dossier qui contient la configuration avec la base de données, nous n'avons pas besoin de
couvrir les tests c’est pourquoi les pourcentages sont réduits.
Nous avons découvert par cette métrique combien de tests requis a été exécuté durant la phase test.
Pour cela, nous avons la formule suivante X = A / B où A est le nombre de cas de test effectué et B
est le nombre de cas de tests pour couvrir les exigences. Et plus le pourcentage élevé plus qu’on a
assuré un livrable qui a couvrir les exigences nécessaires

4) Métriques de produits selon votre développement classique ou orienté objet

(PF, LCOM, nombre de classes, inheritance depth, ...)

Voici quelques exemples de métriques de produits qui peuvent être utilisées pour évaluer la qualité
d'un logiciel développé selon une approche classique ou orientée objet:
7
● Lines of code (LOC): il s'agit du nombre de lignes de code dans le logiciel. Une grande
quantité de code peut être indicatif d'une complexité accrue et d'une plus grande
probabilité de défauts.
● Cyclomatic complexity (CC): il s'agit de la mesure de la complexité d'un module de code en
fonction du nombre de chemins indépendants à travers celui-ci. Un module de code à faible
complexité cyclomatique est généralement considéré comme plus facile à tester et à
maintenir.
● Fan-in et fan-out: il s'agit respectivement du nombre de modules qui utilisent un module
donné et du nombre de modules utilisés par un module donné. Des valeurs élevées de fan-in
et de fan-out peuvent indiquer une dépendance accrue entre les modules et une complexité
accrue.
● Coupling: il s'agit de la mesure de la dépendance entre les modules de code. Des valeurs de
coupling élevées peuvent indiquer une complexité accrue et une plus grande probabilité de
défauts.
● Nombre de classes: il s'agit du nombre de classes dans le code source d'un logiciel. Cette
métrique peut être utilisée pour mesurer la complexité du logiciel et pour identifier les
domaines du code qui pourraient être simplifiés.
● Inheritance depth: il s'agit de la profondeur de l'héritage dans le code source d'un logiciel.
Cette métrique peut être utilisée pour mesurer la complexité de l'héritage et pour identifier
les parties du code qui pourraient être simplifiées en utilisant des techniques de refactoring.

Voici comment nous pouvez évaluer les caractéristiques de qualité et les métriques suivantes dans
un logiciel développé selon une approche classique ou orientée objet:

1. PF (Function Points): pour évaluer cette métrique, nous pouvons utiliser un outil d'analyse
de code statique qui calcule le nombre de points de fonction d'un logiciel en fonction de la
complexité des fonctionnalités. Vous pouvez également utiliser une méthode manuelle
d'évaluation des points de fonction en suivant une grille de points de fonction qui attribue
un nombre de points à chaque fonctionnalité en fonction de sa complexité.
2. LCOM (Lack of Cohesion of Methods): pour évaluer cette métrique, nous pouvons utiliser un
outil d'analyse de code statique qui calcule le LCOM d'une classe en fonction du degré de
coopération entre ses méthodes. Vous pouvez également utiliser une méthode manuelle
d'évaluation du LCOM en examinant chaque classe et en notant le degré de coopération
entre ses méthodes.
3. Nombre de classes: pour évaluer cette métrique, nous pouvons utiliser un outil d'analyse de
code statique qui compte le nombre de classes dans le code source d'un logiciel. Vous
pouvez également compter le nombre de classes manuellement en parcourant le code
source.
4. Inheritance depth: pour évaluer cette métrique, nous pouvons utiliser un outil d'analyse de
code statique qui mesure la profondeur de l'héritage dans le code source d'un logiciel. Vous
pouvez également mesurer la profondeur de l'héritage manuellement en parcourant le code
source et en notant le nombre de niveaux de classes héritées.

Il est important de choisir les outils et les méthodes qui conviennent le mieux à vos objectifs
d'évaluation et à votre projet. Vous devrez peut-être expérimenter avec plusieurs outils et
approches pour trouver ce qui convient le mieux à votre situation. Il est également important de
8
tenir compte des limites et des biais potentiels de chaque méthode d'évaluation et de les prendre en
compte dans votre analyse des résultats.

5) Métriques dédiées aux applications web

(cf. Product Metrics, CHAPTER 23, Page 613, Pressman, Roger S. , Software Engineering: A
Practitioner's Approach, 7th International edition, McGraw-Hillhigher education, 2010, ISBN
978–0–07–337597–7).

Voici quelques exemples de métriques de produits qui peuvent être utilisées pour évaluer la qualité
d'une application web, selon la liste proposée dans le livre Software Engineering: A Practitioner's
Approach de Roger S. Pressman:

● Nombre de pages vues: il s'agit du nombre de pages d'une application web qui sont visitées
par les utilisateurs. Cette métrique peut aider à évaluer l'utilisation de l'application et à
identifier les pages les plus populaires.
● Temps moyen passé sur chaque page: il s'agit du temps moyen passé par les utilisateurs sur
chaque page d'une application web. Cette métrique peut aider à évaluer l'intérêt des
utilisateurs pour les différentes pages de l'application.
● Taux de rebond: il s'agit du pourcentage d'utilisateurs qui quittent une application web
après avoir visité une seule page. Cette métrique peut aider à évaluer l'intérêt des
utilisateurs pour l'application et à identifier les pages qui ont un taux de rebond élevé.
● Nombre de transactions: il s'agit du nombre de transactions effectuées sur une application
web (par exemple, achats en ligne, inscriptions à un service, etc.). Cette métrique peut aider
à évaluer l'utilisation de l'application et à identifier les fonctionnalités les plus utilisées.
● Temps de chargement: il s'agit du temps qu'il faut à l'application pour charger et afficher
correctement le contenu. Un temps de chargement faible est généralement préférable pour
améliorer l'expérience utilisateur.

Voici quelques exemples d'outils et de méthodes qui peuvent être utilisés pour évaluer les
caractéristiques de qualité et les métriques associées d'une application web:

1. Analyse de données de trafic web: Vous pouvez utiliser des outils d'analyse de données de
trafic web comme Google Analytics ou Adobe Analytics pour collecter des données sur
l'utilisation de votre application web. Ces outils nous permettent de suivre les données de
trafic, de performance et de comportement de l'utilisateur, qui peuvent être utilisées pour
évaluer les métriques mentionnées ci-dessus.
2. Tests de performance: Vous pouvez utiliser des outils de test de performance comme
LoadRunner ou Apache JMeter pour simuler l'utilisation de votre application web et
mesurer les temps de réponse et les temps de chargement de page.
3. Surveys en ligne: Vous pouvez utiliser des outils de sondage en ligne comme SurveyMonkey
ou Google Forms pour recueillir des données auprès des utilisateurs de votre application
web sur leur expérience d'utilisation et leur satisfaction.
4. Tests de compatibilité: Vous pouvez utiliser des outils de test de compatibilité comme
BrowserStack ou Sauce Labs pour vérifier la compatibilité de votre application web avec
différents navigateurs, systèmes d'exploitation et appareils.
9
Il est important de choisir les outils et les méthodes qui conviennent le mieux à vos objectifs
d'évaluation et à votre projet. Vous devrez peut-être expérimenter avec plusieurs outils et
approches pour trouver ce qui convient le mieux à votre situation.

● Résultat et mesures de produit classique ou web


Pour évaluer les caractéristiques de qualité et les métriques associées d'une application web, on à
choisi le test de performance comme méthode de mesure et Sentry.io comme un outil.
Sentry est un logiciel de suivi des erreurs open source qui aide les développeurs à surveiller et à
corriger les plantages en temps réel. Avec Sentry, les développeurs peuvent être informés des erreurs
et du contexte pertinent au fur et à mesure qu'ils se produisent, ce qui leur permet d'identifier et de
résoudre rapidement les problèmes de leurs applications. Sentry fournit également des informations
détaillées sur le contexte et le débogage pour chaque erreur, notamment une trace complète de la
pile, l'état des variables, etc. Cela aide les développeurs à comprendre la cause première des erreurs
et comment les reproduire. Sentry est souvent utilisé en combinaison avec d'autres outils et services
de développement de logiciels, tels que des référentiels de code et des systèmes de génération, pour
fournir une vue complète du processus de développement et de déploiement de logiciels.

Le résultat est présenté ci dessous :

● FRONTEND :

10
Le seuil p50 est la valeur à laquelle 50 % des durées de transaction sont supérieures au
seuil. C'est aussi la médiane. Par exemple, si le seuil p50 est de 10 millisecondes, alors 50 %
des transactions ont dépassé ce seuil, prenant plus de 10 millisecondes.
Dans notre cas , 50% des transactions ont dépassé 119ms

Le seuil p75 est la valeur à laquelle 25% des durées de transaction sont supérieures au seuil.
Par exemple, si le seuil p75 est de 10 millisecondes, alors 25 % des transactions ont dépassé
ce seuil, prenant plus de 10 millisecondes.
Dans notre cas , 25 % des transactions ont dépassé 2s.

11
Slow HTTP Ops affiche les transactions avec des extensions HTTP cumulatives lentes.

● BACKEND :

Apdex est une mesure standard de l'industrie utilisée pour suivre et mesurer la satisfaction des
utilisateurs en fonction des temps de réponse de votre application. Un score Apdex plus élevé est
meilleur qu'un score inférieur ; le score peut aller jusqu'à 1.0, ce qui représente 100% des
utilisateurs ayant une expérience satisfaisante. Le score Apdex fournit le ratio de demandes
satisfaisantes, tolérables et frustrées dans une transaction ou un point de terminaison spécifique.
Cette métrique vous fournit une norme pour comparer les performances des transactions,
comprendre celles qui peuvent nécessiter une optimisation ou une enquête supplémentaire, et
définir des cibles ou des objectifs de performances.
Dans notre cas , apdex vaux 0.603.

12
failure_rate() indique le pourcentage de transactions infructueuses. Sentry traite les
transactions avec un statut autre que "ok", "annulé" et "inconnu" comme des échecs.
Dans notre cas, Failure Rate est 18%.

6) Métriques/mesures de la qualité à l’utilisation selon 9126-4 standard

(choix des caractéristiques/sous-caractéristiques à évaluer, spécification des métriques/mesures


associées, résultats, discussion des résultats, outils utilisés).

13
Voici quelques exemples de caractéristiques et de métriques de qualité à l'utilisation qui peuvent
être évaluées selon le standard ISO 9126-4:

● Fiabilité: cette caractéristique mesure la capacité d'un logiciel à fonctionner de manière


fiable au fil du temps, sans défaillance inattendue. Les métriques associées peuvent inclure
le nombre de pannes, le temps entre les pannes et la durée de temps pendant laquelle le
logiciel est inutilisable.
● Disponibilité: cette caractéristique mesure la capacité d'un logiciel à être accessible et
utilisable par les utilisateurs lorsqu'il est nécessaire. Les métriques associées peuvent inclure
le temps de réponse moyen, le temps de chargement de page et le taux de disponibilité.
● Utilisabilité: cette caractéristique mesure la facilité d'utilisation d'un logiciel par les
utilisateurs. Les métriques associées peuvent inclure le temps nécessaire pour apprendre à
utiliser le logiciel, le nombre d'erreurs commises par les utilisateurs et le taux de satisfaction
des utilisateurs.
● Performance: cette caractéristique mesure les caractéristiques de performance d'un logiciel,
telles que la vitesse de traitement, la mémoire utilisée et la capacité de traitement. Les
métriques associées peuvent inclure le temps de réponse moyen, le temps de chargement de
page et la consommation de mémoire.

Voici comment on peut évaluer les caractéristiques de qualité et les métriques suivantes à
l'utilisation:

1. Fiabilité: pour évaluer cette caractéristique, nous pouvons utiliser des outils de surveillance
de l'application pour suivre le nombre de pannes et le temps de disponibilité du logiciel.
Vous pouvez également recueillir des données de terrain auprès des utilisateurs pour
obtenir des informations sur les pannes ou les défaillances qu'ils ont rencontrées.
2. Disponibilité: pour évaluer cette caractéristique, nous pouvons utiliser des outils de
surveillance de l'application pour suivre le temps de réponse et le temps de chargement de
page. Vous pouvez également recueillir des données de terrain auprès des utilisateurs pour
obtenir des informations sur leur expérience de l'utilisation du logiciel.
3. Utilisabilité: pour évaluer cette caractéristique, nous pouvons utiliser des tests utilisateur
pour mesurer le temps nécessaire pour apprendre à utiliser le logiciel et le nombre d'erreurs
commises par les utilisateurs. Vous pouvez également recueillir des données de terrain
auprès des utilisateurs pour obtenir des informations sur leur satisfaction générale avec le
logiciel.
4. Performance: pour évaluer cette caractéristique, nous pouvons utiliser des outils de test de
performance pour mesurer les temps.

● Résultat et mesures de produit classique ou web


Pour évaluer le critère de l'utilisabilité de qualité d'un logiciel, il est nécessaire de créer un
formulaire de collecte de données. Ce formulaire peut inclure des questions sur la facilité
d'utilisation du logiciel, la clarté de l'interface utilisateur, la rapidité avec laquelle les tâches
peuvent être accomplies, et la satisfaction globale de l'utilisateur. Il peut également être utile
d'inclure des questions sur les erreurs rencontrées et la façon dont elles ont été résolues, ainsi que
sur les fonctionnalités qui ont été particulièrement appréciées ou qui ont posé problème. En
recueillant ces données à partir d'un échantillon représentatif d'utilisateurs, il est possible de
14
mesurer l'utilisabilité de qualité du logiciel de manière précise et de déterminer les domaines qui
nécessitent des améliorations.

Ci-dessous quelques captures qui décrit les questions utilisées et leurs résultats :

15
16
Une fois le formulaire de collecte de données sur l'utilisabilité de qualité du logiciel créé et les
réponses recueillies, il est possible de constater que le logiciel fonctionne correctement dans
l'ensemble. Cependant, il est possible qu'il y ait quelques petits bugs qui peuvent être améliorés pour
offrir une expérience encore plus fluide et sans problème à l'utilisateur. Ces bugs peuvent être
identifiés grâce aux commentaires et aux scores donnés par les utilisateurs dans le formulaire, et
peuvent être corrigés grâce aux données collectées. En travaillant pour améliorer ces petits
problèmes, il est possible de garantir que le logiciel fonctionne de manière optimale et offre une
expérience satisfaisante à tous les utilisateurs.

17
7) Questionnaire de satisfaction client

( Pouvant être appliqué avec les livrables partiels, et/ou le produit final ).

Voici quelques exemples de questions qui pourraient être incluses dans un questionnaire de
satisfaction client:

1. Depuis combien de temps utilisez-vous ce logiciel?


2. Comment avez-vous entendu parler de ce logiciel?
3. Qu'est-ce qui vous a incité à acheter ou à utiliser ce logiciel?
4. Quels sont les aspects les plus positifs de ce logiciel selon vous?
5. Quels sont les aspects les moins positifs de ce logiciel selon vous?
6. Comment évaluez-vous la qualité du support client que vous avez reçu?
7. Quelle note sur 10 donneriez-vous à ce logiciel? Pourquoi?
8. Recommanderiez-vous ce logiciel à un ami ou à un collègue? Pourquoi ou pourquoi pas?

Une fois qu’on a recueilli les réponses à ces questions, nous pouvons analyser les résultats pour
déterminer le niveau de satisfaction général des clients, identifier les aspects les plus appréciés et
les moins appréciés du logiciel, et évaluer la qualité du support client fourni. Enfin, on peut tirer des
conclusions sur les points forts et les points faibles du logiciel selon les clients et sur les actions à
entreprendre pour améliorer la satisfaction des clients.

3. Conclusion
La qualité logiciel est un enjeu crucial dans le développement de logiciels de qualité. Elle concerne
toutes les étapes du cycle de vie du logiciel, de la conception à la maintenance. Il est important de
définir clairement les objectifs de qualité en amont du projet et de mettre en place des méthodes et
des outils pour évaluer la qualité à chaque étape du développement. Il est également essentiel de
veiller à ce que tous les membres de l'équipe de développement soient conscients de leur rôle dans la
garantie de la qualité du logiciel et de mettre en place des processus de gestion de la qualité pour
s'assurer que ces objectifs sont atteints. Enfin, il est important de suivre et de mesurer régulièrement
la qualité du logiciel pour s'assurer qu'elle répond aux attentes des utilisateurs et pour mettre en
place des actions correctives en cas de besoin.

4. Bibliographie
[Norme qualité interne du produit selon 9126-2 standard]
[Norme qualité interne du produit selon 9126-3 standard]
[Norme qualité interne du produit selon 9126-4 standard]
[Product Metrics, CHAPTER 23, Page 613, Pressman, Roger S. ,Software Engineering: A
Practitioner's Approach, 7th International edition, McGraw-Hillhigher education, 2010,
ISBN 978–0–07–337597–7).]

5. Webographie

18
19

Vous aimerez peut-être aussi