Que fait Système de Comparaison et de Matrice ?
Objectif
Le Système de Comparaison et de Matrice fournit une méthodologie pour concevoir des interfaces détaillées de découverte et d'évaluation. Alors que pricing-table-ui-system gère les niveaux de plan haut niveau et data-table-ui-system gère les grands ensembles de données, ce système se concentre sur la comparaison riche en attributs de quelques éléments spécifiques (généralement 2 à 5). Il garantit que les utilisateurs peuvent évaluer des produits ou services complexes sur des dizaines de dimensions sans perdre le fil, se sentir submergés par les données, ou lutter contre des mises en page non réactives.
Cas d'Utilisation
- Comparaison de Produits E-commerce : Comparaison des spécifications techniques pour l'électronique, les appareils électroménagers ou les véhicules.
- Matrices de Fonctionnalités SaaS : Décomposition détaillée des capacités de la plateforme au-delà des fiches de prix haut niveau.
- Comparaison de Services : Évaluation de différents plans d'assurance, forfaits voyage ou cours éducatifs.
- Outils Internes : Audit de différentes versions de systèmes ou configurations côte à côte.
Quand NE PAS Utiliser
- Tarification Haut Niveau : Pour des résumés d'abonnement simples à 3 niveaux, utilisez
pricing-table-ui-system. - Exploration de Grands Ensembles de Données : Si l'utilisateur a besoin de trier et filtrer des centaines d'éléments, utilisez
data-table-ui-system. - Détails d'un Seul Élément : Utilisez
article-layout-systemoucard-ui-systempour les pages de produits individuelles. - Progression Linéaire : Pour les flux étape par étape, utilisez
step-progress-system.
Entrées
- Ensemble de Comparaison : Les 2 à 5 éléments sélectionnés pour l'évaluation.
- Taxonomie des Attributs : Une liste catégorisée de toutes les fonctionnalités, spécifications et points de données à comparer.
- Types de Données : Un mappage des attributs aux types d'interface utilisateur (par exemple, Booléen/Coche, Numérique, Évaluation, Description Textuelle).
- Contexte de la Sélection : S'agit-il d'une page persistante ou d'une superposition temporaire déclenchée depuis une page de liste de produits ?
Sorties
- Spécification d'Anatomie de la Matrice : Définitions pour les En-têtes de Lignes (attributs), les En-têtes de Colonnes (éléments) et les Cellules de Données.
- Cadre de Catégorisation : Règles pour regrouper les attributs en sections logiques avec des en-têtes repliables.
- Plan de Navigation Sticky : Règles comportementales pour maintenir le contexte lors du défilement vertical et horizontal.
- Carte de Transition Responsive : Une stratégie pour adapter la matrice au mobile (par exemple, Échange d'Éléments vs. Empilement Vertical).
Flux de Travail
1. Structurer le Cadre de la Grille
Définir l'axe principal de la matrice :
- Colonnes : Représentent les éléments comparés.
- Lignes : Représentent les attributs ou fonctionnalités.
- Colonne Principale : La première colonne à gauche contient les étiquettes/en-têtes des attributs.
2. Catégoriser et Regrouper les Attributs
Éviter la "Fatigue de Comparaison" en organisant les lignes en clusters logiques :
- Sections : Regrouper les attributs connexes (par exemple, "Performance", "Connectivité", "Garantie").
- Repliabilité : Permettre aux utilisateurs de réduire/développer les sections pour se concentrer sur des critères spécifiques.
- Distinction Visuelle : Utiliser de subtiles variations d'arrière-plan ou des bordures pour séparer les sections.
3. Standardiser la Visualisation des Données
Appliquer un langage visuel cohérent aux différents types de données :
- Booléens : Utiliser des coches à contraste élevé (✓) pour l'inclusion et un tiret (—) ou un état vide pour l'exclusion.
- Évaluations : Utiliser des échelles d'icônes cohérentes (par exemple, 5 étoiles).
- Texte Nuancé : Utiliser une taille de police plus petite et lisible pour les descriptions, en veillant à ce que la longueur de ligne soit gérée dans la cellule.
- Mises en Évidence : Distinguer visuellement les cellules où un élément surpasse clairement les autres (à utiliser avec prudence pour maintenir la neutralité).
4. Implémenter le Contexte Sticky (Wayfinding)
S'assurer que l'utilisateur ne perd jamais de vue ce qu'il regarde :
- En-têtes de Colonnes Sticky : Garder les noms des éléments et les photos visibles en haut de la fenêtre d'affichage pendant que l'utilisateur fait défiler les lignes.
- En-têtes de Lignes Sticky : Pour les matrices larges sur desktop, garder les étiquettes des attributs visibles à gauche pendant que l'utilisateur fait défiler horizontalement.
5. Planifier pour l'Adaptation Mobile
Les matrices sont intrinsèquement horizontales ; les adapter pour les écrans verticaux :
- Le Pattern "Sélecteur" : Afficher la liste des attributs et 1 à 2 éléments à la fois, en utilisant un menu déroulant ou une interaction de balayage pour changer les éléments visibles.
- Le Pattern "Carte Verticale" : Transformer la matrice en une séquence de cartes, en répétant les étiquettes d'attributs pour chaque carte (recommandé uniquement pour les comparaisons très simples).
Règles de Décision
- La Règle de Cinq : Limiter le nombre maximum d'éléments dans une matrice côte à côte à 5 sur desktop pour éviter la surcharge horizontale.
- Pertinence des Attributs : Inclure uniquement les attributs qui diffèrent entre au moins deux éléments de l'ensemble. Si chaque élément a la même valeur, envisagez de déplacer ces informations dans une section partagée "Fonctionnalités Globales".
- Prominence des En-têtes : Les en-têtes d'éléments (Colonne 1, 2, etc.) doivent inclure une petite image du produit pour fournir une reconnaissance visuelle immédiate.
- États de Survol des Lignes : Utiliser un arrière-plan de survol distinct pour toute la ligne afin d'aider l'œil à suivre à travers les colonnes.
Contraintes
- Accessibilité : Les en-têtes de lignes doivent être correctement associés aux cellules en utilisant
scope="row"etscope="col". Assurer un contraste élevé pour les coches et les icônes. Les en-têtes de colonnes/lignes sticky ne doivent pas masquer l'indicateur de focus du clavier des cellules ou des contrôles en dessous (WCAG 2.2 SC 2.4.11). Tout sélecteur d'élément ou contrôle déroulant sur mobile doit respecter la taille minimale de cible de 24x24px (SC 2.5.8). - Responsivité : Le défilement horizontal doit être intentionnel (par exemple, dans un conteneur) et ne pas casser la mise en page globale de la page.
- Poids Visuel : La "Colonne Principale" (attributs) doit avoir un traitement visuel légèrement différent (par exemple, fond gris clair ou texte en gras) pour la distinguer des données.
Modes d'Échec Courants
- Le Problème de "l'En-tête Perdu" : Faire défiler une longue matrice et oublier quel élément est lequel.
- Surcharge d'Attributs : Afficher plus de 50 lignes sans catégorisation, rendant impossible la recherche d'informations spécifiques.
- Compression Mobile : Essayer de faire tenir 4 colonnes sur un écran mobile, rendant le texte illisible.
- Symboles Ambiguës : Utiliser des icônes personnalisées pour "Oui/Non" que les utilisateurs ne comprennent pas immédiatement.
- Alignement Incohérent : Mélanger des icônes centrées avec du texte aligné à gauche dans la même colonne.
Critères de Validation
- Les en-têtes d'éléments restent sticky en haut de la fenêtre d'affichage lors du défilement vertical.
- Les attributs sont regroupés en sections logiques et repliables.
- Les types de données (Booléen, Évaluation, Texte) utilisent un langage visuel cohérent.
- La "Colonne Principale" est visuellement distincte des colonnes de données.
- La vue mobile fournit un mécanisme clair pour comparer les éléments (par exemple, changement d'élément).
- Les états de survol des lignes sont implémentés pour faciliter le suivi horizontal.
- Toutes les icônes et textes respectent les exigences de contraste WCAG AA (4.5:1).
- Les en-têtes sticky ne masquent pas les indicateurs de focus sur les cellules ou les contrôles (WCAG 2.2 SC 2.4.11).
- Les contrôles de changement d'élément sur mobile respectent la taille minimale de cible de 24x24px (WCAG 2.2 SC 2.5.8).