web-dev-qa-db-fra.com

Saisie de données numériques dans un logiciel scientifique basé sur le Web

(Remarque: je suis plus un développeur backend, alors veuillez pardonner mon manque de terminologies UX. N'hésitez pas à modifier le texte ou les balises)

Nous travaillons sur un logiciel scientifique en ligne avec des contraintes spécifiques sur les entrées numériques:

  • Les entrées se font dans une sorte de grille d'arbre. Il y a quelques colonnes, et seulement 1 ou 2 avec entrée numérique
  • Sur des rangées très proches, les chiffres peuvent être extrêmement hétérogènes. L'utilisateur peut saisir "1 000" sur une ligne, "2 2435e-13" sur la suivante, puis "0,037", puis "6,62355e9" sur la quatrième ligne, etc.
  • Même si le logiciel est un logiciel scientifique, l'utilisateur saisissant parfois certaines données n'a pas de formation scientifique
  • Les données sont parfois copiées/collées à partir d'un calcul externe et peuvent être quelque chose comme "2.234234567456e-6"
  • Le logiciel est international et l'affichage des valeurs numériques est vraiment différent. Un utilisateur français peut essayer de saisir "1 453,23", en Suisse quelque chose comme "5 234,43". Certains autres pays utilisent d'autres milliers de séparateurs
  • Nos calculs n'ont pas besoin de données exactes. Les entrées utilisateur peuvent être stockées sous forme de nombres à virgule flottante.

Ma question principale est "Y a-t-il des modèles UX concernant la saisie de données numériques scientifiques?"

Des questions plus spécifiques sont:

  • Devrions-nous afficher les chiffres exactement comme ils ont été saisis? Même s'ils sont hétérogènes et si deux utilisateurs partageant les mêmes données utilisent des paramètres régionaux différents? Si oui, comment sommes-nous censés gérer la validation des entrées?
  • Faut-il afficher tous les nombres en notation scientifique? Même si nous pouvons avoir "1", "10" ou "0,1"? Ou devrions-nous avoir des règles plus complexes sur le moment de l'affichage dans quel format?
  • Devrions-nous offrir une fonctionnalité pour personnaliser la mise en forme des nombres? Si oui, quelles seraient les valeurs par défaut, et comment ne pas avoir une personnalisation trop complexe?
  • Devrions-nous nous soucier des paramètres régionaux ou devons-nous forcer l'utilisateur à utiliser une convention déterminée?
  • Ou peut-être devrions-nous permettre d'entrer les valeurs dans n'importe quel lieu et de les afficher à l'aide d'une convention? Dans ce cas, comment gérer un utilisateur mettant à jour une valeur existante? Doit être convertir cette valeur en paramètres régionaux utilisateur?
  • Le manque de précision est-il un problème UX si nous décidons de stocker les valeurs sous forme de nombre à virgule flottante? Par exemple. est-ce un problème si nous convertissons 1'000'000'000'000'123.3543 en 1e15? (Pas un problème dans nos calculs pour l'instant)
8
cporte

Question interessante.

Le seul modèle UX que vous avez pour la partie entrée est "entrée indulgente" . C'est-à-dire, laissez l'utilisateur entrer ce qu'il veut et essayez de comprendre quelle est réellement la valeur.

Pour ce faire, vous devez établir un ensemble de règles d'interprétation et analyser des situations ambiguës. Vous pouvez, par exemple, supprimer tous les espaces vides sans aucune conséquence (à ma connaissance), et vous pouvez interpréter en toute sécurité "2 + 2" comme 4. "1.234", cependant est ambiguë, et vous devez décider si l'utilisateur doit clarifier ce qu'il veut dire et/ou si les règles d'interprétation doivent être suivies dans un ordre spécifique. (par exemple, les paramètres de localisation, les précisions précédentes, etc.).

Vous devez jouer avec Wolfram | Alpha . Ils interprètent l'entrée et vous donnent des suggestions dans une liste déroulante pour réduire l'ambiguïté, et ils vous donnent plusieurs sorties si l'entrée peut être interprétée de plusieurs manières.

enter image description here

En ce qui concerne la sortie/visualisation . Cela dépend vraiment du contexte . Si l'utilisateur compare les valeurs, elles doivent être affichées avec la même signification. Si l'utilisateur doit être en mesure de localiser ses entrées - ou s'il a un sens à la façon dont sa valeur doit être représentée, alors c'est bien de l'avoir comme il a été entré.

Dans une situation avec une entrée très indulgente, je recommanderais de convertir les valeurs en une norme commune. Avec paramètres de format local .

Et vous pourriez avoir les deux, bien sûr ...

mockup

télécharger la source bmml - Wireframes créés avec Balsamiq Mockups

4
Jørn E. Angeltveit

Pour ajouter à la grande réponse de Jorn, vos utilisateurs seront-ils un groupe de personnes plus ou moins stable, ou en aurez-vous de nouveaux pour installer et ajouter des numéros?

Si les utilisateurs utilisent le logiciel à plusieurs reprises, vous pouvez intégrer une configuration de base lors de son premier lancement. Par exemple, la première fois que quelqu'un saisit une valeur, vous pouvez avoir une boîte affichant une mise en forme recommandée: "Veuillez ne pas utiliser de séparateurs tels que 3.000", ou si quelqu'un saisit 3,14, vous pourriez demander une boîte de dialogue demandant: "Avez-vous signifie 3 décimales 14 "ou quelque chose comme ça.

2
Yisela