How to develop an interface for creating conditional expressions?

I need to develop a user interface for entering something like "if x or (y and z), then do a, b and c." The data that will be entered by yourself is already quite complicated, how do you wrap it in an intuitive interface?

+8
user-interface
source share
4 answers

This is a good article.

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

I used the ideas in this article when creating a form for entering benefit deduction rates. In short, he recommends creating a form similar to Mad Libs (remember these books as a child).

-2
source share

Here is an example of how I solved a database error problem. This was done ten years ago on a Linux box, so L & F is quite motivated, but shows a general concept:

alt text
(source: clearlight.com )

This works pretty much as you expect. You can change โ€œANY of the followingโ€ to โ€œALL of the following,โ€ and the labels on the following lines change from โ€œorโ€ to โ€œandโ€. The "IS" button can be changed to "IS NOT", as well as to the "Matches pattern" and some other options.

You press the + / - buttons to add additional criteria. You can create logical groups that allow you to make expressions such as "a or (b and c)," but they almost read like a set of English sentences.

In your case, instead of the "Order by" section, you may have a "do these things" section.

This would be inconvenient to use if you need to create very complex queries, but if you need a complex query, you are probably smart enough not to need such a graphical interface. It was designed more for the average user for simple special requests.

I would definitely change the way it looks if I had to do it again, but the basic mechanics work pretty well.

+2
source share

Here is my answer from a similar question: An intuitive interface for composing logical logic?

I would split your interface into two parts: state and result.

Here is an example of a conditional interface:

enter image description here

A few thoughts

  • The interface just starts
  • If this gets complicated, it is because the user has built it step by step.
  • No editing or drag / drop - just create and delete branches.
  • Conditions is a simple drop-down list in this example, but can be more complex or possibly negative. Basically this interface allows you to compose expressions.
  • I think it is a good idea to avoid this type of interface if possible
+1
source share

Will binary logic always be the same (only Or's, And's and Not's)? If so, you could create a logic diagram user interface similar to those used in designing logic diagrams.

0
source share

All Articles