web-dev-qa-db-fra.com

Affichage et / ou recherche parmi des milliers de contacts?

Le besoin

Notre application dispose d'une fonctionnalité de chat qui permet à nos utilisateurs de discuter avec d'autres utilisateurs de leur base de données.

Cependant, nous ajoutons une fonctionnalité qui permet aux clients de partager des données entre plusieurs bases de données en tant que configuration "Entreprise", et on nous a demandé de mettre à jour la conception de la fonctionnalité de discussion pour permettre aux utilisateurs de discuter avec d'autres utilisateurs dans n'importe laquelle de ces bases de données.

Nous avons examiné le nombre d'utilisateurs possibles dans ces scénarios, et le nombre d'utilisateurs de chat dans ces environnements de base de données partagés peut atteindre 5 000.

Les utilisateurs doivent pouvoir trouver les personnes avec lesquelles ils ont besoin de discuter parmi ces milliers de contacts. Cependant, jusqu'à présent, nous avons eu une liste de contacts que les utilisateurs peuvent parcourir. Comme il s'agit d'une attente des utilisateurs, nous espérions conserver une liste de contacts consultable. Nous avons exclu d'essayer d'afficher une liste de 5 000 contacts, car cela ne semble pas du tout utile ou utilisable.

Nous avons proposé trois approches pour résoudre le problème:

Première option

Afficher une liste de contacts de la base de données locale que l'utilisateur peut parcourir. Avoir un deuxième onglet qui permet aux utilisateurs de rechercher le "répertoire complet", en retournant les résultats de plusieurs bases de données.

enter image description here

Avantages:

  • Nous permet d'afficher une liste consultable des contacts pertinents
  • Indique clairement aux utilisateurs qu'une autre source de contacts de chat est disponible

Les inconvénients:

  • La recherche serait limitée à l'onglet actuel, ce qui signifie que les utilisateurs devraient être dans le bon onglet pour retourner le bon résultat
  • Ajoute une source possible de confusion des utilisateurs: quelle est la différence entre les "contacts" et le "répertoire complet"?
  • Ajoute un autre onglet à ce qui devrait être une simple liste de discussion

Deuxième option

Afficher une liste de contacts de la base de données locale de l'utilisateur, mais s'il recherche un contact, inclure également les résultats d'autres bases de données.

enter image description here

Avantages:

  • Maintient une liste de contacts que l'utilisateur peut parcourir
  • Évite d'ajouter un autre onglet
  • Un champ de recherche recherche toutes les sources

Les inconvénients:

  • La recherche d'une liste de contacts finie et le renvoi de résultats qui ne figuraient pas dans la liste de contacts peuvent défier le modèle mental de l'utilisateur sur le fonctionnement de la recherche.
  • Pas clair qu'il existe une autre source de contacts. Peut-être besoin d'ajouter un texte explicatif qui dit "Rechercher pour voir les contacts à partir du répertoire complet".

Troisième option

Ajoutez une liste déroulante qui permet à un utilisateur de sélectionner un élément dans lequel rechercher: la base de données locale ou le répertoire complet.

enter image description here

Avantages:

  • Aucun onglet supplémentaire requis
  • Indique aux utilisateurs qu'une autre source de contacts de chat est disponible, mais pas aussi clairement que l'option 1

Les inconvénients:

  • La recherche n'est toujours pas universelle: la bonne catégorie de recherche doit être sélectionnée pour renvoyer le bon résultat
  • Les utilisateurs peuvent ne pas remarquer la liste déroulante ou comprendre intuitivement quelle est sa fonction. Peut nécessiter un texte explicatif dans les résultats de la recherche, rappelant à l'utilisateur qu'il peut étendre la recherche au répertoire complet

Réflexions?

En ce moment, je penche vers l'option deux, mais y a-t-il une autre option que je ne considère pas ici? Y a-t-il une autre alternative à considérer?

Merci!

7
FreedomMan

Je recommanderais d'implémenter une boîte de recherche de filtre automatique avec mise en évidence des correspondances et cases à cocher pour les filtres de répertoire/base de données :

enter image description here

Vous pouvez demander au filtre de mettre à jour automatiquement la liste des contacts affichée au cas où quelqu'un aurait tapé un nom et oublié de sélectionner un répertoire ou sélectionné le mauvais répertoire. Cela leur évitera d'avoir à refaire l'action de saisie du nom.

Je vous laisse le défi technique :)

1
Philip Barcelon

personnellement, je choisirais l'option 2 - limitant initialement le nombre de résultats par zone (à par exemple 5) mais en ajoutant un lien à côté de la zone (ou en bas) qui dit quelque chose comme "... voir plus" qui serait ensuite limiter le résultat à la zone spécifiée.

0
Leon

Avec plus de 5000 contacts, vous voudrez un contrôle de filtrage supplémentaire. Selon la culture et le pays, de nombreuses personnes peuvent avoir des prénoms et des noms similaires.

Que diriez-vous:

[Prénom nom de famille]

[Annuaire]

0
Tom.K

L'option 2 semble être la meilleure. Si trouver la bonne personne est important, quel que soit le réseau dans lequel la personne se trouve, vous supprimez la séparation et laissez le rang de recherche faire son travail. Vous pouvez alors toujours marquer chaque découverte avec son ou ses noms de réseau. c'est-à-dire "Ann Harvey (saut de ligne) Nom du réseau [petit texte]" De cette façon, vous pouvez gérer les doublons lorsqu'une recherche appartient à plusieurs réseaux. Si trouver la bonne personne dans le même réseau est plus important que je donnerais à nouveau à ces trouvailles un certain poids (dans l'algorithme) pour les déplacer dans la liste.

0
Dara