J'utilise une boîte de dialogue d'assistant avec 4-5 étapes pour permettre aux utilisateurs de saisir les données d'un objet métier. Les données sur les différentes étapes de l'assistant ne sont pas interdépendantes et l'ordre des étapes semble naturel lors de la création de l'objet, du moins à mon avis. La création et la modification d'objets ont lieu dans le même assistant. Jusqu'ici tout va bien.
Il existe maintenant des cas courants où les utilisateurs doivent modifier un certain champ spécifique de l'objet métier. Comme le champ se trouve sur la page initiale de l'assistant, j'ai pensé à fournir un "Next" and a Bouton "Terminer" , il n'est donc pas nécessaire de parcourir toutes les pages pour enregistrer la modification.
télécharger la source bmml - Wireframes créés avec Balsamiq Mockups
Cela ne devrait pas conduire à des données invalides ou incomplètes, car la validation aurait lieu à chaque clic sur "Suivant" ou "Terminer" et l'objet serait complet après l'assistant de création initial.
Y a-t-il des problèmes avec ce concept?
Que dois-je considérer d'autre?
À mon avis, il serait préférable de faire la distinction entre la création et la modification de l'objet métier.
Pour la création, un assistant est très bien. Outre le bouton suivant, il pourrait également avoir un bouton Terminer si les pages actuelles et toutes les pages suivantes de l'assistant n'avaient que des informations facultatives en entrée.
Pour modifier un objet existant, une boîte de dialogue à onglets pourrait être un bon choix, car elle permet à l'utilisateur de naviguer directement vers la ou les pages à modifier.
Le concept est bien, mais "Finish" est ambigu comme une étiquette. Il est préférable de préciser ce qui se passera si vous appuyez sur le bouton, par exemple "Enregistrer et quitter".
Il n'y a rien de mal avec le bouton Terminer car il fournit un raccourci de sortie pour les utilisateurs qui souhaitent enregistrer et terminer le processus plus tôt. Sinon, les utilisateurs qui souhaitent modifier uniquement la première page de l'assistant doivent cliquer 4 fois sur jusqu'à ce qu'ils puissent enregistrer et fermer le formulaire. C'est 4 clics inutiles.
La chose que vous pouvez faire pour améliorer la navigation de l'assistant est d'ajouter un barre de progression pas à pas . Les utilisateurs doivent avoir la possibilité d'accéder à chaque étape à partir de cette barre d'étapes. Cela garantira un accès encore plus rapide à des étapes spécifiques de l'assistant. Cela devrait être possible dans votre cas, car vous avez souligné que les données ne sont pas interdépendantes.
Voici une maquette rapide du design:
télécharger la source bmml - Wireframes créés avec Balsamiq Mockups
C'est définitivement une bonne idée.
J'ai utilisé cette approche - à un moment particulier de notre assistant, l'assistant a capturé les éléments importants dont il avait besoin, nous avons donc permis à nos utilisateurs de terminer l'assistant plus tôt s'ils le voulaient aussi.
Je devais m'assurer que l'apparence du bouton Terminer était vraiment évidente - certains premiers tests d'utilisabilité ont montré que certaines personnes ne le voyaient pas apparaître et ne se rendaient pas compte qu'elles pouvaient terminer l'assistant plus tôt.
Donc, non seulement nous avons fait briller/clignoter brièvement le bouton Terminer plusieurs fois lorsqu'il est apparu (pour vous assurer que les gens en ont été alertés), nous avons également affiché un court message expliquant qu'ils peuvent terminer maintenant s'ils le souhaitent - ce message s'estompa après 5-6 secondes et ne s'affiche en fait que les premières fois où l'utilisateur a utilisé cet assistant.
Le principal avantage d'un assistant, plutôt que d'afficher tous les champs de saisie à la fois, ou dans des onglets classés, ou un autre élément d'interface utilisateur, est qu'il organise les étapes qui doivent être prises dans un ordre spécifique. Un avantage supplémentaire est que le Next l'étape peut être différente, selon l'entrée effectuée dans le Current étape.
Permettre à l'utilisateur de Finish indique tôt que l'action n'est pas vraiment une série d'étapes ordonnées, mais plutôt des actions obligatoires et des actions facultatives.
Supposons que nous ayons un tel assistant, et après l'étape # 3, les étapes restantes sont facultatives et le Finish est activée. En tant qu'utilisateur, à moins d'avoir déjà vu cet assistant (et de l'avoir mémorisé), je ne sais pas si j'ai réellement fini, car je ne sais pas ce que Next la page ressemble. Je vais soit cliquer sur les pages restantes de l'assistant et ne rien faire, soit appuyer sur Finish tôt et passer à côté d'options que je ne connais même pas.
Certaines personnes voudront peut-être remplir ce qui est à la troisième étape, mais ont terminé tôt sans même savoir ce que c'était. Au lieu d'utiliser un bouton Terminer pour terminer l'Assistant sans voir quelles sont les autres étapes, utilisez plutôt un bouton Ignorer. Vous avez dit que vous préférez ne pas utiliser cette option, mais vous devriez quand même fournir toutes les informations à l'utilisateur. De cette façon, l'utilisateur sait exactement ce qu'il aurait pu faire à toutes les étapes, mais peut choisir de ne pas le faire.
Ignorer est toujours l'une des meilleures, sinon la meilleure option à ces fins.
Vous ne pouvez pas croire que vos données seront complètes ou valides la deuxième fois que vous entrerez dans l'assistant, car même si elles étaient valides et complètes au début, les données peuvent être transformées ou modifiées ultérieurement par un autre processus plus tard.
La meilleure approche que je connaisse pour les assistants est
Avec cette approche, les utilisateurs sont libres de faire des allers-retours ou directement jusqu'à la fin, tout leur sera clair lors de la présentation d'un résumé à la fin, et vous pouvez être sûr que vos données seront valides en fonction de vos validations.
Il est possible d'autoriser des pages facultatives d'informations supplémentaires sans s'écarter du modèle Wizard s'il existe une page où l'utilisateur sélectionne "Utiliser les paramètres par défaut" ou "Utiliser les paramètres personnalisés". Bien que de nombreux assistants qui demandez à ne pas prendre la peine de spécifier quels sont les paramètres par défaut, les mots "paramètres par défaut" pourraient être mis en surbrillance pour indiquer que cliquer affichera une liste de ces paramètres par défaut.
Si l'utilisateur sélectionne "Utiliser les paramètres par défaut", il ne sera pas nécessaire d'afficher les pages de l'assistant relatives aux paramètres en question. Si l'utilisateur sélectionne "Utiliser les paramètres personnalisés", le fait de devoir utiliser le même nombre de clics "Suivant" lorsque l'utilisateur souhaite modifier quelque chose sur la première page (et rien d'autre) que lors de la modification de quelque chose sur la cinquième (et rien d'autre) devrait ne sera généralement pas répréhensible. S'il existe plusieurs catégories de paramètres disjoints et qu'un utilisateur souhaite souvent n'en modifier qu'un, l'assistant peut demander séparément par défaut/personnalisé pour chacun.
Il est acceptable de présenter un bouton Terminer sur ou après la dernière page des éléments requis, même si d'autres éléments facultatifs peuvent suivre. Un exemple solide de ceci est Eclipse , où la création d'un "nouveau projet" présente une page qui a des éléments requis, comme le nom du projet, l'environnement d'exécution par défaut, etc. Au bas de l'assistant sont des boutons pour Suivant et Terminer. Si vous cliquez sur Terminer, vous recevez votre nouveau projet. Cependant, si vous cliquez sur Suivant, vous pouvez ajouter des bibliothèques de logiciels supplémentaires, etc.
Vous ne devez présenter un bouton Terminer que si vous pouvez terminer l'assistant sans visiter les étapes restantes. Les premières fois qu'un utilisateur peut utiliser l'assistant, il sera enclin à aller à la page suivante pour voir ce qu'il contient, mais à mesure qu'il deviendra plus familier, il ne continuera que s'il a besoin de modifier les paramètres facultatifs . Vous ne devez pas présenter un bouton Terminer si l'utilisateur peut laisser ses données dans un état incohérent ou dans un état qui ne peut pas être facilement modifié après avoir terminé l'assistant .
Voici une image de leur documentation d'aide :
Je dirais que cela diffère. Quelle est l'importance des informations que les utilisateurs n'ajouteront pas s'ils quittent immédiatement? Est-il facile de changer?
Je pense que c'est une très bonne idée tant qu'il est évident quels champs sont laissés vides et si les utilisateurs peuvent facilement trouver/modifier ces options plus tard.