2008-09-27 8 views
4

Je construis des logiciels de bureau depuis plus de 10 ans maintenant, la plupart du temps c'est un simple logiciel de saisie de données. Mon problème est toujours le même: une arborescence à gauche et beaucoup de champs texte/données à droite, en fonction du type de données actuellement traitées. Existe-t-il de nouvelles idées sur la façon dont un tel logiciel devrait ressembler aujourd'hui? Pour plus d'informations: Il s'agit de données très hiérarchiques, principalement pour les appareils électroniques. Il y a des éléments de données qui fournissent des paramètres statiques pour l'appareil et il y a des parties qui décrivent une sorte de 'Programme' pour l'appareil. Il y a beaucoup (plus de 30) de différents masques de saisie. Bien sûr, j'utilise des combos et des champs d'entrée haut/bas.Refresh Oldschool GUI Design

Répondre

8

Ayant tous vos logiciels à l'air la même chose est un bon chose. L'une des meilleures façons de faciliter l'utilisation de votre logiciel par les utilisateurs est de lui donner exactement la même apparence que les autres logiciels que vos utilisateurs savent déjà utiliser.

Il existe essentiellement deux stratégies communes pour gérer l'entrée d'un grand nombre de données. Le premier est d'avoir beaucoup de champs de saisie de données sur une page. Le suivant est d'avoir seulement quelques champs de saisie de données mais beaucoup de pages dans une sorte d'interface de type assistant. Les utilisateurs experts trouvent ce dernier beaucoup plus lent à utiliser, tout comme les utilisateurs qui saisissent des données encore et encore. Cependant, l'interface de style de l'assistant est moins déroutante pour les utilisateurs plus récents, car il offre moins d'éléments à la fois et tend à fournir plus de détails sur eux.

Je suggère de remplacer autant de champs de texte que possible avec des listes déroulantes basées sur l'auto-complétion. Cela permet aux utilisateurs d'entrer des données exactement comme avec les zones de texte, mais permet également aux utilisateurs d'enregistrer la frappe en appuyant sur la touche bas pour faire défiler les choix après avoir entré une partie des données.

Fournir plus de détails sur les données être entré donnerait probablement des réponses plus spécifiques.

0

Si ça marche ...

Selon ce que vous avez passe avec les données (qui est, est-il hiérarchique, ou assez plat), vous pourriez vouloir essayer une métaphore à onglets, ou peut-être le "style Outlook", avec une barre latérale montrant les sections d'une application. Une autre notion avec laquelle j'ai joué récemment est le "Object desktop" que j'ai vu pour la première fois proposé par Scott Ambler (Building Object Applications That Work). En cela, vous pouvez afficher des collections d'éléments, ou l'utilisateur peut "décoller" des enregistrements individuels pour un accès facile.

0

Vos informations ne sont pas suffisantes pour vous suggérer une alternative d'interface. Cependant, puis-je répondre à votre question par une question? Pourquoi pensez-vous que vous devez le changer? Votre client s'est-il plaint? Si ce n'est pas le cas, il semble que votre client soit satisfait de la façon dont le logiciel fonctionne en ce moment, donc je ne le changerais pas. Si votre client se plaint à ce sujet, il ne dira probablement pas "C'est mauvais", il dira "Pourquoi ça ne ressemble pas à ..." et cela vous donnera une idée sur la façon de le changer.

Une fois, j'ai dû redéfinir un système de gestion des biens très obsolète. L'ancien a été écrit pour un système de base de données maintenant mort, fonctionnant toujours dans MS-DOS. Le client a suggéré que je devrais créer un prototype à quoi cette réimplantation pourrait ressembler et ensuite il décidera si je reçois ce travail ou pas. J'ai remplacé l'ancienne base de données morte par une base de données MySQL moderne, j'ai remplacé l'accès partagé partagé problématique par une approche serveur client et j'ai choisi de réécrire l'interface utilisateur en Java, car différents systèmes d'exploitation ont été utilisés. Jusqu'à présent, le concept semblait bon, le client l'a aimé. Cependant, quand il a demandé à ses employés ce qu'ils en pensaient, ils ont demandé: «Jusqu'à présent, c'est génial, mais nous avons une question: pourquoi cela ne ressemble-t-il pas à l'ancien? En fait, il s'est avéré que même avec toutes les technologies modernes, ils voulaient que l'interface soit exactement semblable à l'ancienne.J'ai donc dû recréer une interface utilisateur MS-DOS de cauchemar en 1986, car aucune autre interface n'a été acceptée.

0

Pour moi, il s'agit plus d'une conception propre, utilisable et logique qu'autre chose. Si votre programme a un sens pour l'utilisateur, n'est pas maladroit et fonctionne comme annoncé, tout le reste de l'interface utilisateur est essentiellement comme la peinture de la maison. J'ai parfois déployé une nouvelle version d'un programme avec essentiellement les mêmes contrôles qui sont skinned différemment.

Il y a une raison pour laquelle vous avez probablement choisi l'arborescence - parce que c'est probablement très logique de le faire. Il existe différents conteneurs et contrôles disponibles dans les différentes bibliothèques d'interface utilisateur, en fonction de la langue, mais j'ai tendance à coller avec le familier parce que l'utilisateur obtient probablement comment un contrôle d'arbre fonctionne et comment fonctionne une combobox.

1

Je répondrais aussi avec une question, qui est de demander quelle est votre motivation pour considérer un changement? Comme les autres affiches, je serais d'accord pour dire qu'il y a une certaine valeur dans la cohérence, mais il y a aussi une grande valeur à ne pas ignorer les sentiments dérangeants dans le dos de l'esprit que vous avez. Peut-être avez-vous l'impression que vos utilisateurs ne sont pas aussi productifs que vous le souhaiteriez, ou que vous avez entendu des commentaires à ce sujet de la part de vos clients, ou que vous cherchez à ajouter de l'innovation pour votre propre intérêt. Scratching itches est un bon trait chez un développeur, à mon avis.

Une chose que je préconiserais serait une étude détaillée des utilisateurs. Que savez-vous de ce que vos utilisateurs font avec les interfaces que vous créez? Connaissez-vous les tâches clés, le flux de travail global? Savez-vous si une tâche consommait régulièrement 60% du temps de vos utilisateurs ou si une tâche était exécutée une fois par mois? Obtenir une bonne idée de ce que les utilisateurs font réellement (et non de ce qu'ils disent) est un excellent point de départ pour réfléchir aux changements qui pourraient être utiles, surtout si vous pouvez refactoriser la tâche pour obtenir une expérience utilisateur qualitativement différente. Un couple de conceptions alternatives spécifiques que vous aimeriez inclure dans la révision de l'interface utilisateur peut être une navigation facette (fonctionne bien pour la recherche et l'exploration dans les hiérarchies), ou la construction d'une base de données par défaut/réponses passées afin que les zones de texte peut utiliser l'achèvement prédictif. Cependant, je pense que mon point de départ serait l'étude de l'utilisateur.

Ian

0

Une interface utilisateur doit être utilisable, il suffit de ne pas faire le misstake de changer quelque chose à travailler quelque chose de fantaisie-schmancy simplement parce qu'il semble mieux (été sur cette route) ...

  • Assurez-vous que les widgets ajoutés /contrôles vraiment ajouter une valeur commerciale
  • Assurez-vous que les widgets ajoutés /contrôles ne sont pas gâcher votre architecture (trop) et fait l'application h Arder à gérer /maintenir
  • Essayez de garder les normes de la plate-forme sur comment faire les choses (par exemple le Vista ux guidelines)

:)

// W