8
votes

Comment concevoir l'interface utilisateur pour la construction d'expressions conditionnelles?

Je dois développer une interface utilisateur pour saisir quelque chose comme "si x ou (y et (y et z) puis faire un, b et c". Les données à saisir sont déjà assez compliquées, comment l'enveloppez-vous dans une interface utilisateur intuitive?


2 commentaires

Je pense que s'il y avait un moyen de faire de manière intuitive ce genre de chose visuellement, nous utiliserions cela au lieu d'écrire un code.


Bien que non spécifiquement pour ce cas d'utilisation, cet essai pourrait vous donner des idées précieuses: préincik.com/magicink


4 Réponses :


0
votes

Sera-t-il toujours une logique binaire comme celle-ci (juste ou's, et et non)? Si oui, vous pourriez avoir l'interface utilisateur être un Diagramme logique Designer, similaire à ceux utilisés Dans la conception de la logique de circuit.


0 commentaires

-2
votes

C'est un bon article

http://www.lukew.com/ff/enterry.asp?1007

J'ai utilisé les idées dans cet article lors de la création d'une forme pour entrer des taux de déduction d'avantages. Le court est-il, qu'il recommande de construire le formulaire un peu comme Mad Libs (rappelez-vous ces livres comme un enfant).


4 commentaires

Je crois que cette réponse ne concerne pas du tout la question.


@atoumy comment cela ne concerne pas? C'est un type de type de type ADLIB différent de créer une forme. Peut-être que ce n'est pas la meilleure réponse ici, mais c'est une alternative et vaut bien un coup d'oeil par quiconque rechercherait cette question.


Pour moi (et je n'ai pas été évité parce que j'écris cela, le score de -1 est suffisant), votre réponse n'est pas utile car elle ne répond pas à la question réelle. La question concerne la construction d'expressions conditionnelles plutôt que de remplir une forme. Ce sont deux problèmes différents. Le style de conception de la forme "Mad Libs" est principalement destiné aux formes statiques pouvant être travaillé en phrases.


@Bryan Veuillez lire la question "Les données à saisir elles-mêmes sont déjà assez compliquées, comment terminez-vous dans une interface utilisateur intuitive?". Pour moi, il demande comment on peut prendre des données compliquées et la capturer de manière intuitive. Ma réponse souligne simplement un motif possible pouvant être utilisé lors de la construction d'une forme, pas une impression bleue bleue qui doit être suivie. L'idée est de prendre l'idée de Madlib et de l'adapter à ses propres fins.



2
votes

Voici un exemple de la manière dont j'ai résolu le problème pour une base de données de bugs. Cela a été fait il y a une décennie sur une boîte Linux. La L & F est donc plutôt motif-ish, mais cela montre le concept général:

 text alt
(Source: ClearLight.com )

Cela fonctionne à peu près comme vous vous attendez. Vous pouvez modifier "l'un des éléments suivants" pour être "Tout ce qui suit" et les étiquettes des lignes suivantes passeront de "ou" à "et". Le bouton "est" peut être changé en "N'EST PAS" ainsi que "Matchs Motif" et quelques autres choix.

Vous cliquez sur les boutons +/- pour ajouter des critères supplémentaires. Vous pouvez créer des groupes logiques qui vous permettent de faire des expressions telles que "A ou (B et C)", mais elle lit toujours presque comme une collection de phrases anglaises.

Dans votre cas, au lieu d'une section "ordre par", vous pourriez avoir une section "faire ces choses".

Ceci serait lourd à utiliser si vous devez créer des requêtes très complexes, mais si vous avez besoin d'une requête complexe, vous n'avez probablement pas suffisamment de mal à ne pas avoir besoin d'une interface graphique comme celle-ci. Cela a été conçu davantage pour l'utilisateur occasionnel pour les requêtes ad hoc simples.

Je changerais certainement la façon dont cela ressemble si je l'avais à faire à nouveau, mais la mécanique de base fonctionne plutôt bien.


0 commentaires

2
votes

Voici ma réponse d'une question similaire: Interface intuitive pour la composition de la logique booléenne?

Je briserais votre interface en deux parties: la condition et le résultat.

Voici un exemple de l'interface conditionnelle:

Entrez la description de l'image ici

quelques réflexions

  • L'interface commence simple
  • S'il est compliqué, c'est parce que l'utilisateur l'a construit étape par étape
  • Pas d'édition ou de glisser / goutte - Il suffit de créer et de supprimer des succursales
  • Les conditions sont une simple liste déroulante dans cet exemple, mais pourrait être plus compliquée ou éventuellement niée. Fondamentalement, cette interface vous permet de composer des expressions.
  • Je pense que c'est une bonne idée d'éviter ce type d'interface si possible

0 commentaires